From cd17bb190cf65413877bcddffb5d1fecdb85eef3 Mon Sep 17 00:00:00 2001 From: Matt Caswell Date: Fri, 7 Apr 2017 11:04:38 +0100 Subject: [PATCH] Prefix custom extension API callback types with SSL_ Reviewed-by: Rich Salz (Merged from https://github.com/openssl/openssl/pull/3139) --- doc/man3/SSL_extension_supported.pod | 41 +++++++++++++++------------- include/openssl/ssl.h | 39 ++++++++++++++------------ ssl/ssl_locl.h | 6 ++-- ssl/statem/extensions_cust.c | 12 ++++---- 4 files changed, 52 insertions(+), 46 deletions(-) diff --git a/doc/man3/SSL_extension_supported.pod b/doc/man3/SSL_extension_supported.pod index 994454be83..54a55a73b9 100644 --- a/doc/man3/SSL_extension_supported.pod +++ b/doc/man3/SSL_extension_supported.pod @@ -12,29 +12,32 @@ custom_ext_add_cb, custom_ext_free_cb, custom_ext_parse_cb #include - typedef int (*custom_ext_add_cb_ex) (SSL *s, unsigned int ext_type, - unsigned int context, - const unsigned char **out, - size_t *outlen, X509 *x, size_t chainidx, - int *al, void *add_arg); - - typedef void (*custom_ext_free_cb_ex) (SSL *s, unsigned int ext_type, - unsigned int context, - const unsigned char *out, - void *add_arg); - - typedef int (*custom_ext_parse_cb_ex) (SSL *s, unsigned int ext_type, - unsigned int context, - const unsigned char *in, - size_t inlen, X509 *x, size_t chainidx, - int *al, void *parse_arg); + typedef int (*SSL_custom_ext_add_cb_ex) (SSL *s, unsigned int ext_type, + unsigned int context, + const unsigned char **out, + size_t *outlen, X509 *x, + size_t chainidx, int *al, + void *add_arg); + + typedef void (*SSL_custom_ext_free_cb_ex) (SSL *s, unsigned int ext_type, + unsigned int context, + const unsigned char *out, + void *add_arg); + + typedef int (*SSL_custom_ext_parse_cb_ex) (SSL *s, unsigned int ext_type, + unsigned int context, + const unsigned char *in, + size_t inlen, X509 *x, + size_t chainidx, int *al, + void *parse_arg); int SSL_CTX_add_custom_ext(SSL_CTX *ctx, unsigned int ext_type, unsigned int context, - custom_ext_add_cb_ex add_cb, - custom_ext_free_cb_ex free_cb, + SSL_custom_ext_add_cb_ex add_cb, + SSL_custom_ext_free_cb_ex free_cb, void *add_arg, - custom_ext_parse_cb_ex parse_cb, void *parse_arg); + SSL_custom_ext_parse_cb_ex parse_cb, + void *parse_arg); typedef int (*custom_ext_add_cb)(SSL *s, unsigned int ext_type, const unsigned char **out, diff --git a/include/openssl/ssl.h b/include/openssl/ssl.h index 8dbfe91f63..6e3b9c52e5 100644 --- a/include/openssl/ssl.h +++ b/include/openssl/ssl.h @@ -289,21 +289,24 @@ typedef int (*custom_ext_parse_cb) (SSL *s, unsigned int ext_type, size_t inlen, int *al, void *parse_arg); -typedef int (*custom_ext_add_cb_ex) (SSL *s, unsigned int ext_type, - unsigned int context, - const unsigned char **out, - size_t *outlen, X509 *x, size_t chainidx, - int *al, void *add_arg); - -typedef void (*custom_ext_free_cb_ex) (SSL *s, unsigned int ext_type, - unsigned int context, - const unsigned char *out, void *add_arg); - -typedef int (*custom_ext_parse_cb_ex) (SSL *s, unsigned int ext_type, - unsigned int context, - const unsigned char *in, - size_t inlen, X509 *x, size_t chainidx, - int *al, void *parse_arg); +typedef int (*SSL_custom_ext_add_cb_ex) (SSL *s, unsigned int ext_type, + unsigned int context, + const unsigned char **out, + size_t *outlen, X509 *x, + size_t chainidx, + int *al, void *add_arg); + +typedef void (*SSL_custom_ext_free_cb_ex) (SSL *s, unsigned int ext_type, + unsigned int context, + const unsigned char *out, + void *add_arg); + +typedef int (*SSL_custom_ext_parse_cb_ex) (SSL *s, unsigned int ext_type, + unsigned int context, + const unsigned char *in, + size_t inlen, X509 *x, + size_t chainidx, + int *al, void *parse_arg); /* Typedef for verification callback */ typedef int (*SSL_verify_cb)(int preverify_ok, X509_STORE_CTX *x509_ctx); @@ -800,10 +803,10 @@ __owur int SSL_CTX_add_server_custom_ext(SSL_CTX *ctx, unsigned int ext_type, __owur int SSL_CTX_add_custom_ext(SSL_CTX *ctx, unsigned int ext_type, unsigned int context, - custom_ext_add_cb_ex add_cb, - custom_ext_free_cb_ex free_cb, + SSL_custom_ext_add_cb_ex add_cb, + SSL_custom_ext_free_cb_ex free_cb, void *add_arg, - custom_ext_parse_cb_ex parse_cb, + SSL_custom_ext_parse_cb_ex parse_cb, void *parse_arg); __owur int SSL_extension_supported(unsigned int ext_type); diff --git a/ssl/ssl_locl.h b/ssl/ssl_locl.h index a9ac840e10..ad73d8eee6 100644 --- a/ssl/ssl_locl.h +++ b/ssl/ssl_locl.h @@ -1630,10 +1630,10 @@ typedef struct { * part of an SSL_CTX structure. */ uint32_t ext_flags; - custom_ext_add_cb_ex add_cb; - custom_ext_free_cb_ex free_cb; + SSL_custom_ext_add_cb_ex add_cb; + SSL_custom_ext_free_cb_ex free_cb; void *add_arg; - custom_ext_parse_cb_ex parse_cb; + SSL_custom_ext_parse_cb_ex parse_cb; void *parse_arg; } custom_ext_method; diff --git a/ssl/statem/extensions_cust.c b/ssl/statem/extensions_cust.c index 6bd50a7297..38bb03b390 100644 --- a/ssl/statem/extensions_cust.c +++ b/ssl/statem/extensions_cust.c @@ -303,10 +303,10 @@ int SSL_CTX_has_client_custom_ext(const SSL_CTX *ctx, unsigned int ext_type) static int add_custom_ext_intern(SSL_CTX *ctx, int server, unsigned int ext_type, unsigned int context, - custom_ext_add_cb_ex add_cb, - custom_ext_free_cb_ex free_cb, + SSL_custom_ext_add_cb_ex add_cb, + SSL_custom_ext_free_cb_ex free_cb, void *add_arg, - custom_ext_parse_cb_ex parse_cb, + SSL_custom_ext_parse_cb_ex parse_cb, void *parse_arg) { custom_ext_methods *exts = &ctx->cert->custext; @@ -442,10 +442,10 @@ int SSL_CTX_add_server_custom_ext(SSL_CTX *ctx, unsigned int ext_type, int SSL_CTX_add_custom_ext(SSL_CTX *ctx, unsigned int ext_type, unsigned int context, - custom_ext_add_cb_ex add_cb, - custom_ext_free_cb_ex free_cb, + SSL_custom_ext_add_cb_ex add_cb, + SSL_custom_ext_free_cb_ex free_cb, void *add_arg, - custom_ext_parse_cb_ex parse_cb, void *parse_arg) + SSL_custom_ext_parse_cb_ex parse_cb, void *parse_arg) { return add_custom_ext_intern(ctx, -1, ext_type, context, add_cb, free_cb, add_arg, parse_cb, parse_arg); -- 2.25.1