/usr/include/atheme/sasl.h is in atheme-services 7.2.9-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 | /*
* Copyright (c) 2006 Atheme Development Group
* Rights to this code are as documented in doc/LICENSE.
*
* Data structures for SASL plugin use.
*
*/
#ifndef SASL_H
#define SASL_H
typedef struct sasl_session_ sasl_session_t;
typedef struct sasl_message_ sasl_message_t;
typedef struct sasl_mechanism_ sasl_mechanism_t;
struct sasl_session_ {
char *uid;
char *buf, *p;
int len, flags;
server_t *server;
struct sasl_mechanism_ *mechptr;
void *mechdata;
char *username;
char *certfp;
char *authzid;
char *host;
char *ip;
};
struct sasl_message_ {
char *uid;
char mode;
char *buf;
char *ext;
server_t *server;
};
struct sasl_mechanism_ {
char name[60];
int (*mech_start) (struct sasl_session_ *sptr, char **buffer, size_t *buflen);
int (*mech_step) (struct sasl_session_ *sptr, char *message, size_t length, char **buffer, size_t *buflen);
void (*mech_finish) (struct sasl_session_ *sptr);
};
typedef struct {
myuser_t *source_mu;
myuser_t *target_mu;
bool allowed;
} hook_sasl_may_impersonate_t;
typedef struct {
void (*mech_register) (struct sasl_mechanism_ *mech);
void (*mech_unregister) (struct sasl_mechanism_ *mech);
} sasl_mech_register_func_t;
#define ASASL_FAIL 0 /* client supplied invalid credentials / screwed up their formatting */
#define ASASL_MORE 1 /* everything looks good so far, but we're not done yet */
#define ASASL_DONE 2 /* client successfully authenticated */
#define ASASL_MARKED_FOR_DELETION 1 /* see delete_stale() in saslserv/main.c */
#define ASASL_NEED_LOG 2 /* user auth success needs to be logged still */
#endif
/* vim:cinoptions=>s,e0,n0,f0,{0,}0,^0,=s,ps,t0,c3,+s,(2s,us,)20,*30,gs,hs
* vim:ts=8
* vim:sw=8
* vim:noexpandtab
*/
|