Go to the documentation of this file.
57 #ifndef OPENSSL_HEADER_BIO_H
58 #define OPENSSL_HEADER_BIO_H
70 #if defined(__cplusplus)
193 #define BIO_RR_CONNECT 0x02
196 #define BIO_RR_ACCEPT 0x03
230 #define BIO_CB_FREE 0x01
231 #define BIO_CB_READ 0x02
232 #define BIO_CB_WRITE 0x03
233 #define BIO_CB_PUTS 0x04
234 #define BIO_CB_GETS 0x05
235 #define BIO_CB_CTRL 0x06
239 #define BIO_CB_RETURN 0x80
247 long larg,
long return_value);
373 #define BIO_NOCLOSE 0
553 const char *host_and_optional_port);
576 #define BIO_CTRL_DGRAM_QUERY_MTU 40 // as kernel for current MTU
578 #define BIO_CTRL_DGRAM_SET_MTU 42
581 #define BIO_CTRL_DGRAM_MTU_EXCEEDED 43
587 #define BIO_CTRL_DGRAM_GET_PEER 46
589 #define BIO_CTRL_DGRAM_GET_FALLBACK_MTU 47
658 int (*
write)(
BIO *,
const char *,
int));
663 int (*
read)(
BIO *,
char *,
int));
668 int (*gets)(
BIO *,
char *,
int));
673 long (*ctrl)(
BIO *,
int,
long,
void *));
692 #define BIO_CTRL_RESET 1
695 #define BIO_CTRL_EOF 2
700 #define BIO_CTRL_INFO 3
704 #define BIO_CTRL_GET_CLOSE 8
708 #define BIO_CTRL_SET_CLOSE 9
711 #define BIO_CTRL_PENDING 10
714 #define BIO_CTRL_FLUSH 11
717 #define BIO_CTRL_WPENDING 13
721 #define BIO_CTRL_SET_CALLBACK 14
724 #define BIO_CTRL_GET_CALLBACK 15
727 #define BIO_CTRL_SET 4
728 #define BIO_CTRL_GET 5
729 #define BIO_CTRL_PUSH 6
730 #define BIO_CTRL_POP 7
731 #define BIO_CTRL_DUP 12
732 #define BIO_CTRL_SET_FILENAME 30
760 int (*puts)(
BIO *,
const char *));
765 #define BIO_FLAGS_READ 0x01
766 #define BIO_FLAGS_WRITE 0x02
767 #define BIO_FLAGS_IO_SPECIAL 0x04
768 #define BIO_FLAGS_RWS (BIO_FLAGS_READ | BIO_FLAGS_WRITE | BIO_FLAGS_IO_SPECIAL)
769 #define BIO_FLAGS_SHOULD_RETRY 0x08
770 #define BIO_FLAGS_BASE64_NO_NL 0x100
773 #define BIO_FLAGS_MEM_RDONLY 0x200
776 #define BIO_TYPE_NONE 0
777 #define BIO_TYPE_MEM (1 | 0x0400)
778 #define BIO_TYPE_FILE (2 | 0x0400)
779 #define BIO_TYPE_FD (4 | 0x0400 | 0x0100)
780 #define BIO_TYPE_SOCKET (5 | 0x0400 | 0x0100)
781 #define BIO_TYPE_NULL (6 | 0x0400)
782 #define BIO_TYPE_SSL (7 | 0x0200)
783 #define BIO_TYPE_MD (8 | 0x0200) // passive filter
784 #define BIO_TYPE_BUFFER (9 | 0x0200) // filter
785 #define BIO_TYPE_CIPHER (10 | 0x0200) // filter
786 #define BIO_TYPE_BASE64 (11 | 0x0200) // filter
787 #define BIO_TYPE_CONNECT (12 | 0x0400 | 0x0100) // socket - connect
788 #define BIO_TYPE_ACCEPT (13 | 0x0400 | 0x0100) // socket for accept
789 #define BIO_TYPE_PROXY_CLIENT (14 | 0x0200) // client proxy BIO
790 #define BIO_TYPE_PROXY_SERVER (15 | 0x0200) // server proxy BIO
791 #define BIO_TYPE_NBIO_TEST (16 | 0x0200) // server proxy BIO
792 #define BIO_TYPE_NULL_FILTER (17 | 0x0200)
793 #define BIO_TYPE_BER (18 | 0x0200) // BER -> bin filter
794 #define BIO_TYPE_BIO (19 | 0x0400) // (half a) BIO pair
795 #define BIO_TYPE_LINEBUFFER (20 | 0x0200) // filter
796 #define BIO_TYPE_DGRAM (21 | 0x0400 | 0x0100)
797 #define BIO_TYPE_ASN1 (22 | 0x0200) // filter
798 #define BIO_TYPE_COMP (23 | 0x0200) // filter
802 #define BIO_TYPE_DESCRIPTOR 0x0100 // socket, fd, connect or accept
803 #define BIO_TYPE_FILTER 0x0200
804 #define BIO_TYPE_SOURCE_SINK 0x0400
808 #define BIO_TYPE_START 128
847 #define BIO_C_SET_CONNECT 100
848 #define BIO_C_DO_STATE_MACHINE 101
849 #define BIO_C_SET_NBIO 102
850 #define BIO_C_SET_PROXY_PARAM 103
851 #define BIO_C_SET_FD 104
852 #define BIO_C_GET_FD 105
853 #define BIO_C_SET_FILE_PTR 106
854 #define BIO_C_GET_FILE_PTR 107
855 #define BIO_C_SET_FILENAME 108
856 #define BIO_C_SET_SSL 109
857 #define BIO_C_GET_SSL 110
858 #define BIO_C_SET_MD 111
859 #define BIO_C_GET_MD 112
860 #define BIO_C_GET_CIPHER_STATUS 113
861 #define BIO_C_SET_BUF_MEM 114
862 #define BIO_C_GET_BUF_MEM_PTR 115
863 #define BIO_C_GET_BUFF_NUM_LINES 116
864 #define BIO_C_SET_BUFF_SIZE 117
865 #define BIO_C_SET_ACCEPT 118
866 #define BIO_C_SSL_MODE 119
867 #define BIO_C_GET_MD_CTX 120
868 #define BIO_C_GET_PROXY_PARAM 121
869 #define BIO_C_SET_BUFF_READ_DATA 122 // data to read first
870 #define BIO_C_GET_ACCEPT 124
871 #define BIO_C_SET_SSL_RENEGOTIATE_BYTES 125
872 #define BIO_C_GET_SSL_NUM_RENEGOTIATES 126
873 #define BIO_C_SET_SSL_RENEGOTIATE_TIMEOUT 127
874 #define BIO_C_FILE_SEEK 128
875 #define BIO_C_GET_CIPHER_CTX 129
876 #define BIO_C_SET_BUF_MEM_EOF_RETURN 130 // return end of input value
877 #define BIO_C_SET_BIND_MODE 131
878 #define BIO_C_GET_BIND_MODE 132
879 #define BIO_C_FILE_TELL 133
880 #define BIO_C_GET_SOCKS 134
881 #define BIO_C_SET_SOCKS 135
883 #define BIO_C_SET_WRITE_BUF_SIZE 136 // for BIO_s_bio
884 #define BIO_C_GET_WRITE_BUF_SIZE 137
885 #define BIO_C_GET_WRITE_GUARANTEE 140
886 #define BIO_C_GET_READ_REQUEST 141
887 #define BIO_C_SHUTDOWN_WR 142
888 #define BIO_C_NREAD0 143
889 #define BIO_C_NREAD 144
890 #define BIO_C_NWRITE0 145
891 #define BIO_C_NWRITE 146
892 #define BIO_C_RESET_READ_REQUEST 147
893 #define BIO_C_SET_MD_CTX 148
895 #define BIO_C_SET_PREFIX 149
896 #define BIO_C_GET_PREFIX 150
897 #define BIO_C_SET_SUFFIX 151
898 #define BIO_C_GET_SUFFIX 152
900 #define BIO_C_SET_EX_ARG 153
901 #define BIO_C_GET_EX_ARG 154
904 #if defined(__cplusplus)
921 #define BIO_R_BAD_FOPEN_MODE 100
922 #define BIO_R_BROKEN_PIPE 101
923 #define BIO_R_CONNECT_ERROR 102
924 #define BIO_R_ERROR_SETTING_NBIO 103
925 #define BIO_R_INVALID_ARGUMENT 104
926 #define BIO_R_IN_USE 105
927 #define BIO_R_KEEPALIVE 106
928 #define BIO_R_NBIO_CONNECT_ERROR 107
929 #define BIO_R_NO_HOSTNAME_SPECIFIED 108
930 #define BIO_R_NO_PORT_SPECIFIED 109
931 #define BIO_R_NO_SUCH_FILE 110
932 #define BIO_R_NULL_PARAMETER 111
933 #define BIO_R_SYS_LIB 112
934 #define BIO_R_UNABLE_TO_CREATE_SOCKET 113
935 #define BIO_R_UNINITIALIZED 114
936 #define BIO_R_UNSUPPORTED_METHOD 115
937 #define BIO_R_WRITE_TO_READ_ONLY_BIO 116
939 #endif // OPENSSL_HEADER_BIO_H
OPENSSL_EXPORT BIO * BIO_new_fd(int fd, int close_flag)
OPENSSL_EXPORT BIO * BIO_next(BIO *bio)
OPENSSL_EXPORT int BIO_printf(BIO *bio, const char *format,...) OPENSSL_PRINTF_FORMAT_FUNC(2
OPENSSL_EXPORT int BIO_set_fp(BIO *bio, FILE *file, int close_flag)
OPENSSL_EXPORT void BIO_set_retry_read(BIO *bio)
long(* bio_info_cb)(BIO *bio, int event, const char *parg, int cmd, long larg, long return_value)
OPENSSL_EXPORT int BIO_get_mem_ptr(BIO *bio, BUF_MEM **out)
OPENSSL_EXPORT void BIO_meth_free(BIO_METHOD *method)
OPENSSL_EXPORT int BIO_up_ref(BIO *bio)
OPENSSL_EXPORT int BIO_shutdown_wr(BIO *bio)
OPENSSL_EXPORT BIO * BIO_find_type(BIO *bio, int type)
OPENSSL_EXPORT size_t BIO_number_written(const BIO *bio)
const OPENSSL_EXPORT BIO_METHOD * BIO_s_socket(void)
OPENSSL_EXPORT int BIO_append_filename(BIO *bio, const char *filename)
OPENSSL_EXPORT size_t BIO_ctrl_pending(const BIO *bio)
OPENSSL_EXPORT void BIO_set_retry_special(BIO *bio)
long(* callback_ctrl)(BIO *, int, bio_info_cb)
OPENSSL_EXPORT int BIO_should_read(const BIO *bio)
OPENSSL_EXPORT void BIO_clear_retry_flags(BIO *bio)
OPENSSL_EXPORT int BIO_write_all(BIO *bio, const void *data, size_t len)
OPENSSL_EXPORT int BIO_get_retry_flags(BIO *bio)
OPENSSL_EXPORT size_t BIO_ctrl_get_read_request(BIO *bio)
OPENSSL_EXPORT int BIO_new_bio_pair(BIO **out1, size_t writebuf1, BIO **out2, size_t writebuf2)
OPENSSL_EXPORT int BIO_meth_set_puts(BIO_METHOD *method, int(*puts)(BIO *, const char *))
OPENSSL_EXPORT int BIO_reset(BIO *bio)
OPENSSL_EXPORT size_t BIO_wpending(const BIO *bio)
OPENSSL_EXPORT int BIO_write(BIO *bio, const void *data, int len)
OPENSSL_EXPORT BIO * BIO_new_file(const char *filename, const char *mode)
OPENSSL_EXPORT BIO * BIO_new_socket(int fd, int close_flag)
int(* bwrite)(BIO *, const char *, int)
OPENSSL_EXPORT BIO * BIO_new_mem_buf(const void *buf, int len)
OPENSSL_EXPORT void BIO_set_retry_write(BIO *bio)
const OPENSSL_EXPORT BIO_METHOD * BIO_s_mem(void)
OPENSSL_EXPORT int BIO_get_fp(BIO *bio, FILE **out_file)
OPENSSL_EXPORT int BIO_meth_set_ctrl(BIO_METHOD *method, long(*ctrl)(BIO *, int, long, void *))
OPENSSL_EXPORT int BIO_test_flags(const BIO *bio, int flags)
OPENSSL_EXPORT int BIO_read(BIO *bio, void *data, int len)
OPENSSL_EXPORT int BIO_method_type(const BIO *bio)
long(* ctrl)(BIO *, int, long, void *)
OPENSSL_EXPORT void * BIO_get_data(BIO *bio)
OPENSSL_EXPORT long BIO_int_ctrl(BIO *bp, int cmd, long larg, int iarg)
OPENSSL_EXPORT int BIO_set_conn_hostname(BIO *bio, const char *host_and_optional_port)
OPENSSL_EXPORT int BIO_meth_set_gets(BIO_METHOD *method, int(*gets)(BIO *, char *, int))
OPENSSL_EXPORT void BIO_free_all(BIO *bio)
OPENSSL_EXPORT int BIO_hexdump(BIO *bio, const uint8_t *data, size_t len, unsigned indent)
OPENSSL_EXPORT int BIO_set_conn_port(BIO *bio, const char *port_str)
#define BORINGSSL_MAKE_UP_REF(type, up_ref_func)
OPENSSL_EXPORT int BIO_do_connect(BIO *bio)
OPENSSL_EXPORT size_t BIO_number_read(const BIO *bio)
OPENSSL_EXPORT int BIO_should_io_special(const BIO *bio)
def create(intercept_call)
OPENSSL_EXPORT BIO_METHOD * BIO_meth_new(int type, const char *name)
OPENSSL_EXPORT int BIO_meth_set_destroy(BIO_METHOD *method, int(*destroy)(BIO *))
OPENSSL_EXPORT int BIO_rw_filename(BIO *bio, const char *filename)
OPENSSL_EXPORT void ERR_print_errors(BIO *bio)
const BIO_METHOD * method
OPENSSL_EXPORT int BIO_eof(BIO *bio)
OPENSSL_EXPORT int BIO_set_fd(BIO *bio, int fd, int close_flag)
OPENSSL_EXPORT int BIO_set_mem_buf(BIO *bio, BUF_MEM *b, int take_ownership)
OPENSSL_EXPORT int BIO_flush(BIO *bio)
#define BSSL_NAMESPACE_END
OPENSSL_EXPORT int BIO_meth_set_create(BIO_METHOD *method, int(*create)(BIO *))
OPENSSL_EXPORT int OPENSSL_EXPORT int BIO_indent(BIO *bio, unsigned indent, unsigned max_indent)
OPENSSL_EXPORT size_t BIO_pending(const BIO *bio)
#define DEFINE_STACK_OF(type)
OPENSSL_EXPORT void BIO_set_retry_reason(BIO *bio, int reason)
OPENSSL_EXPORT int BIO_mem_contents(const BIO *bio, const uint8_t **out_contents, size_t *out_len)
OPENSSL_EXPORT int BIO_read_filename(BIO *bio, const char *filename)
OPENSSL_EXPORT void BIO_set_data(BIO *bio, void *ptr)
OPENSSL_EXPORT void BIO_set_flags(BIO *bio, int flags)
OPENSSL_EXPORT int BIO_get_fd(BIO *bio, int *out_fd)
OPENSSL_EXPORT int BIO_meth_set_write(BIO_METHOD *method, int(*write)(BIO *, const char *, int))
const OPENSSL_EXPORT BIO_METHOD * BIO_f_base64(void)
OPENSSL_EXPORT int BIO_puts(BIO *bio, const char *buf)
OPENSSL_EXPORT int BIO_get_shutdown(BIO *bio)
int read(izstream &zs, T *x, Items items)
const OPENSSL_EXPORT BIO_METHOD * BIO_s_file(void)
OPENSSL_EXPORT long BIO_callback_ctrl(BIO *bio, int cmd, bio_info_cb fp)
OPENSSL_EXPORT size_t BIO_ctrl_get_write_guarantee(BIO *bio)
const OPENSSL_EXPORT BIO_METHOD * BIO_s_connect(void)
OPENSSL_EXPORT long BIO_ctrl(BIO *bio, int cmd, long larg, void *parg)
OPENSSL_EXPORT int BIO_set_nbio(BIO *bio, int on)
OPENSSL_EXPORT void BIO_clear_flags(BIO *bio, int flags)
OPENSSL_EXPORT void BIO_vfree(BIO *bio)
OPENSSL_EXPORT char * BIO_ptr_ctrl(BIO *bp, int cmd, long larg)
OPENSSL_EXPORT int BIO_get_retry_reason(const BIO *bio)
OPENSSL_EXPORT BIO * BIO_new_connect(const char *host_and_optional_port)
#define BORINGSSL_MAKE_DELETER(type, deleter)
OPENSSL_EXPORT int BIO_write_filename(BIO *bio, const char *filename)
OPENSSL_EXPORT int BIO_set_mem_eof_return(BIO *bio, int eof_value)
OPENSSL_EXPORT int BIO_get_init(BIO *bio)
OPENSSL_EXPORT int BIO_meth_set_read(BIO_METHOD *method, int(*read)(BIO *, char *, int))
const OPENSSL_EXPORT BIO_METHOD * BIO_s_fd(void)
OPENSSL_EXPORT int BIO_read_asn1(BIO *bio, uint8_t **out, size_t *out_len, size_t max_len)
OPENSSL_EXPORT BIO * BIO_new_fp(FILE *stream, int close_flag)
OPENSSL_EXPORT BIO * BIO_new(const BIO_METHOD *method)
OPENSSL_EXPORT int BIO_should_write(const BIO *bio)
OPENSSL_EXPORT void BIO_set_shutdown(BIO *bio, int shutdown)
CRYPTO_refcount_t references
OPENSSL_EXPORT long BIO_get_mem_data(BIO *bio, char **contents)
OPENSSL_EXPORT void BIO_set_init(BIO *bio, int init)
OPENSSL_EXPORT int BIO_gets(BIO *bio, char *buf, int size)
OPENSSL_EXPORT int BIO_set_conn_int_port(BIO *bio, const int *port)
uint32_t CRYPTO_refcount_t
OPENSSL_EXPORT int BIO_free(BIO *bio)
int(* bputs)(BIO *, const char *)
OPENSSL_EXPORT BIO * BIO_pop(BIO *bio)
OPENSSL_EXPORT void BIO_copy_next_retry(BIO *bio)
OPENSSL_EXPORT int BIO_set_write_buffer_size(BIO *bio, int buffer_size)
static std::function< void(void *, Slot *)> destroy
int(* bread)(BIO *, char *, int)
int(* bgets)(BIO *, char *, int)
#define OPENSSL_PRINTF_FORMAT_FUNC(string_index, first_to_check)
OPENSSL_EXPORT int BIO_set_close(BIO *bio, int close_flag)
OPENSSL_EXPORT BIO * BIO_push(BIO *bio, BIO *appended_bio)
OPENSSL_EXPORT int BIO_get_new_index(void)
OPENSSL_EXPORT int BIO_should_retry(const BIO *bio)
grpc
Author(s):
autogenerated on Thu Mar 13 2025 02:58:38