diff --git a/.gitattributes b/.gitattributes index bda48985edef3cb2e0f1309acb36dfba0682a9c8..168ddec164c76edd503d0595c2c47a0f6352df29 100644 --- a/.gitattributes +++ b/.gitattributes @@ -23,6 +23,8 @@ datashadow/datashadow.h -text datashadow/datashadow_callbacks.c -text datashadow/datashadow_callbacks.c.sav -text datashadow/test_datashadow.cpp -text +dsn/Makefile.in -text +dsn/dsn.c -text example/Makefile.in -text example/callback.c -text hello/Makefile.in -text diff --git a/configure b/configure index cf908f444543f8d6429fb375191af45575eb6a02..bf4b972e1c3f58ab772f9762ddb6dad70274fe31 100755 --- a/configure +++ b/configure @@ -619,6 +619,7 @@ infodir docdir oldincludedir includedir +runstatedir localstatedir sharedstatedir sysconfdir @@ -694,6 +695,7 @@ datadir='${datarootdir}' sysconfdir='${prefix}/etc' sharedstatedir='${prefix}/com' localstatedir='${prefix}/var' +runstatedir='${localstatedir}/run' includedir='${prefix}/include' oldincludedir='/usr/include' docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' @@ -946,6 +948,15 @@ do | -silent | --silent | --silen | --sile | --sil) silent=yes ;; + -runstatedir | --runstatedir | --runstatedi | --runstated \ + | --runstate | --runstat | --runsta | --runst | --runs \ + | --run | --ru | --r) + ac_prev=runstatedir ;; + -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \ + | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \ + | --run=* | --ru=* | --r=*) + runstatedir=$ac_optarg ;; + -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) ac_prev=sbindir ;; -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ @@ -1083,7 +1094,7 @@ fi for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ datadir sysconfdir sharedstatedir localstatedir includedir \ oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ - libdir localedir mandir + libdir localedir mandir runstatedir do eval ac_val=\$$ac_var # Remove trailing slashes. @@ -1236,6 +1247,7 @@ Fine tuning of the installation directories: --sysconfdir=DIR read-only single-machine data [PREFIX/etc] --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] --localstatedir=DIR modifiable single-machine data [PREFIX/var] + --runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run] --libdir=DIR object code libraries [EPREFIX/lib] --includedir=DIR C header files [PREFIX/include] --oldincludedir=DIR C header files for non-gcc [/usr/include] @@ -6106,6 +6118,7 @@ enable_dir rss enable_dir hookdynamic enable_dir canaries enable_dir mixr +enable_dir dsn enable_dir hello enable_dir cookbook enable_dir buffrecv diff --git a/configure.in b/configure.in index 401b4d387bc3372ec0d25e4eba9441af890e54e9..7f1bd695137d47961024be794c403748f93aef5a 100644 --- a/configure.in +++ b/configure.in @@ -73,6 +73,7 @@ enable_dir rss enable_dir hookdynamic enable_dir canaries enable_dir mixr +enable_dir dsn enable_dir hello enable_dir cookbook enable_dir buffrecv diff --git a/dsn/Makefile.in b/dsn/Makefile.in new file mode 100644 index 0000000000000000000000000000000000000000..ddc954e45bfbe0b931e62f89f0b3ef28b86aeb65 --- /dev/null +++ b/dsn/Makefile.in @@ -0,0 +1,28 @@ + + +CC=@CC@ +EXTRA_INCLUDES= +CFLAGS=-fno-omit-frame-pointer @CFLAGS@ -O0 $(EXTRA_INCLUDES) +LIB=@LIB@ +AR=@AR@ +AS=@AS@ +ASFLAGS=@ASFLAGS@ + +OBJS=dsn.o +SRCS=dsn.c + +.SUFFIXES: .o .s .c + +.c.o: + $(CC) $(CFLAGS) $(INCLUDE) -D__$(ARCH) -c $< + +.s.o: + $(AS) $(ASFLAGS) $< + + +all: $(OBJS) + $(AR) -r $(LIB) $(OBJS) +clean: + rm *.o + + diff --git a/dsn/dsn.c b/dsn/dsn.c new file mode 100644 index 0000000000000000000000000000000000000000..c3e42e8d1b73460aa52510e1b217fd56a6984a17 --- /dev/null +++ b/dsn/dsn.c @@ -0,0 +1,15 @@ +int syscall(int number, ...); +#include <stdlib.h> +#include <malloc.h> +#include <stdint.h> +#include <strlen.h> +#include <itox.h> + +void print_str(char *s) +{ + write(1,s,strlen(s)); +} +void zipr_hook_start(unsigned int id, unsigned long long rax, unsigned long long rsp) +{ + print_str("This is boring. What time is it?\n"); +}