-static const char *scram_unescape_username(const char *in)
+static const char *auth_scram_unescape_username(const char *in)
{
string_t *out;
}
static bool
-parse_scram_client_first(struct scram_auth_request *server,
- const unsigned char *data, size_t size,
- const char **error_r)
+auth_scram_parse_client_first(struct scram_auth_request *server,
+ const unsigned char *data, size_t size,
+ const char **error_r)
{
const char *login_username = NULL;
const char *data_cstr, *p;
;
else if (authzid[0] == 'a' && authzid[1] == '=') {
/* Unescape authzid */
- login_username = scram_unescape_username(authzid + 2);
+ login_username = auth_scram_unescape_username(authzid + 2);
if (login_username == NULL) {
*error_r = "authzid escaping is invalid";
*/
if (username[0] == 'n' && username[1] == '=') {
/* Unescape username */
- username = scram_unescape_username(username + 2);
+ username = auth_scram_unescape_username(username + 2);
if (username == NULL) {
*error_r = "Username escaping is invalid";
return FALSE;
}
static const char *
-get_scram_server_first(struct scram_auth_request *server,
- int iter, const char *salt)
+auth_scram_get_server_first(struct scram_auth_request *server,
+ int iter, const char *salt)
{
unsigned char snonce[SCRAM_SERVER_NONCE_LEN+1];
string_t *str;
return str_c(str);
}
-static bool verify_credentials(struct scram_auth_request *server)
+static bool
+auth_scram_server_verify_credentials(struct scram_auth_request *server)
{
const struct hash_method *hmethod = server->hash_method;
struct hmac_context ctx;
}
static bool
-parse_scram_client_final(struct scram_auth_request *server,
- const unsigned char *data, size_t size,
- const char **error_r)
+auth_scram_parse_client_final(struct scram_auth_request *server,
+ const unsigned char *data, size_t size,
+ const char **error_r)
{
const struct hash_method *hmethod = server->hash_method;
const char **fields, *cbind_input, *nonce_str;
return TRUE;
}
-static const char *get_scram_server_final(struct scram_auth_request *server)
+static const char *
+auth_scram_get_server_final(struct scram_auth_request *server)
{
const struct hash_method *hmethod = server->hash_method;
struct hmac_context ctx;
}
request->server_first_message = p_strdup(request->pool,
- get_scram_server_first(request, iter_count, salt));
+ auth_scram_get_server_first(request, iter_count, salt));
auth_request_handler_reply_continue(auth_request,
request->server_first_message,
if (request->client_first_message_bare == NULL) {
/* Received client-first-message */
- if (parse_scram_client_first(request, data,
- data_size, &error)) {
+ if (auth_scram_parse_client_first(request, data,
+ data_size, &error)) {
auth_request_lookup_credentials(
&request->auth_request,
request->password_scheme,
}
} else {
/* Received client-final-message */
- if (parse_scram_client_final(request, data, data_size,
- &error)) {
- if (!verify_credentials(request)) {
+ if (auth_scram_parse_client_final(request, data, data_size,
+ &error)) {
+ if (!auth_scram_server_verify_credentials(request)) {
e_info(auth_request->mech_event,
AUTH_LOG_MSG_PASSWORD_MISMATCH);
} else {
server_final_message =
- get_scram_server_final(request);
+ auth_scram_get_server_final(request);
len = strlen(server_final_message);
auth_request_success(auth_request,
server_final_message, len);