mirror of https://github.com/openssl/openssl.git
				
				
				
			Fix invalid function type casts.
Rename bio_info_cb to BIO_info_cb. Reviewed-by: Rich Salz <rsalz@openssl.org> (Merged from https://github.com/openssl/openssl/pull/4493)
This commit is contained in:
		
							parent
							
								
									d016d1ec34
								
							
						
					
					
						commit
						fce78bd4ed
					
				|  | @ -66,7 +66,7 @@ static int asn1_bio_gets(BIO *h, char *str, int size); | |||
| static long asn1_bio_ctrl(BIO *h, int cmd, long arg1, void *arg2); | ||||
| static int asn1_bio_new(BIO *h); | ||||
| static int asn1_bio_free(BIO *data); | ||||
| static long asn1_bio_callback_ctrl(BIO *h, int cmd, bio_info_cb *fp); | ||||
| static long asn1_bio_callback_ctrl(BIO *h, int cmd, BIO_info_cb *fp); | ||||
| 
 | ||||
| static int asn1_bio_init(BIO_ASN1_BUF_CTX *ctx, int size); | ||||
| static int asn1_bio_flush_ex(BIO *b, BIO_ASN1_BUF_CTX *ctx, | ||||
|  | @ -307,7 +307,7 @@ static int asn1_bio_gets(BIO *b, char *str, int size) | |||
|     return BIO_gets(next, str, size); | ||||
| } | ||||
| 
 | ||||
| static long asn1_bio_callback_ctrl(BIO *b, int cmd, bio_info_cb *fp) | ||||
| static long asn1_bio_callback_ctrl(BIO *b, int cmd, BIO_info_cb *fp) | ||||
| { | ||||
|     BIO *next = BIO_next(b); | ||||
|     if (next == NULL) | ||||
|  |  | |||
|  | @ -19,7 +19,7 @@ static int buffer_gets(BIO *h, char *str, int size); | |||
| static long buffer_ctrl(BIO *h, int cmd, long arg1, void *arg2); | ||||
| static int buffer_new(BIO *h); | ||||
| static int buffer_free(BIO *data); | ||||
| static long buffer_callback_ctrl(BIO *h, int cmd, bio_info_cb *fp); | ||||
| static long buffer_callback_ctrl(BIO *h, int cmd, BIO_info_cb *fp); | ||||
| #define DEFAULT_BUFFER_SIZE     4096 | ||||
| 
 | ||||
| static const BIO_METHOD methods_buffer = { | ||||
|  | @ -408,7 +408,7 @@ static long buffer_ctrl(BIO *b, int cmd, long num, void *ptr) | |||
|     return 0; | ||||
| } | ||||
| 
 | ||||
| static long buffer_callback_ctrl(BIO *b, int cmd, bio_info_cb *fp) | ||||
| static long buffer_callback_ctrl(BIO *b, int cmd, BIO_info_cb *fp) | ||||
| { | ||||
|     long ret = 1; | ||||
| 
 | ||||
|  |  | |||
|  | @ -20,7 +20,7 @@ static int linebuffer_gets(BIO *h, char *str, int size); | |||
| static long linebuffer_ctrl(BIO *h, int cmd, long arg1, void *arg2); | ||||
| static int linebuffer_new(BIO *h); | ||||
| static int linebuffer_free(BIO *data); | ||||
| static long linebuffer_callback_ctrl(BIO *h, int cmd, bio_info_cb *fp); | ||||
| static long linebuffer_callback_ctrl(BIO *h, int cmd, BIO_info_cb *fp); | ||||
| 
 | ||||
| /* A 10k maximum should be enough for most purposes */ | ||||
| #define DEFAULT_LINEBUFFER_SIZE 1024*10 | ||||
|  | @ -296,7 +296,7 @@ static long linebuffer_ctrl(BIO *b, int cmd, long num, void *ptr) | |||
|     return 0; | ||||
| } | ||||
| 
 | ||||
| static long linebuffer_callback_ctrl(BIO *b, int cmd, bio_info_cb *fp) | ||||
| static long linebuffer_callback_ctrl(BIO *b, int cmd, BIO_info_cb *fp) | ||||
| { | ||||
|     long ret = 1; | ||||
| 
 | ||||
|  |  | |||
|  | @ -24,7 +24,7 @@ static int nbiof_gets(BIO *h, char *str, int size); | |||
| static long nbiof_ctrl(BIO *h, int cmd, long arg1, void *arg2); | ||||
| static int nbiof_new(BIO *h); | ||||
| static int nbiof_free(BIO *data); | ||||
| static long nbiof_callback_ctrl(BIO *h, int cmd, bio_info_cb *fp); | ||||
| static long nbiof_callback_ctrl(BIO *h, int cmd, BIO_info_cb *fp); | ||||
| typedef struct nbio_test_st { | ||||
|     /* only set if we sent a 'should retry' error */ | ||||
|     int lrn; | ||||
|  | @ -169,7 +169,7 @@ static long nbiof_ctrl(BIO *b, int cmd, long num, void *ptr) | |||
|     return ret; | ||||
| } | ||||
| 
 | ||||
| static long nbiof_callback_ctrl(BIO *b, int cmd, bio_info_cb *fp) | ||||
| static long nbiof_callback_ctrl(BIO *b, int cmd, BIO_info_cb *fp) | ||||
| { | ||||
|     long ret = 1; | ||||
| 
 | ||||
|  |  | |||
|  | @ -23,7 +23,7 @@ static int nullf_gets(BIO *h, char *str, int size); | |||
| static long nullf_ctrl(BIO *h, int cmd, long arg1, void *arg2); | ||||
| static int nullf_new(BIO *h); | ||||
| static int nullf_free(BIO *data); | ||||
| static long nullf_callback_ctrl(BIO *h, int cmd, bio_info_cb *fp); | ||||
| static long nullf_callback_ctrl(BIO *h, int cmd, BIO_info_cb *fp); | ||||
| static const BIO_METHOD methods_nullf = { | ||||
|     BIO_TYPE_NULL_FILTER, | ||||
|     "NULL filter", | ||||
|  | @ -115,7 +115,7 @@ static long nullf_ctrl(BIO *b, int cmd, long num, void *ptr) | |||
|     return ret; | ||||
| } | ||||
| 
 | ||||
| static long nullf_callback_ctrl(BIO *b, int cmd, bio_info_cb *fp) | ||||
| static long nullf_callback_ctrl(BIO *b, int cmd, BIO_info_cb *fp) | ||||
| { | ||||
|     long ret = 1; | ||||
| 
 | ||||
|  |  | |||
|  | @ -533,9 +533,7 @@ long BIO_ctrl(BIO *b, int cmd, long larg, void *parg) | |||
|     return ret; | ||||
| } | ||||
| 
 | ||||
| long BIO_callback_ctrl(BIO *b, int cmd, | ||||
|                        void (*fp) (struct bio_st *, int, const char *, int, | ||||
|                                    long, long)) | ||||
| long BIO_callback_ctrl(BIO *b, int cmd, BIO_info_cb *fp) | ||||
| { | ||||
|     long ret; | ||||
| 
 | ||||
|  |  | |||
|  | @ -200,14 +200,14 @@ int BIO_meth_set_destroy(BIO_METHOD *biom, int (*destroy) (BIO *)) | |||
|     return 1; | ||||
| } | ||||
| 
 | ||||
| long (*BIO_meth_get_callback_ctrl(BIO_METHOD *biom)) (BIO *, int, bio_info_cb *) | ||||
| long (*BIO_meth_get_callback_ctrl(BIO_METHOD *biom)) (BIO *, int, BIO_info_cb *) | ||||
| { | ||||
|     return biom->callback_ctrl; | ||||
| } | ||||
| 
 | ||||
| int BIO_meth_set_callback_ctrl(BIO_METHOD *biom, | ||||
|                                long (*callback_ctrl) (BIO *, int, | ||||
|                                                       bio_info_cb *)) | ||||
|                                                       BIO_info_cb *)) | ||||
| { | ||||
|     biom->callback_ctrl = callback_ctrl; | ||||
|     return 1; | ||||
|  |  | |||
|  | @ -32,7 +32,7 @@ typedef struct bio_connect_st { | |||
|      * The callback should return 'ret'.  state is for compatibility with the | ||||
|      * ssl info_callback | ||||
|      */ | ||||
|     int (*info_callback) (const BIO *bio, int state, int ret); | ||||
|     BIO_info_cb *info_callback; | ||||
| } BIO_CONNECT; | ||||
| 
 | ||||
| static int conn_write(BIO *h, const char *buf, int num); | ||||
|  | @ -41,7 +41,7 @@ static int conn_puts(BIO *h, const char *str); | |||
| static long conn_ctrl(BIO *h, int cmd, long arg1, void *arg2); | ||||
| static int conn_new(BIO *h); | ||||
| static int conn_free(BIO *data); | ||||
| static long conn_callback_ctrl(BIO *h, int cmd, bio_info_cb *); | ||||
| static long conn_callback_ctrl(BIO *h, int cmd, BIO_info_cb *); | ||||
| 
 | ||||
| static int conn_state(BIO *b, BIO_CONNECT *c); | ||||
| static void conn_close_socket(BIO *data); | ||||
|  | @ -75,7 +75,7 @@ static const BIO_METHOD methods_connectp = { | |||
| static int conn_state(BIO *b, BIO_CONNECT *c) | ||||
| { | ||||
|     int ret = -1, i; | ||||
|     int (*cb) (const BIO *, int, int) = NULL; | ||||
|     BIO_info_cb *cb = NULL; | ||||
| 
 | ||||
|     if (c->info_callback != NULL) | ||||
|         cb = c->info_callback; | ||||
|  | @ -473,8 +473,7 @@ static long conn_ctrl(BIO *b, int cmd, long num, void *ptr) | |||
|              * FIXME: the cast of the function seems unlikely to be a good | ||||
|              * idea | ||||
|              */ | ||||
|             (void)BIO_set_info_callback(dbio, | ||||
|                                         (bio_info_cb *)data->info_callback); | ||||
|             (void)BIO_set_info_callback(dbio, data->info_callback); | ||||
|         } | ||||
|         break; | ||||
|     case BIO_CTRL_SET_CALLBACK: | ||||
|  | @ -482,9 +481,9 @@ static long conn_ctrl(BIO *b, int cmd, long num, void *ptr) | |||
|         break; | ||||
|     case BIO_CTRL_GET_CALLBACK: | ||||
|         { | ||||
|             int (**fptr) (const BIO *bio, int state, int xret); | ||||
|             BIO_info_cb **fptr; | ||||
| 
 | ||||
|             fptr = (int (**)(const BIO *bio, int state, int xret))ptr; | ||||
|             fptr = (BIO_info_cb **)ptr; | ||||
|             *fptr = data->info_callback; | ||||
|         } | ||||
|         break; | ||||
|  | @ -495,7 +494,7 @@ static long conn_ctrl(BIO *b, int cmd, long num, void *ptr) | |||
|     return ret; | ||||
| } | ||||
| 
 | ||||
| static long conn_callback_ctrl(BIO *b, int cmd, bio_info_cb *fp) | ||||
| static long conn_callback_ctrl(BIO *b, int cmd, BIO_info_cb *fp) | ||||
| { | ||||
|     long ret = 1; | ||||
|     BIO_CONNECT *data; | ||||
|  | @ -505,8 +504,7 @@ static long conn_callback_ctrl(BIO *b, int cmd, bio_info_cb *fp) | |||
|     switch (cmd) { | ||||
|     case BIO_CTRL_SET_CALLBACK: | ||||
|         { | ||||
|             data->info_callback = | ||||
|                 (int (*)(const struct bio_st *, int, int))fp; | ||||
|             data->info_callback = fp; | ||||
|         } | ||||
|         break; | ||||
|     default: | ||||
|  |  | |||
|  | @ -291,7 +291,7 @@ static int bio_zlib_free(BIO *bi); | |||
| static int bio_zlib_read(BIO *b, char *out, int outl); | ||||
| static int bio_zlib_write(BIO *b, const char *in, int inl); | ||||
| static long bio_zlib_ctrl(BIO *b, int cmd, long num, void *ptr); | ||||
| static long bio_zlib_callback_ctrl(BIO *b, int cmd, bio_info_cb *fp); | ||||
| static long bio_zlib_callback_ctrl(BIO *b, int cmd, BIO_info_cb *fp); | ||||
| 
 | ||||
| static const BIO_METHOD bio_meth_zlib = { | ||||
|     BIO_TYPE_COMP, | ||||
|  | @ -607,7 +607,7 @@ static long bio_zlib_ctrl(BIO *b, int cmd, long num, void *ptr) | |||
|     return ret; | ||||
| } | ||||
| 
 | ||||
| static long bio_zlib_callback_ctrl(BIO *b, int cmd, bio_info_cb *fp) | ||||
| static long bio_zlib_callback_ctrl(BIO *b, int cmd, BIO_info_cb *fp) | ||||
| { | ||||
|     BIO *next = BIO_next(b); | ||||
|     if (next == NULL) | ||||
|  |  | |||
|  | @ -20,7 +20,7 @@ static int b64_puts(BIO *h, const char *str); | |||
| static long b64_ctrl(BIO *h, int cmd, long arg1, void *arg2); | ||||
| static int b64_new(BIO *h); | ||||
| static int b64_free(BIO *data); | ||||
| static long b64_callback_ctrl(BIO *h, int cmd, bio_info_cb *fp); | ||||
| static long b64_callback_ctrl(BIO *h, int cmd, BIO_info_cb *fp); | ||||
| #define B64_BLOCK_SIZE  1024 | ||||
| #define B64_BLOCK_SIZE2 768 | ||||
| #define B64_NONE        0 | ||||
|  | @ -523,7 +523,7 @@ static long b64_ctrl(BIO *b, int cmd, long num, void *ptr) | |||
|     return ret; | ||||
| } | ||||
| 
 | ||||
| static long b64_callback_ctrl(BIO *b, int cmd, bio_info_cb *fp) | ||||
| static long b64_callback_ctrl(BIO *b, int cmd, BIO_info_cb *fp) | ||||
| { | ||||
|     long ret = 1; | ||||
|     BIO *next = BIO_next(b); | ||||
|  |  | |||
|  | @ -19,7 +19,7 @@ static int enc_read(BIO *h, char *buf, int size); | |||
| static long enc_ctrl(BIO *h, int cmd, long arg1, void *arg2); | ||||
| static int enc_new(BIO *h); | ||||
| static int enc_free(BIO *data); | ||||
| static long enc_callback_ctrl(BIO *h, int cmd, bio_info_cb *fps); | ||||
| static long enc_callback_ctrl(BIO *h, int cmd, BIO_info_cb *fps); | ||||
| #define ENC_BLOCK_SIZE  (1024*4) | ||||
| #define ENC_MIN_CHUNK   (256) | ||||
| #define BUF_OFFSET      (ENC_MIN_CHUNK + EVP_MAX_BLOCK_LENGTH) | ||||
|  | @ -385,7 +385,7 @@ static long enc_ctrl(BIO *b, int cmd, long num, void *ptr) | |||
|     return ret; | ||||
| } | ||||
| 
 | ||||
| static long enc_callback_ctrl(BIO *b, int cmd, bio_info_cb *fp) | ||||
| static long enc_callback_ctrl(BIO *b, int cmd, BIO_info_cb *fp) | ||||
| { | ||||
|     long ret = 1; | ||||
|     BIO *next = BIO_next(b); | ||||
|  |  | |||
|  | @ -26,7 +26,7 @@ static int md_gets(BIO *h, char *str, int size); | |||
| static long md_ctrl(BIO *h, int cmd, long arg1, void *arg2); | ||||
| static int md_new(BIO *h); | ||||
| static int md_free(BIO *data); | ||||
| static long md_callback_ctrl(BIO *h, int cmd, bio_info_cb *fp); | ||||
| static long md_callback_ctrl(BIO *h, int cmd, BIO_info_cb *fp); | ||||
| 
 | ||||
| static const BIO_METHOD methods_md = { | ||||
|     BIO_TYPE_MD, | ||||
|  | @ -198,7 +198,7 @@ static long md_ctrl(BIO *b, int cmd, long num, void *ptr) | |||
|     return ret; | ||||
| } | ||||
| 
 | ||||
| static long md_callback_ctrl(BIO *b, int cmd, bio_info_cb *fp) | ||||
| static long md_callback_ctrl(BIO *b, int cmd, BIO_info_cb *fp) | ||||
| { | ||||
|     long ret = 1; | ||||
|     BIO *next; | ||||
|  |  | |||
|  | @ -83,7 +83,7 @@ static int ok_read(BIO *h, char *buf, int size); | |||
| static long ok_ctrl(BIO *h, int cmd, long arg1, void *arg2); | ||||
| static int ok_new(BIO *h); | ||||
| static int ok_free(BIO *data); | ||||
| static long ok_callback_ctrl(BIO *h, int cmd, bio_info_cb *fp); | ||||
| static long ok_callback_ctrl(BIO *h, int cmd, BIO_info_cb *fp); | ||||
| 
 | ||||
| static __owur int sig_out(BIO *b); | ||||
| static __owur int sig_in(BIO *b); | ||||
|  | @ -403,7 +403,7 @@ static long ok_ctrl(BIO *b, int cmd, long num, void *ptr) | |||
|     return ret; | ||||
| } | ||||
| 
 | ||||
| static long ok_callback_ctrl(BIO *b, int cmd, bio_info_cb *fp) | ||||
| static long ok_callback_ctrl(BIO *b, int cmd, BIO_info_cb *fp) | ||||
| { | ||||
|     long ret = 1; | ||||
|     BIO *next; | ||||
|  |  | |||
|  | @ -5,18 +5,17 @@ | |||
| BIO_ctrl, BIO_callback_ctrl, BIO_ptr_ctrl, BIO_int_ctrl, BIO_reset, | ||||
| BIO_seek, BIO_tell, BIO_flush, BIO_eof, BIO_set_close, BIO_get_close, | ||||
| BIO_pending, BIO_wpending, BIO_ctrl_pending, BIO_ctrl_wpending, | ||||
| BIO_get_info_callback, BIO_set_info_callback, bio_info_cb | ||||
| BIO_get_info_callback, BIO_set_info_callback, BIO_info_cb | ||||
| - BIO control operations | ||||
| 
 | ||||
| =head1 SYNOPSIS | ||||
| 
 | ||||
|  #include <openssl/bio.h> | ||||
| 
 | ||||
|  typedef void bio_info_cb(BIO *b, int oper, const char *ptr, | ||||
|                           int arg1, long arg2, long arg3); | ||||
|  typedef int BIO_info_cb(BIO *b, int state, int res); | ||||
| 
 | ||||
|  long BIO_ctrl(BIO *bp, int cmd, long larg, void *parg); | ||||
|  long BIO_callback_ctrl(BIO *b, int cmd, bio_info_cb *cb); | ||||
|  long BIO_callback_ctrl(BIO *b, int cmd, BIO_info_cb *cb); | ||||
|  char *BIO_ptr_ctrl(BIO *bp, int cmd, long larg); | ||||
|  long BIO_int_ctrl(BIO *bp, int cmd, long larg, int iarg); | ||||
| 
 | ||||
|  | @ -32,8 +31,8 @@ BIO_get_info_callback, BIO_set_info_callback, bio_info_cb | |||
|  size_t BIO_ctrl_pending(BIO *b); | ||||
|  size_t BIO_ctrl_wpending(BIO *b); | ||||
| 
 | ||||
|  int BIO_get_info_callback(BIO *b, bio_info_cb **cbp); | ||||
|  int BIO_set_info_callback(BIO *b, bio_info_cb *cb); | ||||
|  int BIO_get_info_callback(BIO *b, BIO_info_cb **cbp); | ||||
|  int BIO_set_info_callback(BIO *b, BIO_info_cb *cb); | ||||
| 
 | ||||
| =head1 DESCRIPTION | ||||
| 
 | ||||
|  |  | |||
|  | @ -52,9 +52,9 @@ BIO_meth_set_callback_ctrl - Routines to build up BIO methods | |||
|  int (*BIO_meth_get_destroy(BIO_METHOD *biom))(BIO *); | ||||
|  int BIO_meth_set_destroy(BIO_METHOD *biom, int (*destroy)(BIO *)); | ||||
| 
 | ||||
|  long (*BIO_meth_get_callback_ctrl(BIO_METHOD *biom))(BIO *, int, bio_info_cb *); | ||||
|  long (*BIO_meth_get_callback_ctrl(BIO_METHOD *biom))(BIO *, int, BIO_info_cb *); | ||||
|  int BIO_meth_set_callback_ctrl(BIO_METHOD *biom, | ||||
|                                 long (*callback_ctrl)(BIO *, int, bio_info_cb *)); | ||||
|                                 long (*callback_ctrl)(BIO *, int, BIO_info_cb *)); | ||||
| 
 | ||||
| =head1 DESCRIPTION | ||||
| 
 | ||||
|  |  | |||
|  | @ -21,7 +21,7 @@ struct bio_method_st { | |||
|     long (*ctrl) (BIO *, int, long, void *); | ||||
|     int (*create) (BIO *); | ||||
|     int (*destroy) (BIO *); | ||||
|     long (*callback_ctrl) (BIO *, int, bio_info_cb *); | ||||
|     long (*callback_ctrl) (BIO *, int, BIO_info_cb *); | ||||
| }; | ||||
| 
 | ||||
| void bio_free_ex_data(BIO *bio); | ||||
|  |  | |||
|  | @ -255,7 +255,8 @@ typedef struct bio_method_st BIO_METHOD; | |||
| const char *BIO_method_name(const BIO *b); | ||||
| int BIO_method_type(const BIO *b); | ||||
| 
 | ||||
| typedef void bio_info_cb(BIO *, int, const char *, int, long, long); | ||||
| typedef int BIO_info_cb(BIO *, int, int); | ||||
| typedef BIO_info_cb bio_info_cb;  /* backward compatibility */ | ||||
| 
 | ||||
| DEFINE_STACK_OF(BIO) | ||||
| 
 | ||||
|  | @ -566,8 +567,7 @@ int BIO_write_ex(BIO *b, const void *data, size_t dlen, size_t *written); | |||
| int BIO_puts(BIO *bp, const char *buf); | ||||
| int BIO_indent(BIO *b, int indent, int max); | ||||
| long BIO_ctrl(BIO *bp, int cmd, long larg, void *parg); | ||||
| long BIO_callback_ctrl(BIO *b, int cmd, | ||||
|                        void (*fp) (BIO *, int, const char *, int, long, long)); | ||||
| long BIO_callback_ctrl(BIO *b, int cmd, BIO_info_cb *fp); | ||||
| void *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); | ||||
|  | @ -785,10 +785,10 @@ int BIO_meth_set_create(BIO_METHOD *biom, int (*create) (BIO *)); | |||
| int (*BIO_meth_get_destroy(BIO_METHOD *biom)) (BIO *); | ||||
| int BIO_meth_set_destroy(BIO_METHOD *biom, int (*destroy) (BIO *)); | ||||
| long (*BIO_meth_get_callback_ctrl(BIO_METHOD *biom)) | ||||
|                                  (BIO *, int, bio_info_cb *); | ||||
|                                  (BIO *, int, BIO_info_cb *); | ||||
| int BIO_meth_set_callback_ctrl(BIO_METHOD *biom, | ||||
|                                long (*callback_ctrl) (BIO *, int, | ||||
|                                                       bio_info_cb *)); | ||||
|                                                       BIO_info_cb *)); | ||||
| int ERR_load_BIO_strings(void); | ||||
| 
 | ||||
| # ifdef  __cplusplus | ||||
|  |  | |||
|  | @ -22,7 +22,7 @@ static int ssl_puts(BIO *h, const char *str); | |||
| static long ssl_ctrl(BIO *h, int cmd, long arg1, void *arg2); | ||||
| static int ssl_new(BIO *h); | ||||
| static int ssl_free(BIO *data); | ||||
| static long ssl_callback_ctrl(BIO *h, int cmd, bio_info_cb *fp); | ||||
| static long ssl_callback_ctrl(BIO *h, int cmd, BIO_info_cb *fp); | ||||
| typedef struct bio_ssl_st { | ||||
|     SSL *ssl;                   /* The ssl handle :-) */ | ||||
|     /* re-negotiate every time the total number of bytes is this size */ | ||||
|  | @ -383,14 +383,6 @@ static long ssl_ctrl(BIO *b, int cmd, long num, void *ptr) | |||
|     case BIO_CTRL_SET_CALLBACK: | ||||
|         ret = 0; /* use callback ctrl */ | ||||
|         break; | ||||
|     case BIO_CTRL_GET_CALLBACK: | ||||
|         { | ||||
|             void (**fptr) (const SSL *xssl, int type, int val); | ||||
| 
 | ||||
|             fptr = (void (**)(const SSL *xssl, int type, int val))ptr; | ||||
|             *fptr = SSL_get_info_callback(ssl); | ||||
|         } | ||||
|         break; | ||||
|     default: | ||||
|         ret = BIO_ctrl(ssl->rbio, cmd, num, ptr); | ||||
|         break; | ||||
|  | @ -398,7 +390,7 @@ static long ssl_ctrl(BIO *b, int cmd, long num, void *ptr) | |||
|     return ret; | ||||
| } | ||||
| 
 | ||||
| static long ssl_callback_ctrl(BIO *b, int cmd, bio_info_cb *fp) | ||||
| static long ssl_callback_ctrl(BIO *b, int cmd, BIO_info_cb *fp) | ||||
| { | ||||
|     SSL *ssl; | ||||
|     BIO_SSL *bs; | ||||
|  | @ -408,16 +400,10 @@ static long ssl_callback_ctrl(BIO *b, int cmd, bio_info_cb *fp) | |||
|     ssl = bs->ssl; | ||||
|     switch (cmd) { | ||||
|     case BIO_CTRL_SET_CALLBACK: | ||||
|         { | ||||
|             /*
 | ||||
|              * FIXME: setting this via a completely different prototype seems | ||||
|              * like a crap idea | ||||
|              */ | ||||
|             SSL_set_info_callback(ssl, (void (*)(const SSL *, int, int))fp); | ||||
|         } | ||||
|         ret = BIO_callback_ctrl(ssl->rbio, cmd, fp); | ||||
|         break; | ||||
|     default: | ||||
|         ret = BIO_callback_ctrl(ssl->rbio, cmd, fp); | ||||
|         ret = 0; | ||||
|         break; | ||||
|     } | ||||
|     return ret; | ||||
|  |  | |||
							
								
								
									
										18
									
								
								ssl/s3_lib.c
								
								
								
								
							
							
						
						
									
										18
									
								
								ssl/s3_lib.c
								
								
								
								
							|  | @ -3246,6 +3246,20 @@ void ssl_sort_cipher_list(void) | |||
|     qsort(ssl3_scsvs, SSL3_NUM_SCSVS, sizeof(ssl3_scsvs[0]), cipher_compare); | ||||
| } | ||||
| 
 | ||||
| static int ssl_undefined_function_1(SSL *ssl, unsigned char *r, size_t s, | ||||
|                                     const char * t, size_t u, | ||||
|                                     const unsigned char * v, size_t w, int x) | ||||
| { | ||||
|     (void)r; | ||||
|     (void)s; | ||||
|     (void)t; | ||||
|     (void)u; | ||||
|     (void)v; | ||||
|     (void)w; | ||||
|     (void)x; | ||||
|     return ssl_undefined_function(ssl); | ||||
| } | ||||
| 
 | ||||
| const SSL3_ENC_METHOD SSLv3_enc_data = { | ||||
|     ssl3_enc, | ||||
|     n_ssl3_mac, | ||||
|  | @ -3256,9 +3270,7 @@ const SSL3_ENC_METHOD SSLv3_enc_data = { | |||
|     SSL3_MD_CLIENT_FINISHED_CONST, 4, | ||||
|     SSL3_MD_SERVER_FINISHED_CONST, 4, | ||||
|     ssl3_alert_code, | ||||
|     (int (*)(SSL *, unsigned char *, size_t, const char *, | ||||
|              size_t, const unsigned char *, size_t, | ||||
|              int use_context))ssl_undefined_function, | ||||
|     ssl_undefined_function_1, | ||||
|     0, | ||||
|     ssl3_set_handshake_header, | ||||
|     tls_close_construct_packet, | ||||
|  |  | |||
|  | @ -25,27 +25,81 @@ | |||
| 
 | ||||
| const char SSL_version_str[] = OPENSSL_VERSION_TEXT; | ||||
| 
 | ||||
| static int ssl_undefined_function_1(SSL *ssl, SSL3_RECORD *r, size_t s, int t) | ||||
| { | ||||
|     (void)r; | ||||
|     (void)s; | ||||
|     (void)t; | ||||
|     return ssl_undefined_function(ssl); | ||||
| } | ||||
| 
 | ||||
| static int ssl_undefined_function_2(SSL *ssl, SSL3_RECORD *r, unsigned char *s, | ||||
|                                     int t) | ||||
| { | ||||
|     (void)r; | ||||
|     (void)s; | ||||
|     (void)t; | ||||
|     return ssl_undefined_function(ssl); | ||||
| } | ||||
| 
 | ||||
| static int ssl_undefined_function_3(SSL *ssl, unsigned char *r, | ||||
|                                     unsigned char *s, size_t t, size_t *u) | ||||
| { | ||||
|     (void)r; | ||||
|     (void)s; | ||||
|     (void)t; | ||||
|     (void)u; | ||||
|     return ssl_undefined_function(ssl); | ||||
| } | ||||
| 
 | ||||
| static int ssl_undefined_function_4(SSL *ssl, int r) | ||||
| { | ||||
|     (void)r; | ||||
|     return ssl_undefined_function(ssl); | ||||
| } | ||||
| 
 | ||||
| static size_t ssl_undefined_function_5(SSL *ssl, const char *r, size_t s, | ||||
|                                        unsigned char *t) | ||||
| { | ||||
|     (void)r; | ||||
|     (void)s; | ||||
|     (void)t; | ||||
|     return ssl_undefined_function(ssl); | ||||
| } | ||||
| 
 | ||||
| static int ssl_undefined_function_6(int r) | ||||
| { | ||||
|     (void)r; | ||||
|     return ssl_undefined_function(NULL); | ||||
| } | ||||
| 
 | ||||
| static int ssl_undefined_function_7(SSL *ssl, unsigned char *r, size_t s, | ||||
|                                     const char *t, size_t u, | ||||
|                                     const unsigned char *v, size_t w, int x) | ||||
| { | ||||
|     (void)r; | ||||
|     (void)s; | ||||
|     (void)t; | ||||
|     (void)u; | ||||
|     (void)v; | ||||
|     (void)w; | ||||
|     (void)x; | ||||
|     return ssl_undefined_function(ssl); | ||||
| } | ||||
| 
 | ||||
| SSL3_ENC_METHOD ssl3_undef_enc_method = { | ||||
|     /*
 | ||||
|      * evil casts, but these functions are only called if there's a library | ||||
|      * bug | ||||
|      */ | ||||
|     (int (*)(SSL *, SSL3_RECORD *, size_t, int))ssl_undefined_function, | ||||
|     (int (*)(SSL *, SSL3_RECORD *, unsigned char *, int))ssl_undefined_function, | ||||
|     ssl_undefined_function_1, | ||||
|     ssl_undefined_function_2, | ||||
|     ssl_undefined_function, | ||||
|     (int (*)(SSL *, unsigned char *, unsigned char *, size_t, size_t *)) | ||||
|         ssl_undefined_function, | ||||
|     (int (*)(SSL *, int))ssl_undefined_function, | ||||
|     (size_t (*)(SSL *, const char *, size_t, unsigned char *)) | ||||
|         ssl_undefined_function, | ||||
|     ssl_undefined_function_3, | ||||
|     ssl_undefined_function_4, | ||||
|     ssl_undefined_function_5, | ||||
|     NULL,                       /* client_finished_label */ | ||||
|     0,                          /* client_finished_label_len */ | ||||
|     NULL,                       /* server_finished_label */ | ||||
|     0,                          /* server_finished_label_len */ | ||||
|     (int (*)(int))ssl_undefined_function, | ||||
|     (int (*)(SSL *, unsigned char *, size_t, const char *, | ||||
|              size_t, const unsigned char *, size_t, | ||||
|              int use_context))ssl_undefined_function, | ||||
|     ssl_undefined_function_6, | ||||
|     ssl_undefined_function_7, | ||||
| }; | ||||
| 
 | ||||
| struct ssl_async_args { | ||||
|  |  | |||
|  | @ -118,10 +118,10 @@ static int AsyncFree(BIO *bio) { | |||
|   return 1; | ||||
| } | ||||
| 
 | ||||
| static long AsyncCallbackCtrl(BIO *bio, int cmd, bio_info_cb fp) { | ||||
|   if (BIO_next(bio) == NULL) { | ||||
| static long AsyncCallbackCtrl(BIO *bio, int cmd, BIO_info_cb fp) | ||||
| { | ||||
|   if (BIO_next(bio) == NULL) | ||||
|     return 0; | ||||
|   } | ||||
|   return BIO_callback_ctrl(BIO_next(bio), cmd, fp); | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -240,10 +240,10 @@ static int PacketedFree(BIO *bio) { | |||
|   return 1; | ||||
| } | ||||
| 
 | ||||
| static long PacketedCallbackCtrl(BIO *bio, int cmd, bio_info_cb fp) { | ||||
|   if (BIO_next(bio) == NULL) { | ||||
| static long PacketedCallbackCtrl(BIO *bio, int cmd, BIO_info_cb fp) | ||||
| { | ||||
|   if (BIO_next(bio) == NULL) | ||||
|     return 0; | ||||
|   } | ||||
|   return BIO_callback_ctrl(BIO_next(bio), cmd, fp); | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -18,7 +18,7 @@ static int tap_gets(BIO *b, char *str, int size); | |||
| static long tap_ctrl(BIO *b, int cmd, long arg1, void *arg2); | ||||
| static int tap_new(BIO *b); | ||||
| static int tap_free(BIO *b); | ||||
| static long tap_callback_ctrl(BIO *h, int cmd, bio_info_cb *fp); | ||||
| static long tap_callback_ctrl(BIO *h, int cmd, BIO_info_cb *fp); | ||||
| 
 | ||||
| const BIO_METHOD *BIO_f_tap(void) | ||||
| { | ||||
|  | @ -134,7 +134,7 @@ static long tap_ctrl(BIO *b, int cmd, long num, void *ptr) | |||
|     return BIO_ctrl(next, cmd, num, ptr); | ||||
| } | ||||
| 
 | ||||
| static long tap_callback_ctrl(BIO *b, int cmd, bio_info_cb *fp) | ||||
| static long tap_callback_ctrl(BIO *b, int cmd, BIO_info_cb *fp) | ||||
| { | ||||
|     return BIO_callback_ctrl(BIO_next(b), cmd, fp); | ||||
| } | ||||
|  |  | |||
|  | @ -474,6 +474,7 @@ | |||
| -T asn1_ps_func | ||||
| -T bio_dgram_data | ||||
| -T bio_info_cb | ||||
| -T BIO_info_cb | ||||
| -T BIO_callback_fn | ||||
| -T char_io | ||||
| -T conf_finish_func | ||||
|  |  | |||
|  | @ -62,6 +62,7 @@ X509_STORE_CTX_verify_cb                datatype | |||
| X509_STORE_CTX_verify_fn                datatype | ||||
| X509_STORE_set_verify_cb_func           datatype | ||||
| bio_info_cb                             datatype | ||||
| BIO_info_cb                             datatype | ||||
| custom_ext_add_cb                       datatype | ||||
| custom_ext_free_cb                      datatype | ||||
| custom_ext_parse_cb                     datatype | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue