inc/azure_uamqp_c/sasl_server_mechanism.h (39 lines of code) (raw):
// Copyright (c) Microsoft. All rights reserved.
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
#ifndef SASL_SERVER_MECHANISM_H
#define SASL_SERVER_MECHANISM_H
#ifdef __cplusplus
extern "C" {
#include "cstdint"
#else
#include "stdint.h"
#include "stdbool.h"
#endif /* __cplusplus */
#include "umock_c/umock_c_prod.h"
typedef struct SASL_SERVER_MECHANISM_INSTANCE_TAG* SASL_SERVER_MECHANISM_HANDLE;
typedef void* CONCRETE_SASL_SERVER_MECHANISM_HANDLE;
typedef struct SASL_SERVER_MECHANISM_BYTES_TAG
{
const void* bytes;
uint32_t length;
} SASL_SERVER_MECHANISM_BYTES;
typedef CONCRETE_SASL_SERVER_MECHANISM_HANDLE(*SASL_SERVER_MECHANISM_CREATE)(void* config);
typedef void(*SASL_SERVER_MECHANISM_DESTROY)(CONCRETE_SASL_SERVER_MECHANISM_HANDLE concrete_sasl_server_mechanism);
typedef int(*SASL_SERVER_MECHANISM_HANDLE_INITIAL_RESPONSE)(CONCRETE_SASL_SERVER_MECHANISM_HANDLE concrete_sasl_server_mechanism, const SASL_SERVER_MECHANISM_BYTES* initial_response_bytes, const char* hostname, bool* send_challenge, SASL_SERVER_MECHANISM_BYTES* challenge_bytes);
typedef int(*SASL_SERVER_MECHANISM_HANDLE_RESPONSE)(CONCRETE_SASL_SERVER_MECHANISM_HANDLE concrete_sasl_server_mechanism, const SASL_SERVER_MECHANISM_BYTES* response_bytes, bool* send_next_challenge, SASL_SERVER_MECHANISM_BYTES* next_challenge_bytes);
typedef const char*(*SASL_SERVER_MECHANISM_GET_MECHANISM_NAME)(void);
typedef struct SASL_SERVER_MECHANISM_INTERFACE_DESCRIPTION_TAG
{
SASL_SERVER_MECHANISM_CREATE create;
SASL_SERVER_MECHANISM_DESTROY destroy;
SASL_SERVER_MECHANISM_HANDLE_INITIAL_RESPONSE handle_initial_response;
SASL_SERVER_MECHANISM_HANDLE_RESPONSE handle_response;
SASL_SERVER_MECHANISM_GET_MECHANISM_NAME get_mechanism_name;
} SASL_SERVER_MECHANISM_INTERFACE_DESCRIPTION;
MOCKABLE_FUNCTION(, SASL_SERVER_MECHANISM_HANDLE, sasl_server_mechanism_create, const SASL_SERVER_MECHANISM_INTERFACE_DESCRIPTION*, sasl_server_mechanism_interface_description, void*, sasl_server_mechanism_create_parameters);
MOCKABLE_FUNCTION(, void, sasl_server_mechanism_destroy, SASL_SERVER_MECHANISM_HANDLE, sasl_server_mechanism);
MOCKABLE_FUNCTION(, int, sasl_server_mechanism_handle_initial_response, SASL_SERVER_MECHANISM_HANDLE, sasl_server_mechanism, const SASL_SERVER_MECHANISM_BYTES*, initial_response_bytes, const char*, hostname, bool*, send_challenge, SASL_SERVER_MECHANISM_BYTES*, challenge_bytes);
MOCKABLE_FUNCTION(, int, sasl_server_mechanism_handle_response, SASL_SERVER_MECHANISM_HANDLE, sasl_server_mechanism, const SASL_SERVER_MECHANISM_BYTES*, response_bytes, bool*, send_next_challenge, SASL_SERVER_MECHANISM_BYTES*, next_challenge_bytes);
MOCKABLE_FUNCTION(, const char*, sasl_server_mechanism_get_mechanism_name, SASL_SERVER_MECHANISM_HANDLE, sasl_server_mechanism);
#ifdef __cplusplus
}
#endif /* __cplusplus */
#endif /* SASL_SERVER_MECHANISM_H */