#!/bin/sh
set -e

# /usr/share/exim4/exim4_refresh_gnutls-params
# re-create /var/spool/exim4/gnutls-params taking up to 2 times
# $1 seconds.

if [ `id -u` = "0" ] ; then
  echo "$0 should be run as exim-user, exiting" 1>&2
  exit 1
fi

SPOOLDIR="$(exim4 -bP spool_directory | sed 's/.*=[[:space:]]\(.*\)/\1/')"
cd $SPOOLDIR

tempgnutls=$(tempfile -d $SPOOLDIR -p "gnutp" )
if /usr/share/exim4/timeout.pl \
  "$1" /usr/bin/certtool --generate-privkey --bits 512 \
  > "$tempgnutls" 2> /dev/null && \
  /usr/share/exim4/timeout.pl \
  "$1" /usr/bin/certtool --generate-dh-params --bits 1024 \
  >> "$tempgnutls" 2> /dev/null ; then
  if [ -e $SPOOLDIR/gnutls-params ] ; then
    chmod --reference=$SPOOLDIR/gnutls-params "$tempgnutls"
  fi
  mv -f "$tempgnutls" $SPOOLDIR/gnutls-params
else
  rm -f "$tempgnutls"
fi

# vim:tabstop=2:expandtab:shiftwidth=2
