[Koha-patches] [PATCH 18/28] Add koha-reset-passwd, a script for resetting a user's password.

Lars Wirzenius lars at catalyst.net.nz
Tue May 25 03:44:17 CEST 2010


---
 debian/scripts/koha-reset-passwd |   57 ++++++++++++++++++++++++++++++++++++++
 1 files changed, 57 insertions(+), 0 deletions(-)
 create mode 100755 debian/scripts/koha-reset-passwd

diff --git a/debian/scripts/koha-reset-passwd b/debian/scripts/koha-reset-passwd
new file mode 100755
index 0000000..c9f3752
--- /dev/null
+++ b/debian/scripts/koha-reset-passwd
@@ -0,0 +1,57 @@
+#!/bin/sh
+#
+# koha-reset-passwd -- reset password for a user in a Koha instance
+# Copyright 2010  Catalyst IT, Ltd
+# 
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+# 
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+
+set -e
+
+
+die() {
+    echo "$@" 1>&2
+    exit 1
+}
+
+
+pwdigest() {
+    echo -n "$1" |
+    perl -e 'use Digest::MD5 qw(md5_base64);
+             while (<>) { print md5_base64($_), "\n"; }'
+}
+
+
+[ $# -lt 2 ] && die "Usage: $0 instancename username..."
+instance="$1"
+shift
+
+temp="$(mktemp)"
+
+cat <<eof > "$temp"
+use koha_$instance;
+eof
+
+for userid in "$@"
+do
+    password="$(pwgen -1)"
+    digest="$(pwdigest $password)"
+    echo "$userid $password"
+    echo "UPDATE borrowers SET password = '$digest' WHERE userid = '$userid';" \
+        >> "$temp"
+done
+
+mysql --defaults-extra-file=/etc/mysql/debian.cnf < "$temp"
+
+rm "$temp"
-- 
1.7.1




More information about the Koha-patches mailing list