diff options
author | kevinrs <kevinrs> | 2005-12-23 21:09:32 +0000 |
---|---|---|
committer | kevinrs <kevinrs> | 2005-12-23 21:09:32 +0000 |
commit | f9f5199fb819ca7897ef895f9a4a86aecb147446 (patch) | |
tree | 290f03232fdcb1f16fc21af062fa4725fc96c5d9 | |
parent | d003aa24c4f339bdfc2b2e87ac0ba16b09cf221e (diff) | |
download | systemtap-steved-f9f5199fb819ca7897ef895f9a4a86aecb147446.tar.gz systemtap-steved-f9f5199fb819ca7897ef895f9a4a86aecb147446.tar.xz systemtap-steved-f9f5199fb819ca7897ef895f9a4a86aecb147446.zip |
2005-12-23 Kevin Stafford <krstaffo@us.ibm.com>
SCRIPTS:
run.sh - This is the driver for automated testing.
To run: ./run.sh stpdirectory c_binaries_directory
Result: log/timestamp.log discerpancy report
ctostp.sh - This script generates corresponding stp probe script
files for every C file found in the input directory.
To Run: ctostp.sh input output where input is the
directory containing the C files to convert. Output
is the directory to store the corresponding stp
files.
build.sh - This script expedites the process of compiling all
of the c files. When the "compile" flag is given
it creates a directory called bin, which stores the
compiled C programs. ./build.sh clean removes the
binaries, and ./build.sh run attempts to execute all
of the programs in cfiles/bin.
-rw-r--r-- | tapset/test/README | 27 | ||||
-rwxr-xr-x | tapset/test/build.sh | 56 | ||||
-rwxr-xr-x | tapset/test/ctostp.sh | 54 | ||||
-rwxr-xr-x | tapset/test/gencfiles.sh | 11 | ||||
-rw-r--r-- | tapset/test/master.c | 4809 | ||||
-rwxr-xr-x | tapset/test/run.sh | 150 |
6 files changed, 5107 insertions, 0 deletions
diff --git a/tapset/test/README b/tapset/test/README new file mode 100644 index 00000000..4b615721 --- /dev/null +++ b/tapset/test/README @@ -0,0 +1,27 @@ +To Run: + cd tapset/test + ./gencfiles.sh + ./ctostp.sh cfiles stpdir + cd cfiles + ./build compile + cd .. + ./run.sh + +SCRIPTS: + run.sh - This is the driver for automated testing. + To run: ./run.sh stpdirectory c_binaries_directory + Result: log/timestamp.log discerpancy report + + ctostp.sh - This script generates corresponding stp probe script + files for every C file found in the input directory. + To Run: ctostp.sh input output where input is the + directory containing the C files to convert. Output + is the directory to store the corresponding stp + files. + + build.sh - This script expedites the process of compiling all + of the c files. When the "compile" flag is given + it creates a directory called bin, which stores the + compiled C programs. ./build.sh clean removes the + binaries, and ./build.sh run attempts to execute all + of the programs in cfiles/bin. diff --git a/tapset/test/build.sh b/tapset/test/build.sh new file mode 100755 index 00000000..05b64f67 --- /dev/null +++ b/tapset/test/build.sh @@ -0,0 +1,56 @@ +function usage { + echo -ne " \033[1mUsage:\033[0m build [compile|clean|run]\n" + echo -ne " \033[1mDo not remove this script from this dir!\033[0m\n" + exit +} +function clean { + rm -rf bin +} +function compile { + if [ ! -d bin ]; then + mkdir bin + else + rm -rf bin/* + fi + for file in `ls *.c` + do + execn=e_`echo $file|cut -d"." -f1` + # some depend on external realtime lib... + if [[ `echo $file|grep clock|wc -l` -gt 0 + || `echo $file|grep timer|wc -l` -gt 0 ]] + then + gcc -lrt $file -o bin/$execn + else + gcc $file -o bin/$execn + fi + done + if [ `ls *.c|wc -l` -eq `ls bin|wc -l` ]; then + echo "Success: compiled `ls bin|wc -l` files." + else + echo "Some files failed to compile! Try again." + fi +} +function run { + if [ ! -d bin -o `ls bin|wc -l` -le 0 ]; then + echo "No compiled C files! First build compile!" + exit + else + for execn in `ls bin` + do + echo "$execn _______________________________" + ./bin/$execn + done + fi +} + +if [ $# -ne 1 ]; then + usage +elif [ $1 == "compile" ]; then + compile +elif [ $1 == "clean" ]; then + clean +elif [ $1 == "run" ]; then + run +else + usage +fi diff --git a/tapset/test/ctostp.sh b/tapset/test/ctostp.sh new file mode 100755 index 00000000..1918ae83 --- /dev/null +++ b/tapset/test/ctostp.sh @@ -0,0 +1,54 @@ +# usage +if [ $# -ne 2 ]; then + echo -ne " \033[1mUsage:\033[0m ctostp src dest\n" + echo -ne " \033[1msrc:\033[0m\n" + echo -ne "\tthe source directory containing the\n" + echo -ne "\tC files used to generate the stp files\n" + echo -ne " \033[1mdest:\033[0m\n" + echo -ne "\tthe directory that will store the\n" + echo -ne "\tresulting stp files\n" + exit +fi +# strip trailing / +src=` echo $1|sed -e 's/\/$//'` +dest=`echo $2|sed -e 's/\/$//'` +# do some sanity checks +if [ `ls $src/*.c|wc -l` -le 0 ]; then + echo "ERROR: No C files found in $src" + exit +fi +if [ ! -d $dest ]; then + echo "ERROR: $dest does not exist!" + exit +else + #clear it out + rm -f $dest/* +fi +# ctostp +for file in `ls $src/*.c` +do + while read line + do + if [ `echo $line|grep ___________|wc -l` -eq 1 ] + then + fn=`basename $file|cut -d"." -f1` + echo "probe kernel.syscall.$fn {" >> $dest/$fn.stp + echo " if(execname()==\"e_$fn\") {" >> $dest/$fn.stp + fi + # ugly? yes. effective? yes. + if [[ `echo $line|grep dmsg|wc -l` -eq 1 + && `echo $line|grep char|wc -l` -eq 0 ]]; then + func=`echo $line|cut -d"\"" -f2` + var=` echo $line|cut -d"\"" -f4` + if [ `echo $var|grep void|wc -l` -eq 1 ] + then + echo " log(\"$func: $var = \".string(0))" >> $dest/$fn.stp + else + echo " log(\"$func: $var = \".string($var))" >> $dest/$fn.stp + fi + fi + done < $file + #close it up + echo " }" >> $dest/$fn.stp + echo -e "}\n" >> $dest/$fn.stp +done diff --git a/tapset/test/gencfiles.sh b/tapset/test/gencfiles.sh new file mode 100755 index 00000000..4ef4f571 --- /dev/null +++ b/tapset/test/gencfiles.sh @@ -0,0 +1,11 @@ +mkdir cfiles +cp build.sh cfiles +while read line +do + if [ `echo $line | grep "~~~~~~~~~~~~~~" | wc -l` -gt 0 ] + then + file=`echo $line |cut -d" " -f1` + else + echo "$line" >> cfiles/$file + fi +done < master.c diff --git a/tapset/test/master.c b/tapset/test/master.c new file mode 100644 index 00000000..af2fc03d --- /dev/null +++ b/tapset/test/master.c @@ -0,0 +1,4809 @@ +accept.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/socket.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//accept ___________________________________________ +void do_accept() { + struct sockaddr sa; + socklen_t upa; + accept(45,&sa,&upa); + dmsg("accept","s",45); + dmsg("accept","addr_uaddr",(int)&sa); + dmsg("accept","addrlen_uaddr",(int)&upa); +} + +int main (void) { + do_accept(); +} +access.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//access ___________________________________________ +void do_access() { + char path[] = "accesstr"; + access(path,66); + dmsg("access","pathname_uaddr",(int)&path); + dmsg("access","mode",66); +} + +int main (void) { + do_access(); +} +acct.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//acct _____________________________________________ +void do_acct() { + char fname[] = "goosfraba.txt"; + acct(fname); + dmsg("acct","filename_uaddr",(int)&fname); +} + +int main (void) { + do_acct(); +} +adjtimex.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/timex.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//adjtimex _________________________________________ +void do_adjtimex() { + struct timex tx; + adjtimex(&tx); + dmsg("adjtimex","buf_uaddr",(int)&tx); +} + +int main (void) { + do_adjtimex(); +} +alarm.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//alarm ____________________________________________ +void do_alarm() { + alarm(0); + dmsg("alarm","seconds",2); +} + +int main (void) { + do_alarm(); +} +bdflush.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//bdflush __________________________________________ +void do_bdflush() { + bdflush(5,998); + dmsg("bdflush","func",5); + dmsg("bdflush","data",998); +} + +int main (void) { + do_bdflush(); +} +bind.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/socket.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//bind _____________________________________________ +void do_bind() { + struct sockaddr sa; + bind(99,&sa,sizeof(sa)); + dmsg("bind","sockfd",99); + dmsg("bind","my_addr_uaddr",(int)&sa); + dmsg("bind","addrlen",sizeof(sa)); +} + +int main (void) { + do_bind(); +} +brk.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//brk ______________________________________________ +void do_brk() { + void *end; + brk(end); + dmsg("brk","brk",(int)end); +} + +int main (void) { + do_brk(); +} +capget.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#undef _POSIX_SOURCE +#include <sys/capability.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//capget ___________________________________________ +void do_capget() { + struct __user_cap_header_struct cuh; + struct __user_cap_data_struct cud; + capget(&cuh,&cud); + dmsg("capget","header_uaddr",(int)&cuh); + dmsg("capget","data_uaddr",(int)&cud); +} + +int main (void) { + do_capget(); +} +capset.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#undef _POSIX_SOURCE +#include <sys/capability.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//capset ___________________________________________ +void do_capset() { + struct __user_cap_header_struct cuh; + struct __user_cap_data_struct cud; + capset(&cuh,&cud); + dmsg("capset","header_uaddr",(int)&cuh); + dmsg("capset","data_uaddr",(int)&cud); +} + +int main (void) { + do_capset(); +} +chdir.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//chdir ____________________________________________ +void do_chdir() { + char path[] = "/home/does/not/exist"; + chdir(path); + dmsg("chdir","path_uaddr",(int)&path); +} + +int main (void) { + do_chdir(); +} +chmod.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/stat.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//chmod ____________________________________________ +void do_chmod() { + char path[] = "/home/mouth"; + chmod(path,755); + dmsg("chmod","path_uaddr",(int)&path); + dmsg("chmod","mode",755); +} + +int main (void) { + do_chmod(); +} +chown.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//chown ____________________________________________ +void do_chown() { + char path[] = "do_sys_chown"; + chown(path,91,19); + dmsg("chown","path_uaddr",(int)&path); + dmsg("chown","owner",91); + dmsg("chown","group",19); +} + +int main (void) { + do_chown(); +} +chroot.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//chroot ___________________________________________ +void do_chroot() { + char name[] = "paperbackbook"; + chroot(name); + dmsg("chroot","path_uaddr",(int)&name); +} + +int main (void) { + do_chroot(); +} +clock_getres.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <time.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//clock_getres _____________________________________ +void do_clock_getres() { + struct timespec ts; + clockid_t clid = (clockid_t)44; + clock_getres(clid,&ts); + dmsg("clock_getres","clk_id",clid); + dmsg("clock_getres","res_uaddr",(int)&ts); +} + +int main (void) { + do_clock_getres(); +} +clock_gettime.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <time.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//clock_gettime ____________________________________ +void do_clock_gettime() { + struct timespec ts; + clockid_t clid = (clockid_t)33; + clock_gettime(clid,&ts); + dmsg("clock_gettime","clk_id",clid); + dmsg("clock_gettime","tp_uaddr",(int)&ts); +} + +int main (void) { + do_clock_gettime(); +} +clock_nanosleep.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <time.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//clock_nanosleep __________________________________ +void do_clock_nanosleep() { + struct timespec ts1,ts2; + clockid_t clid = (clockid_t)55; + clock_nanosleep(clid,0,&ts1,&ts2); + dmsg("clock_nanosleep","clock_id",clid); + dmsg("clock_nanosleep","flags",0); + dmsg("clock_nanosleep","rqtp_uaddr",(int)&ts1); + dmsg("clock_nanosleep","rmtp_uaddr",(int)&ts2); +} + +int main (void) { + do_clock_nanosleep(); +} +clock_settime.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <time.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//clock_settime ____________________________________ +void do_clock_settime() { + struct timespec ts; + clockid_t clid = (clockid_t)21; + clock_settime(clid,&ts); + dmsg("clock_settime","clk_id",clid); + dmsg("clock_settime","tp_uaddr",(int)&ts); +} + +int main (void) { + do_clock_settime(); +} +close.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//close ____________________________________________ +void do_close() { + close(5); + dmsg("close","fd",5); +} + +int main (void) { + do_close(); +} +connect.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/socket.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//connect __________________________________________ +void do_connect() { + struct sockaddr sa; + connect(33,&sa,sizeof(sa)); + dmsg("connect","sockfd",99); + dmsg("connect","serv_addr_uaddr",(int)&sa); + dmsg("connect","addrlen",sizeof(sa)); +} + +int main (void) { + do_connect(); +} +creat.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/stat.h> +#include <fcntl.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//creat ____________________________________________ +void do_creat() { + char path[] = "/a7x/chap/four"; + creat(path,14); + dmsg("creat","pathname_uaddr",(int)path); + dmsg("creat","mode",14); +} + +int main (void) { + do_creat(); +} +delete_module.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//delete_module ____________________________________ +void do_delete_module() { + char mod[] = "module"; + delete_module(mod,10); + dmsg("delete_module","name_user_uaddr",(int)&mod); + dmsg("delete_module","flags",10); +} + +int main (void) { + do_delete_module(); +} +dup2.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//dup2 _____________________________________________ +void do_dup2() { + dup2(34,56); + dmsg("dup2","oldfd",34); + dmsg("dup2","newfd",56); +} + +int main (void) { + do_dup2(); +} +dup.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//dup ______________________________________________ +void do_dup() { + dup(900); + dmsg("dup","oldfd",900); +} + +int main (void) { + do_dup(); +} +epoll_create.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/epoll.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//epoll_create _____________________________________ +void do_epoll_create() { + epoll_create(13); + dmsg("epoll_create","size",13); +} + +int main (void) { + do_epoll_create(); +} +epoll_ctl.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/epoll.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//epoll_ctl ________________________________________ +void do_epoll_ctl() { + struct epoll_event epe; + epoll_ctl(71,48,9,&epe); + dmsg("epoll_ctl","epfd",71); + dmsg("epoll_ctl","op",48); + dmsg("epoll_ctl","fd",9); + dmsg("epoll_ctl","event_uaddr",(int)&epe); +} + +int main (void) { + do_epoll_ctl(); +} +epoll_wait.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/epoll.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//epoll_wait _______________________________________ +void do_epoll_wait() { + struct epoll_event ev; + epoll_wait(17,&ev,9,8); + dmsg("epoll_wait","epfd",17); + dmsg("epoll_wait","events_uaddr",(int)&ev); + dmsg("epoll_wait","maxevents",9); + dmsg("epoll_wait","timeout",8); +} + +int main (void) { + do_epoll_wait(); +} +exit.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> +#include <stdlib.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//exit _____________________________________________ +void do_exit() { + dmsg("exit","status",4); + exit(4); +} + +int main (void) { + do_exit(); +} +exit_group.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <syscall.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//exit_group _______________________________________ +void do_exit_group() { + dmsg("exit_group","status",5); + syscall(SYS_exit_group,5); +} + +int main (void) { + do_exit_group(); +} +fadvise64_64.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <syscall.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//fadvise64_64 _____________________________________ +void do_fadvise64_64() { + syscall(SYS_fadvise64_64,54,49,3,9); + dmsg("fadvise64_64","fd",54); + dmsg("fadvise64_64","offset",49); + dmsg("fadvise64_64","len",3); + dmsg("fadvise64_64","advise",9); +} + +int main (void) { + do_fadvise64_64(); +} +fadvise64.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <syscall.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//fadvise64 ________________________________________ +void do_fadvise64 () { + syscall(SYS_fadvise64,54,49,3,9); + dmsg("fadvise64","fd",54); + dmsg("fadvise64","offset",49); + dmsg("fadvise64","len",3); + dmsg("fadvise64","advise",9); +} + +int main (void) { + do_fadvise64(); +} +fchdir.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//fchdir ___________________________________________ +void do_fchdir() { + fchdir(88); + dmsg("fchdir","fd",88); +} + +int main (void) { + do_fchdir(); +} +fchmod.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/stat.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//fchmod ___________________________________________ +void do_fchmod() { + fchmod(4,655); + dmsg("fchmod","fildes",4); + dmsg("fchmod","mode",655); +} + +int main (void) { + do_fchmod(); +} +fchown.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//fchown ___________________________________________ +void do_fchown() { + fchown(9,45,88); + dmsg("lchown","fd",9); + dmsg("lchown","owner",45); + dmsg("lchown","group",88); +} + +int main (void) { + do_fchown(); +} +fcntl64.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <syscall.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//fcntl64 __________________________________________ +void do_fcntl64() { + syscall(SYS_fcntl64,4,5,6); + dmsg("fcntl64","fd",4); + dmsg("fcntl64","cmd",5); + dmsg("fcntl64","arg",6); +} + +int main (void) { + do_fcntl64(); +} +fcntl.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> +#include <fcntl.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//fcntl ____________________________________________ +void do_fcntl() { + fcntl(4,5,6); + dmsg("fcntl","fd",4); + dmsg("fcntl","cmd",5); + dmsg("fcntl","arg",6); +} + +int main (void) { + do_fcntl(); +} +fdatasync.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//fdatasync ________________________________________ +void do_fdatasync() { + fdatasync(11); + dmsg("fdatasync","fd",11); +} + +int main (void) { + do_fdatasync(); +} +fgetxattr.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//fgetxattr ________________________________________ +void do_fgetxattr() { + char name[] = "allthatIgot"; + void *foo; + fgetxattr(43,name,foo,61); + dmsg("fgetxattr","fildes",43); + dmsg("fgetxattr","path_uaddr",(int)&name); + dmsg("fgetxattr","size",61); +} + +int main (void) { + do_fgetxattr(); +} +flistxattr.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <attr/xattr.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//flistxattr _______________________________________ +void do_flistxattr(){ + char path[] = "just/look"; + flistxattr(52,path,sizeof(path)); + dmsg("flistxattr","fildes",52); + dmsg("flistxattr","list_uaddr",(int)&path); + dmsg("flistxattr","size",sizeof(path)); +} + +int main (void) { + do_flistxattr(); +} +flock.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/file.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//flock ____________________________________________ +void do_flock() { + flock(6,55); + dmsg("flock","fd",6); + dmsg("flock","operation",55); +} + +int main (void) { + do_flock(); +} +fremovexattr.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <attr/xattr.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//fremovexattr _____________________________________ +void do_fremovexattr() { + char name[] = "hardtosay"; + fremovexattr(93,name); + dmsg("fremovexattr","fildes",93); + dmsg("fremovexattr","name_uaddr",(int)&name); +} + +int main (void) { + do_fremovexattr(); +} +fsetxattr.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <attr/xattr.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//fsetxattr ________________________________________ +void do_fsetxattr() { + char name[] = "openmouth"; + void *foo; + fsetxattr(34,name,foo,9,44); + dmsg("fsetxattr","fildes",34); + dmsg("fsetxattr","name_uaddr",(int)&name); + dmsg("fsetxattr","size",9); + dmsg("fsetxattr","flags",44); +} + +int main (void) { + do_fsetxattr(); +} +fstat64.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/stat.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//fstat64 __________________________________________ +void do_fstat64() { + struct stat s; + fstat64(9,&s); + dmsg("fstat64","fd",9); + dmsg("fstat64","buf_uaddr",(int)&s); +} + +int main (void) { + do_fstat64(); +} +fstat.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/stat.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//fstat ____________________________________________ +void do_fstat() { + struct stat s; + fstat(2,&s); + dmsg("fstat","fd",2); + dmsg("fstat","buf_uaddr",(int)&s); +} + +int main (void) { + do_fstat(); +} +fstatfs64.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/vfs.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//fstatfs64 ________________________________________ +void do_fstatfs64() { + struct statfs s; + fstatfs64(64,8,&s); + dmsg("fstatfs64","fd",64); + dmsg("fstatfs64","sz",8); + dmsg("fstatfs64","buf_uaddr",(int)&s); +} + +int main (void) { + do_fstatfs64(); +} +fstatfs.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/vfs.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//fstatfs __________________________________________ +void do_fstatfs() { + struct statfs s; + fstatfs(54,&s); + dmsg("fstatfs","fd",54); + dmsg("fstatfs","s",(int)&s); +} + +int main (void) { + do_fstatfs(); +} +fsync.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//fsync ____________________________________________ +void do_fsync() { + fsync(99); + dmsg("fsync","fd",99); +} + +int main (void) { + do_fsync(); +} +ftruncate64.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> +#include <sys/types.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//ftruncate64 ______________________________________ +void do_ftruncate64() { + ftruncate64(79,54); + dmsg("ftruncate64","fd",79); + dmsg("ftruncate64","length",54); +} + +int main (void) { + do_ftruncate64(); +} +ftruncate.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> +#include <sys/types.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//ftruncate ________________________________________ +void do_ftruncate() { + ftruncate(73,51); + dmsg("ftruncate","fd",73); + dmsg("ftruncate","length",51); +} + +int main (void) { + do_ftruncate(); +} +futex.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <linux/futex.h> +#include <sys/time.h> +#include <syscall.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//futex ____________________________________________ +void do_futex() { + int counter; + struct timespec ts; + syscall(SYS_futex,&counter,FUTEX_WAIT,76,&ts); + dmsg("futex","futex_uaddr",(int)&counter); + dmsg("futex","op",FUTEX_WAIT); + dmsg("futex","val",76); + dmsg("futex","timeout_uaddr",(int)&ts); +} + +int main (void) { + do_futex(); +} +getcwd.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//getcwd ___________________________________________ +void do_getcwd() { + char buf[100]; + getcwd(buf,sizeof(buf)); + dmsg("getcwd","buf_uaddr",(int)&buf); + dmsg("getcwd","size",sizeof(buf)); +} + +int main (void) { + do_getcwd(); +} +getdents64.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> +#include <linux/types.h> +#include <linux/dirent.h> +#include <linux/unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//getdents64 _______________________________________ +void do_getdents64() { + struct dirent dirp; + syscall(SYS_getdents64,71,&dirp,99); + dmsg("getdents64","fd",71); + dmsg("getdents64","dirp_uaddr",(int)&dirp); + dmsg("getdents64","count",99); +} + +int main (void) { + do_getdents64(); +} +getdents.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> +#include <linux/types.h> +#include <linux/dirent.h> +#include <linux/unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//getdents _________________________________________ +void do_getdents() { + struct dirent dirp; + syscall(SYS_getdents,71,&dirp,99); + dmsg("getdents","fd",71); + dmsg("getdents","dirp_uaddr",(int)&dirp); + dmsg("getdents","count",99); +} + +int main (void) { + do_getdents(); +} +getegid.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> +#include <sys/types.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//getegid __________________________________________ +void do_getegid() { + getegid(); + dmsg("getegid","void",0); +} + +int main (void) { + do_getegid(); +} +geteuid.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//geteuid __________________________________________ +void do_geteuid() { + geteuid(); + dmsg("geteuid","void",0); +} + +int main (void) { + do_geteuid(); +} +getgid.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//getgid ___________________________________________ +void do_getgid() { + getgid(); + dmsg("getgid","void",0); +} + +int main (void) { + do_getgid(); +} +getgroups.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//getgroups ________________________________________ +void do_getgroups() { + gid_t list[3]; + getgroups(3,list); + dmsg("getgroups","size",sizeof(list)); + dmsg("getgroups","list_uaddr",(int)list); +} + +int main (void) { + do_getgroups(); +} +gethostname.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//gethostname ______________________________________ +void do_gethostname() { + char name[] = "myhostname"; + gethostname(name,sizeof(name)); + dmsg("gethostname","hostname_uaddr",(int)&name); + dmsg("gethostname","len",sizeof(name)); +} + +int main (void) { + do_gethostname(); +} +getitimer.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/time.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//getitimer ________________________________________ +void do_getitimer() { + struct itimerval it; + getitimer(ITIMER_VIRTUAL,&it); + dmsg("getitimer","which",ITIMER_VIRTUAL); + dmsg("getitimer","value_uaddr",(int)&it); +} + +int main (void) { + do_getitimer(); +} +getpeername.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/socket.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//getpeername ______________________________________ +void do_getpeername() { + struct sockaddr sa; + socklen_t slt; + getpeername(34,&sa,&slt); + dmsg("getpeername","s",34); + dmsg("getpeername","name_uaddr",(int)&sa); + dmsg("getpeername","namelen_uaddr",(int)&slt); +} + +int main (void) { + do_getpeername(); +} +getpgid.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//getpgid __________________________________________ +void do_getpgid() { + getpgid(); + dmsg("getpgid","void",0); +} + +int main (void) { + do_getpgid(); +} +getpgrp.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//getpgrp __________________________________________ +void do_getpgrp() { + getpgrp(); + dmsg("getpgrp","void",0); +} + +int main (void) { + do_getpgrp(); +} +getpid.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//getpid ___________________________________________ +void do_getpid() { + getpid(); + dmsg("getpid","void",0); +} + +int main (void) { + do_getpid(); +} +getppid.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//getppid __________________________________________ +void do_getppid() { + getppid(); + dmsg("getppid","void",0); +} + +int main (void) { + do_getppid(); +} +getpriority.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/time.h> +#include <sys/resource.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//getpriority ______________________________________ +void do_getpriority() { + getpriority(28,29); + dmsg("getpriority","which",28); + dmsg("getpriority","who",29); +} + +int main (void) { + do_getpriority(); +} +getresgid.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#define _GNU_SOURCE +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//getresgid ________________________________________ +void do_getresgid() { + unsigned int r,e,s; + getresgid(&r,&e,&s); + dmsg("getresgid","rgid_uaddr",(int)&r); + dmsg("getresgid","egid_uaddr",(int)&e); + dmsg("getresgid","sgid_uaddr",(int)&s); +} + +int main (void) { + do_getresgid(); +} +getresuid.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#define _GNU_SOURCE +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//getresuid ________________________________________ +void do_getresuid() { + unsigned int r,e,s; + getresuid(&r,&e,&s); + dmsg("getresuid","ruid_uaddr",(int)&r); + dmsg("getresuid","euid_uaddr",(int)&e); + dmsg("getresuid","suid_uaddr",(int)&s); +} + +int main (void) { + do_getresuid(); +} +getrlimit.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/time.h> +#include <sys/resource.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//getrlimit ________________________________________ +void do_getrlimit() { + struct rlimit rl; + getrlimit(16,&rl); + dmsg("getrlimit","resource",16); + dmsg("getrlimit","rlim_uaddr",(int)&rl); +} + +int main (void) { + do_getrlimit(); +} +getrusage.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/time.h> +#include <sys/resource.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//getrusage ________________________________________ +void do_getrusage() { + struct rusage ru; + getrusage(65,&ru); + dmsg("getrusage","who",65); + dmsg("getrusage","usage_uaddr",(int)&ru); +} + +int main (void) { + do_getrusage(); +} +getsid.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//getsid ___________________________________________ +void do_getsid() { + getsid(2); + dmsg("getsid","pid",2); +} + +int main (void) { + do_getsid(); +} +getsockname.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/socket.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//getsockname ______________________________________ +void do_getsockname() { + struct sockaddr sa; + socklen_t nl; + getsockname(76,&sa,&nl); + dmsg("getsockname","s",76); + dmsg("getsockname","name_uaddr",(int)&sa); + dmsg("getsockname","namelen_uaddr",(int)&nl); +} + +int main (void) { + do_getsockname(); +} +getsockopt.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/socket.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//getsockopt _______________________________________ +void do_getsockopt() { + void *optval; + socklen_t len; + getsockopt(5,6,7,optval,&len); + dmsg("getsockopt","fd",4); + dmsg("getsockopt","level",9); + dmsg("getsockopt","optname",1); + dmsg("getsockopt","optval",(int)&optval); + dmsg("getsockopt","optlen",(int)&len); +} + +int main (void) { + do_getsockopt(); +} +gettid.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <linux/unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//gettid ___________________________________________ +void do_gettid() { + //gettid(); + dmsg("gettid","void",0); +} + +int main (void) { + do_gettid(); +} +gettimeofday.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/time.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//gettimeofday _____________________________________ +void do_gettimeofday() { + struct timeval tv; + struct timezone tz; + gettimeofday(&tv,&tz); + dmsg("gettimeofday","tv_uaddr",(int)&tv); + dmsg("gettimeofday","tz_uaddr",(int)&tz); +} + +int main (void) { + do_gettimeofday(); +} +getuid.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> +#include <sys/types.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//getuid ___________________________________________ +void do_getuid() { + getuid(); + dmsg("getuid","void",0); +} + +int main (void) { + do_getuid(); +} +getxattr.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <attr/xattr.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//getxattr _________________________________________ +void do_getxattr() { + char path[] = "/open/up/your/eyes"; + char name[] = "consequence"; + void *foo; + getxattr(path,name,foo,74); + dmsg("getxattr","path_uaddr",(int)&path); + dmsg("getxattr","name_uaddr",(int)&name); + dmsg("getxattr","size",74); +} + +int main (void) { + do_getxattr(); +} +init_module.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//init_module ______________________________________ +void do_init_module() { + void *func; + char args[0]; + init_module(func,0,&args); + dmsg("init_module","umod_uaddr",(int)&func); + dmsg("init_module","len",0); + dmsg("init_module","uargs_uaddr",(int)&args); +} + +int main (void) { + do_init_module(); +} +ioctl.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/ioctl.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//ioctl ____________________________________________ +void do_ioctl() { + ioctl(19,97,67); + dmsg("ioctl","fd",19); + dmsg("ioctl","request",97); + dmsg("ioctl","argp",67); +} + +int main (void) { + do_ioctl(); +} +ioperm.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> +#include <sys/io.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//ioperm ___________________________________________ +void do_ioperm() { + ioperm(7,3,7); + dmsg("ioperm","from",7); + dmsg("ioperm","num",3); + dmsg("ioperm","turn_on",7); +} + +int main (void) { + do_ioperm(); +} +iopl.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/io.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//iopl _____________________________________________ +void do_iopl() { + iopl(7); + dmsg("iopl","level",7); +} + +int main (void) { + do_iopl(); +} +kill.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <signal.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//kill _____________________________________________ +void do_kill() { + kill(4,6); + dmsg("kill","pid",4); + dmsg("kill","sig",6); +} + +int main (void) { + do_kill(); +} +lchown.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//lchown ___________________________________________ +void do_lchown() { + char path[] = "do_sys_lchown"; + lchown(path,17,71); + dmsg("lchown","path_uaddr",(int)&path); + dmsg("lchown","owner",17); + dmsg("lchown","group",71); +} + +int main (void) { + do_lchown(); +} +lgetxattr.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <attr/xattr.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//lgetxattr ________________________________________ +void do_lgetxattr() { + char path[] = "/do/deep"; + char name[] = "offgaurd"; + void *foo; + lgetxattr(path,name,foo,22); + dmsg("lgetxattr","path_uaddr",(int)&path); + dmsg("lgetxattr","name_uaddr",(int)&name); + dmsg("lgetxattr","size",22); +} + +int main (void) { + do_lgetxattr(); +} +link.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//link _____________________________________________ +void do_link() { + char path[] = "/home/ajkd"; + char oldpath[] = "does/not/exist"; + link(path,oldpath); + dmsg("link","oldpath_uaddr",(int)&path); + dmsg("link","newpath_uaddr",(int)&oldpath); +} + +int main (void) { + do_link(); +} +listen.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/socket.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//listen ___________________________________________ +void do_listen() { + listen(5,9); + dmsg("listen","s",5); + dmsg("listen","backlog",9); +} + +int main (void) { + do_listen(); +} +listxattr.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <attr/xattr.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//listxattr ________________________________________ +void do_listxattr() { + char path[] = "most/perfect/and/pure"; + char list[] = "almostfeelslikea"; + listxattr(path,list,sizeof(list)); + dmsg("listxattr","path_uaddr",(int)&path); + dmsg("listxattr","list_uaddr",(int)&list); + dmsg("listxattr","size",sizeof(list)); +} + +int main (void) { + do_listxattr(); +} +llistxattr.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//llistxattr _______________________________________ +void do_llistxattr() { + char path[] = "is/it/worth/it"; + char list[] = "canyouevenhearme"; + llistxattr(path,list,sizeof(list)); + dmsg("llistxattr","path_uaddr",(int)&path); + dmsg("llistxattr","list_uaddr",(int)&list); + dmsg("llistxattr","size",sizeof(list)); +} + +int main (void) { + do_llistxattr(); +} +llseek.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> +#include <linux/unistd.h> +#include <sys/types.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//llseek ___________________________________________ +void do_llseek() { + loff_t lt; + llseek(5,7,3,<,99); + dmsg("llseek","fd",5); + dmsg("llseek","offset_high",7); + dmsg("llseek","offset_low",3); + dmsg("llseek","result_uaddr",(int)<); + dmsg("llseek","origin",99); +} + +int main (void) { + do_llseek(); +} +lremovexattr.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <attr/xattr.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//lremovexattr _____________________________________ +void do_lremovexattr() { + char path[] = "/a/thousand/times"; + char name[] = "yearsgoneby"; + lremovexattr(path,name); + dmsg("lremovexattr","path_uaddr",(int)&path); + dmsg("lremovexattr","name_uaddr",(int)&name); +} + +int main (void) { + do_lremovexattr(); +} +lseek.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//lseek ____________________________________________ +void do_lseek() { + lseek(9,13,58); + dmsg("lseek","fd",9); + dmsg("lseek","offset",13); + dmsg("lseek","whence",58); +} + +int main (void) { + do_lseek(); +} +lsetxattr.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <attr/xattr.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//lsetxattr ________________________________________ +void do_lsetxattr() { + char path[] = "/this/is/a/test"; + char name[] = "ofwillpower"; + void *foo; + lsetxattr(path,name,foo,86,68); + dmsg("lsetxattr","path_uaddr",(int)&path); + dmsg("lsetxattr","name_uaddr",(int)&name); + dmsg("lsetxattr","size",86); + dmsg("lsetxattr","flags",68); +} + +int main (void) { + do_lsetxattr(); +} +lstat64.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/stat.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//lstat64 __________________________________________ +void do_lstat64() { + struct stat s; + char name[] = "whiteknuckles"; + lstat64(name,&s); + dmsg("lstat64","filename_uaddr",(int)&name); + dmsg("lstat64","buf_uaddr",(int)&s); +} + +int main (void) { + do_lstat64(); +} +lstat.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/stat.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//lstat ____________________________________________ +void do_lstat() { + char filename[] = "trythisone"; + struct stat s; + lstat(filename,&s); + dmsg("lstat","file_name_uaddr",(int)&filename); + dmsg("lstat","buf_uaddr",(int)&s); +} + +int main (void) { + do_lstat(); +} +madvise.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/mman.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//madvise __________________________________________ +void do_madvise() { + void *addr; + madvise(addr,9,18); + dmsg("madvise","start",(int)addr); + dmsg("madvise","length",9); + dmsg("madvise","advice",18); +} + +int main (void) { + do_madvise(); +} +mincore.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> +#include <sys/mman.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//mincore __________________________________________ +void do_mincore() { + void *addr; + unsigned char vec; + mincore(addr,61,&vec); + dmsg("mincore","start",(int)addr); + dmsg("mincore","length",61); + dmsg("mincore","vec_uaddr",(int)&vec); +} + +int main (void) { + do_mincore(); +} +mkdir.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/stat.h> +#include <sys/types.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//mkdir ____________________________________________ +void do_mkdir() { + char path[] = "/crde"; + mkdir(path,755); + dmsg("mkdir","pathname_uaddr",(int)&path); + dmsg("mkdir","mode",755); +} + +int main (void) { + do_mkdir(); +} +mknod.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/stat.h> +#include <fcntl.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//mknod ____________________________________________ +void do_mknod() { + char name[] = "/home/test"; + mknod(name,5,4); + dmsg("mknod","pathname_uaddr",(int)&name); + dmsg("mknod","mode",5); + dmsg("mknod","dev",4); +} + +int main (void) { + do_mknod(); +} +mlockall.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/mman.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//mlockall _________________________________________ +void do_mlockall() { + mlockall(33); + dmsg("mlockall","flags",33); +} + +int main (void) { + do_mlockall(); +} +mlock.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/mman.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//mlock ____________________________________________ +void do_mlock() { + void *addr; + mlock(addr,43); + dmsg("mlock","addr",(int)addr); + dmsg("mlock","len",43); +} + +int main (void) { + do_mlock(); +} +mmap2.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/mman.h> +#include <syscall.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//mmap2 ____________________________________________ +void do_mmap2() { + syscall(SYS_mmap2,87,65,47,82,88,15); + dmsg("mmap2","addr",87); + dmsg("mmap2","len",65); + dmsg("mmap2","prot",47); + dmsg("mmap2","flags",82); + dmsg("mmap2","fd",88); + dmsg("mmap2","pgoff",15); +} + +int main (void) { + do_mmap2(); +} +modify_ldt.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +//#include <linux/ldt.h> +#include <linux/unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//modify_ldt _______________________________________ +void do_modify_ldt() { + void *ptr; + modify_ldt(12,ptr,93); + dmsg("modify_ldt","func",12); + dmsg("modify_ldt","bytecount",93); +} + +int main (void) { + do_modify_ldt(); +} +mount.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/mount.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//mount ____________________________________________ +void do_mount() { + char dev[] = "hda2"; + char dir[] = "/home/krstaffo"; + char type[] = "xfs"; + void *data; + mount(dev,dir,type,23,data); + dmsg("mount","source_uaddr",(int)&dev); + dmsg("mount","target_uaddr",(int)&dir); + dmsg("mount","filesystemtype_uaddr",(int)&type); + dmsg("mount","mountflags",23); +} + +int main (void) { + do_mount(); +} +mprotect.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/mman.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//mprotect _________________________________________ +void do_mprotect() { + void *mem; + mprotect(mem,5,9); + dmsg("mprotect","len",5); + dmsg("mprotect","prot",9); +} + +int main (void) { + do_mprotect(); +} +mq_getsetattr.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <syscall.h> +#include <mqueue.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//mq_getsetattr ____________________________________ +void do_mq_getsetattr() { + struct mq_attr mqa,mqb; + syscall(SYS_mq_getsetattr,19,&mqa,&mqb); + dmsg("mq_getsetattr","mqdes",19); + dmsg("mq_getsetattr","u_mqstat_uaddr",(int)&mqa); + dmsg("mq_getsetattr","u_omqstat_uaddr",(int)&mqb); +} + +int main (void) { + do_mq_getsetattr(); +} +mq_notify.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <mqueue.h> +#include <syscall.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//mq_notify ________________________________________ +void do_mq_notify() { + struct sigevent se; + syscall(SYS_mq_notify,19,&se); + dmsg("mq_notify","mqdes",19); + dmsg("mq_notify","notification_uaddr",(int)&se); +} + +int main (void) { + do_mq_notify(); +} +mq_open.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <mqueue.h> +#include <syscall.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//mq_open __________________________________________ +void do_mq_open() { + char name[] = "systemtap"; + struct mq_attr mqa; + syscall(SYS_mq_open,name,88,900,&mqa); + dmsg("mq_open","name_uaddr",(int)&name); + dmsg("mq_open","oflag",88); + dmsg("mq_open","mode",900); + dmsg("mq_open","u_attr_uaddr",(int)&mqa); +} + +int main (void) { + do_mq_open(); +} +mq_timedreceive.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <mqueue.h> +#include <time.h> +#include <syscall.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//mq_timedreceive __________________________________ +void do_mq_timedreceive() { + char buf[3]; + unsigned int prio; + struct timespec ts; + syscall(SYS_mq_timedreceive,61,buf,sizeof(buf),&prio,&ts); + dmsg("mq_timedreceive","mqdes",61); + dmsg("mq_timedreceive","msg_ptr_uaddr",(int)&buf); + dmsg("mq_timedreceive","msg_len",sizeof(buf)); + dmsg("mq_timedreceive","msg_prio_uaddr",(int)&prio); + dmsg("mq_timedreceive","abs_timeout_uaddr",(int)&ts); +} + +int main (void) { + do_mq_timedreceive(); +} +mq_timedsend.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <mqueue.h> +#include <time.h> +#include <syscall.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//mq_timedsend _____________________________________ +void do_mq_timedsend() { + char buf[3]; + struct timespec ts; + syscall(SYS_mq_timedsend,61,buf,sizeof(buf),7,&ts); + dmsg("mq_timedsend","mqdes",61); + dmsg("mq_timedsend","msg_ptr_uaddr",(int)&buf); + dmsg("mq_timedsend","msg_len",sizeof(buf)); + dmsg("mq_timedsend","msg_prio",7); + dmsg("mq_timedsend","abs_timeout_uaddr",(int)&ts); +} + +int main (void) { + do_mq_timedsend(); +} +mq_unlink.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <mqueue.h> +#include <syscall.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//mq_unlink ________________________________________ +void do_mq_unlink() { + char name[] = "systemtap"; + syscall(SYS_mq_unlink,name); + dmsg("mq_unlink","u_name_uaddr",(int)&name); +} + +int main (void) { + do_mq_unlink(); +} +mremap.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> +#include <sys/mman.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//mremap ___________________________________________ +void do_mremap() { + void *old; + mremap(old,8,7,6); + dmsg("mremap","old_size",8); + dmsg("mremap","new_size",7); + dmsg("mremap","flags",6); +} + +int main (void) { + do_mremap(); +} +msgctl.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/ipc.h> +#include <sys/msg.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//msgctl ___________________________________________ +void do_msgctl() { + struct msqid_ds buf; + msgctl(45,99,&buf); + dmsg("msgctl","msqid",45); + dmsg("msgctl","cmd",99); + dmsg("msgctl","buf_uaddr",(int)&buf); +} + +int main (void) { + do_msgctl(); +} +msgget.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/ipc.h> +#include <sys/msg.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//msgget ___________________________________________ +void do_msgget() { + msgget(4,90); + dmsg("msgget","key",4); + dmsg("msgget","msgflg",90); +} + +int main (void) { + do_msgget(); +} +msgrcv.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/ipc.h> +#include <sys/msg.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//msgrcv ___________________________________________ +void do_msgrcv() { + struct msgbasd { + long mtype; + char mtext[1]; + }; + struct msgbasd msgb; + msgrcv(21,&msgb,39,16,90); + dmsg("msgrcv","msqid",21); + dmsg("msgrcv","msgp_uaddr",(int)&msgb); + dmsg("msgrcv","msgsz",39); + dmsg("msgrcv","msgtyp",16); + dmsg("msgrcv","msgflg",90); +} + +int main (void) { + do_msgrcv(); +} +msgsnd.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/ipc.h> +#include <sys/msg.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//msgsnd ___________________________________________ +void do_msgsnd() { + struct msgbasd { + long mtype; + char mtext[1]; + }; + struct msgbasd msgb; + msgsnd(19,&msgb,87,50); + dmsg("msgsnd","msqid",19); + dmsg("msgsnd","msgp_uaddr",(int)&msgb); + dmsg("msgsnd","msgsz",87); + dmsg("msgsnd","msgflg",50); +} + +int main (void) { + do_msgsnd(); +} +msync.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/mman.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//msync ____________________________________________ +void do_msync() { + void *addr; + msync(addr,9,3); + dmsg("msync","start",(int)addr); + dmsg("msync","length",9); + dmsg("msync","flags",3); +} + +int main (void) { + do_msync(); +} +munlockall.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/mman.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//munlockall _______________________________________ +void do_munlockall() { + munlockall(); + dmsg("munlockall","void",0); +} + +int main (void) { + do_munlockall(); +} +munlock.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//munlock __________________________________________ +void do_munlock() { + void *addr; + mlock(addr,43); + dmsg("munlock","addr",(int)addr); + dmsg("munlock","len",43); +} + +int main (void) { + do_munlock(); +} +munmap.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/mman.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//munmap ___________________________________________ +void do_munmap() { + void *addr; + munmap(addr,66); + dmsg("munmap","start",(int)addr); + dmsg("munmap","length",66); +} + +int main (void) { + do_munmap(); +} +nanosleep.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <time.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//nanosleep ________________________________________ +void do_nanosleep() { + struct timespec rqtp, rmtp; + rqtp.tv_sec = 1; + rqtp.tv_nsec = 1; + nanosleep(&rqtp,&rmtp); + dmsg("nanosleep","req_uaddr",(int)&rqtp); + dmsg("nanosleep","rem_uaddr",(int)&rmtp); +} + +int main (void) { + do_nanosleep(); +} +nice.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <time.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//nice _____________________________________________ +void do_nice() { + int res = nice(3); + dmsg("nice","inc",3); +} + +int main (void) { + do_nice(); +} +old_getrlimit.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/time.h> +#include <sys/resource.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//old_getrlimit ____________________________________ +void do_old_getrlimit() { + struct rlimit rl; + getrlimit(14,&rl); + dmsg("old_getrlimit","resource",14); + dmsg("old_getrlimit","rlim_uaddr",(int)&rl); +} + +int main (void) { + do_old_getrlimit(); +} +oldumount.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/mount.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//oldumount ________________________________________ +void do_oldumount() { + char dev[] = "hda1"; + umount(dev); + dmsg("oldumount","target_uaddr",(int)&dev); +} + +int main (void) { + do_oldumount(); +} +open.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/stat.h> +#include <fcntl.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//open _____________________________________________ +void do_open() { + char path[] = "/a7x/try/again"; + open(path,73,145); + dmsg("open","filename_uaddr",(int)&path); + dmsg("open","flags",73); + dmsg("open","mode",145); +} + +int main (void) { + do_open(); +} +pause.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//pause ____________________________________________ +void do_pause() { + pause(); + dmsg("pause","void",0); +} + +int main (void) { + do_pause(); +} +personality.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <linux/personality.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//personality ______________________________________ +void do_personality() { + personality(9); + dmsg("personality","persona",9); +} + +int main (void) { + do_personality(); +} +pipe.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//pipe _____________________________________________ +void do_pipe() { + int fildes[2]; + pipe(fildes); + dmsg("pipe","fildes_uaddr",(int)&fildes); +} + +int main (void) { + do_pipe(); +} +pivot_root.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//pivot_root _______________________________________ +void do_pivot_root() { + char new_root[] = "newroot"; + char put_old[] = "put_old"; + pivot_root(new_root,put_old); + dmsg("pivot_root","new_root_uaddr",(int)&new_root); + dmsg("pivot_root", "old_root_uaddr",(int)&put_old); +} + +int main (void) { + do_pivot_root(); +} +poll.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/poll.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//poll _____________________________________________ +void do_poll() { + struct pollfd pfd[4]; + poll(pfd,4,3); + dmsg("poll","ufds_uaddr",(int)&pfd); + dmsg("poll","nfds",16); + dmsg("poll","timeout",3); +} + +int main (void) { + do_poll(); +} +prctl.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/prctl.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//prctl ____________________________________________ +void do_prctl() { + prctl(7,6,5,4,3); + dmsg("prctl","option",7); + dmsg("prctl","arg2",6); + dmsg("prctl","arg3",5); + dmsg("prctl","arg4",4); + dmsg("prctl","arg5",3); +} + +int main (void) { + do_prctl(); +} +pread64.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#define _XOPEN_SOURCE 500 +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//pread64 __________________________________________ +void do_pread64() { + void *foo; + pread64(7,foo,98,6); + dmsg("pread64","fd",7); + dmsg("pread64","buf_uaddr",(int)&foo); + dmsg("pread64","count",98); + dmsg("pread64","offset",6); +} + +int main (void) { + do_pread64(); +} +ptrace.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/ptrace.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//ptrace ___________________________________________ +void do_ptrace() { + void *addr,*data; + ptrace(PTRACE_TRACEME,89,addr,data); + dmsg("ptrace","request",PTRACE_TRACEME); + dmsg("ptrace","pid",89); + dmsg("ptrace","addr",(int)addr); + dmsg("ptrace","data",(int)data); +} + +int main (void) { + do_ptrace(); +} +pwrite64.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#define _XOPEN_SOURCE 500 +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//pwrite64 __________________________________________ +void do_pwrite64() { + void *foo; + pwrite64(88,foo,64,1); + dmsg("pwrite64","fd",88); + dmsg("pwrite64","buf_uaddr",(int)&foo); + dmsg("pwrite64","count",64); + dmsg("pwrite64","offset",1); +} + +int main (void) { + do_pwrite64(); +} +quotactl.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <linux/quota.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//quotactl _________________________________________ +void do_quotactl() { + char special[] = "nullterminated"; + quotactl(9,special,7,(caddr_t)991); + dmsg("quotactl","cmd",9); + dmsg("quotactl","special_uaddr",(int)&special); + dmsg("quotactl","id",7); +} + +int main (void) { + do_quotactl(); +} +readahead.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//readahead ________________________________________ +void do_readahead() { + readahead(61,49,30); + dmsg("readahead","fd",61); + dmsg("readahead","offset",49); + dmsg("readahead","count",30); +} + +int main (void) { + do_readahead(); +} +read.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//read _____________________________________________ +void do_read() { + char buf[50]; + read(8,&buf,sizeof(buf)); + dmsg("read","fd",8); + dmsg("read","buf_uaddr",(int)&buf); + dmsg("read","count",sizeof(buf)); +} + +int main (void) { + do_read(); +} +readlink.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//readlink _________________________________________ +void do_readlink() { + char path[] = "/inte/lsa/mach"; + char buf[100]; + readlink(path,buf,sizeof(buf)); + dmsg("readlink","path_uaddr",(int)&path); + dmsg("readlink","buf_uaddr",(int)&buf); + dmsg("readlink","bufsiz",sizeof(buf)); +} + +int main (void) { + do_readlink(); +} +readv.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/uio.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//readv ____________________________________________ +void do_readv() { + struct iovec iov; + readv(5,&iov,4); + dmsg("readv","fd",5); + dmsg("readv","vector_uaddr",(int)&iov); + dmsg("readv","count",4); +} + +int main (void) { + do_readv(); +} +reboot.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> +#include <linux/reboot.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//reboot ___________________________________________ +void do_reboot() { + void *dummy; + reboot(9,10,5,dummy); + dmsg("reboot","magic",9); + dmsg("reboot","magic2",10); + dmsg("reboot","flag",5); +} + +int main (void) { + do_reboot(); +} +recv.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/socket.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//recv _____________________________________________ +void do_recv() { + void *buf; + struct sockaddr sa; + int siz = sizeof(sa); + recv(63,buf,8,12); + dmsg("recv","s",63); + dmsg("recv","len",8); + dmsg("recv","flags",12); +} + +int main (void) { + do_recv(); +} +recvfrom.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/socket.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//recvfrom _________________________________________ +void do_recvfrom() { + void *buf; + struct sockaddr sa; + socklen_t siz = sizeof(sa); + recvfrom(63,buf,8,12,&sa,&siz); + dmsg("recvfrom","s",8); + dmsg("recvfrom","len",77); + dmsg("recvfrom","flags",65); + dmsg("recvfrom","from_uaddr",(int)&sa); + dmsg("recvfrom","fromlen",(int)&siz); +} + +int main (void) { + do_recvfrom(); +} +recvmsg.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/socket.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//recvmsg __________________________________________ +void do_recvmsg() { + struct msghdr mh; + recvmsg(49,&mh,9); + dmsg("recvmsg","s",49); + dmsg("recvmsg","msg_uaddr",(int)&mh); + dmsg("recvmsg","flags",9); +} + +int main (void) { + do_recvmsg(); +} +remap_file_pages.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/mman.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//remap_file_pages _________________________________ +void do_remap_file_pages() { + void *old; + remap_file_pages(old,97,96,95,94); + dmsg("remap_file_pages","size",97); + dmsg("remap_file_pages","prot",96); + dmsg("remap_file_pages","pgoff",95); + dmsg("remap_file_pages","flags",94); +} + +int main (void) { + do_remap_file_pages(); +} +removexattr.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <attr/xattr.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//removexattr ______________________________________ +void do_removexattr() { + char path[] = "/in/your/eyes"; + char name[] = "holdyourbreath"; + removexattr(path,name); + dmsg("removexattr","path_uaddr",(int)&path); + dmsg("removexattr","name_uaddr",(int)&name); +} + +int main (void) { + do_removexattr(); +} +rename.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//rename ___________________________________________ +void do_rename() { + char path[] = "/home/mouth"; + char oldpath[] = "does/not/exist"; + rename(path,oldpath); + dmsg("rename","oldpath_uaddr",(int)&path); + dmsg("rename","newpath_uaddr",(int)&oldpath); +} + +int main (void) { + do_rename(); +} +restart_syscall.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <syscall.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//restart_syscall __________________________________ +void do_restart_syscall() { + syscall(SYS_restart_syscall); + dmsg("restart_syscall","void",0); +} + +int main (void) { + do_restart_syscall(); +} +rmdir.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//rmdir ____________________________________________ +void do_rmdir() { + char dir[] = "/this/dir/is/imaginary"; + rmdir(dir); + dmsg("rmdir","pathname_uaddr",(int)&dir); +} + +int main (void) { + do_rmdir(); +} +rt_sigaction.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <syscall.h> +#include <signal.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//rt_sigaction _____________________________________ +void do_rt_sigaction() { + struct sigaction act, oct; + void *restorer; + syscall(SYS_rt_sigaction,81,&act,&oct,20,restorer); + dmsg("rt_sigaction","sig",81); + dmsg("rt_sigaction","act_uaddr",(int)&act); + dmsg("rt_sigaction","oact_uaddr",(int)&oct); + dmsg("rt_sigaction","sgsetsize",20); +} + +int main (void) { + do_rt_sigaction(); +} +rt_sigpending.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <syscall.h> +#include <signal.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//rt_sigpending ____________________________________ +void do_rt_sigpending() { + sigset_t sst; + syscall(SYS_rt_sigpending,&sst,0); + dmsg("rt_sigpending","set_uaddr",(int)&sst); + dmsg("rt_sigpending","sigsetsize",0); +} + +int main (void) { + do_rt_sigpending(); +} +rt_sigprocmask.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <syscall.h> +#include <signal.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//rt_sigprocmask ___________________________________ +void do_rt_sigprocmask() { + sigset_t s, os; + syscall(SYS_rt_sigprocmask,4,&s,&os,0); + dmsg("rt_sigprocmask","how",4); + dmsg("rt_sigprocmask","set_uaddr",(int)&s); + dmsg("rt_sigprocmask","oset_uaddr",(int)&os); + dmsg("rt_sigprocmask","sigsetsize",0); +} + +int main (void) { + do_rt_sigprocmask(); +} +rt_sigqueueinfo.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <syscall.h> +#include <signal.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//rt_sigqueueinfo __________________________________ +void do_rt_sigqueueinfo() { + siginfo_t uinfo; + syscall(SYS_rt_sigqueueinfo,44,97,&uinfo); + dmsg("rt_sigqueueinfo","pid",44); + dmsg("rt_sigqueueinfo","sig",97); + dmsg("rt_sigqueueinfo","uinfo_uaddr",(int)&uinfo); +} + +int main (void) { + do_rt_sigqueueinfo(); +} +rt_sigtimedwait.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <syscall.h> +#include <signal.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//rt_sigtimedwait __________________________________ +void do_rt_sigtimedwait() { + sigset_t uthese,uinfo; + struct timespec ts; + syscall(SYS_rt_sigtimedwait,&uthese,&uinfo,&ts,0); + dmsg("rt_sigtimedwait","uthese_uaddr",(int)&uthese); + dmsg("rt_sigtimedwait","uinfo_uaddr",(int)&uinfo); + dmsg("rt_sigtimedwait","uts_uaddr",(int)&ts); + dmsg("rt_sigtimedwait","sigsetsize",0); +} + +int main (void) { + do_rt_sigtimedwait(); +} +sched_getaffinity.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sched.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//sched_getaffinity ________________________________ +void do_sched_getaffinity() { + unsigned long mask = 1; + sched_getaffinity(getpid(),sizeof(mask),&mask); + dmsg("sched_getaffinity","pid",55); + dmsg("sched_getaffinity","len",sizeof(mask)); + dmsg("sched_getaffinity","mask_uaddr",(int)&mask); +} + +int main (void) { + do_sched_getaffinity(); +} +sched_getparam.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sched.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//sched_getparam ___________________________________ +void do_sched_getparam() { + struct sched_param sp; + sched_getparam(35,&sp); + dmsg("sched_getparam","pid",35); + dmsg("sched_getparam","p_uaddr",(int)&sp); +} + +int main (void) { + do_sched_getparam(); +} +sched_get_priority_max.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sched.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//sched_get_priority_max ___________________________ +void do_sched_get_priority_max() { + sched_get_priority_max(65); + dmsg("sched_get_priority_max","policy",65); +} + +int main (void) { + do_sched_get_priority_max(); +} +sched_get_priority_min.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sched.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//sched_get_priority_min ___________________________ +void do_sched_get_priority_min() { + sched_get_priority_min(75); + dmsg("sched_get_priority_min","policy",75); +} + +int main (void) { + do_sched_get_priority_min(); +} +sched_getscheduler.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sched.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//sched_getscheduler _______________________________ +void do_sched_getscheduler() { + sched_getscheduler(25); + dmsg("sched_getscheduler","pid",25); +} + +int main (void) { + do_sched_getscheduler(); +} +sched_rr_get_interval.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sched.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//sched_rr_get_interval ____________________________ +void do_sched_rr_get_interval() { + struct timespec tsa; + sched_rr_get_interval(101,&tsa); + dmsg("sched_rr_get_interval","pid",101); + dmsg("sched_rr_get_interval","tp_uaddr",(int)&tsa); +} + +int main (void) { + do_sched_rr_get_interval(); +} +sched_setaffinity.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sched.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//sched_setaffinity ________________________________ +void do_sched_setaffinity() { + unsigned long mask = 1; + sched_setaffinity(45,sizeof(mask),&mask); + dmsg("sched_setaffinity","pid",45); + dmsg("sched_setaffinity","len",sizeof(mask)); + dmsg("sched_setaffinity","mask_uaddr",(int)&mask); +} + +int main (void) { + do_sched_setaffinity(); +} +sched_setparam.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sched.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//sched_setparam ___________________________________ +void do_sched_setparam() { + struct sched_param sp; + sched_getparam(99,&sp); + dmsg("sched_setparam","pid",99); + dmsg("sched_setparam","p_uaddr",(int)&sp); +} + +int main (void) { + do_sched_setparam(); +} +sched_setscheduler.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sched.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//sched_setscheduler _______________________________ +void do_sched_setscheduler() { + struct sched_param sp; + sched_setscheduler(77,88,&sp); + dmsg("sched_setscheduler","pid",77); + dmsg("sched_setscheduler","policy",88); + dmsg("sched_setscheduler","p_uaddr",(int)&sp); +} + +int main (void) { + do_sched_setscheduler(); +} +sched_yield.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sched.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//sched_yield ______________________________________ +void do_sched_yield() { + sched_yield(); + dmsg("sched_yield","policy",0); +} + +int main (void) { + do_sched_yield(); +} +select.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/select.h> +#include <sys/time.h> +#include <sys/types.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//select ___________________________________________ +void do_select() { + fd_set fds1,fds2,fds3; + struct timeval tv; + select(6,&fds1,&fds2,&fds3,&tv); + dmsg("select","n",6); + dmsg("select","readfds_uaddr",(int)&fds1); + dmsg("select","writefds_uaddr",(int)&fds2); + dmsg("select","exceptfds_uaddr",(int)&fds3); + dmsg("select","timeout_uaddr",(int)&tv); +} + +int main (void) { + do_select(); +} +semctl.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/ipc.h> +#include <sys/sem.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//semctl ___________________________________________ +void do_semctl() { + semctl(19,73,24); + dmsg("semctl","semid",19); + dmsg("semctl","semnum",73); + dmsg("semctl","cmd",24); +} + +int main (void) { + do_semctl(); +} +semget.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/ipc.h> +#include <sys/sem.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//semget ___________________________________________ +void do_semget() { + semget(4,6,89); + dmsg("semget","key",4); + dmsg("semget","nsems",6); + dmsg("semget","semflg",89); +} + +int main (void) { + do_semget(); +} +semop.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/ipc.h> +#include <sys/sem.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//semop ____________________________________________ +void do_semop() { + struct sembuf sops; + semop(84,&sops,48); + dmsg("semop","semid",84); + dmsg("semop","tsops_uaddr",(int)&sops); + dmsg("semop","nsops",48); +} + +int main (void) { + do_semop(); +} +semtimedop.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/ipc.h> +#include <sys/sem.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//semtimedop _______________________________________ +void do_semtimedop() { + struct sembuf sops; + struct timespec ts; + semtimedop(44,&sops,8,&ts); + dmsg("semtimedop","semid",44); + dmsg("semtimedop","sops_uaddr",(int)&sops); + dmsg("semtimedop","nsops",8); + dmsg("semtimedop","timeout_uaddr",(int)&ts); +} + +int main (void) { + do_semtimedop(); +} +send.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/socket.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//send _____________________________________________ +void do_send() { + void *buf; + send(8,buf,77,65); + dmsg("send","s",8); + dmsg("send","len",77); + dmsg("send","flags",65); +} + +int main (void) { + do_send(); +} +sendfile64.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/sendfile.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//sendfile64 _______________________________________ +void do_sendfile64() { + off_t offset; + sendfile64(8,7,&offset,54); + dmsg("sendfile","out_fd",8); + dmsg("sendfile","in_fd",7); + dmsg("sendfile","offset_uaddr",(int)&offset); + dmsg("sendfile","count",54); +} + +int main (void) { + do_sendfile64(); +} +sendfile.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/sendfile.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//sendfile _________________________________________ +void do_sendfile() { + off_t offset; + sendfile(4,6,&offset,99); + dmsg("sendfile","out_fd",4); + dmsg("sendfile","in_fd",6); + dmsg("sendfile","offset_uaddr",(int)&offset); + dmsg("sendfile","count",99); +} + +int main (void) { + do_sendfile(); +} +sendmsg.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/socket.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//sendmsg __________________________________________ +void do_sendmsg() { + struct msghdr msg; + sendmsg(5,&msg,99); + dmsg("sendmsg","s",5); + dmsg("sendmsg","msg_uaddr",(int)&msg); + dmsg("sendmsg","flags",99); +} + +int main (void) { + do_sendmsg(); +} +sendto.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/socket.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//sendto ___________________________________________ +void do_sendto() { + void *buf; + struct sockaddr sa; + sendto(8,buf,77,65,&sa,sizeof(sa)); + dmsg("sendto","s",8); + dmsg("sendto","len",77); + dmsg("sendto","flags",65); + dmsg("sendto","to_uaddr",(int)&sa); + dmsg("sendto","tolen",sizeof(sa)); +} + +int main (void) { + do_sendto(); +} +setdomainname.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//setdomainname ______________________________________ +void do_setdomainname() { + char name[] = "myhostname"; + setdomainname(name,sizeof(name)); + dmsg("setdomainname","hostname_uaddr",(int)&name); + dmsg("setdomainname","len",sizeof(name)); +} + +int main (void) { + do_setdomainname(); +} +setfsgid.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//setfsgid _________________________________________ +void do_setfsgid() { + setfsgid(6); + dmsg("setfsgid","fsgid",6); +} + +int main (void) { + do_setfsgid(); +} +setfsuid.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//setfsuid _________________________________________ +void do_setfsuid() { + setfsuid(5); + dmsg("setfsuid","fsuid",5); +} + +int main (void) { + do_setfsuid(); +} +setgid.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//setgid ___________________________________________ +void do_setgid() { + setgid(3); + dmsg("setgid","gid",3); +} + +int main (void) { + do_setgid(); +} +setgroups.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//setgroups ________________________________________ +void do_setgroups() { + gid_t list[2]; + setgroups(2,list); + dmsg("setgroups","size",2); + dmsg("setgroups","list_uaddr",(int)&list); +} + +int main (void) { + do_setgroups(); +} +sethostname.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//sethostname ______________________________________ +void do_sethostname() { + char name[] = "myhostname"; + sethostname(name,sizeof(name)); + dmsg("sethostname","hostname_uaddr",(int)&name); + dmsg("sethostname","len",sizeof(name)); +} + +int main (void) { + do_sethostname(); +} +setitimer.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/time.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//setitimer ________________________________________ +void do_setitimer() { + struct itimerval it1, it2; + setitimer(ITIMER_PROF,&it1,&it2); + dmsg("setitimer","which",ITIMER_PROF); + dmsg("setitimer","value_uaddr",(int)&it1); + dmsg("setitimer","ovalue_uaddr",(int)&it2); +} + +int main (void) { + do_setitimer(); +} +setpgid.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//setpgid __________________________________________ +void do_setpgid() { + setpgid(9,10); + dmsg("setpgid","pid",1); + dmsg("setpgid","pgid",10); +} + +int main (void) { + do_setpgid(); +} +setpriority.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/time.h> +#include <sys/resource.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//setpriority ______________________________________ +void do_setpriority() { + setpriority(25,26,27); + dmsg("setpriority","which",25); + dmsg("setpriority","who",26); + dmsg("setpriority","niceval",27); +} + +int main (void) { + do_setpriority(); +} +setregid.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//setregid _________________________________________ +void do_setregid() { + setregid(7,8); + dmsg("setregid","rgid",7); + dmsg("setregid","egid",8); +} + +int main (void) { + do_setregid(); +} +setresgid.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#define _GNU_SOURCE +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//setresgid ________________________________________ +void do_setresgid() { + setresgid(14,15,16); + dmsg("setresgid","rgid",14); + dmsg("setresgid","egid",15); + dmsg("setresgid","sgid",16); +} + +int main (void) { + do_setresgid(); +} +setresuid.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#define _GNU_SOURCE +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//setresuid ________________________________________ +void do_setresuid() { + setresuid(11,12,13); + dmsg("setresuid","ruid",11); + dmsg("setresuid","euid",12); + dmsg("setresuid","suid",13); +} + +int main (void) { + do_setresuid(); +} +setreuid.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//setreuid _________________________________________ +void do_setreuid() { + setreuid(7,8); + dmsg("setreuid","ruid",7); + dmsg("setreuid","euid",8); +} + +int main (void) { + do_setreuid(); +} +setrlimit.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/time.h> +#include <sys/resource.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//setrlimit ________________________________________ +void do_setrlimit() { + struct rlimit rl; + setrlimit(44,&rl); + dmsg("setrlimit","resource",44); + dmsg("setrlimit","rlim_uaddr",(int)&rl); +} + +int main (void) { + do_setrlimit(); +} +setsid.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//setsid ___________________________________________ +void do_setsid() { + setsid(); + dmsg("setsid","void",0); +} + +int main (void) { + do_setsid(); +} +setsockopt.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/socket.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//setsockopt _______________________________________ +void do_setsockopt() { + void *optval; + socklen_t len = 5; + setsockopt(4,9,1,optval,len); + dmsg("setsockopt","fd",4); + dmsg("setsockopt","level",9); + dmsg("setsockopt","optname",1); + dmsg("setsockopt","optval",(int)&optval); + dmsg("setsockopt","optlen",len); +} + +int main (void) { + do_setsockopt(); +} +set_tid_address.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <syscall.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//set_tid_address __________________________________ +void do_set_tid_address() { + int tidptr; + syscall(SYS_set_tid_address,&tidptr); + dmsg("set_tid_address","tidptr_uaddr",(int)&tidptr); +} + +int main (void) { + do_set_tid_address(); +} +settimeofday.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/time.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//settimeofday _____________________________________ +void do_settimeofday() { + struct timeval tv; + struct timezone tz; + settimeofday(&tv,&tz); + dmsg("settimeofday","tv_uaddr",(int)&tv); + dmsg("settimeofday","tz_uaddr",(int)&tz); +} + +int main (void) { + do_settimeofday(); +} +setuid.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//setuid ___________________________________________ +void do_setuid() { + setuid(4); + dmsg("setuid","uid",4); +} + +int main (void) { + do_setuid(); +} +setxattr.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <attr/xattr.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//setxattr _________________________________________ +void do_setxattr() { + char path[] = "/would/have/done/things"; + char name[] = "upagainstawall"; + void *foo; + setxattr(path,name,foo,77,99); + dmsg("setxattr","path_uaddr",(int)&path); + dmsg("setxattr","name_uaddr",(int)&name); + dmsg("setxattr","size",77); + dmsg("setxattr","flags",99); +} + +int main (void) { + do_setxattr(); +} +sgetmask.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <signal.h> +#include <syscall.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//sgetmask _________________________________________ +void do_sgetmask() { + syscall(SYS_sgetmask); + dmsg("sgetmask","void",0); +} + +int main (void) { + do_sgetmask(); +} +shmat.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/shm.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//shmat ____________________________________________ +void do_shmat() { + //void *goo; + shmat(16,NULL,19); + dmsg("shmat","shmid",16); + dmsg("shmat","shmflg",19); +} + +int main (void) { + do_shmat(); +} +shmctl.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/ipc.h> +#include <sys/shm.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//shmctl ___________________________________________ +void do_shmctl() { + struct shmid_ds buf; + shmctl(2,6,&buf); + dmsg("shmctl","shmid",2); + dmsg("shmctl","cmd",6); + dmsg("shmctl","buf_uaddr",(int)&buf); +} + +int main (void) { + do_shmctl(); +} +shmdt.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/shm.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//shmdt ____________________________________________ +void do_shmdt() { + void *foo; + shmdt(foo); +} + +int main (void) { + do_shmdt(); +} +shmget.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/ipc.h> +#include <sys/shm.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//shmget ___________________________________________ +void do_shmget() { + shmget(33,55,88); + dmsg("shmat","key",33); + dmsg("shmat","size",55); + dmsg("shmat","shmflg",88); +} + +int main (void) { + do_shmget(); +} +shutdown.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/socket.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//shutdown _________________________________________ +void do_shutdown() { + shutdown(76,74); + dmsg("shutdown","s",76); + dmsg("shutdown","how",74); +} + +int main (void) { + do_shutdown(); +} +signal.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <signal.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//signal ___________________________________________ +void do_signal() { + void *foo; + signal(4,SIG_IGN); + dmsg("signal","sig",4); +} + +int main (void) { + do_signal(); +} +sigpending.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <signal.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//sigpending _______________________________________ +void do_sigpending() { + sigset_t s; + sigpending(&s); + dmsg("sigpending","set_uaddr",(int)&s); +} + +int main (void) { + do_sigpending(); +} +sigprocmask.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <signal.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//sigprocmask ______________________________________ +void do_sigprocmask() { + sigset_t s, o; + sigprocmask(SIG_BLOCK|SIG_SETMASK,&s,&o); + dmsg("sigprocmask","how",SIG_SETMASK); + dmsg("sigprocmask","set_uaddr",(int)&s); + dmsg("sigprocmask","oldset_uaddr",(int)&o); +} + +int main (void) { + do_sigprocmask(); +} +socket.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/socket.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//socket ___________________________________________ +void do_socket() { + socket(4,9,2); + dmsg("socket","family",4); + dmsg("socket","type",9); + dmsg("socket","protocol",2); +} + +int main (void) { + do_socket(); +} +socketcall.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <syscall.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//socketcall _______________________________________ +void do_socketcall() { + unsigned long how; + syscall(SYS_socketcall,7,&how); + dmsg("socketcall","call",7); + dmsg("socketcall","args_uaddr",(int)&how); +} + +int main (void) { + do_socketcall(); +} +socketpair.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/socket.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//socketpair _______________________________________ +void do_socketpair() { + int usv; + socketpair(9,6,8,&usv); + dmsg("socketpair","family",9); + dmsg("socketpair","type",6); + dmsg("socketpair","protocol",8); + dmsg("socketpair","sv_uaddr",(int)&usv); +} + +int main (void) { + do_socketpair(); +} +ssetmask.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <signal.h> +#include <syscall.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//ssetmask _________________________________________ +void do_ssetmask() { + syscall(SYS_ssetmask); + dmsg("ssetmask","void",0); +} + +int main (void) { + do_ssetmask(); +} +stat64.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/stat.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//stat64 ___________________________________________ +void do_stat64() { + struct stat s; + char name[] = "runningonempty"; + stat64(name,&s); + dmsg("stat64","filename_uaddr",(int)&name); + dmsg("stat64","buf_uaddr",(int)&s); +} + +int main (void) { + do_stat64(); +} +stat.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/stat.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//stat _____________________________________________ +void do_stat() { + char filename[] = "thelastamericanpatriot"; + struct stat s; + stat(filename,&s); + dmsg("stat","filename_uaddr",(int)&filename); + dmsg("stat","buf_uaddr",(int)&s); +} + +int main (void) { + do_stat(); +} +statfs64.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/vfs.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//statfs64 _________________________________________ +void do_statfs64() { + char filename[] = "ridingonthisone"; + struct statfs s; + statfs64(filename,88,&s); + dmsg("statfs64","path_uaddr",(int)&filename); + dmsg("statfs64","sz",88); + dmsg("statfs64","buf_uaddr",(int)&s); +} + +int main (void) { + do_statfs64(); +} +statfs.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/vfs.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//statfs ___________________________________________ +void do_statfs() { + char filename[] = "daylight"; + struct statfs s; + statfs(filename,&s); + dmsg("statfs","filename",(int)&filename); + dmsg("statfs","buf_uaddr",(int)&s); +} + +int main (void) { + do_statfs(); +} +stime.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <time.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//stime ____________________________________________ +void do_stime() { + time_t timet; + stime(&timet); + dmsg("stime","t_uaddr",(int)&timet); +} + +int main (void) { + do_stime(); +} +swapoff.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> +#include <asm/page.h> +#include <sys/swap.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//swapoff __________________________________________ +void do_swapoff() { + char path[] = "sys_swapoff"; + swapoff(path); + dmsg("swapoff","path_uaddr",(int)&path); +} + +int main (void) { + do_swapoff(); +} +swapon.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> +#include <asm/page.h> +#include <sys/swap.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//swapon ___________________________________________ +void do_swapon() { + char path[] = "sys_swapon"; + swapon(path,99); + dmsg("swapon","path_uaddr",(int)&path); + dmsg("swapon","swapflags",99); +} + +int main (void) { + do_swapon(); +} +symlink.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//symlink __________________________________________ +void do_symlink() { + char path[] = "/home/arh"; + char oldpath[] = "does/not/exist"; + symlink(path,oldpath); + dmsg("symlink","oldpath_uaddr",(int)&path); + dmsg("symlink","newpath_uaddr",(int)&oldpath); +} + +int main (void) { + do_symlink(); +} +sync.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//sync _____________________________________________ +void do_sync() { + sync(); + dmsg("sync","void",0); +} + +int main (void) { + do_sync(); +} +sysctl.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> +#include <linux/unistd.h> +#include <linux/sysctl.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//sysctl ___________________________________________ +void do_sysctl() { + struct __sysctl_args args; + sysctl(&args); + dmsg("sysctl","args_uaddr",(int)&args); +} + +int main (void) { + do_sysctl(); +} +sysfs.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <syscall.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//sysfs ____________________________________________ +void do_sysfs() { + char buf[25]; + syscall(SYS_sysfs,8,9,&buf); + dmsg("sysfs","option",8); + dmsg("sysfs","arg1",9); + dmsg("sysfs","arg2",(int)&buf); +} + +int main (void) { + do_sysfs(); +} +sysinfo.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/sysinfo.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//sysinfo __________________________________________ +void do_sysinfo() { + struct sysinfo si; + sysinfo(&si); + dmsg("sysinfo","info_uaddr",(int)&si); +} + +int main (void) { + do_sysinfo(); +} +syslog.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/klog.h> +#include <unistd.h> +#include <linux/unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//syslog ___________________________________________ +void do_syslog() { + char buf[24]; + syslog(5,&buf,99); + dmsg("syslog","type",5); + dmsg("syslog","bufp_uaddr",(int)&buf); + dmsg("syslog","len",99); +} + +int main (void) { + do_syslog(); +} +tgkill.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <syscall.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//tgkill ___________________________________________ +void do_tgkill() { + syscall(SYS_tgkill,55,49,7); + dmsg("tgkill","tgid",55); + dmsg("tgkill","pid",49); + dmsg("tgkill","sig",7); +} + +int main (void) { + do_tgkill(); +} +time.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <time.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//time _____________________________________________ +void do_time() { + time_t timet; + time(&timet); + dmsg("time","t_uaddr",(int)&timet); +} + +int main (void) { + do_time(); +} +timer_create.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <signal.h> +#include <time.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//timer_create _____________________________________ +void do_timer_create() { + timer_t created; + timer_create(CLOCK_REALTIME,NULL,&created); + dmsg("timer_create","clockid",CLOCK_REALTIME); + dmsg("timer_create","timerid_uaddr",(int)&created); +} + +int main (void) { + do_timer_create(); +} +timer_delete.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <time.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//timer_delete _____________________________________ +void do_timer_delete() { + timer_t created; + timer_create(CLOCK_REALTIME,NULL,&created); + timer_delete(created); + dmsg("timer_delete","timerid",(int)created); +} + +int main (void) { + do_timer_delete(); +} +timer_getoverrun.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <time.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//timer_getoverrun _________________________________ +void do_timer_getoverrun() { + timer_t created; + timer_create(CLOCK_REALTIME,NULL,&created); + timer_getoverrun(created); + dmsg("timer_getoverrun","timerid",(int)created); +} + +int main (void) { + do_timer_getoverrun(); +} +timer_gettime.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <time.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//timer_gettime ____________________________________ +void do_timer_gettime() { + timer_t created; + struct itimerspec its; + timer_create(CLOCK_REALTIME,NULL,&created); + timer_gettime(created,&its); + dmsg("timer_gettime","timerid",(int)created); + dmsg("timer_gettime","value_uaddr",(int)&its); +} + +int main (void) { + do_timer_gettime(); +} +timer_settime.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <time.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//timer_settime ____________________________________ +void do_timer_settime() { + timer_t created; + struct itimerspec its,bits; + timer_create(CLOCK_REALTIME,NULL,&created); + timer_settime(created,0,&its,&bits); + dmsg("timer_settime","timerid",(int)created); + dmsg("timer_settime","flags",0); + dmsg("timer_settime","value_uaddr",(int)&its); + dmsg("timer_settime","ovalue_uaddr",(int)&bits); +} + +int main (void) { + do_timer_settime(); +} +times.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/times.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//times ____________________________________________ +void do_times() { + struct tms tms; + times(&tms); + dmsg("times","buf_uaddr",(int)&tms); +} + +int main (void) { + do_times(); +} +tkill.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <linux/unistd.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//tkill ____________________________________________ +void do_tkill() { + syscall(SYS_tkill,44,4); + dmsg("tkill","pid",44); + dmsg("tkill","sig",4); +} + +int main (void) { + do_tkill(); +} +truncate64.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> +#include <sys/types.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//truncate64 _______________________________________ +void do_truncate64() { + char path[] = "/only/chasing/safety"; + truncate64(path,22); + dmsg("truncate64","path_uaddr",(int)&path); + dmsg("truncate64","length",22); +} + +int main (void) { + do_truncate64(); +} +truncate.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <unistd.h> +#include <sys/types.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//truncate _________________________________________ +void do_truncate() { + char path[] = "/antarctica/found/in/the/flood"; + truncate(path,9); + dmsg("truncate","path_uaddr",(int)&path); + dmsg("truncate","length",9); +} + +int main (void) { + do_truncate(); +} +umask.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/stat.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//umask ____________________________________________ +void do_umask() { + umask(88); + dmsg("umask","mask",88); +} + +int main (void) { + do_umask(); +} +umount.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/mount.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//umount ___________________________________________ +void do_umount() { + char dev[] = "hda1"; + umount(dev); + dmsg("umount","target_uaddr",(int)&dev); +} + +int main (void) { + do_umount(); +} +unlink.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//unlink ___________________________________________ +void do_unlink() { + char path[] = "/home/krstaffo/foofile.htm"; + unlink(path); + dmsg("unlink","pathname_uaddr",(int)&path); +} + +int main (void) { + do_unlink(); +} +uselib.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//uselib ___________________________________________ +void do_uselib() { + char lib[] = "library"; + uselib(lib); + dmsg("uselib","library_uaddr",(int)&lib); +} + +int main (void) { + do_uselib(); +} +ustat.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <unistd.h> +#include <ustat.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//ustat ____________________________________________ +void do_ustat() { + struct ustat s; + ustat(3,&s); + dmsg("ustat","dev",3); + dmsg("ustat","ubuf_uaddr",(int)&s); +} + +int main (void) { + do_ustat(); +} +utime.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <utime.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//utime ____________________________________________ +void do_utime() { + struct utimbuf utb; + char path[] = "sys_utime"; + utime(path,&utb); + dmsg("utime","filename_uaddr",(int)&path); + dmsg("utime","buf_uaddr",(int)&utb); +} + +int main (void) { + do_utime(); +} +utimes.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <utime.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//utimes ___________________________________________ +void do_utimes() { + char path[] = "sys_utimes"; + struct timeval tvp; + utimes(path,&tvp); + dmsg("utimes","filename_uaddr",(int)&tvp); + dmsg("utimes","tvp_uaddr",(int)&tvp); +} + +int main (void) { + do_utimes(); +} +vhangup.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//vhangup __________________________________________ +void do_vhangup() { + vhangup(); + dmsg("vhangup","void",0); +} + +int main (void) { + do_vhangup(); +} +wait4.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/types.h> +#include <sys/time.h> +#include <sys/resource.h> +#include <sys/wait.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//wait4 ____________________________________________ +void do_wait4() { + int staddr; + struct rusage ru; + wait4(1,&staddr,9,&ru); + dmsg("wait4","pid",1); + dmsg("wait4","status_uaddr",(int)&staddr); + dmsg("wait4","options",9); + dmsg("wait4","rusage_uaddr",(int)&ru); +} + +int main (void) { + do_wait4(); +} +waitid.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/wait.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//waitid ___________________________________________ +void do_waitid() { + struct siginfo si; + struct rusage ru; + waitid(4,5,&si,7); + dmsg("waitid","which",4); + dmsg("waitid","pid",5); + dmsg("waitid","infop_uaddr",(int)&si); + dmsg("waitid","options",7); +} + +int main (void) { + do_waitid(); +} +waitpid.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//waitpid __________________________________________ +void do_waitpid() { + int staddr; + waitpid(4,&staddr,6); + dmsg("waitpid","pid",4); + dmsg("waitpid","infop_uaddr",(int)&staddr); + dmsg("waitpid","options",6); +} + +int main (void) { + do_waitpid(); +} +write.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//write ____________________________________________ +void do_write() { + char buf[33]; + write(6,&buf,sizeof(buf)); + dmsg("write","fd",6); + dmsg("write","buf_uaddr",(int)&buf); + dmsg("write","count",sizeof(buf)); +} + +int main (void) { + do_write(); +} +writev.c ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +#include <stdio.h> +#include <sys/uio.h> + +void dmsg(char *func,char *var,int val) { + printf("%s: %s = %d\n",func,var,val); +} + +//writev ____________________________________________ +void do_writev() { + struct iovec iov; + writev(6,&iov,9); + dmsg("writev","fd",6); + dmsg("writev","vector_uaddr",(int)&iov); + dmsg("writev","count",9); +} + +int main (void) { + do_writev(); +} diff --git a/tapset/test/run.sh b/tapset/test/run.sh new file mode 100755 index 00000000..c842c72d --- /dev/null +++ b/tapset/test/run.sh @@ -0,0 +1,150 @@ +function usage { + echo -ne " \033[1mUsage:\033[0m run stpdir bindir\n" + echo -ne " \033[1mstpdir:\033[0m\n" + echo -ne "\tthe directory containing the stp files\n" + echo -ne " \033[1mbindir:\033[0m\n" + echo -ne "\tthe directory containing the c executables\n" + exit +} +function cleanup { + rm -f tmp* +} +function even { + k=$1 + while [ $k -ne $2 ]; do + if [ $# -eq 3 ]; then + echo -ne " " >> $logfile + else + echo -ne " " + fi + k=`expr $k + 1` + done +} +function spit { + echo -ne "\t\t\tFUNCTION: `echo $1 | cut -d"." -f4`\n" >> $logfile + echo "Expected output:" >> $logfile + cat $2 >> $logfile + echo "Actual output:" >> $logfile + cat $1 >> $logfile + echo -ne "___________________________________" >> $logfile + echo "___________________________________" >> $logfile +} +function spiteven { + echo -ne "\t\t\tFUNCTION: `echo $1 | cut -d"." -f4`\n" >> $logfile + echo -ne "Expected Output:\t\t\t\tActual Output:\n" >> $logfile + i=1 + lines=`cat $1|wc -l` + while [ $i -le $lines ]; do + echo -ne "`head -$i $2|tail -1`" >> $logfile + even `head -$i $2|tail -1|wc -m` 49 9 + echo -ne "`head -$i $1|tail -1`\n" >> $logfile + i=`expr $i + 1` + done + echo -ne "___________________________________" >> $logfile + echo "___________________________________" >> $logfile +} +trap got_trap 1 2 3 6 +function got_trap { + echo -e "\nGot signaled. Cleaning up...\n" + if [ `ps -A|grep stpd|sed 's/^[ ^t]*//'|cut -d" " -f1 | wc -l` -gt 0 ] + then + kill `ps -A|grep stpd|sed 's/^[ ^t]*//'|cut -d" " -f1` + fi + if [ `ps -A|grep stap|sed 's/^[ ^t]*//'|cut -d" " -f1 | wc -l` -gt 0 ] + then + kill `ps -A|grep stap|sed 's/^[ ^t]*//'|cut -d" " -f1` + fi + cleanup + exit 1 +} +function waitforoutput { + t=0 + while [ `cat $1|wc -l` -eq 0 -a $t -ne 4 ]; do + sleep 1 + t=`expr $t + 1` + done + if [ $t -eq 4 ]; then + even 1 3 + echo -en "\033[0;36mPROBEMISS\033[0m\n" + failures=`expr $failures + 1` + #spit $1 $2 + else + validate $1 $2 + fi +} +function validate { + if [ `diff $1 $2|wc -l` -gt 0 ]; then + even 1 3 + echo -en "\033[0;31mFAIL\033[0m\n" + failures=`expr $failures + 1` + if [ `cat $1|wc -l` -eq `cat $2|wc -l` ]; then + spiteven $1 $2 + else + spit $1 $2 + fi + else + even 1 3 + echo -en "\033[0;32mPASS\033[0m\n" + fi +} +# start +++++++++++++++++++++++++++++++++++ +stpdir=`echo $1|sed -e 's/\/$//'` +bindir=`echo $2|sed -e 's/\/$//'` +# sanity... +if [[ ! -d $stpdir || ! -d $bindir ]]; then + echo "Invalid arguments. Try again." + usage +elif [ `ls $stpdir/*.stp|wc -l` -le 0 ]; then + echo "No .stp files found in $stpdir" + exit +elif [ `ls $bindir/|wc -l` -le 0 ]; then + echo "No executable files found in $bindir" + exit +elif [ $UID -ne 0 ]; then + echo "You must be root to do that!" + exit +elif [ ! -d log ]; then + mkdir log +fi + +total=`ls $stpdir|wc -l` +logfile=log/`date +%m%d%y_%H%M%S`.log +clear +echo -en "Prog\t\tScript" +echo -e "\t\t\t\t Status" + +# iterate through script files +ct=1 +failures=0 +for i in `ls $stpdir` +do + # create some tmp files for output + stp_tmpf="tmp.stp.$$.$i" + c_tmpf="tmp.c.$$.$i" + echo -ne "$ct/$total:\t" + if [ $ct -lt 100 ]; then + echo -ne "\t" + fi + echo -ne $i + #insmod the ko + stap -DMAXNESTING=10 $stpdir/$i > $stp_tmpf & + # make sure module is loaded + pid=""; ast="" + while [[ "$pid" == "" || "$ast" == "" ]] + do + pid=`ps|grep stpd|sed 's/^[ ^t]*//'|cut -d" " -f1` + ast=`ps|grep stap|sed 's/^[ ^t]*//'|cut -d" " -f1` + sleep 1 + done + even `echo $i|wc -m` 30 + echo -n "+++" + # now we can safely run the user c program + su -c "./$bindir/e_`echo $i|cut -d"." -f1` > $c_tmpf" krstaffo + # kill off stap + kill $pid + # give it some breathing room + waitforoutput $stp_tmpf $c_tmpf + ct=`expr $ct + 1` + cleanup +done +echo "Total Failures: $failures/$total" |