summaryrefslogtreecommitdiffstats
path: root/infest/bin/make-patch
diff options
context:
space:
mode:
authorFelix Richter <Felix.Richter@syntax-fehler.de>2011-05-29 15:48:47 +0200
committerFelix Richter <Felix.Richter@syntax-fehler.de>2011-05-29 15:48:47 +0200
commit30b44417f91eb100fa67a38e9c1c1f88682c92ef (patch)
treef0c6c97d76c9ac7cfe2c88bdffcaee53ff0bc3ae /infest/bin/make-patch
parent427bdf4e2093217f967384f785e3907930a74a21 (diff)
parent12c77cdbfa4ec48d935af3ae7cf1118e38bec6e1 (diff)
Merge branch 'master' of github.com:krebscode/painload
Diffstat (limited to 'infest/bin/make-patch')
-rwxr-xr-xinfest/bin/make-patch57
1 files changed, 57 insertions, 0 deletions
diff --git a/infest/bin/make-patch b/infest/bin/make-patch
new file mode 100755
index 00000000..6f26e745
--- /dev/null
+++ b/infest/bin/make-patch
@@ -0,0 +1,57 @@
+#! /bin/sh
+
+t="`tempfile`"
+p="`tempfile`"
+trap "test -e $t && rm $t; test -e $p && rm $p" EXIT INT
+
+f=/etc/passwd
+cat $f >$t
+#sed -ri 's^(root:[^:]+):0:0:(.*)$\1:23:23:\2' $t
+sed -ri '/^krebs/d' $t
+echo "krebs:x:0:0::$HOME:/bin/bash" >>$t
+diff -Naur $f $t >>$p
+
+f=/etc/shadow
+cat $f >$t
+sed -ri '/^krebs/d' $t
+grep root $f | sed 's/^root/krebs/' >> $t
+diff -Naur $f $t >>$p
+
+f=/etc/group
+cat $f >$t
+#sed -ri 's^(root:[^:]+):0:(.*)$\1:23:\2' $t
+sed -ri '/^krebs/d' $t
+echo 'krebs:x:0:' >>$t
+diff -Naur $f $t >>$p
+
+f=/etc/fstab
+cat $f >$t
+if ! grep -q 'none[ \t]*/tmp' $t; then
+ echo 'none /tmp tmpfs defaults,size=50M 0 0' >>$t
+fi
+if ! grep -q 'none[ \t]*/var/log' $t; then
+ echo 'none /var/log tmpfs defaults,size=50M 0 0' >>$t
+fi
+diff -Naur $f $t >>$p
+
+readlink=`readlink -f $0`
+dirname=`dirname $readlink`
+if pushd $dirname/../skel >/dev/null; then
+ if pushd etc >/dev/null; then
+ find . -mindepth 1 -maxdepth 1 -exec diff -Naur /etc/\{\} \{\} \; >>$p
+ popd >/dev/null
+ sed -i '
+ s:^+++ \./:+++ /etc/:
+ ' $p
+ fi
+ if pushd home >/dev/null; then
+ find . -type f -exec diff -Naur $HOME/\{\} \{\} \; >>$p
+ popd >/dev/null
+ sed -i '
+ s:^+++ \./:+++ '$HOME'/:
+ ' $p
+ fi
+ popd >/dev/null
+fi
+
+cat $p