The branch master has been updated via 94f1c9379c3ed4b088718b35d0dd807d619d50c5 (commit) via 7f55808fe723c146428415a470ed42331548007b (commit) from 2e230e8687486b71c113915b864d6b1f6d465ed1 (commit)
- Log ----------------------------------------------------------------- commit 94f1c9379c3ed4b088718b35d0dd807d619d50c5 Author: Richard Levitte <levi...@openssl.org> Date: Wed Jan 31 15:24:24 2018 +0100 Remove "dummy" BIO create and destroy functions They aren't needed if all they do is set bio->init = 1 and zero other fields that are already zeroed Reviewed-by: Rich Salz <rs...@openssl.org> (Merged from https://github.com/openssl/openssl/pull/5223) commit 7f55808fe723c146428415a470ed42331548007b Author: Richard Levitte <levi...@openssl.org> Date: Wed Jan 31 11:17:32 2018 +0100 BIO: at the end of BIO_new, declare the BIO inited if no create method present Without this, every BIO implementation is forced to have a create method, just to set bio->init = 1. Reviewed-by: Rich Salz <rs...@openssl.org> (Merged from https://github.com/openssl/openssl/pull/5223) ----------------------------------------------------------------------- Summary of changes: crypto/bio/bf_null.c | 26 ++------------------------ crypto/bio/bio_lib.c | 2 ++ crypto/bio/bss_null.c | 21 ++------------------- 3 files changed, 6 insertions(+), 43 deletions(-) diff --git a/crypto/bio/bf_null.c b/crypto/bio/bf_null.c index df4e511..8e62832 100644 --- a/crypto/bio/bf_null.c +++ b/crypto/bio/bf_null.c @@ -21,8 +21,6 @@ static int nullf_read(BIO *h, char *buf, int size); static int nullf_puts(BIO *h, const char *str); 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 const BIO_METHOD methods_nullf = { BIO_TYPE_NULL_FILTER, @@ -36,8 +34,8 @@ static const BIO_METHOD methods_nullf = { nullf_puts, nullf_gets, nullf_ctrl, - nullf_new, - nullf_free, + NULL, + NULL, nullf_callback_ctrl, }; @@ -46,26 +44,6 @@ const BIO_METHOD *BIO_f_null(void) return &methods_nullf; } -static int nullf_new(BIO *bi) -{ - bi->init = 1; - bi->ptr = NULL; - bi->flags = 0; - return 1; -} - -static int nullf_free(BIO *a) -{ - if (a == NULL) - return 0; - /*- - a->ptr=NULL; - a->init=0; - a->flags=0; - */ - return 1; -} - static int nullf_read(BIO *b, char *out, int outl) { int ret = 0; diff --git a/crypto/bio/bio_lib.c b/crypto/bio/bio_lib.c index 8a2ec0e..dc4d0a0 100644 --- a/crypto/bio/bio_lib.c +++ b/crypto/bio/bio_lib.c @@ -98,6 +98,8 @@ BIO *BIO_new(const BIO_METHOD *method) CRYPTO_THREAD_lock_free(bio->lock); goto err; } + if (method->create == NULL) + bio->init = 1; return bio; diff --git a/crypto/bio/bss_null.c b/crypto/bio/bss_null.c index df3a921..48164d4 100644 --- a/crypto/bio/bss_null.c +++ b/crypto/bio/bss_null.c @@ -17,8 +17,6 @@ static int null_read(BIO *h, char *buf, int size); static int null_puts(BIO *h, const char *str); static int null_gets(BIO *h, char *str, int size); static long null_ctrl(BIO *h, int cmd, long arg1, void *arg2); -static int null_new(BIO *h); -static int null_free(BIO *data); static const BIO_METHOD null_method = { BIO_TYPE_NULL, "NULL", @@ -31,8 +29,8 @@ static const BIO_METHOD null_method = { null_puts, null_gets, null_ctrl, - null_new, - null_free, + NULL, + NULL, NULL, /* null_callback_ctrl */ }; @@ -41,21 +39,6 @@ const BIO_METHOD *BIO_s_null(void) return &null_method; } -static int null_new(BIO *bi) -{ - bi->init = 1; - bi->num = 0; - bi->ptr = (NULL); - return 1; -} - -static int null_free(BIO *a) -{ - if (a == NULL) - return 0; - return 1; -} - static int null_read(BIO *b, char *out, int outl) { return 0; _____ openssl-commits mailing list To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-commits