Mercurial > dovecot > original-hg > dovecot-1.2
changeset 3071:c7db6b291daa HEAD
API cleanup
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Sat, 08 Jan 2005 23:22:52 +0200 |
parents | 305ac76afcda |
children | 289a98ba5d95 |
files | src/auth/auth-client-connection.c src/auth/auth-request.c src/auth/auth-request.h src/auth/mech-anonymous.c src/auth/mech-apop.c src/auth/mech-cram-md5.c src/auth/mech-digest-md5.c src/auth/mech-login.c src/auth/mech-ntlm.c src/auth/mech-plain.c src/auth/mech-rpa.c src/auth/mech.h |
diffstat | 12 files changed, 81 insertions(+), 117 deletions(-) [+] |
line wrap: on
line diff
--- a/src/auth/auth-client-connection.c Sat Jan 08 21:01:31 2005 +0200 +++ b/src/auth/auth-client-connection.c Sat Jan 08 23:22:52 2005 +0200 @@ -226,9 +226,14 @@ return FALSE; } - request = auth_request_new(conn->auth, mech); + request = mech->auth_new(auth_callback); if (request == NULL) return TRUE; + + request->auth = conn->auth; + request->mech = mech; + request->created = ioloop_time; + hash_insert(conn->auth_requests, POINTER_CAST(id), request); request->conn = conn; @@ -297,8 +302,7 @@ /* connection is referenced only until auth_callback is called. */ conn->refcount++; - auth_request_initial(request, initial_resp_data, initial_resp_len, - auth_callback); + auth_request_initial(request, initial_resp_data, initial_resp_len); return TRUE; } @@ -348,7 +352,7 @@ } conn->refcount++; - auth_request_continue(request, buf->data, buf->used, auth_callback); + auth_request_continue(request, buf->data, buf->used); return TRUE; }
--- a/src/auth/auth-request.c Sat Jan 08 21:01:31 2005 +0200 +++ b/src/auth/auth-request.c Sat Jan 08 23:22:52 2005 +0200 @@ -23,21 +23,6 @@ static buffer_t *auth_failures_buf; static struct timeout *to_auth_failures; -struct auth_request *auth_request_new(struct auth *auth, - struct mech_module *mech) -{ - struct auth_request *request; - - request = mech->auth_new(); - if (request == NULL) - return NULL; - - request->auth = auth; - request->mech = mech; - request->created = ioloop_time; - return request; -} - void auth_request_destroy(struct auth_request *request) { i_assert(request->refcount > 0); @@ -118,17 +103,15 @@ } void auth_request_initial(struct auth_request *request, - const unsigned char *data, size_t data_size, - mech_callback_t *callback) + const unsigned char *data, size_t data_size) { - request->mech->auth_initial(request, data, data_size, callback); + request->mech->auth_initial(request, data, data_size); } void auth_request_continue(struct auth_request *request, - const unsigned char *data, size_t data_size, - mech_callback_t *callback) + const unsigned char *data, size_t data_size) { - request->mech->auth_continue(request, data, data_size, callback); + request->mech->auth_continue(request, data, data_size); } void auth_request_verify_plain(struct auth_request *request,
--- a/src/auth/auth-request.h Sat Jan 08 21:01:31 2005 +0200 +++ b/src/auth/auth-request.h Sat Jan 08 23:22:52 2005 +0200 @@ -48,11 +48,9 @@ int auth_request_unref(struct auth_request *request); void auth_request_initial(struct auth_request *request, - const unsigned char *data, size_t data_size, - mech_callback_t *callback); + const unsigned char *data, size_t data_size); void auth_request_continue(struct auth_request *request, - const unsigned char *data, size_t data_size, - mech_callback_t *callback); + const unsigned char *data, size_t data_size); void auth_request_verify_plain(struct auth_request *request, const char *password,
--- a/src/auth/mech-anonymous.c Sat Jan 08 21:01:31 2005 +0200 +++ b/src/auth/mech-anonymous.c Sat Jan 08 23:22:52 2005 +0200 @@ -5,8 +5,7 @@ static void mech_anonymous_auth_continue(struct auth_request *request, - const unsigned char *data, size_t data_size, - mech_callback_t *callback) + const unsigned char *data, size_t data_size) { i_assert(request->auth->anonymous_username != NULL); @@ -18,7 +17,6 @@ auth_request_log_info(request, "anonymous", "login"); } - request->callback = callback; request->user = p_strdup(request->pool, request->auth->anonymous_username); @@ -27,14 +25,13 @@ static void mech_anonymous_auth_initial(struct auth_request *request, - const unsigned char *data, size_t data_size, - mech_callback_t *callback) + const unsigned char *data, size_t data_size) { - if (data_size == 0) - callback(request, AUTH_CLIENT_RESULT_CONTINUE, NULL, 0); - else { - mech_anonymous_auth_continue(request, data, data_size, - callback); + if (data_size == 0) { + request->callback(request, AUTH_CLIENT_RESULT_CONTINUE, + NULL, 0); + } else { + mech_anonymous_auth_continue(request, data, data_size); } } @@ -44,7 +41,7 @@ pool_unref(request->pool); } -static struct auth_request *mech_anonymous_auth_new(void) +static struct auth_request *mech_anonymous_auth_new(mech_callback_t *callback) { struct auth_request *request; pool_t pool; @@ -53,7 +50,7 @@ request = p_new(pool, struct auth_request, 1); request->refcount = 1; request->pool = pool; - + request->callback = callback; return request; }
--- a/src/auth/mech-apop.c Sat Jan 08 21:01:31 2005 +0200 +++ b/src/auth/mech-apop.c Sat Jan 08 23:22:52 2005 +0200 @@ -71,16 +71,13 @@ static void mech_apop_auth_initial(struct auth_request *auth_request, - const unsigned char *data, size_t data_size, - mech_callback_t *callback) + const unsigned char *data, size_t data_size) { struct apop_auth_request *request = (struct apop_auth_request *)auth_request; const unsigned char *tmp, *end, *username = NULL; const char *str, *error; - auth_request->callback = callback; - if (data_size == 0) { /* Should never happen */ auth_request_log_info(auth_request, "apop", @@ -141,7 +138,7 @@ pool_unref(request->pool); } -static struct auth_request *mech_apop_auth_new(void) +static struct auth_request *mech_apop_auth_new(mech_callback_t *callback) { struct apop_auth_request *request; pool_t pool; @@ -152,6 +149,7 @@ request->auth_request.refcount = 1; request->auth_request.pool = pool; + request->auth_request.callback = callback; return &request->auth_request; }
--- a/src/auth/mech-cram-md5.c Sat Jan 08 21:01:31 2005 +0200 +++ b/src/auth/mech-cram-md5.c Sat Jan 08 23:22:52 2005 +0200 @@ -132,16 +132,13 @@ static void mech_cram_md5_auth_continue(struct auth_request *auth_request, - const unsigned char *data, size_t data_size, - mech_callback_t *callback) + const unsigned char *data, size_t data_size) { struct cram_auth_request *request = (struct cram_auth_request *)auth_request; const char *error; if (parse_cram_response(request, data, data_size, &error)) { - auth_request->callback = callback; - if (auth_request_set_username(auth_request, request->username, &error)) { auth_request_lookup_credentials(auth_request, @@ -161,15 +158,14 @@ static void mech_cram_md5_auth_initial(struct auth_request *auth_request, const unsigned char *data __attr_unused__, - size_t data_size __attr_unused__, - mech_callback_t *callback) + size_t data_size __attr_unused__) { struct cram_auth_request *request = (struct cram_auth_request *)auth_request; request->challenge = p_strdup(request->pool, get_cram_challenge()); - callback(auth_request, AUTH_CLIENT_RESULT_CONTINUE, - request->challenge, strlen(request->challenge)); + auth_request->callback(auth_request, AUTH_CLIENT_RESULT_CONTINUE, + request->challenge, strlen(request->challenge)); } static void mech_cram_md5_auth_free(struct auth_request *request) @@ -177,7 +173,7 @@ pool_unref(request->pool); } -static struct auth_request *mech_cram_md5_auth_new(void) +static struct auth_request *mech_cram_md5_auth_new(mech_callback_t *callback) { struct cram_auth_request *request; pool_t pool; @@ -188,6 +184,7 @@ request->auth_request.refcount = 1; request->auth_request.pool = pool; + request->auth_request.callback = callback; return &request->auth_request; }
--- a/src/auth/mech-digest-md5.c Sat Jan 08 21:01:31 2005 +0200 +++ b/src/auth/mech-digest-md5.c Sat Jan 08 23:22:52 2005 +0200 @@ -543,8 +543,7 @@ static void mech_digest_md5_auth_continue(struct auth_request *auth_request, - const unsigned char *data, size_t data_size, - mech_callback_t *callback) + const unsigned char *data, size_t data_size) { struct digest_auth_request *request = (struct digest_auth_request *)auth_request; @@ -558,8 +557,6 @@ } if (parse_digest_response(request, data, data_size, &error)) { - auth_request->callback = callback; - username = request->realm == NULL ? request->username : t_strconcat(request->username, "@", request->realm, NULL); @@ -580,8 +577,7 @@ static void mech_digest_md5_auth_initial(struct auth_request *auth_request, - const unsigned char *data, size_t data_size, - mech_callback_t *callback) + const unsigned char *data, size_t data_size) { struct digest_auth_request *request = (struct digest_auth_request *)auth_request; @@ -589,14 +585,13 @@ if (data_size > 0) { /* FIXME: support subsequent authentication? */ - mech_digest_md5_auth_continue(auth_request, data, data_size, - callback); + mech_digest_md5_auth_continue(auth_request, data, data_size); return; } challenge = get_digest_challenge(request); - callback(auth_request, AUTH_CLIENT_RESULT_CONTINUE, - str_data(challenge), str_len(challenge)); + auth_request->callback(auth_request, AUTH_CLIENT_RESULT_CONTINUE, + str_data(challenge), str_len(challenge)); } static void mech_digest_md5_auth_free(struct auth_request *request) @@ -605,7 +600,7 @@ } static struct auth_request * -mech_digest_md5_auth_new(void) +mech_digest_md5_auth_new(mech_callback_t *callback) { struct digest_auth_request *request; pool_t pool; @@ -613,10 +608,11 @@ pool = pool_alloconly_create("digest_md5_auth_request", 2048); request = p_new(pool, struct digest_auth_request, 1); request->pool = pool; + request->qop = QOP_AUTH; request->auth_request.refcount = 1; request->auth_request.pool = pool; - request->qop = QOP_AUTH; + request->auth_request.callback = callback; return &request->auth_request; }
--- a/src/auth/mech-login.c Sat Jan 08 21:01:31 2005 +0200 +++ b/src/auth/mech-login.c Sat Jan 08 23:22:52 2005 +0200 @@ -32,14 +32,11 @@ static void mech_login_auth_continue(struct auth_request *request, - const unsigned char *data, size_t data_size, - mech_callback_t *callback) + const unsigned char *data, size_t data_size) { static const char prompt2[] = "Password:"; const char *username, *error; - request->callback = callback; - if (request->user == NULL) { username = t_strndup(data, data_size); @@ -49,8 +46,8 @@ return; } - callback(request, AUTH_CLIENT_RESULT_CONTINUE, - prompt2, strlen(prompt2)); + request->callback(request, AUTH_CLIENT_RESULT_CONTINUE, + prompt2, strlen(prompt2)); } else { char *pass = p_strndup(unsafe_data_stack_pool, data, data_size); auth_request_verify_plain(request, pass, verify_callback); @@ -61,13 +58,12 @@ static void mech_login_auth_initial(struct auth_request *request, const unsigned char *data __attr_unused__, - size_t data_size __attr_unused__, - mech_callback_t *callback) + size_t data_size __attr_unused__) { static const char prompt1[] = "Username:"; - callback(request, AUTH_CLIENT_RESULT_CONTINUE, - prompt1, strlen(prompt1)); + request->callback(request, AUTH_CLIENT_RESULT_CONTINUE, + prompt1, strlen(prompt1)); } static void mech_login_auth_free(struct auth_request *request) @@ -75,16 +71,16 @@ pool_unref(request->pool); } -static struct auth_request *mech_login_auth_new(void) +static struct auth_request *mech_login_auth_new(mech_callback_t *callback) { struct auth_request *request; pool_t pool; pool = pool_alloconly_create("login_auth_request", 256); request = p_new(pool, struct auth_request, 1); - request->refcount = 1; request->pool = pool; + request->callback = callback; return request; }
--- a/src/auth/mech-ntlm.c Sat Jan 08 21:01:31 2005 +0200 +++ b/src/auth/mech-ntlm.c Sat Jan 08 23:22:52 2005 +0200 @@ -181,15 +181,12 @@ static void mech_ntlm_auth_continue(struct auth_request *auth_request, - const unsigned char *data, size_t data_size, - mech_callback_t *callback) + const unsigned char *data, size_t data_size) { struct ntlm_auth_request *request = (struct ntlm_auth_request *)auth_request; const char *error; - auth_request->callback = callback; - if (!request->challenge) { const struct ntlmssp_request *ntlm_request = (struct ntlmssp_request *)data; @@ -247,13 +244,14 @@ static void mech_ntlm_auth_initial(struct auth_request *request, - const unsigned char *data, size_t data_size, - mech_callback_t *callback) + const unsigned char *data, size_t data_size) { - if (data_size == 0) - callback(request, AUTH_CLIENT_RESULT_CONTINUE, NULL, 0); - else - mech_ntlm_auth_continue(request, data, data_size, callback); + if (data_size == 0) { + request->callback(request, AUTH_CLIENT_RESULT_CONTINUE, + NULL, 0); + } else { + mech_ntlm_auth_continue(request, data, data_size); + } } static void @@ -262,7 +260,7 @@ pool_unref(request->pool); } -static struct auth_request *mech_ntlm_auth_new(void) +static struct auth_request *mech_ntlm_auth_new(mech_callback_t *callback) { struct ntlm_auth_request *request; pool_t pool; @@ -273,6 +271,7 @@ request->auth_request.refcount = 1; request->auth_request.pool = pool; + request->auth_request.callback = callback; return &request->auth_request; }
--- a/src/auth/mech-plain.c Sat Jan 08 21:01:31 2005 +0200 +++ b/src/auth/mech-plain.c Sat Jan 08 23:22:52 2005 +0200 @@ -23,15 +23,12 @@ static void mech_plain_auth_continue(struct auth_request *request, - const unsigned char *data, size_t data_size, - mech_callback_t *callback) + const unsigned char *data, size_t data_size) { const char *authid, *authenid, *error; char *pass; size_t i, count, len; - request->callback = callback; - /* authorization ID \0 authentication ID \0 pass. we'll ignore authorization ID for now. */ authid = (const char *) data; @@ -73,13 +70,14 @@ static void mech_plain_auth_initial(struct auth_request *request, - const unsigned char *data, size_t data_size, - mech_callback_t *callback) + const unsigned char *data, size_t data_size) { - if (data_size == 0) - callback(request, AUTH_CLIENT_RESULT_CONTINUE, NULL, 0); - else - mech_plain_auth_continue(request, data, data_size, callback); + if (data_size == 0) { + request->callback(request, AUTH_CLIENT_RESULT_CONTINUE, + NULL, 0); + } else { + mech_plain_auth_continue(request, data, data_size); + } } static void @@ -88,7 +86,7 @@ pool_unref(request->pool); } -static struct auth_request *mech_plain_auth_new(void) +static struct auth_request *mech_plain_auth_new(mech_callback_t *callback) { struct auth_request *request; pool_t pool; @@ -97,6 +95,7 @@ request = p_new(pool, struct auth_request, 1); request->refcount = 1; request->pool = pool; + request->callback = callback; return request; }
--- a/src/auth/mech-rpa.c Sat Jan 08 21:01:31 2005 +0200 +++ b/src/auth/mech-rpa.c Sat Jan 08 23:22:52 2005 +0200 @@ -504,14 +504,11 @@ static void mech_rpa_auth_continue(struct auth_request *auth_request, - const unsigned char *data, size_t data_size, - mech_callback_t *callback) + const unsigned char *data, size_t data_size) { struct rpa_auth_request *request = (struct rpa_auth_request *)auth_request; - auth_request->callback = callback; - switch (request->phase) { case 0: mech_rpa_auth_phase1(auth_request, data, data_size); @@ -530,13 +527,14 @@ static void mech_rpa_auth_initial(struct auth_request *request, - const unsigned char *data, size_t data_size, - mech_callback_t *callback) + const unsigned char *data, size_t data_size) { - if (data_size == 0) - callback(request, AUTH_CLIENT_RESULT_CONTINUE, NULL, 0); - else - mech_rpa_auth_continue(request, data, data_size, callback); + if (data_size == 0) { + request->callback(request, AUTH_CLIENT_RESULT_CONTINUE, + NULL, 0); + } else { + mech_rpa_auth_continue(request, data, data_size); + } } static void @@ -551,7 +549,7 @@ pool_unref(auth_request->pool); } -static struct auth_request *mech_rpa_auth_new(void) +static struct auth_request *mech_rpa_auth_new(mech_callback_t *callback) { struct rpa_auth_request *request; pool_t pool; @@ -563,6 +561,7 @@ request->auth_request.refcount = 1; request->auth_request.pool = pool; + request->auth_request.callback = callback; return &request->auth_request; }
--- a/src/auth/mech.h Sat Jan 08 21:01:31 2005 +0200 +++ b/src/auth/mech.h Sat Jan 08 23:22:52 2005 +0200 @@ -24,13 +24,11 @@ unsigned int passdb_need_plain:1; unsigned int passdb_need_credentials:1; - struct auth_request *(*auth_new)(void); + struct auth_request *(*auth_new)(mech_callback_t *callback); void (*auth_initial)(struct auth_request *request, - const unsigned char *data, size_t data_size, - mech_callback_t *callback); + const unsigned char *data, size_t data_size); void (*auth_continue)(struct auth_request *request, - const unsigned char *data, size_t data_size, - mech_callback_t *callback); + const unsigned char *data, size_t data_size); void (*auth_free)(struct auth_request *request); };