rmcert (978B)
1 #!/bin/rc 2 3 # This script removes a DKIM keypair generated by dkim/mkcert 4 5 dir = /etc/mail/dkim 6 user = _dkimsign 7 selector = $1 8 ed = ed25519 9 rsaprivkey = $dir/$selector.priv.key 10 pubkey = $dir/$selector.pub.key 11 txt = $dir/$selector.txt 12 13 files = ( $dir/$selector.rsa.priv.key \ 14 $dir/$selector.rsa.pub.key \ 15 $dir/$selector.rsa.txt \ 16 $dir/$selector.$ed.priv.key \ 17 $dir/$selector.$ed.pub.key \ 18 $dir/$selector.$ed.txt ) 19 20 fn err { 21 echo $* >[1=2] 22 } 23 24 fn as { 25 doas -u $user $* 26 } 27 28 fn removeif-e { 29 if (as test -e $1) { 30 if (as rm $1) { 31 removed = ($removed $1) 32 } else { 33 failed = ($failed $1) 34 } 35 } 36 } 37 38 if (!~ $#* 1) { 39 echo 'usage: dkim/rmcert <selector>' 40 exit 2 41 } 42 43 for (f in $files) { 44 removeif-e $f 45 } 46 47 if (~ $removed () && ~ $failed ()) { 48 err no such selector: $selector 49 exit 1 50 } 51 52 if (!~ $removed ()) { 53 err removed: $removed 54 } 55 56 if (!~ $failed ()) { 57 err failed to remove: $failed 58 exit 1 59 }