passdb.c revision 97c339398f1aba6f315b55a9b6ee6b020e33bea4
/* Copyright (C) 2002-2003 Timo Sirainen */
#include "common.h"
#include "auth-module.h"
#include "password-scheme.h"
#include "passdb.h"
#include "passdb-cache.h"
#include <stdlib.h>
struct passdb_module *passdbs[] = {
#ifdef PASSDB_PASSWD
#endif
#ifdef PASSDB_BSDAUTH
#endif
#ifdef PASSDB_PASSWD_FILE
#endif
#ifdef PASSDB_PAM
#endif
#ifdef PASSDB_CHECKPASSWORD
#endif
#ifdef PASSDB_SHADOW
#endif
#ifdef PASSDB_VPOPMAIL
#endif
#ifdef PASSDB_LDAP
#endif
#ifdef PASSDB_SQL
#endif
};
static const char *
{
switch (credentials) {
break;
return "PLAIN";
case PASSDB_CREDENTIALS_CRYPT:
return "CRYPT";
return "HMAC-MD5";
return "DIGEST-MD5";
return "LANMAN";
case PASSDB_CREDENTIALS_NTLM:
return "NTLM";
case PASSDB_CREDENTIALS_RPA:
return "RPA";
}
return "??";
}
struct auth_request *auth_request)
{
const char *wanted_scheme;
if (result != PASSDB_RESULT_OK) {
return;
}
if (credentials == PASSDB_CREDENTIALS_CRYPT) {
/* anything goes */
return;
}
if (verbose) {
i_info("password(%s): Requested %s "
"scheme, but we have only %s",
}
NULL, auth_request);
return;
}
/* we can generate anything out of plaintext passwords */
}
}
{
struct passdb_module **p;
args++;
break;
}
}
#ifdef HAVE_MODULES
NULL));
}
#endif
}
{
}
{
#ifdef HAVE_MODULES
#endif
}