view src/login-common/sasl-server.h @ 11504:279bf7435603 HEAD

login: Master login internal failures weren't handled correctly.
author Timo Sirainen <tss@iki.fi>
date Wed, 09 Jun 2010 16:37:57 +0100
parents 2e08ce368bc0
children
line wrap: on
line source

#ifndef SASL_SERVER_H
#define SASL_SERVER_H

struct client;

enum sasl_server_reply {
	SASL_SERVER_REPLY_SUCCESS,
	SASL_SERVER_REPLY_AUTH_FAILED,
	SASL_SERVER_REPLY_AUTH_ABORTED,
	SASL_SERVER_REPLY_MASTER_FAILED,
	SASL_SERVER_REPLY_CONTINUE
};

typedef void sasl_server_callback_t(struct client *client,
				    enum sasl_server_reply reply,
				    const char *data, const char *const *args);

const struct auth_mech_desc *
sasl_server_get_advertised_mechs(struct client *client, unsigned int *count_r);

void sasl_server_auth_begin(struct client *client,
			    const char *service, const char *mech_name,
			    const char *initial_resp_base64,
			    sasl_server_callback_t *callback);
void sasl_server_auth_failed(struct client *client, const char *reason);
void sasl_server_auth_abort(struct client *client);

#endif