diff options
-rwxr-xr-x | quasseluser-reset-password | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/quasseluser-reset-password b/quasseluser-reset-password index bd068ad..0d7a727 100755 --- a/quasseluser-reset-password +++ b/quasseluser-reset-password | |||
@@ -1,15 +1,29 @@ | |||
1 | #!/bin/sh | 1 | #!/bin/sh |
2 | 2 | ||
3 | change_userpass() | ||
4 | { | ||
5 | printf '%s\n' "$password" "$password" | ./run-quasselcore --change-userpass "$username" | ||
6 | } | ||
7 | |||
3 | quasseluser_reset_password() | 8 | quasseluser_reset_password() |
4 | { | 9 | { |
5 | username=$1 | 10 | username=$1 |
6 | [ "$username" ] | 11 | [ "$username" ] |
7 | password=$(tr -cd a-z </dev/urandom | head -c15) | 12 | password=$(tr -cd a-z </dev/urandom | head -c15) |
8 | [ "$password" ] | 13 | [ "$password" ] |
9 | printf '%s\n' "$password" "$password" | ./run-quasselcore --change-userpass "$username" | ||
10 | if [ -t 0 ] | 14 | if [ -t 0 ] |
11 | then | 15 | then |
12 | printf "User; %s\nPassword: %s\n" "$username" "$password" | 16 | err_out=$(mktemp) |
17 | trap 'rm -f "$err_out"' EXIT | ||
18 | if change_userpass >"$err_out" 2>&1 | ||
19 | then | ||
20 | printf "User: %s\nPassword: %s\n" "$username" "$password" | ||
21 | else | ||
22 | cat "$err_out" | ||
23 | exit 1 | ||
24 | fi | ||
25 | else | ||
26 | change_userpass | ||
13 | fi | 27 | fi |
14 | } | 28 | } |
15 | 29 | ||