X-Git-Url: https://code.wpia.club/?a=blobdiff_plain;f=lib%2Fopenssl%2Ffuzz%2Fcms.c;fp=lib%2Fopenssl%2Ffuzz%2Fcms.c;h=94390e7c91c5d4f936d223044c27f2458a120d2e;hb=02ed66432c92de70694700164f986190aad3cbc5;hp=0000000000000000000000000000000000000000;hpb=89016837dcbf2775cd15dc8cbaba00dc6379f86e;p=cassiopeia.git diff --git a/lib/openssl/fuzz/cms.c b/lib/openssl/fuzz/cms.c new file mode 100644 index 0000000..94390e7 --- /dev/null +++ b/lib/openssl/fuzz/cms.c @@ -0,0 +1,36 @@ +/* + * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved. + * + * Licensed under the OpenSSL licenses, (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * https://www.openssl.org/source/license.html + * or in the file LICENSE in the source distribution. + */ + +/* + * Test CMS DER parsing. + */ + +#include +#include +#include "fuzzer.h" + +int FuzzerInitialize(int *argc, char ***argv) { + return 1; +} + +int FuzzerTestOneInput(const uint8_t *buf, size_t len) { + CMS_ContentInfo *i; + 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); + BIO_free(in); + return 0; +}