diff options
author | Badlop <badlop@process-one.net> | 2009-11-23 12:43:15 +0000 |
---|---|---|
committer | Badlop <badlop@process-one.net> | 2009-11-23 12:43:15 +0000 |
commit | 7fd3d67ff30e8f23c09db13b82121990e58ba7f5 (patch) | |
tree | 867cafe25e15f18483091aec3748a60e78ca926b /tools/captcha.sh | |
parent | Option to define custom HTTP headers in mod_http_fileserver (EJAB-612) (diff) |
Change captcha.sh to not depend on bash (thanks to Konstantin Khomoutov)(EJAB-1105)
SVN Revision: 2749
Diffstat (limited to '')
-rwxr-xr-x | tools/captcha.sh | 87 |
1 files changed, 61 insertions, 26 deletions
diff --git a/tools/captcha.sh b/tools/captcha.sh index d68edfa03..560a048ad 100755 --- a/tools/captcha.sh +++ b/tools/captcha.sh @@ -1,35 +1,70 @@ -#!/bin/bash +#!/bin/sh INPUT=$1 -WAVE1_AMPLITUDE=$((2 + $RANDOM % 5)) -WAVE1_LENGTH=$((50 + $RANDOM % 25)) -WAVE2_AMPLITUDE=$((2 + $RANDOM % 5)) -WAVE2_LENGTH=$((50 + $RANDOM % 25)) -WAVE3_AMPLITUDE=$((2 + $RANDOM % 5)) -WAVE3_LENGTH=$((50 + $RANDOM % 25)) -W1_LINE_START_Y=$((10 + $RANDOM % 40)) -W1_LINE_STOP_Y=$((10 + $RANDOM % 40)) -W2_LINE_START_Y=$((10 + $RANDOM % 40)) -W2_LINE_STOP_Y=$((10 + $RANDOM % 40)) -W3_LINE_START_Y=$((10 + $RANDOM % 40)) -W3_LINE_STOP_Y=$((10 + $RANDOM % 40)) +if test -n ${BASH_VERSION:-''} ; then + get_random () + { + R=$RANDOM + } +else + for n in `od -A n -t u2 -N 48 /dev/urandom`; do RL="$RL$n "; done + get_random () + { + R=${RL%% *} + RL=${RL#* } + } +fi -B1_LINE_START_Y=$(($RANDOM % 40)) -B1_LINE_STOP_Y=$(($RANDOM % 40)) -B2_LINE_START_Y=$(($RANDOM % 40)) -B2_LINE_STOP_Y=$(($RANDOM % 40)) -#B3_LINE_START_Y=$(($RANDOM % 40)) -#B3_LINE_STOP_Y=$(($RANDOM % 40)) +get_random +WAVE1_AMPLITUDE=$((2 + $R % 5)) +get_random +WAVE1_LENGTH=$((50 + $R % 25)) +get_random +WAVE2_AMPLITUDE=$((2 + $R % 5)) +get_random +WAVE2_LENGTH=$((50 + $R % 25)) +get_random +WAVE3_AMPLITUDE=$((2 + $R % 5)) +get_random +WAVE3_LENGTH=$((50 + $R % 25)) +get_random +W1_LINE_START_Y=$((10 + $R % 40)) +get_random +W1_LINE_STOP_Y=$((10 + $R % 40)) +get_random +W2_LINE_START_Y=$((10 + $R % 40)) +get_random +W2_LINE_STOP_Y=$((10 + $R % 40)) +get_random +W3_LINE_START_Y=$((10 + $R % 40)) +get_random +W3_LINE_STOP_Y=$((10 + $R % 40)) -B1_LINE_START_X=$(($RANDOM % 20)) -B1_LINE_STOP_X=$((100 + $RANDOM % 40)) -B2_LINE_START_X=$(($RANDOM % 20)) -B2_LINE_STOP_X=$((100 + $RANDOM % 40)) -#B3_LINE_START_X=$(($RANDOM % 20)) -#B3_LINE_STOP_X=$((100 + $RANDOM % 40)) +get_random +B1_LINE_START_Y=$(($R % 40)) +get_random +B1_LINE_STOP_Y=$(($R % 40)) +get_random +B2_LINE_START_Y=$(($R % 40)) +get_random +B2_LINE_STOP_Y=$(($R % 40)) +#B3_LINE_START_Y=$(($R % 40)) +#B3_LINE_STOP_Y=$(($R % 40)) -ROLL_X=$(($RANDOM % 40)) +get_random +B1_LINE_START_X=$(($R % 20)) +get_random +B1_LINE_STOP_X=$((100 + $R % 40)) +get_random +B2_LINE_START_X=$(($R % 20)) +get_random +B2_LINE_STOP_X=$((100 + $R % 40)) +#B3_LINE_START_X=$(($R % 20)) +#B3_LINE_STOP_X=$((100 + $R % 40)) + +get_random +ROLL_X=$(($R % 40)) convert -size 180x60 xc:none -pointsize 40 \ \( -clone 0 -fill white \ |