userdb.c revision 73e19ec2d5069ea125dcd1ede5d8a70f701fd9a8
/* Copyright (C) 2002-2003 Timo Sirainen */
#include "common.h"
#include "auth-module.h"
#include "auth-worker-server.h"
#include "userdb.h"
#include <stdlib.h>
#include <pwd.h>
#include <grp.h>
extern struct userdb_module_interface userdb_prefetch;
extern struct userdb_module_interface userdb_static;
extern struct userdb_module_interface userdb_passwd;
extern struct userdb_module_interface userdb_passwd_file;
extern struct userdb_module_interface userdb_vpopmail;
extern struct userdb_module_interface userdb_ldap;
extern struct userdb_module_interface userdb_sql;
struct userdb_module_interface *userdb_interfaces[] = {
#ifdef USERDB_PASSWD
#endif
#ifdef USERDB_PASSWD_FILE
#endif
#ifdef USERDB_PREFETCH
#endif
#ifdef USERDB_STATIC
#endif
#ifdef USERDB_VPOPMAIL
#endif
#ifdef USERDB_LDAP
#endif
#ifdef USERDB_SQL
#endif
};
{
return (uid_t)-1;
"Invalid UID value '%s'", str);
}
return (uid_t)-1;
}
}
{
return (uid_t)-1;
"Invalid GID value '%s'", str);
}
return (gid_t)-1;
}
}
{
struct userdb_module_interface **p, *iface;
auth_userdb->num++;
*dest = auth_userdb;
for (p = userdb_interfaces; *p != NULL; p++) {
iface = *p;
break;
}
}
#ifdef HAVE_MODULES
}
#endif
i_fatal("Unknown userdb driver '%s' "
"(typo, or Dovecot was built without support for it? "
"Check with dovecot --build-options)",
driver);
}
} else {
}
}
{
/* blocking userdb - we need an auth server */
}
}
{
#ifdef HAVE_MODULES
#endif
}