summaryrefslogtreecommitdiff
path: root/thirdparty/lws/mbedtls_wrapper/include/internal/ssl_stack.h
blob: 7a7051a026b3e0dd7c77126dc6c582fe155fa5ff (plain)
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
#ifndef _SSL_STACK_H_
#define _SSL_STACK_H_

#ifdef __cplusplus
 extern "C" {
#endif

#include "ssl_types.h"

#define STACK_OF(type)  struct stack_st_##type

#define SKM_DEFINE_STACK_OF(t1, t2, t3) \
    STACK_OF(t1); \
    static ossl_inline STACK_OF(t1) *sk_##t1##_new_null(void) \
    { \
        return (STACK_OF(t1) *)OPENSSL_sk_new_null(); \
    } \

#define DEFINE_STACK_OF(t) SKM_DEFINE_STACK_OF(t, t, t)

/**
 * @brief create a openssl stack object
 *
 * @param c - stack function
 *
 * @return openssl stack object point
 */
OPENSSL_STACK* OPENSSL_sk_new(OPENSSL_sk_compfunc c);

/**
 * @brief create a NULL function openssl stack object
 *
 * @param none
 *
 * @return openssl stack object point
 */
OPENSSL_STACK *OPENSSL_sk_new_null(void);

/**
 * @brief free openssl stack object
 *
 * @param openssl stack object point
 *
 * @return none
 */
void OPENSSL_sk_free(OPENSSL_STACK *stack);

#ifdef __cplusplus
}
#endif

#endif