I'm upgrading our qpopper from 3.0 to 4.0 in an attempt to improve
performance. In particular, I'd like to be able to turn on server mode.
However, some users on our system have shell accounts, and some do not.
Therefore, I have to make sure that server mode is not turned on for shell
users.
Qpopper 4.0 has a variety of options for choosing whether or not to do server
mode: groups, spool config files, and user directory config files. However,
what I really want is a direct check: if the user has a valid shell (i.e.
listed in /etc/shells) then don't use server mode, otherwise do use server
mode. Or the inverse would be OK too: any user with a particular shell like
"/bin/false" gets server mode, and everyone else defaults to non server mode.
It appears that qpopper already has some support for shell checking via the
CHECK_SHELL macro, but that is for enabling or disabling authentication and
not server mode.
For now, I'll probably just use groups and make sure that when a user's shell
is enabled or disabled that group membership follows in lock step. But please
consider this a suggestion for future development. Mahalo.