irc-blight-id, irc-identpass: The missing machinery for `identpass'.
authorMark Wooding <mdw@distorted.org.uk>
Sat, 1 Sep 2012 17:20:04 +0000 (18:20 +0100)
committerMark Wooding <mdw@distorted.org.uk>
Sat, 1 Sep 2012 18:25:06 +0000 (19:25 +0100)
.gitignore
irc-blight-id [new file with mode: 0755]
irc-identpass [new file with mode: 0644]

index e50d556..fc3b614 100644 (file)
@@ -4,3 +4,4 @@ chans
 pwdb
 botpass.tcl
 telling.ps
+bot-users
diff --git a/irc-blight-id b/irc-blight-id
new file mode 100755 (executable)
index 0000000..5a3df7f
--- /dev/null
@@ -0,0 +1,11 @@
+#! /bin/sh
+
+set -e
+cd $HOME
+mkdir -p .userv
+cd .userv
+umask 077
+if [ ! -f irc-pass-plain ]; then
+  gorp 128 >irc-pass-plain
+fi
+md5sum <irc-pass-plain | sed 's/ .*$//' >irc-pass-md5
diff --git a/irc-identpass b/irc-identpass
new file mode 100644 (file)
index 0000000..c8ab0c2
--- /dev/null
@@ -0,0 +1,14 @@
+if ( grep calling-user /var/lib/ircbot/bot-users
+   & range service-user 1000 9999
+   )
+       execute sh -c "\
+               if ! test -f .userv/irc-pass-md5; then          \n\
+echo >&2 'no password set for '$USER' - see `help identpass'\\'        \n\
+                       exit 2                                  \n\
+               fi                                              \n\
+               cmp -s - .userv/irc-pass-md5                    \n\
+               rc=$?                                           \n\
+               [ $rc = 1 ] && echo >&2 'incorrect password'    \n\
+               exit $rc                                        \n\
+       "
+fi