blob: 69afc716e25eebda54e076f335c8a612df749b99 [file] [log] [blame]
Narayan Kamathfc74cb42017-09-13 12:53:52 +01001#ifndef OPENSSL_COMPAT_H
2#define OPENSSL_COMPAT_H
3
4#if OPENSSL_VERSION_NUMBER < 0x10100000L
5
6static inline BIO_METHOD *BIO_meth_new(int type, const char *name)
7{
8 BIO_METHOD *biom = calloc(1, sizeof(BIO_METHOD));
9
10 if (biom != NULL) {
11 biom->type = type;
12 biom->name = name;
13 }
14 return biom;
15}
16
17#define BIO_meth_set_write(b, f) (b)->bwrite = (f)
18#define BIO_meth_set_read(b, f) (b)->bread = (f)
19#define BIO_meth_set_puts(b, f) (b)->bputs = (f)
20#define BIO_meth_set_ctrl(b, f) (b)->ctrl = (f)
21#define BIO_meth_set_create(b, f) (b)->create = (f)
22#define BIO_meth_set_destroy(b, f) (b)->destroy = (f)
23
24#define BIO_set_init(b, val) (b)->init = (val)
25#define BIO_set_data(b, val) (b)->ptr = (val)
26#define BIO_set_shutdown(b, val) (b)->shutdown = (val)
27#define BIO_get_init(b) (b)->init
28#define BIO_get_data(b) (b)->ptr
29#define BIO_get_shutdown(b) (b)->shutdown
30
31#define TLS_method SSLv23_method
32
33#endif /* OPENSSL_VERSION_NUMBER < 0x10100000L */
34
35#endif /* OPENSSL_COMPAT_H */