/* handshake complete, we can now actually start serving requests */
conn->refcount++;
conn->request_handler =
- auth_request_handler_create(conn->auth,
- auth_callback, conn, auth_master_request_callback);
+ auth_request_handler_create(auth_callback, conn,
+ auth_master_request_callback);
auth_request_handler_set(conn->request_handler, conn->connect_uid, pid);
conn->pid = pid;
conn->auth->set->debug_passwords ? line :
auth_line_hide_pass(line));
}
- return auth_request_handler_auth_begin(conn->request_handler,
+ return auth_request_handler_auth_begin(conn->auth,
+ conn->request_handler,
line + 5);
}
if (strncmp(line, "CONT\t", 5) == 0) {
pool_t pool;
struct hash_table *requests;
- struct auth *auth;
unsigned int connect_uid, client_pid;
auth_request_callback_t *callback;
#undef auth_request_handler_create
struct auth_request_handler *
-auth_request_handler_create(struct auth *auth,
- auth_request_callback_t *callback, void *context,
+auth_request_handler_create(auth_request_callback_t *callback, void *context,
auth_request_callback_t *master_callback)
{
struct auth_request_handler *handler;
handler->refcount = 1;
handler->pool = pool;
handler->requests = hash_table_create(default_pool, pool, 0, NULL, NULL);
- handler->auth = auth;
handler->callback = callback;
handler->context = context;
handler->master_callback = master_callback;
}
}
-bool auth_request_handler_auth_begin(struct auth_request_handler *handler,
+bool auth_request_handler_auth_begin(struct auth *auth,
+ struct auth_request_handler *handler,
const char *args)
{
const struct mech_module *mech;
return FALSE;
}
- request = auth_request_new(handler->auth, mech, auth_callback, handler);
+ request = auth_request_new(auth, mech, auth_callback, handler);
request->handler = handler;
request->connect_uid = handler->connect_uid;
request->client_pid = handler->client_pid;
auth_request_callback_t(struct auth_stream_reply *reply, void *context);
struct auth_request_handler *
-auth_request_handler_create(struct auth *auth,
- auth_request_callback_t *callback, void *context,
+auth_request_handler_create(auth_request_callback_t *callback, void *context,
auth_request_callback_t *master_callback);
#ifdef CONTEXT_TYPE_SAFETY
-# define auth_request_handler_create(auth, callback, context, master_callback)\
+# define auth_request_handler_create(callback, context, master_callback)\
({(void)(1 ? 0 : callback((struct auth_stream_reply *)NULL, context)); \
- auth_request_handler_create(auth, \
+ auth_request_handler_create( \
(auth_request_callback_t *)callback, context, \
master_callback); })
#else
-# define auth_request_handler_create(auth, callback, context, master_callback)\
- auth_request_handler_create(auth, \
+# define auth_request_handler_create(callback, context, master_callback)\
+ auth_request_handler_create( \
(auth_request_callback_t *)callback, context, \
master_callback)
#endif
unsigned int connect_uid,
unsigned int client_pid);
-bool auth_request_handler_auth_begin(struct auth_request_handler *handler,
+bool auth_request_handler_auth_begin(struct auth *auth,
+ struct auth_request_handler *handler,
const char *args);
bool auth_request_handler_auth_continue(struct auth_request_handler *handler,
const char *args);