isync

mailbox synchronization program
git clone https://git.code.sf.net/p/isync/isync
Log | Files | Refs | README | LICENSE

commit 8d1b26aebe451447ed2ec6fbfb370cd7017db00b
parent 5bbe51ee46d5c6bd858d1fb66191ec04af47fb92
Author: Oswald Buddenhagen <ossi@users.sf.net>
Date:   Fri, 26 Mar 2004 16:34:29 +0000

excessively secure temp file creation.
more user friendliness.

Diffstat:
Mget-cert | 30+++++++++++++++++++++++++-----
1 file changed, 25 insertions(+), 5 deletions(-)

diff --git a/get-cert b/get-cert @@ -21,10 +21,29 @@ # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # +if [ $# != 1 ]; then + echo "Usage: $0 <host>" >&2 + exit 1 +fi + HOST=$1 -TMPFILE=/tmp/get-cert.$$ -ERRFILE=/tmp/get-cert-err.$$ -CERTFILE=/tmp/cert.$$ + +seed=`date '+%s'` +try=0 +while :; do + TMPDIR=/tmp/get-cert.$$.$seed + mkdir $TMPDIR 2> /dev/null && break + if [ $try = 1000 ]; then + echo "Cannot create temporary directory." >&2 + exit 1 + fi + try=`expr $try + 1` + seed=`expr \( \( $seed \* 1103515245 \) + 12345 \) % 2147483648` +done + +TMPFILE=$TMPDIR/get-cert +ERRFILE=$TMPDIR/get-cert-err +CERTFILE=$TMPDIR/cert echo QUIT | openssl s_client -connect $HOST:993 -showcerts \ > $TMPFILE 2> $ERRFILE @@ -36,7 +55,8 @@ if test -s $CERTFILE ; then cat $CERTFILE echo -----END CERTIFICATE----- else - echo "Couldn't retrieve certificate. Openssl reported the following errors" + echo "Couldn't retrieve certificate. openssl reported the following errors:" cat $ERRFILE fi -/bin/rm -f $TMPFILE $ERRFILE $CERTFILE + +rm -r $TMPDIR