<< Back to man.ChinaUnix.net
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 userBREAKanything.
When local is user, dash and ext are both empty. When local
is userBREAKanything, 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