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>
72typedef 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,
112PN_EXTERN
void pnx_sasl_error(
pn_transport_t *transport,
const char* err,
const char* condition_name);
115PN_EXTERN
void pnx_sasl_set_context(
pn_transport_t *transport,
void *context);
119PN_EXTERN
bool pnx_sasl_is_transport_encrypted(
pn_transport_t *transport);
120PN_EXTERN
bool pnx_sasl_get_allow_insecure_mechanisms(
pn_transport_t *transport);
121PN_EXTERN
bool pnx_sasl_get_authentication_required(
pn_transport_t *transport);
122PN_EXTERN
const char *pnx_sasl_get_external_username(
pn_transport_t *transport);
123PN_EXTERN
int pnx_sasl_get_external_ssf(
pn_transport_t *transport);
125PN_EXTERN
const char *pnx_sasl_get_username(
pn_transport_t *transport);
126PN_EXTERN
const char *pnx_sasl_get_password(
pn_transport_t *transport);
127PN_EXTERN
const char *pnx_sasl_get_authorization(
pn_transport_t *transport);
129PN_EXTERN
const char *pnx_sasl_get_remote_fqdn(
pn_transport_t *transport);
130PN_EXTERN
const char *pnx_sasl_get_selected_mechanism(
pn_transport_t *transport);
133PN_EXTERN
void pnx_sasl_set_desired_state(
pn_transport_t *transport,
enum pnx_sasl_state desired_state);
134PN_EXTERN
void pnx_sasl_set_selected_mechanism(
pn_transport_t *transport,
const char *mechanism);
135PN_EXTERN
void pnx_sasl_set_local_hostname(
pn_transport_t * transport,
const char * fqdn);
136PN_EXTERN
void pnx_sasl_set_succeeded(
pn_transport_t *transport,
const char *username,
const char *authzid);
139PN_EXTERN
void pnx_sasl_set_implementation(
pn_transport_t *transport,
const pnx_sasl_implementation *impl,
void *context);
140PN_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:109
struct pn_transport_t pn_transport_t
A network channel supporting an AMQP connection.
Definition: types.h:435
Facility for logging messages.