1 #ifndef PROTON_SASL_PLUGIN_H
2 #define PROTON_SASL_PLUGIN_H 1
25 #include <proton/import_export.h>
27 #include <proton/type_compat.h>
72 typedef struct pnx_sasl_implementation
86 bool (*process_mechanisms)(
pn_transport_t *transport,
const char *mechs);
95 } pnx_sasl_implementation;
101 SASL_POSTED_MECHANISMS,
102 SASL_POSTED_RESPONSE,
103 SASL_POSTED_CHALLENGE,
112 PN_EXTERN
void pnx_sasl_error(
pn_transport_t *transport,
const char* err,
const char* condition_name);
115 PN_EXTERN
void pnx_sasl_set_context(
pn_transport_t *transport,
void *context);
119 PN_EXTERN
bool pnx_sasl_is_transport_encrypted(
pn_transport_t *transport);
120 PN_EXTERN
bool pnx_sasl_get_allow_insecure_mechanisms(
pn_transport_t *transport);
121 PN_EXTERN
bool pnx_sasl_get_authentication_required(
pn_transport_t *transport);
122 PN_EXTERN
const char *pnx_sasl_get_external_username(
pn_transport_t *transport);
123 PN_EXTERN
int pnx_sasl_get_external_ssf(
pn_transport_t *transport);
125 PN_EXTERN
const char *pnx_sasl_get_username(
pn_transport_t *transport);
126 PN_EXTERN
const char *pnx_sasl_get_password(
pn_transport_t *transport);
127 PN_EXTERN
const char *pnx_sasl_get_authorization(
pn_transport_t *transport);
128 PN_EXTERN
void pnx_sasl_clear_password(
pn_transport_t *transport);
129 PN_EXTERN
const char *pnx_sasl_get_remote_fqdn(
pn_transport_t *transport);
130 PN_EXTERN
const char *pnx_sasl_get_selected_mechanism(
pn_transport_t *transport);
133 PN_EXTERN
void pnx_sasl_set_desired_state(
pn_transport_t *transport,
enum pnx_sasl_state desired_state);
134 PN_EXTERN
void pnx_sasl_set_selected_mechanism(
pn_transport_t *transport,
const char *mechanism);
135 PN_EXTERN
void pnx_sasl_set_local_hostname(
pn_transport_t * transport,
const char * fqdn);
136 PN_EXTERN
void pnx_sasl_set_succeeded(
pn_transport_t *transport,
const char *username,
const char *authzid);
139 PN_EXTERN
void pnx_sasl_set_implementation(
pn_transport_t *transport,
const pnx_sasl_implementation *impl,
void *context);
140 PN_EXTERN
void pnx_sasl_set_default_implementation(
const pnx_sasl_implementation *impl);
A const byte buffer.
Definition: types.h:216
pn_log_level_t
Definitions for different severities of log messages Note that these are exclusive bits so that you c...
Definition: logger.h:110
struct pn_transport_t pn_transport_t
A network channel supporting an AMQP connection.
Definition: types.h:435
Facility for logging messages.