X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=uip%2Fmhsign.sh;h=9d6c747ee059bac1e655b4fd5632671d5b2da4c4;hp=94c19f9f55b178c8541984d01bdda1a4975a1549;hb=18591f8e001ecedbee48a51c1d1f08ebaa1c15c8;hpb=5cf93efd16ee663ed0f680b503b71beec1783191 diff --git a/uip/mhsign.sh b/uip/mhsign.sh index 94c19f9..9d6c747 100755 --- a/uip/mhsign.sh +++ b/uip/mhsign.sh @@ -9,7 +9,7 @@ # will be removed and any "From " line will be indented for # best compatibility. Enforced for multipart messages. -usage="Usage: mhsign [-encrypt] [-mime] file" +usage="Usage: mhsign [-encrypt] [-mime] [-Version] [-help] file" # defaults usemime=n @@ -109,16 +109,18 @@ lookupkeys() { return 1 fi - whom -ali -tocc -nobcc "$1" | while read i ; do + # extract the actual address + format='%<{error}%{error}: %{text}%|%(addr{text})%>' + addresses=`whom -ali -tocc -nobcc "$1" |sed 's_$_,_'` + addresses=`%libdir%/ap -form "=$format" "$addresses"` + + for i in $addresses ; do case "$i" in '|'*) echo "Ignoring pipe address" >&2 continue ;; *@*) ;; *) i="$i@`hostname -f`" ;; esac - # extract the actual address - format='%<{error}%{error}: %{text}%|%(addr{text})%>' - i=`%libdir%/ap -form "=$format" "$i"` if k=`lookupkeyfile "$i"` ; then KL="$KL $k" elif k=`lookupkeyring "$i"` ; then