auth-worker-client.c revision 6fabfb7bbfd88d0c1de66981e52850f26067623b
b2ff0468c298dd2f525fff5977f1f24fba3a9f3bTimo Sirainen/* Copyright (C) 2005 Timo Sirainen */
b2ff0468c298dd2f525fff5977f1f24fba3a9f3bTimo Sirainen/* If no requests have come within this time, kill ourself */
b2ff0468c298dd2f525fff5977f1f24fba3a9f3bTimo Sirainenauth_worker_client_check_throttle(struct auth_worker_client *client)
b2ff0468c298dd2f525fff5977f1f24fba3a9f3bTimo Sirainen if (o_stream_get_buffer_used_size(client->output) >=
b2ff0468c298dd2f525fff5977f1f24fba3a9f3bTimo Sirainen /* stop reading new requests until client has read the pending
b2ff0468c298dd2f525fff5977f1f24fba3a9f3bTimo Sirainenworker_auth_request_new(struct auth_worker_client *client, unsigned int id,
b162e16ade1e0d9bfae62e366caf57a3132f5963Timo Sirainen auth_request = auth_request_new_dummy(client->auth);
96e1ed172ae59cae6bc6e6ddd24d22a158e23dfeTimo Sirainen for (tmp = t_strsplit(args, "\t"); *tmp != NULL; tmp++) {
96e1ed172ae59cae6bc6e6ddd24d22a158e23dfeTimo Sirainen (void)auth_request_import(auth_request, key, value);
b162e16ade1e0d9bfae62e366caf57a3132f5963Timo Sirainenstatic void verify_plain_callback(enum passdb_result result,
b2ff0468c298dd2f525fff5977f1f24fba3a9f3bTimo Sirainen struct auth_worker_client *client = request->context;
const char *field =
const char *password;
unsigned int passdb_id;
args++;
const char *field =
const char *scheme;
unsigned int passdb_id;
args++;
unsigned int passdb_id;
const char *data;
args++;
switch (result) {
case USERDB_RESULT_OK:
unsigned int num;
unsigned int id;
if (p == NULL)
return FALSE;
return TRUE;
char *line;
bool ret;
(int)AUTH_WORKER_MAX_LINE_LENGTH);
t_push();
t_pop();
if (!ret) {
struct auth_worker_client *
return client;