AUTH_ENUMERATE(3)

NAME
auth_enumerate - Obtain list of accounts

SYNOPSIS

#include <courierauth.h>

auth_enumerate(int (*callback_func) (const char *, uid_t, gid_t, const char *, const char *, const char *, void *), void *callback_arg);

DESCRIPTION

auth_enumerate enumerates all of the available accounts. auth_enumerate repeatedly calls callback_func, once for each account. callback_func receives the following arguments:

    • Account name.

    • Account's numeric userid.

    • Account's numeric groupid.

    • Account's home directory.

    • Account's mailbox (if defined, may be NULL, which indicates the default mailbox location).

    • Account's options string (if defined, may be NULL)

    • callback_arg, verbatim.

After invoking callback_func for the last account, auth_enumerate invokes callback_func one more time with all parameters set to NULL or 0.

If auth_enumerate encounters an error it will terminate without calling callback_func with all NULL or 0 parameters. This can be used to determine whether a partial list of accounts was received.

    Note

    Some back-end Courier authentication modules do not implement account enumeration, so this function may not be available in all configurations.

SEE ALSO

authlib(3)[1], auth_generic_meta(3)[2], auth_login_meta(3)[3], auth_getuserinfo_meta(3)[4], auth_passwd(3)[5].

NOTES

1.  authlib(3)
    https://www.courier-mta.org/authlib/authlib.html

2.  auth_generic_meta(3)
    https://www.courier-mta.org/authlib/auth_generic.html

3.  auth_login_meta(3)
    https://www.courier-mta.org/authlib/auth_login.html

4.  auth_getuserinfo_meta(3)
    https://www.courier-mta.org/authlib/auth_getuserinfo.html

5.  auth_passwd(3)
    https://www.courier-mta.org/authlib/auth_passwd.html