freebsd-dev/sys/kern
Marcel Moolenaar 1c843354aa Add or finish support for machine dependent ptrace requests. When we
check for permissions, do it for all requests, not the known requests.
Later when we actually service the request we deal with the invalid
requests we previously caught earlier.

This commit changes the behaviour of the ptrace(2) interface for
boundary cases such as an unknown request without proper permissions.
Previously we would return EINVAL. Now we return EBUSY or EPERM.

Platforms need to define __HAVE_PTRACE_MACHDEP when they have MD
requests. This makes the prototype of cpu_ptrace() visible and
introduces a call to this function for all requests greater or
equal to PT_FIRSTMACH.

Silence on: audit
2003-08-15 05:25:06 +00:00
..
bus_if.m
clock_if.m
device_if.m
genassym.sh
imgact_aout.c
imgact_elf32.c
imgact_elf64.c
imgact_elf.c
imgact_gzip.c
imgact_shell.c
inflate.c
init_main.c Revert stuff which accidentally ended up in the previous commit. 2003-07-22 10:36:36 +00:00
init_sysent.c o Refine kse_thr_interrupt to allow it to handle different commands. 2003-07-17 22:45:33 +00:00
kern_acct.c Add fdidx argument to vn_open() and vn_open_cred() and pass -1 throughout. 2003-07-27 17:04:56 +00:00
kern_acl.c Move more ACL logic from the UFS code (ufs_acl.c) to the central POSIX.1e 2003-08-04 02:13:05 +00:00
kern_alq.c Add fdidx argument to vn_open() and vn_open_cred() and pass -1 throughout. 2003-07-27 17:04:56 +00:00
kern_clock.c Fix this to build on alpha. Build test successful. 2003-06-27 08:35:05 +00:00
kern_condvar.c Allow SA process unblocks a thread blocked in condition variable. 2003-07-02 01:19:15 +00:00
kern_conf.c
kern_context.c
kern_descrip.c Do some minor Giant pushdown made possible by copyin, fget, fdrop, 2003-08-04 21:28:57 +00:00
kern_environment.c
kern_event.c Initialize struct fileops with C99 sparse initialization. 2003-06-18 18:16:40 +00:00
kern_exec.c Add a "int fd" argument to VOP_OPEN() which in the future will 2003-07-26 07:32:23 +00:00
kern_exit.c Rename P_THREADED to P_SA. P_SA means a process is using scheduler 2003-06-15 00:31:24 +00:00
kern_fork.c Adjust a comment to remove staleness and take slightly less implementation 2003-08-04 20:35:13 +00:00
kern_idle.c
kern_intr.c Make swi_vm be INTR_MPSAFE. On all platforms, it is only used to activate 2003-07-01 16:00:38 +00:00
kern_jail.c
kern_kse.c Update powerpc to use the (old thread,new thread) calling convention 2003-08-14 03:56:24 +00:00
kern_kthread.c
kern_ktr.c Both 'c' an 'lines' are unused, the bogus init of lines was accidentally 2003-08-02 17:35:00 +00:00
kern_ktrace.c Consistently use the BSD u_int and u_short instead of the SYSV uint and 2003-08-07 15:04:27 +00:00
kern_linker.c Add fdidx argument to vn_open() and vn_open_cred() and pass -1 throughout. 2003-07-27 17:04:56 +00:00
kern_lock.c Rearrange the SYSINIT order to call lockmgr_init() earlier so that 2003-07-16 01:00:39 +00:00
kern_lockf.c
kern_mac.c Attempt to simplify #ifdef logic for MAC_ALWAYS_LABEL_MBUF. 2003-08-01 15:45:14 +00:00
kern_malloc.c Revert stuff which accidentally ended up in the previous commit. 2003-07-22 10:36:36 +00:00
kern_mib.c
kern_module.c
kern_mtxpool.c Rearrange the SYSINIT order to call lockmgr_init() earlier so that 2003-07-16 01:00:39 +00:00
kern_mutex.c If a spin lock is held for too long and WITNESS is enabled, then call 2003-07-31 18:52:18 +00:00
kern_ntptime.c During a positive leap second, the tai_time offset should be 2003-06-25 20:56:40 +00:00
kern_physio.c Grab Giant in physio() since non-giant drivers are starting to appear. 2003-08-02 09:40:53 +00:00
kern_poll.c
kern_proc.c kse.h is not needed for these files. 2003-08-05 12:08:49 +00:00
kern_prot.c Extend the mutex pool implementation to permit the creation and use of 2003-07-13 01:22:21 +00:00
kern_resource.c Extend the mutex pool implementation to permit the creation and use of 2003-07-13 01:22:21 +00:00
kern_sema.c
kern_shutdown.c Don't overwrite the static panicstr buffer for secondary and further 2003-06-15 11:43:00 +00:00
kern_sig.c panic() if we try to handle an out-of-range signal number in 2003-08-10 23:05:37 +00:00
kern_subr.c
kern_switch.c Rename P_THREADED to P_SA. P_SA means a process is using scheduler 2003-06-15 00:31:24 +00:00
kern_sx.c Extend the mutex pool implementation to permit the creation and use of 2003-07-13 01:22:21 +00:00
kern_synch.c Update powerpc to use the (old thread,new thread) calling convention 2003-08-14 03:56:24 +00:00
kern_syscalls.c
kern_sysctl.c
kern_tc.c Remove extra space. 2003-08-12 20:34:31 +00:00
kern_thr.c Update powerpc to use the (old thread,new thread) calling convention 2003-08-14 03:56:24 +00:00
kern_thread.c Update powerpc to use the (old thread,new thread) calling convention 2003-08-14 03:56:24 +00:00
kern_time.c
kern_timeout.c Don't put callout_lock under #ifdef DIAGNOSTIC despite the fact that it 2003-06-20 08:39:04 +00:00
kern_umtx.c Initialize 'blocked' to NULL. I think this was a real problem, but I 2003-07-23 20:29:13 +00:00
kern_uuid.c
kern_xxx.c
ksched.c Use __FBSDID(). 2003-06-11 06:34:30 +00:00
link_elf_obj.c Add the mlockall() and munlockall() system calls. 2003-08-11 07:14:08 +00:00
link_elf.c Add the mlockall() and munlockall() system calls. 2003-08-11 07:14:08 +00:00
linker_if.m
Make.tags.inc
Makefile
makesyscalls.sh
md4c.c
md5c.c Revert stuff which accidentally ended up in the previous commit. 2003-07-22 10:36:36 +00:00
p1003_1b.c Use __FBSDID(). 2003-06-11 06:34:30 +00:00
posix4_mib.c Use __FBSDID(). 2003-06-11 06:34:30 +00:00
sched_4bsd.c Rename P_THREADED to P_SA. P_SA means a process is using scheduler 2003-06-15 00:31:24 +00:00
sched_ule.c - When stealing a kse in kseq_move() ignore the current kseq's min nice 2003-07-08 06:19:40 +00:00
subr_acl_posix1e.c Move more ACL logic from the UFS code (ufs_acl.c) to the central POSIX.1e 2003-08-04 02:13:05 +00:00
subr_autoconf.c Revert stuff which accidentally ended up in the previous commit. 2003-07-22 10:36:36 +00:00
subr_blist.c Expand inline the relevant parts of src/COPYRIGHT for Matt Dillon's 2003-08-12 23:24:05 +00:00
subr_bus.c
subr_clist.c Revert stuff which accidentally ended up in the previous commit. 2003-07-22 10:36:36 +00:00
subr_clock.c
subr_devstat.c
subr_disk.c
subr_eventhandler.c
subr_hints.c Add a resource_disabled() helper function that returns true (non-zero) if 2003-07-02 16:01:38 +00:00
subr_kobj.c add a read-only sysctl to display the number of entries in the fixed size 2003-08-14 21:16:46 +00:00
subr_log.c Replace the code for reading and writing the kernel message buffer 2003-06-22 02:18:31 +00:00
subr_mbpool.c Add a facility for devices, specifically network interfaces, that require 2003-07-15 08:59:38 +00:00
subr_mbuf.c Now that we can call kmem_malloc without Giant it should be safe 2003-07-27 14:19:23 +00:00
subr_mchain.c
subr_module.c
subr_msgbuf.c Replace the code for reading and writing the kernel message buffer 2003-06-22 02:18:31 +00:00
subr_param.c More pipe changes: 2003-08-11 05:51:51 +00:00
subr_pcpu.c
subr_power.c
subr_prf.c Revert stuff which accidentally ended up in the previous commit. 2003-07-22 10:36:36 +00:00
subr_prof.c
subr_rman.c
subr_rtc.c
subr_sbuf.c
subr_scanf.c
subr_smp.c Document some sysctl variables. 2003-06-12 19:46:51 +00:00
subr_taskqueue.c
subr_trap.c kse.h is not needed for these files. 2003-08-05 12:08:49 +00:00
subr_turnstile.c If a spin lock is held for too long and WITNESS is enabled, then call 2003-07-31 18:52:18 +00:00
subr_witness.c Insert cosmetic spaces. 2003-08-04 19:24:25 +00:00
subr_xxx.c
sys_generic.c Remove Giant from writev(2). Eliminate trivial style differences between 2003-08-01 02:21:54 +00:00
sys_pipe.c if we got this far, we definately don't have an EBADF. Return a more 2003-08-15 04:31:01 +00:00
sys_process.c Add or finish support for machine dependent ptrace requests. When we 2003-08-15 05:25:06 +00:00
sys_socket.c Initialize struct fileops with C99 sparse initialization. 2003-06-18 18:16:40 +00:00
syscalls.c o Refine kse_thr_interrupt to allow it to handle different commands. 2003-07-17 22:45:33 +00:00
syscalls.master o Refine kse_thr_interrupt to allow it to handle different commands. 2003-07-17 22:45:33 +00:00
sysv_ipc.c
sysv_msg.c Update some argument-documenting comments to match reality. 2003-08-07 16:42:27 +00:00
sysv_sem.c Update some argument-documenting comments to match reality. 2003-08-07 16:42:27 +00:00
sysv_shm.c Update some argument-documenting comments to match reality. 2003-08-07 16:42:27 +00:00
tty_compat.c
tty_conf.c
tty_cons.c Add fdidx argument to vn_open() and vn_open_cred() and pass -1 throughout. 2003-07-27 17:04:56 +00:00
tty_pty.c
tty_subr.c Revert stuff which accidentally ended up in the previous commit. 2003-07-22 10:36:36 +00:00
tty_tty.c
tty.c Use a new message buffer `consmsgbuf' to forward messages to a 2003-06-22 02:54:33 +00:00
uipc_accf.c
uipc_cow.c
uipc_domain.c
uipc_jumbo.c Lock the vm object when removing a page. 2003-06-11 21:23:04 +00:00
uipc_mbuf2.c
uipc_mbuf.c Three fixes: 2003-07-19 06:03:48 +00:00
uipc_proto.c
uipc_sem.c
uipc_sockbuf.c Guard against MLEN growing larger than a uint8_t due to MSIZE grwoing to a 2003-07-26 07:23:24 +00:00
uipc_socket2.c Guard against MLEN growing larger than a uint8_t due to MSIZE grwoing to a 2003-07-26 07:23:24 +00:00
uipc_socket.c Make the second argument to sooptcopyout() constant in order to 2003-08-05 00:27:54 +00:00
uipc_syscalls.c Drop Giant in recvit before returning an error to the caller to avoid 2003-08-11 19:37:11 +00:00
uipc_usrreq.c
vfs_acl.c Move more ACL logic from the UFS code (ufs_acl.c) to the central POSIX.1e 2003-08-04 02:13:05 +00:00
vfs_aio.c Add a f_vnode field to struct file. 2003-06-22 08:41:43 +00:00
vfs_bio.c Grab Giant in bufdonebio() since drivers may not hold it. 2003-08-02 09:45:10 +00:00
vfs_cache.c Make the VFS cache use zones instead of malloc(9). This results in a 2003-06-13 08:46:13 +00:00
vfs_cluster.c Revert stuff which accidentally ended up in the previous commit. 2003-07-22 10:36:36 +00:00
vfs_default.c I have not had any reports of trouble for a long time, so remove the 2003-06-15 19:49:14 +00:00
vfs_export.c Guard against MLEN growing larger than a uint8_t due to MSIZE grwoing to a 2003-07-26 07:23:24 +00:00
vfs_extattr.c td_dupfd just needs to be less than 0, it does not have to hold the 2003-08-07 17:08:26 +00:00
vfs_init.c Initialize struct vfsops C99-sparsely. 2003-06-12 20:48:38 +00:00
vfs_lookup.c
vfs_mount.c Add a new mount flag MNT_BYFSID that can be used to unmount a file 2003-07-01 17:40:23 +00:00
vfs_subr.c Consistently use the BSD u_int and u_short instead of the SYSV uint and 2003-08-07 15:04:27 +00:00
vfs_syscalls.c td_dupfd just needs to be less than 0, it does not have to hold the 2003-08-07 17:08:26 +00:00
vfs_vnops.c Rename VOP_RMEXTATTR() to VOP_DELETEEXTATTR() for consistency with the 2003-07-28 18:53:29 +00:00
vnode_if.src Rename VOP_RMEXTATTR() to VOP_DELETEEXTATTR() for consistency with the 2003-07-28 18:53:29 +00:00