The branch OpenSSL_1_1_0-stable has been updated via 3a3f9ed140b0e1feeed1b9655091c270df05332f (commit) via a1aa0386081c4be6e020f1b84a55056ae9f6ad04 (commit) from 2e6b83f608b7a4b315146895ac911e8c06d40db1 (commit)
- Log ----------------------------------------------------------------- commit 3a3f9ed140b0e1feeed1b9655091c270df05332f Author: Kurt Roeckx <k...@roeckx.be> Date: Wed Nov 2 20:45:46 2016 +0100 conf fuzzer: also check for an empty file Reviewed-by: Tim Hudson <t...@openssl.org> Reviewed-by: Rich Salz <rs...@openssl.org> GH: #1828 (cherry picked from commit ea6199ea91ac59ae53686335e436d554cdacd2dc) commit a1aa0386081c4be6e020f1b84a55056ae9f6ad04 Author: Mike Aizatsky <aizat...@google.com> Date: Wed Oct 26 13:56:39 2016 -0700 [fuzzers] do not fail fuzzers with empty input Reviewed-by: Kurt Roeckx <k...@roeckx.be> Reviewed-by: Rich Salz <rs...@openssl.org> GH: #1788 (cherry picked from commit ba7407002d899b614d4728da9004594f947ff3da) ----------------------------------------------------------------------- Summary of changes: fuzz/cms.c | 6 +++++- fuzz/conf.c | 9 +++++++-- fuzz/server.c | 12 +++++++++--- 3 files changed, 21 insertions(+), 6 deletions(-) diff --git a/fuzz/cms.c b/fuzz/cms.c index f97173a..94390e7 100644 --- a/fuzz/cms.c +++ b/fuzz/cms.c @@ -22,8 +22,12 @@ int FuzzerInitialize(int *argc, char ***argv) { int FuzzerTestOneInput(const uint8_t *buf, size_t len) { CMS_ContentInfo *i; - BIO *in = BIO_new(BIO_s_mem()); + BIO *in; + if (!len) { + return 0; + } + in = BIO_new(BIO_s_mem()); OPENSSL_assert((size_t)BIO_write(in, buf, len) == len); i = d2i_CMS_bio(in, NULL); CMS_ContentInfo_free(i); diff --git a/fuzz/conf.c b/fuzz/conf.c index a76068d..30b13c8 100644 --- a/fuzz/conf.c +++ b/fuzz/conf.c @@ -20,10 +20,15 @@ int FuzzerInitialize(int *argc, char ***argv) { } int FuzzerTestOneInput(const uint8_t *buf, size_t len) { - CONF *conf = NCONF_new(NULL); - BIO *in = BIO_new(BIO_s_mem()); + CONF *conf; + BIO *in; long eline; + if (len == 0) + return 0; + + conf = NCONF_new(NULL); + in = BIO_new(BIO_s_mem()); OPENSSL_assert((size_t)BIO_write(in, buf, len) == len); NCONF_load_bio(conf, in, &eline); NCONF_free(conf); diff --git a/fuzz/server.c b/fuzz/server.c index 0076306..35449d8 100644 --- a/fuzz/server.c +++ b/fuzz/server.c @@ -217,6 +217,12 @@ int FuzzerInitialize(int *argc, char ***argv) { } int FuzzerTestOneInput(const uint8_t *buf, size_t len) { + SSL *server; + BIO *in; + BIO *out; + if (!len) { + return 0; + } /* TODO: make this work for OpenSSL. There's a PREDICT define that may do * the job. * TODO: use the ossltest engine (optionally?) to disable crypto checks. @@ -224,9 +230,9 @@ int FuzzerTestOneInput(const uint8_t *buf, size_t len) { */ /* This only fuzzes the initial flow from the client so far. */ - SSL *server = SSL_new(ctx); - BIO *in = BIO_new(BIO_s_mem()); - BIO *out = BIO_new(BIO_s_mem()); + server = SSL_new(ctx); + in = BIO_new(BIO_s_mem()); + out = BIO_new(BIO_s_mem()); SSL_set_bio(server, in, out); SSL_set_accept_state(server); OPENSSL_assert((size_t)BIO_write(in, buf, len) == len); _____ openssl-commits mailing list To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-commits