1#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 */ 36