--- /dev/null
+#!/usr/bin/python2
+
+import sys
+
+try:
+ needle = sys.argv[1]
+ haystack = sys.argv[2]
+except IndexError:
+ print >>sys.stderr, "Usage: %s needle haystack" % sys.argv[0]
+ sys.exit(1)
+
+
+f = open(needle)
+magic = f.read(1024)
+f.close()
+
+chunk_size = 32768
+f = open(haystack)
+count = 0
+buf = ""
+while True:
+ newbuf = f.read(chunk_size)
+ if not newbuf:
+ break
+ buf += newbuf
+ pos = buf.find(magic)
+ if pos >= 0:
+ print "found", count + pos
+ count += len(buf) - len(magic)
+ buf = buf[-len(magic):]
+f.close()
+
+++ /dev/null
-#!/bin/bash
-
-if [ -z "$1" -o -z "$2" ]; then
- echo "Usage: $0 src dest"
- exit 1
-fi
-
-src="$1"
-dest="$2"
-mkdir -p "$dest"
-dest="$(cd "$dest" && pwd)"
-
-cd "$src"
-find . -name '*.class' | while read line; do
- class="$(echo "$line"| sed -e 's|^\./||' -e 's|\.class$||' -e 's|/|.|g')"
- javap -private -c "$class" > "${dest}/${class}.txt"
-done
-
--- /dev/null
+#!/usr/bin/python3
+
+import random, sys
+
+alnum_chars = list(filter(lambda c: c.isalnum(), map(chr, range(128))))
+full_chars = alnum_chars * 2 + list("!@#%^&*(){}[]/=?+_-;:,.<>")
+
+def generate(chars, length):
+ return "".join([random.choice(chars) for i in range(length)])
+
+def print_usage():
+ print("Usage: %s [length] [alnum|full]" % sys.argv[0])
+ sys.exit(1)
+
+if __name__ == "__main__":
+ if len(sys.argv) <= 1:
+ n = 20
+ elif sys.argv[1].isdigit():
+ n = int(sys.argv[1])
+ else:
+ print_usage()
+
+ if len(sys.argv) <= 2:
+ chars = alnum_chars
+ elif sys.argv[2] == "alnum":
+ chars = alnum_chars
+ elif sys.argv[2] == "full":
+ chars = full_chars
+ else:
+ print_usage()
+
+ print(generate(chars, n))
+
+++ /dev/null
-#!/bin/sh
-
-case "$SSH_ORIGINAL_COMMAND" in
-*\&*)
-echo "Rejected" >&2
-;;
-*\(*)
-echo "Rejected" >&2
-;;
-*\{*)
-echo "Rejected" >&2
-;;
-*\;*)
-echo "Rejected" >&2
-;;
-*\<*)
-echo "Rejected" >&2
-;;
-*\`*)
-echo "Rejected" >&2
-;;
-*\|*)
-echo "Rejected" >&2
-;;
-rsync\ --server*)
-ionice -c3 nice -n5 $SSH_ORIGINAL_COMMAND
-;;
-*)
-echo "Rejected" >&2
-;;
-esac
-