summaryrefslogtreecommitdiffstats
path: root/sys/dev/systrace.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* add a new message: inject. this allows the tracer to to inject buffers intomarius2004-11-071-12/+89
| | | | | | | the stackgap. this in turn allows for argument replacement with indirection. for example replacing an entire envp or struct pollfd. ok provos@ millert@
* fix an issue when scripts are exec'd under systrace wheremarius2004-07-071-31/+108
| | | | | | | | | the argv[0] would be normalized, and hence break scripts that depend on how they were called. this fixes an issue in the ports builds. ok provos@ deraadt@; lots of testing during hackathon sturm@ naddy@
* a few fixes to systracemarius2004-06-231-18/+61
| | | | | | | | | | | | - add an exec message so that whenever a set-uid/gid process exec's a new image which we may control, the exec does not go by unnoticed. - take special care to check for P_SUGIDEXEC as well as P_SUGID, corresponding to the same changes that were made in the ptrace code a while ago ok niels@, sturm@; thanks to naddy for testing
* typos from Tom Cosgrove;jmc2003-10-211-3/+3
|
* originally from cb@netbsd.org, adapted by provossturm2003-10-081-72/+144
| | | | | | | | | | | | | itojun@ ok fix a race condition between path resolution in userland and the subsequent namei(): inform the kernel portion of valid filenames and then disallow symlink lookups for those filenames by means of a hook in namei(). with suggestions from provos@ also, add (currently unused) seqnr field to struct systrace_replace, from provos@
* Replace select backends with poll backends. selscan() and pollscan()millert2003-09-231-14/+16
| | | | | | | now call the poll backend. With this change we implement greater poll(2) functionality instead of emulating it via the select backend. Adapted from NetBSD and including some changes from FreeBSD. Tested by many, deraadt@ OK
* change arguments to suser. suser now takes the process, and a flagstedu2003-08-151-3/+3
| | | | | | | | | argument. old cred only calls user suser_ucred. this will allow future work to more flexibly implement the idea of a root process. looks like something i saw in freebsd, but a little different. use of suser_ucred vs suser in file system code should be looked at again, for the moment semantics remain unchanged. review and input from art@ testing and further review miod@
* - limited number of processes per systraceitojun2003-06-161-4/+43
| | | | | - escape fixes for special characters markus, sturm ok. from provos
* unbreakhenning2003-03-281-2/+1
| | | | | | STRIOCCLONE and SYSTR_CLONE have the same value now ok mickey@
* Fix a crash in the systrace found by form@art2003-02-201-55/+57
| | | | | | | One is a kernel fix that changes the lockin and one is a userland fix that prevents dereferencing a freed pointer. From provos deraadt@ ok
* statement after label.art2002-12-121-1/+2
|
* rename the clone ioctl to avoid clashing w/ the sockio; provos@ okmickey2002-12-041-1/+2
|
* Be more careful with illegal syscall numbers.art2002-11-101-1/+6
|
* add id tags.fgsch2002-10-251-0/+1
|
* support for privilege elevation.itojun2002-10-161-56/+152
| | | | | | | | | | | with privilege elevation no suid or sgid binaries are necessary any longer. Applications can be executed completely unprivileged. Systrace raises the privileges for a single system call depending on the configured policy. Idea from discussions with Perry Metzger, Dug Song and Marcus Watts. from provos
* new message to track uid/gid changesitojun2002-10-091-0/+32
| | | | from provos
* cast size_t to u_long on printing. from netbsditojun2002-08-281-4/+4
|
* return EBUSY in processreadyprovos2002-08-071-2/+2
|
* minor KNF. pid_t is unsigned.itojun2002-07-301-6/+6
|
* whitespace at EOLitojun2002-07-301-10/+10
|
* better uid/gid tracking; okay deraadt@provos2002-07-241-5/+18
|
* prevent double free in some error conditions; from xs@kittenz.orgprovos2002-07-231-1/+3
|
* add seqnr to message from kernel, userland needs to quote correct seqnr.provos2002-07-221-0/+9
| | | | avoids problems where tsleep has been interrupted by a signal.
* two more missing systrace_lockitojun2002-07-211-0/+4
|
* need systrace_lock/unlock around lockmgr lock operation. provos okitojun2002-07-211-0/+2
|
* comment clarification. niels okitojun2002-07-201-1/+2
|
* minor KNFitojun2002-07-191-1/+1
|
* whitespaceitojun2002-07-191-7/+7
|
* tabifyitojun2002-07-191-7/+7
|
* do not call unlock when the lock is not locked; found by millert@provos2002-07-131-27/+29
|
* in the error case, just remove an installed argument replacement, it is notprovos2002-07-121-2/+6
| | | | needed
* system call argument rewriting framework via stackgap; okay art@provos2002-06-211-12/+124
|
* more __FUNCTION__ slaughterespie2002-06-101-10/+10
|
* new ioctl that reports the current emulation a process uses; needed forprovos2002-06-101-1/+15
| | | | attaching to a running process
* make fsystrace available in systrace.h; keep some more stats.provos2002-05-191-23/+3
|
* when detaching form a process don't forget to remove posted messages.provos2002-05-181-8/+12
|
* systrace facility, used to enforce and generate policies for system callsprovos2002-05-161-0/+1249
okay deraadt@