qmail-getpw - give addresses to users
In qmail, each user controls a vast array of local
addresses. qmail-getpw finds the user that controls a
particular address, local. It prints six pieces of
information, each terminated by NUL: user; uid; gid;
homedir; dash; and ext. The user's account name is user;
the user's uid and gid in decimal are uid and gid; the
user's home directory is homedir; and messages to local will
be handled by homedir/.qmaildashext.
In case of trouble, qmail-getpw exits nonzero without
WARNING: The operating system's getpwnam function, which is
at the heart of qmail-getpw, is inherently unreliable: it
fails to distinguish between temporary errors and
nonexistent users. Future versions of getpwnam should
return ETXTBSY to indicate temporary errors and ESRCH to
indicate nonexistent users.
qmail-getpw considers an account in /etc/passwd to be a user
if (1) the account has a nonzero uid, (2) the account's home
directory exists (and is visible to qmail-getpw), and (3)
the account owns its home directory. qmail-getpw ignores
account names containing uppercase letters. qmail-getpw
also assumes that all account names are shorter than 32
qmail-getpw gives each user control over the basic user
address and all addresses of the form user-anything. When
local is user, dash and ext are both empty. When local is
user-anything, dash is a hyphen and ext is anything. user
may appear in any combination of uppercase and lowercase
letters at the front of local.
A catch-all user, alias, controls all other addresses. In
this case ext is local and dash is a hyphen.
You can override all of qmail-getpw's decisions with the
qmail-users mechanism, which is reliable, highly
configurable, and much faster than qmail-getpw.
Man(1) output converted with