sasl.h   sasl.h 
skipping to change at line 449 skipping to change at line 449
* len -- length of result * len -- length of result
* returns SASL_OK * returns SASL_OK
*/ */
typedef int sasl_chalprompt_t(void *context, int id, typedef int sasl_chalprompt_t(void *context, int id,
const char *challenge, const char *challenge,
const char *prompt, const char *defresult, const char *prompt, const char *defresult,
const char **result, unsigned *len); const char **result, unsigned *len);
#define SASL_CB_ECHOPROMPT (0x4005) /* challenge and client-entered resul t */ #define SASL_CB_ECHOPROMPT (0x4005) /* challenge and client-entered resul t */
#define SASL_CB_NOECHOPROMPT (0x4006) /* challenge and client-entered resul t */ #define SASL_CB_NOECHOPROMPT (0x4006) /* challenge and client-entered resul t */
/* prompt (or autoselect) the realm to do authentication in.
* may get a list of valid realms.
* input:
* context -- context from callback structure
* id -- callback id
* availrealms -- available realms; NULL terminated
* output:
* result -- NUL terminated realm; NULL is equivalent to ""
* returns SASL_OK
*/
typedef int sasl_getrealm_t(void *context, int id,
const char **availrealms,
const char **result);
#define SASL_CB_GETREALM (0x4007) /* realm to attempt authentication in */
/* server callbacks: /* server callbacks:
*/ */
/* callback to verify authorization /* callback to verify authorization
* requested_user -- the identity/username to authorize * requested_user -- the identity/username to authorize
* auth_identity -- the identity associated with the secret * auth_identity -- the identity associated with the secret
* return: * return:
* user -- NULL = requested_user, otherwise canonicalized * user -- NULL = requested_user, otherwise canonicalized
* errstr -- can be set to error string on failure * errstr -- can be set to error string on failure
* returns SASL_OK on success, SASL_BADAUTH or other SASL response on failu re * returns SASL_OK on success, SASL_BADAUTH or other SASL response on failu re
*/ */
skipping to change at line 898 skipping to change at line 913
* SASL_NOTDONE -- credentials not passed * SASL_NOTDONE -- credentials not passed
*/ */
LIBSASL_API int sasl_cred_install(sasl_conn_t *conn); LIBSASL_API int sasl_cred_install(sasl_conn_t *conn);
/* uninstalls a connection's credentials /* uninstalls a connection's credentials
* returns: * returns:
* SASL_OK -- success * SASL_OK -- success
* SASL_FAIL -- failure * SASL_FAIL -- failure
*/ */
LIBSASL_API int sasl_cred_uninstall(sasl_conn_t *conn); LIBSASL_API int sasl_cred_uninstall(sasl_conn_t *conn);
#endif /* SASL_H */ #endif /* SASL_H */
 End of changes. 2 change blocks. 
1 lines changed or deleted 15 lines changed or added


 saslplug.h   saslplug.h 
skipping to change at line 50 skipping to change at line 50
* returns: * returns:
* SASL_OK -- no error * SASL_OK -- no error
* SASL_FAIL -- unable to find a callback of the requested type * SASL_FAIL -- unable to find a callback of the requested type
* SASL_INTERACT -- caller must use interaction to get data * SASL_INTERACT -- caller must use interaction to get data
*/ */
typedef int sasl_getcallback_t(sasl_conn_t *conn, typedef int sasl_getcallback_t(sasl_conn_t *conn,
unsigned long callbackid, unsigned long callbackid,
int (**pproc)(), int (**pproc)(),
void **pcontext); void **pcontext);
#ifdef WIN32
//need to handle the fact that errno has been defined as a function
//in a dll, not an extern int
#ifdef errno
#undef errno
#endif //errno
#endif //WIN32
/* utility function set for plug-ins /* utility function set for plug-ins
*/ */
typedef struct sasl_utils { typedef struct sasl_utils {
int version; int version;
/* contexts */ /* contexts */
sasl_conn_t *conn; sasl_conn_t *conn;
sasl_rand_t *rpool; sasl_rand_t *rpool;
void *getopt_context; void *getopt_context;
skipping to change at line 99 skipping to change at line 107
int len); int len);
void (*hmac_md5_import)(HMAC_MD5_CTX *, HMAC_MD5_STATE *); void (*hmac_md5_import)(HMAC_MD5_CTX *, HMAC_MD5_STATE *);
/* mechanism utility functions (same as above): */ /* mechanism utility functions (same as above): */
int (*mkchal)(sasl_conn_t *conn, char *buf, unsigned maxlen, int hostfl ag); int (*mkchal)(sasl_conn_t *conn, char *buf, unsigned maxlen, int hostfl ag);
int (*utf8verify)(const char *str, unsigned len); int (*utf8verify)(const char *str, unsigned len);
void (*rand)(sasl_rand_t *rpool, char *buf, unsigned len); void (*rand)(sasl_rand_t *rpool, char *buf, unsigned len);
void (*churn)(sasl_rand_t *rpool, const char *data, unsigned len); void (*churn)(sasl_rand_t *rpool, const char *data, unsigned len);
/* current CMU hack. DO NOT USE EXCEPT IN PLAIN */ /* current CMU hack. DO NOT USE EXCEPT IN PLAIN */
int (*checkpass)(const char *mech, const char *service, int (*checkpass)(sasl_conn_t *conn,
const char *mech, const char *service,
const char *user, const char *pass); const char *user, const char *pass);
/* callback function */ /* callback function */
sasl_getcallback_t *getcallback; sasl_getcallback_t *getcallback;
/* logging */ /* logging */
int (*log)(sasl_conn_t *conn, int (*log)(sasl_conn_t *conn,
int priority, int priority,
const char *plugin_name, const char *plugin_name,
int sasl_error, /* %z */ int sasl_error, /* %z */
 End of changes. 2 change blocks. 
1 lines changed or deleted 10 lines changed or added


 saslutil.h   saslutil.h 
skipping to change at line 75 skipping to change at line 75
*/ */
LIBSASL_API void sasl_rand(sasl_rand_t *rpool, LIBSASL_API void sasl_rand(sasl_rand_t *rpool,
char *buf, char *buf,
unsigned len); unsigned len);
/* churn data into random number generator /* churn data into random number generator
*/ */
LIBSASL_API void sasl_churn(sasl_rand_t *rpool, LIBSASL_API void sasl_churn(sasl_rand_t *rpool,
const char *data, const char *data,
unsigned len); unsigned len);
#ifdef WIN32
LIBSASL_API int getopt(int argc, char **argv, char *optstring);
LIBSASL_API char * getpass(const char *prompt);
#endif //WIN32
#endif /* SASLUTIL_H */ #endif /* SASLUTIL_H */
 End of changes. 1 change blocks. 
0 lines changed or deleted 5 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/