passdb-bsdauth.c revision 2692797175379e86c592f07b1e3430e715ba90a8
56417118453b335ca2bba5ad1f6624db4f03c5beTimo Sirainen/* Copyright (C) 2002-2003 Timo Sirainen */
a64adf62fa33f2463a86f990217b0c9078531a40Timo Sirainenbsdauth_verify_plain(struct auth_request *request, const char *password,
cd18d7bb3e8d5921c3c852bd0a27fbeff9a9babbTimo Sirainen auth_request_log_info(request, "bsdauth", "unknown user");
cd18d7bb3e8d5921c3c852bd0a27fbeff9a9babbTimo Sirainen /* check if the password is valid */
a64adf62fa33f2463a86f990217b0c9078531a40Timo Sirainen result = auth_userokay(request->user, NULL, NULL,
b200bc3875fa06d42c8619865cc306c3297fcaccAki Tuomi /* clear the passwords from memory */
b200bc3875fa06d42c8619865cc306c3297fcaccAki Tuomi safe_memset(pw->pw_passwd, 0, strlen(pw->pw_passwd));
cd18d7bb3e8d5921c3c852bd0a27fbeff9a9babbTimo Sirainen auth_request_log_info(request, "bsdauth", "password mismatch");
a64adf62fa33f2463a86f990217b0c9078531a40Timo Sirainen callback(PASSDB_RESULT_PASSWORD_MISMATCH, request);
c1847a38dfbc8bad29547d96432ef9d707dbd345Timo Sirainen /* make sure we're using the username exactly as it's in the database */
b28a1c61a5d262fd16b46bebe47dbfb90ac9c5fcTimo Sirainen auth_request_set_field(request, "user", pw->pw_name, NULL);
cd18d7bb3e8d5921c3c852bd0a27fbeff9a9babbTimo Sirainenbsdauth_preinit(struct auth_passdb *auth_passdb, const char *args)
a64adf62fa33f2463a86f990217b0c9078531a40Timo Sirainen module = p_new(auth_passdb->auth->pool, struct passdb_module, 1);
c1847a38dfbc8bad29547d96432ef9d707dbd345Timo Sirainenstatic void bsdauth_deinit(struct passdb_module *module __attr_unused__)