📄 bio.h
字号:
/* BIO_s_proxy_client() */#define BIO_set_url(b,url) BIO_ctrl(b,BIO_C_SET_PROXY_PARAM,0,(char *)(url))#define BIO_set_proxies(b,p) BIO_ctrl(b,BIO_C_SET_PROXY_PARAM,1,(char *)(p))/* BIO_set_nbio(b,n) */#define BIO_set_filter_bio(b,s) BIO_ctrl(b,BIO_C_SET_PROXY_PARAM,2,(char *)(s))/* BIO *BIO_get_filter_bio(BIO *bio); */#define BIO_set_proxy_cb(b,cb) BIO_ctrl(b,BIO_C_SET_PROXY_PARAM,3,(char *)(cb))#define BIO_set_proxy_header(b,sk) BIO_ctrl(b,BIO_C_SET_PROXY_PARAM,4,(char *)sk)#define BIO_set_no_connect_return(b,bool) BIO_int_ctrl(b,BIO_C_SET_PROXY_PARAM,5,bool)#define BIO_get_proxy_header(b,skp) BIO_ctrl(b,BIO_C_GET_PROXY_PARAM,0,(char *)skp)#define BIO_get_proxies(b,pxy_p) BIO_ctrl(b,BIO_C_GET_PROXY_PARAM,1,(char *)(pxy_p))#define BIO_get_url(b,url) BIO_ctrl(b,BIO_C_GET_PROXY_PARAM,2,(char *)(url))#define BIO_get_no_connect_return(b) BIO_ctrl(b,BIO_C_GET_PROXY_PARAM,5,NULL)#define BIO_set_fd(b,fd,c) BIO_int_ctrl(b,BIO_C_SET_FD,c,fd)#define BIO_get_fd(b,c) BIO_ctrl(b,BIO_C_GET_FD,0,(char *)c)#define BIO_set_fp(b,fp,c) BIO_ctrl(b,BIO_C_SET_FILE_PTR,c,(char *)fp)#define BIO_get_fp(b,fpp) BIO_ctrl(b,BIO_C_GET_FILE_PTR,0,(char *)fpp)#define BIO_seek(b,ofs) (int)BIO_ctrl(b,BIO_C_FILE_SEEK,ofs,NULL)#define BIO_tell(b) (int)BIO_ctrl(b,BIO_C_FILE_TELL,0,NULL)#define BIO_read_filename(b,name) BIO_ctrl(b,BIO_C_SET_FILENAME, \ BIO_CLOSE|BIO_FP_READ,name)#define BIO_write_filename(b,name) BIO_ctrl(b,BIO_C_SET_FILENAME, \ BIO_CLOSE|BIO_FP_WRITE,name)#define BIO_append_filename(b,name) BIO_ctrl(b,BIO_C_SET_FILENAME, \ BIO_CLOSE|BIO_FP_APPEND,name)#define BIO_rw_filename(b,name) BIO_ctrl(b,BIO_C_SET_FILENAME, \ BIO_CLOSE|BIO_FP_READ|BIO_FP_WRITE,name)/* WARNING WARNING, this ups the reference count on the read bio of the * SSL structure. This is because the ssl read BIO is now pointed to by * the next_bio field in the bio. So when you free the BIO, make sure * you are doing a BIO_free_all() to catch the underlying BIO. */#define BIO_set_ssl(b,ssl,c) BIO_ctrl(b,BIO_C_SET_SSL,c,(char *)ssl)#define BIO_get_ssl(b,sslp) BIO_ctrl(b,BIO_C_GET_SSL,0,(char *)sslp)#define BIO_set_ssl_mode(b,client) BIO_ctrl(b,BIO_C_SSL_MODE,client,NULL)#define BIO_set_ssl_renegotiate_bytes(b,num) \ BIO_ctrl(b,BIO_C_SET_SSL_RENEGOTIATE_BYTES,num,NULL);#define BIO_get_num_renegotiates(b) \ BIO_ctrl(b,BIO_C_SET_SSL_NUM_RENEGOTIATES,0,NULL);#define BIO_set_ssl_renegotiate_timeout(b,seconds) \ BIO_ctrl(b,BIO_C_SET_SSL_RENEGOTIATE_TIMEOUT,seconds,NULL);/* defined in evp.h *//* #define BIO_set_md(b,md) BIO_ctrl(b,BIO_C_SET_MD,1,(char *)md) */#define BIO_get_mem_data(b,pp) BIO_ctrl(b,BIO_CTRL_INFO,0,(char *)pp)#define BIO_set_mem_buf(b,bm,c) BIO_ctrl(b,BIO_C_SET_BUF_MEM,c,(char *)bm)#define BIO_get_mem_ptr(b,pp) BIO_ctrl(b,BIO_C_GET_BUF_MEM_PTR,0,(char *)pp)#define BIO_set_mem_eof_return(b,v) \ BIO_ctrl(b,BIO_C_SET_BUF_MEM_EOF_RETURN,v,NULL)/* For the BIO_f_buffer() type */#define BIO_get_buffer_num_lines(b) BIO_ctrl(b,BIO_C_GET_BUFF_NUM_LINES,0,NULL)#define BIO_set_buffer_size(b,size) BIO_ctrl(b,BIO_C_SET_BUFF_SIZE,size,NULL)#define BIO_set_read_buffer_size(b,size) BIO_int_ctrl(b,BIO_C_SET_BUFF_SIZE,size,0)#define BIO_set_write_buffer_size(b,size) BIO_int_ctrl(b,BIO_C_SET_BUFF_SIZE,size,1)#define BIO_set_buffer_read_data(b,buf,num) BIO_ctrl(b,BIO_C_SET_BUFF_READ_DATA,num,buf)/* Don't use the next one unless you know what you are doing :-) */#define BIO_dup_state(b,ret) BIO_ctrl(b,BIO_CTRL_DUP,0,(char *)(ret))#define BIO_reset(b) (int)BIO_ctrl(b,BIO_CTRL_RESET,0,NULL)#define BIO_eof(b) (int)BIO_ctrl(b,BIO_CTRL_EOF,0,NULL)#define BIO_set_close(b,c) (int)BIO_ctrl(b,BIO_CTRL_SET_CLOSE,(c),NULL)#define BIO_get_close(b) (int)BIO_ctrl(b,BIO_CTRL_GET_CLOSE,0,NULL)#define BIO_pending(b) (int)BIO_ctrl(b,BIO_CTRL_PENDING,0,NULL)#define BIO_wpending(b) (int)BIO_ctrl(b,BIO_CTRL_WPENDING,0,NULL)#define BIO_flush(b) (int)BIO_ctrl(b,BIO_CTRL_FLUSH,0,NULL)#define BIO_get_info_callback(b,cbp) (int)BIO_ctrl(b,BIO_CTRL_GET_CALLBACK,0,(char *)cbp)#define BIO_set_info_callback(b,cb) (int)BIO_ctrl(b,BIO_CTRL_SET_CALLBACK,0,(char *)cb)/* For the BIO_f_buffer() type */#define BIO_buffer_get_num_lines(b) BIO_ctrl(b,BIO_CTRL_GET,0,NULL)#ifdef NO_STDIO#define NO_FP_API#endif#ifndef NOPROTO# if defined(WIN16) && defined(_WINDLL)BIO_METHOD *BIO_s_file_internal(void);BIO *BIO_new_file_internal(char *filename, char *mode);BIO *BIO_new_fp_internal(FILE *stream, int close_flag);# define BIO_s_file BIO_s_file_internal# define BIO_new_file BIO_new_file_internal# define BIO_new_fp BIO_new_fp_internal# else /* FP_API */BIO_METHOD *BIO_s_file(void );BIO *BIO_new_file(char *filename, char *mode);BIO *BIO_new_fp(FILE *stream, int close_flag);# define BIO_s_file_internal BIO_s_file# define BIO_new_file_internal BIO_new_file# define BIO_new_fp_internal BIO_s_file# endif /* FP_API */#else# if defined(WIN16) && defined(_WINDLL)BIO_METHOD *BIO_s_file_internal();BIO *BIO_new_file_internal();BIO *BIO_new_fp_internal();# define BIO_s_file BIO_s_file_internal# define BIO_new_file BIO_new_file_internal# define BIO_new_fp BIO_new_fp_internal# else /* FP_API */BIO_METHOD *BIO_s_file();BIO *BIO_new_file();BIO *BIO_new_fp();# define BIO_s_file_internal BIO_s_file# define BIO_new_file_internal BIO_new_file# define BIO_new_fp_internal BIO_s_file# endif /* FP_API */#endif#ifndef NOPROTOBIO * BIO_new(BIO_METHOD *type);int BIO_set(BIO *a,BIO_METHOD *type);int BIO_free(BIO *a);int BIO_read(BIO *b, char *data, int len);int BIO_gets(BIO *bp,char *buf, int size);int BIO_write(BIO *b, char *data, int len);int BIO_puts(BIO *bp,char *buf);long BIO_ctrl(BIO *bp,int cmd,long larg,char *parg);char * BIO_ptr_ctrl(BIO *bp,int cmd,long larg);long BIO_int_ctrl(BIO *bp,int cmd,long larg,int iarg);BIO * BIO_push(BIO *b,BIO *append);BIO * BIO_pop(BIO *b);void BIO_free_all(BIO *a);BIO * BIO_find_type(BIO *b,int bio_type);BIO * BIO_get_retry_BIO(BIO *bio, int *reason);int BIO_get_retry_reason(BIO *bio);BIO * BIO_dup_chain(BIO *in);#ifndef WIN16long BIO_debug_callback(BIO *bio,int cmd,char *argp,int argi, long argl,long ret);#elselong _far _loadds BIO_debug_callback(BIO *bio,int cmd,char *argp,int argi, long argl,long ret);#endifBIO_METHOD *BIO_s_mem(void);BIO_METHOD *BIO_s_socket(void);BIO_METHOD *BIO_s_connect(void);BIO_METHOD *BIO_s_accept(void);BIO_METHOD *BIO_s_fd(void);BIO_METHOD *BIO_s_null(void);BIO_METHOD *BIO_f_null(void);BIO_METHOD *BIO_f_buffer(void);BIO_METHOD *BIO_f_nbio_test(void);/* BIO_METHOD *BIO_f_ber(void); */int BIO_sock_should_retry(int i);int BIO_sock_non_fatal_error(int error);int BIO_fd_should_retry(int i);int BIO_fd_non_fatal_error(int error);int BIO_dump(BIO *b,char *bytes,int len);struct hostent *BIO_gethostbyname(char *name);int BIO_sock_error(int sock);int BIO_socket_ioctl(int fd, long type, unsigned long *arg);int BIO_socket_nbio(int fd,int mode);int BIO_get_port(char *str, unsigned short *port_ptr);int BIO_get_host_ip(char *str, unsigned char *ip);int BIO_get_accept_socket(char *host_port,int mode);int BIO_accept(int sock,char **ip_port);int BIO_sock_init(void );void BIO_sock_cleanup(void);int BIO_set_tcp_ndelay(int sock,int turn_on);void ERR_load_BIO_strings(void );BIO *BIO_new_socket(int sock, int close_flag);BIO *BIO_new_fd(int fd, int close_flag);BIO *BIO_new_connect(char *host_port);BIO *BIO_new_accept(char *host_port);void BIO_copy_next_retry(BIO *b);long BIO_ghbn_ctrl(int cmd,int iarg,char *parg);#elseBIO * BIO_new();int BIO_set();int BIO_free();int BIO_read();int BIO_gets();int BIO_write();int BIO_puts();char * BIO_ptr_ctrl();long BIO_ctrl();long BIO_int_ctrl();BIO * BIO_push();BIO * BIO_pop();void BIO_free_all();BIO * BIO_find_type();BIO * BIO_get_retry_BIO();int BIO_get_retry_reason();BIO * BIO_dup_chain();#ifndef WIN16long BIO_debug_callback();#elselong _far _loadds BIO_debug_callback();#endifBIO_METHOD *BIO_s_mem();BIO_METHOD *BIO_s_socket();BIO_METHOD *BIO_s_connect();BIO_METHOD *BIO_s_accept();BIO_METHOD *BIO_s_fd();BIO_METHOD *BIO_s_null();BIO_METHOD *BIO_f_null();BIO_METHOD *BIO_f_buffer();BIO_METHOD *BIO_f_nbio_test();/* BIO_METHOD *BIO_f_ber(); */int BIO_sock_should_retry();int BIO_sock_non_fatal_error();int BIO_fd_should_retry();int BIO_fd_non_fatal_error();int BIO_dump();struct hostent *BIO_gethostbyname();int BIO_sock_error();int BIO_socket_ioctl();int BIO_socket_nbio();int BIO_get_port();int BIO_get_host_ip();int BIO_get_accept_socket();int BIO_accept();int BIO_sock_init();void BIO_sock_cleanup();int BIO_set_tcp_ndelay();void ERR_load_BIO_strings();BIO *BIO_new_socket();BIO *BIO_new_fd();BIO *BIO_new_connect();BIO *BIO_new_accept();void BIO_copy_next_retry();long BIO_ghbn_ctrl();#endif/* Tim Hudson's portable varargs stuff */#ifndef NOPROTO#define VAR_ANSI /* select ANSI version by default */#endif#ifdef VAR_ANSI/* ANSI version of a "portable" macro set for variable length args */#ifndef __STDARG_H__ /**/#include <stdarg.h>#endif /**/#define VAR_PLIST(arg1type,arg1) arg1type arg1, ...#define VAR_PLIST2(arg1type,arg1,arg2type,arg2) arg1type arg1,arg2type arg2,...#define VAR_ALIST#define VAR_BDEFN(args,arg1type,arg1) va_list args#define VAR_BDEFN2(args,arg1type,arg1,arg2type,arg2) va_list args#define VAR_INIT(args,arg1type,arg1) va_start(args,arg1);#define VAR_INIT2(args,arg1type,arg1,arg2type,arg2) va_start(args,arg2);#define VAR_ARG(args,type,arg) arg=va_arg(args,type)#define VAR_END(args) va_end(args);#else/* K&R version of a "portable" macro set for variable length args */#ifndef __VARARGS_H__#include <varargs.h>#endif#define VAR_PLIST(arg1type,arg1) va_alist#define VAR_PLIST2(arg1type,arg1,arg2type,arg2) va_alist#define VAR_ALIST va_dcl#define VAR_BDEFN(args,arg1type,arg1) va_list args; arg1type arg1#define VAR_BDEFN2(args,arg1type,arg1,arg2type,arg2) va_list args; \ arg1type arg1; arg2type arg2#define VAR_INIT(args,arg1type,arg1) va_start(args); \ arg1=va_arg(args,arg1type);#define VAR_INIT2(args,arg1type,arg1,arg2type,arg2) va_start(args); \ arg1=va_arg(args,arg1type); arg2=va_arg(args,arg2type);#define VAR_ARG(args,type,arg) arg=va_arg(args,type)#define VAR_END(args) va_end(args);#endif#ifndef NOPROTOint BIO_printf( VAR_PLIST( BIO *, bio ) );#elseint BIO_printf();#endif/* BEGIN ERROR CODES *//* Error codes for the BIO functions. *//* Function codes. */#define BIO_F_ACPT_STATE 100#define BIO_F_BIO_ACCEPT 101#define BIO_F_BIO_BER_GET_HEADER 102#define BIO_F_BIO_CTRL 103#define BIO_F_BIO_GETS 104#define BIO_F_BIO_GET_ACCEPT_SOCKET 105#define BIO_F_BIO_GET_HOST_IP 106#define BIO_F_BIO_GET_PORT 107#define BIO_F_BIO_NEW 108#define BIO_F_BIO_NEW_FILE 109#define BIO_F_BIO_PUTS 110#define BIO_F_BIO_READ 111#define BIO_F_BIO_SOCK_INIT 112#define BIO_F_BIO_WRITE 113#define BIO_F_BUFFER_CTRL 114#define BIO_F_CONN_STATE 115#define BIO_F_FILE_CTRL 116#define BIO_F_MEM_WRITE 117#define BIO_F_SSL_NEW 118#define BIO_F_WSASTARTUP 119/* Reason codes. */#define BIO_R_ACCEPT_ERROR 100#define BIO_R_BAD_FOPEN_MODE 101#define BIO_R_BAD_HOSTNAME_LOOKUP 102#define BIO_R_CONNECT_ERROR 103#define BIO_R_ERROR_SETTING_NBIO 104#define BIO_R_ERROR_SETTING_NBIO_ON_ACCEPTED_SOCKET 105#define BIO_R_ERROR_SETTING_NBIO_ON_ACCEPT_SOCKET 106#define BIO_R_GETHOSTBYNAME_ADDR_IS_NOT_AF_INET 107#define BIO_R_INVALID_IP_ADDRESS 108#define BIO_R_KEEPALIVE 109#define BIO_R_NBIO_CONNECT_ERROR 110#define BIO_R_NO_ACCEPT_PORT_SPECIFIED 111#define BIO_R_NO_HOSTHNAME_SPECIFIED 112#define BIO_R_NO_PORT_DEFINED 113#define BIO_R_NO_PORT_SPECIFIED 114#define BIO_R_NULL_PARAMETER 115#define BIO_R_TAG_MISMATCH 116#define BIO_R_UNABLE_TO_BIND_SOCKET 117#define BIO_R_UNABLE_TO_CREATE_SOCKET 118#define BIO_R_UNABLE_TO_LISTEN_SOCKET 119#define BIO_R_UNINITALISED 120#define BIO_R_UNSUPPORTED_METHOD 121#define BIO_R_WSASTARTUP 122 #ifdef __cplusplus}#endif#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -