set -eE -o pipefail
trap 'echo "$0:$LINENO:error: \"$BASH_COMMAND\" returned $?" >&2' ERR
+dos_attack_bytes=1000000
+
refresh-gpg-key() {
key=$1
fi
done
-gpg --armor --export $KEYS > fsf-keyring.gpg
+gpg --armor --export $KEYS > key-export
+
+(( "$(stat -c %s key-export)" > "${dos_attack_bytes}" )) && echo -e "\n\nerror: keyring is very large. did we get a signature DoS attack?\n\n" && exit 1
+
+mv key-export fsf-keyring.gpg
-echo "Please verify in another terminal window that the keyring doesn't contain many spam signatures before signing:"
-echo
-echo "ls -lh fsf-keyring.gpg"
-echo
-echo "Press [enter] to continue."
-echo
-read
gpg --armor --sign ./fsf-keyring.gpg
mv fsf-keyring.gpg.asc fsf-keyring.gpg
rm -f fsf-keyring.gpg~