2016-05-18 02:24:17 +08:00
|
|
|
/*
|
|
|
|
* Copyright 2016 The OpenSSL Project Authors. All Rights Reserved.
|
2016-03-22 17:21:29 +08:00
|
|
|
*
|
2016-05-18 02:24:17 +08:00
|
|
|
* Licensed under the OpenSSL license (the "License"). You may not use
|
|
|
|
* this file except in compliance with the License. You can obtain a copy
|
|
|
|
* in the file LICENSE in the source distribution or at
|
|
|
|
* https://www.openssl.org/source/license.html
|
2016-03-22 17:21:29 +08:00
|
|
|
*/
|
|
|
|
|
|
|
|
#include <openssl/bio.h>
|
|
|
|
|
|
|
|
struct bio_method_st {
|
|
|
|
int type;
|
|
|
|
const char *name;
|
|
|
|
int (*bwrite) (BIO *, const char *, int);
|
2016-09-06 00:26:58 +08:00
|
|
|
int (*bread) (BIO *, char *, size_t, size_t *);
|
|
|
|
int (*bread_old) (BIO *, char *, int);
|
2016-03-22 17:21:29 +08:00
|
|
|
int (*bputs) (BIO *, const char *);
|
|
|
|
int (*bgets) (BIO *, char *, int);
|
|
|
|
long (*ctrl) (BIO *, int, long, void *);
|
|
|
|
int (*create) (BIO *);
|
|
|
|
int (*destroy) (BIO *);
|
|
|
|
long (*callback_ctrl) (BIO *, int, bio_info_cb *);
|
|
|
|
};
|
|
|
|
|
2016-04-15 04:28:54 +08:00
|
|
|
void bio_free_ex_data(BIO *bio);
|
2016-03-12 05:53:18 +08:00
|
|
|
void bio_cleanup(void);
|
2016-09-06 00:26:58 +08:00
|
|
|
|
|
|
|
|
|
|
|
/* Old style to new style BIO_METHOD conversion functions */
|
|
|
|
int bread_conv(BIO *bio, char *out, size_t outl, size_t *read);
|