X-Git-Url: https://git.madduck.net/etc/mutt.git/blobdiff_plain/2a17dce6783c810dca5e3648085113002e2bd6ba..76227d1c302ee76d82c037e923c70edc61fd5aea:/.mutt/sendmail-checks.d/check-attachments?ds=sidebyside diff --git a/.mutt/sendmail-checks.d/check-attachments b/.mutt/sendmail-checks.d/check-attachments index 760822d..fe80dc0 100755 --- a/.mutt/sendmail-checks.d/check-attachments +++ b/.mutt/sendmail-checks.d/check-attachments @@ -16,20 +16,22 @@ set -eu RE_ENGLISH='attach(ing|ed|ment)?|included\W+(with|in)\W+th(is|e\W+(curr|pres)ent)\W+mail' -RE_GERMAN='an(gehängt|hängsel|bei)|bei(gefügt|lage)|(im|siehe)\W+(anhang|beilage)' -RE_FRENCH='attach(e|er|ée?s?|ement|ant)' -OVERRIDE_HEADER=X-No-Attachments +RE_GERMAN='an(geh(ä|=E4|=C3=A4)ngt|h(ä|=E4|=C3=A4)ngsel|bei)|bei(gef(ü|=FC|=C3=BC)gt|lage)|(im|siehe)\W+(anhang|beilage)' +RE_FRENCH='attach(e|er|(é|=E9|=C3=A9)e?s?|ement|ant)' +OVERRIDE_HEADER=X-No-Attach -if ! grep -q "^${OVERRIDE_HEADER}:" "$1" \ - && egrep -ziq "($RE_ENGLISH|$RE_GERMAN|$RE_FRENCH)" "$1"; then +if ! grep -qi "^${OVERRIDE_HEADER}:" "$1" \ + && egrep -v '^(> |Content-Disposition:)' "$1" | egrep -qzi "($RE_ENGLISH|$RE_GERMAN|$RE_FRENCH)"; then - nr_attach=$(sed -rne 's/^Content-Type:[[:space:]]+//p' "$1" | - egrep -cv '^(multipart/|application/pgp-signature)') + nr_attach=$(sed -rne 's/^Content-Type:[[:space:]]+//pi' "$1" | + egrep -civ '^(multipart/|application/pgp-signature)') if [ $nr_attach -lt 2 ]; then - echo >&2 "E: the mail seems to reference an attachment, but there seems" - echo >&2 "to be no non-PGP MIME part." + echo >&2 "E: the mail message likely references an attachment," + echo >&2 "E: but there seems to be no non-PGP MIME part." echo >&2 "E: (add the $OVERRIDE_HEADER header to override the check)." exit 1 fi fi + +sed -i -e "/^${OVERRIDE_HEADER}:/d" "$1"