diff options
| author | Peter Wemm <peter@FreeBSD.org> | 2001-08-08 05:25:15 +0000 |
|---|---|---|
| committer | Peter Wemm <peter@FreeBSD.org> | 2001-08-08 05:25:15 +0000 |
| commit | 2aca0c28d39b914923402cc81a4d6b4213b3df2d (patch) | |
| tree | 9c1725fe17f3d99c873d801333a60db6ec49fb59 /sys/alpha | |
| parent | 44c76a36f8e091bc1d4130c5bd8550454db6b590 (diff) | |
Notes
Diffstat (limited to 'sys/alpha')
| -rw-r--r-- | sys/alpha/alpha/machdep.c | 56 | ||||
| -rw-r--r-- | sys/alpha/include/ptrace.h | 6 |
2 files changed, 0 insertions, 62 deletions
diff --git a/sys/alpha/alpha/machdep.c b/sys/alpha/alpha/machdep.c index f1c21bb58712b..490ea29c838c6 100644 --- a/sys/alpha/alpha/machdep.c +++ b/sys/alpha/alpha/machdep.c @@ -1851,62 +1851,6 @@ ptrace_single_step(struct proc *p) return 0; } -int ptrace_read_u_check(p, addr, len) - struct proc *p; - vm_offset_t addr; - size_t len; -{ - vm_offset_t gap; - - if ((vm_offset_t) (addr + len) < addr) - return EPERM; - if ((vm_offset_t) (addr + len) <= sizeof(struct user)) - return 0; - - gap = (char *) p->p_frame - (char *) p->p_addr; - - if ((vm_offset_t) addr < gap) - return EPERM; - if ((vm_offset_t) (addr + len) <= - (vm_offset_t) (gap + sizeof(struct trapframe))) - return 0; - return EPERM; -} - -int -ptrace_write_u(struct proc *p, vm_offset_t off, long data) -{ - vm_offset_t min; -#if 0 - struct trapframe frame_copy; - struct trapframe *tp; -#endif - - /* - * Privileged kernel state is scattered all over the user area. - * Only allow write access to parts of regs and to fpregs. - */ - min = (char *)p->p_frame - (char *)p->p_addr; - if (off >= min && off <= min + sizeof(struct trapframe) - sizeof(int)) { -#if 0 - tp = p->p_frame; - frame_copy = *tp; - *(int *)((char *)&frame_copy + (off - min)) = data; - if (!EFLAGS_SECURE(frame_copy.tf_eflags, tp->tf_eflags) || - !CS_SECURE(frame_copy.tf_cs)) - return (EINVAL); -#endif - *(int*)((char *)p->p_addr + off) = data; - return (0); - } - min = offsetof(struct user, u_pcb) + offsetof(struct pcb, pcb_fp); - if (off >= min && off <= min + sizeof(struct fpreg) - sizeof(int)) { - *(int*)((char *)p->p_addr + off) = data; - return (0); - } - return (EFAULT); -} - int alpha_pa_access(vm_offset_t pa) { diff --git a/sys/alpha/include/ptrace.h b/sys/alpha/include/ptrace.h index 2af0ec498c9e2..3dca2aa6debf2 100644 --- a/sys/alpha/include/ptrace.h +++ b/sys/alpha/include/ptrace.h @@ -47,10 +47,4 @@ #define FIX_SSTEP(p) ptrace_clear_single_step(p) -#ifdef _KERNEL -int ptrace_clear_single_step __P((struct proc *p)); -int ptrace_read_u_check __P((struct proc *p, vm_offset_t off, size_t len)); #endif - -#endif - |
