Top | ![]() |
![]() |
![]() |
![]() |
#define | WOCKY_AUTH_ERROR |
enum | WockyAuthError |
#define | WOCKY_AUTH_MECH_JABBER_DIGEST |
#define | WOCKY_AUTH_MECH_JABBER_PASSWORD |
#define | WOCKY_AUTH_MECH_SASL_DIGEST_MD5 |
#define | WOCKY_AUTH_MECH_SASL_PLAIN |
#define | WOCKY_AUTH_MECH_SASL_SCRAM_SHA_1 |
WockyAuthRegistryStartData | |
struct | WockyAuthRegistryClass |
void (*WockyAuthRegistryStartAuthAsyncFunc) (WockyAuthRegistry *self
,GSList *mechanisms
,gboolean allow_plain
,gboolean is_secure_channel
,const gchar *username
,const gchar *password
,const gchar *server
,const gchar *session_id
,GAsyncReadyCallback callback
,gpointer user_data
);
Starts a async authentication: chooses mechanism and gets initial data. The default function chooses a WockyAuthHandler by which mechanism it supports and gets the initial data from the chosen handler.
self |
a WockyAuthRegistry object |
|
mechanisms |
a list of avahilable mechanisms |
|
allow_plain |
||
is_secure_channel |
||
username |
the username |
|
password |
the password |
|
server |
the server |
|
session_id |
the session ID |
|
callback |
a callback to be called when finished |
|
user_data |
data to pass to |
gboolean (*WockyAuthRegistryStartAuthFinishFunc) (WockyAuthRegistry *self
,GAsyncResult *result
,WockyAuthRegistryStartData **start_data
,GError **error
);
Called to finish the GAsyncResult task for authentication start. By default, it extracts a WockyAuthRegistryStartData pointer from a given GSimpleAsyncResult and copies it to the out param.
self |
a WockyAuthRegistry object |
|
result |
a GAsyncResult object |
|
start_data |
a location to fill with a WockyAuthRegistryStartData structure |
|
error |
a location to fill with a GError if an error is hit, or |
void (*WockyAuthRegistryChallengeAsyncFunc) (WockyAuthRegistry *self
,const GString *challenge_data
,GAsyncReadyCallback callback
,gpointer user_data
);
Recieves a challenge and asynchronously provides a reply. By default the challenge is passed on to the chosen WockyAuthHandler.
self |
a WockyAuthRegistry object |
|
challenge_data |
the challenge data string |
|
callback |
a callback to call when finished |
|
user_data |
data to pass to |
gboolean (*WockyAuthRegistryChallengeFinishFunc) (WockyAuthRegistry *self
,GAsyncResult *result
,GString **response
,GError **error
);
Finishes a GAsyncResult from WockyAuthRegistryChallengeAsyncFunc. By default it extracts a GString response from the given GSimpleAsyncResult and copies it to the out param.
self |
a WockyAuthRegistry object |
|
result |
a GAsyncResult object |
|
response |
a location to be filled with the response string |
|
error |
a location to fill with a GError if an error is hit, or |
void (*WockyAuthRegistrySuccessAsyncFunc) (WockyAuthRegistry *self
,GAsyncReadyCallback callback
,gpointer user_data
);
Notifies the registry of authentication success, and allows a last ditch attempt at aborting the authentication at the client's discretion.
self |
a WockyAuthRegistry object |
|
callback |
a callback to be called when finished |
|
user_data |
data to pass to |
gboolean (*WockyAuthRegistrySuccessFinishFunc) (WockyAuthRegistry *self
,GAsyncResult *result
,GError **error
);
Finishes a GAsyncResult from
WockyAuthRegistrySuccessAsyncFunc. It checks for any errors set on
the given GSimpleAsyncResult, copies the GError to an out param
and returns FALSE
if there was an error.
self |
a WockyAuthRegistry object |
|
result |
a GAsyncResult object |
|
error |
a location to fill with a GError if an error is hit, or |
void (*WockyAuthRegistryFailureFunc) (WockyAuthRegistry *self
,GError *error
);
Notifies the client of a server-side error. By default this is not implemented.
void wocky_auth_registry_start_auth_async (WockyAuthRegistry *self
,GSList *mechanisms
,gboolean allow_plain
,gboolean is_secure_channel
,const gchar *username
,const gchar *password
,const gchar *server
,const gchar *session_id
,GAsyncReadyCallback callback
,gpointer user_data
);
gboolean wocky_auth_registry_start_auth_finish (WockyAuthRegistry *self
,GAsyncResult *result
,WockyAuthRegistryStartData **start_data
,GError **error
);
void wocky_auth_registry_challenge_async (WockyAuthRegistry *self
,const GString *challenge_data
,GAsyncReadyCallback callback
,gpointer user_data
);
gboolean wocky_auth_registry_challenge_finish (WockyAuthRegistry *self
,GAsyncResult *res
,GString **response
,GError **error
);
void wocky_auth_registry_success_async (WockyAuthRegistry *self
,GAsyncReadyCallback callback
,gpointer user_data
);
gboolean wocky_auth_registry_success_finish (WockyAuthRegistry *self
,GAsyncResult *res
,GError **error
);
void wocky_auth_registry_add_handler (WockyAuthRegistry *self
,WockyAuthHandler *handler
);
void
wocky_auth_registry_start_data_free (WockyAuthRegistryStartData *start_data
);
WockyAuthRegistryStartData * wocky_auth_registry_start_data_new (const gchar *mechanism
,const GString *initial_response
);
WockyAuthRegistryStartData *
wocky_auth_registry_start_data_dup (WockyAuthRegistryStartData *start_data
);
void wocky_auth_registry_failure (WockyAuthRegistry *self
,GError *error
);
gboolean wocky_auth_registry_supports_one_of (WockyAuthRegistry *self
,GSList *mechanisms
,gboolean allow_plain
);
Checks whether at least one of mechanisms
is supported by Wocky. At present,
Wocky itself only implements password-based authentication mechanisms.
self |
||
allow_plain |
Whether auth in plain text is allowed |
|
mechanisms |
a GSList of gchar* of auth mechanisms |
WockyAuthRegistry specific errors.
Failed to initialize our auth support |
||
Server doesn't support this authentication method |
||
Server doesn't support any mechanisms that we support |
||
Couldn't send our stanzas to the server |
||
Server sent an invalid reply |
||
Failure to provide user credentials |
||
Server sent a failure |
||
disconnected |
||
XMPP stream error while authing |
||
Resource conflict (relevant in in jabber auth) |
||
Provided credentials are not valid |
typedef struct { gchar *mechanism; GString *initial_response; } WockyAuthRegistryStartData;
A structure to hold the mechanism and response data.
struct WockyAuthRegistryClass { WockyAuthRegistryStartAuthAsyncFunc start_auth_async_func; WockyAuthRegistryStartAuthFinishFunc start_auth_finish_func; WockyAuthRegistryChallengeAsyncFunc challenge_async_func; WockyAuthRegistryChallengeFinishFunc challenge_finish_func; WockyAuthRegistrySuccessAsyncFunc success_async_func; WockyAuthRegistrySuccessFinishFunc success_finish_func; WockyAuthRegistryFailureFunc failure_func; };
The class of a WockyAuthRegistry.
WockyAuthRegistryStartAuthAsyncFunc |
a function to call to start an asynchronous
start auth operation; see |
|
WockyAuthRegistryStartAuthFinishFunc |
a function to call to finish an
asynchronous start auth operation; see
|
|
WockyAuthRegistryChallengeAsyncFunc |
a function to call to start an asynchronous
challenge operation; see |
|
WockyAuthRegistryChallengeFinishFunc |
a function to call to finish an asynchronous
challenge operation; see |
|
WockyAuthRegistrySuccessAsyncFunc |
a function to call to start an asynchronous
success operation; see |
|
WockyAuthRegistrySuccessFinishFunc |
a function to call to finish an asynchronous
success operation; see |
|
WockyAuthRegistryFailureFunc |
a function to call on failure; see
|