passdb-passwd-file.c revision 5f21795890064f8e1ebebdff752b67f15ea59e37
/* Copyright (c) 2002-2010 Dovecot authors, see the included COPYING file */
#include "auth-common.h"
#include "passdb.h"
#ifdef PASSDB_PASSWD_FILE
#include "str.h"
#include "auth-cache.h"
#include "var-expand.h"
#include "password-scheme.h"
#include "db-passwd-file.h"
struct passwd_file_passdb_module {
struct passdb_module module;
struct db_passwd_file *pwf;
const char *username_format;
};
const struct passwd_user *pu,
const char **crypted_pass_r,
const char **scheme_r)
{
const struct var_expand_table *table;
char **p;
/* save the password so cache can use it */
if (*crypted_pass_r != NULL) {
*crypted_pass_r, *scheme_r);
}
str_truncate(str, 0);
} else {
key = *p;
value = "";
}
}
}
}
static void
{
struct passwd_file_passdb_module *module =
(struct passwd_file_passdb_module *)_module;
struct passwd_user *pu;
const char *scheme, *crypted_pass;
int ret;
return;
}
scheme, "passwd-file");
request);
}
static void
{
struct passwd_file_passdb_module *module =
(struct passwd_file_passdb_module *)_module;
struct passwd_user *pu;
const char *crypted_pass, *scheme;
return;
}
}
static struct passdb_module *
{
struct passwd_file_passdb_module *module;
const char *scheme = PASSWD_FILE_DEFAULT_SCHEME;
const char *format = PASSWD_FILE_DEFAULT_USERNAME_FORMAT;
while (*args != '\0') {
if (*args == '/')
break;
value = "";
} else {
}
args = "";
else
args++;
else
}
if (*args == '\0')
i_fatal("passdb passwd-file: Missing args");
else {
}
}
{
struct passwd_file_passdb_module *module =
(struct passwd_file_passdb_module *)_module;
}
{
struct passwd_file_passdb_module *module =
(struct passwd_file_passdb_module *)_module;
}
struct passdb_module_interface passdb_passwd_file = {
"passwd-file",
};
#else
struct passdb_module_interface passdb_passwd_file = {
.name = "passwd-file"
};
#endif