(Report contact addresses for matching wallet objects)


wallet-contacts [-h] type-pattern name-pattern


wallet-contacts returns a list of e-mail addresses corresponding to members of owner ACLs for all objects in the wallet database matching type-pattern and name-pattern. The patterns can be wallet object types or names, or they can be SQL patterns using % as a wildcard.

krb5 ACL schemes will return the corresponding identifier as an e-mail address unless it contains a /. If it contains /, it will be ignored except for principals of the form host/hostname, which will have hostname treated as if it were the identifier in a netdb ACL.

netdb and netdb-root ACL schemes will return the e-mail address from a whois lookup of the corresponding NetDB object. wallet-contacts will run whois on the system name and search the output for users and administrators. E-mail addresses for admin groups will be returned as-is. Administrators will result in a second lookup via swhois for their directory handle, returning the corresponding e-mail address if found in their whois record. If there are no administrators or admin teams with e-mail addresses, the value of the user key, if any, will be looked up similar to an administrator.

If wallet-contacts is unable to find any contact for a host or any e-mail address for an administrator or user, it will warn but continue.


-h, --help

Print out this documentation (which is done simply by feeding the script to perldoc -t).


Takes a given email message file, replaces the contents of the To: line with the contacts found, and sends out that mail. This can be used for simple notifications that have no template requirements.


If --mail has been set, only print to the screen rather than actually sending mail. Does nothing if --mail is not set.


Many of the assumptions made by this script are Stanford-specific, such as the ability to use Kerberos principals as-is as e-mail addresses, the swhois program for looking up people, and the parsing of the whois output format.


Russ Allbery <eagle@eyrie.org>

Last spun 2022-02-06 from POD modified 2018-06-04