diff options
Diffstat (limited to 'fuzz')
| -rw-r--r-- | fuzz/asn1.c | 156 | ||||
| -rw-r--r-- | fuzz/bignum.c | 3 | ||||
| -rw-r--r-- | fuzz/bndiv.c | 14 | ||||
| -rw-r--r-- | fuzz/client.c | 11 | ||||
| -rw-r--r-- | fuzz/cmp.c | 68 | ||||
| -rw-r--r-- | fuzz/driver.c | 2 | ||||
| -rw-r--r-- | fuzz/fuzz_rand.c | 36 | ||||
| -rw-r--r-- | fuzz/oids.txt | 2 | ||||
| -rw-r--r-- | fuzz/server.c | 2157 | ||||
| -rw-r--r-- | fuzz/test-corpus.c | 13 | ||||
| -rw-r--r-- | fuzz/x509.c | 5 |
11 files changed, 2137 insertions, 330 deletions
diff --git a/fuzz/asn1.c b/fuzz/asn1.c index f7a019774b9d..c10c245a99eb 100644 --- a/fuzz/asn1.c +++ b/fuzz/asn1.c @@ -209,88 +209,87 @@ static ASN1_ITEM_EXP *item_type[] = { static ASN1_PCTX *pctx; -#define DO_TEST(TYPE, D2I, I2D, PRINT) { \ - const unsigned char *p = buf; \ - unsigned char *der = NULL; \ - TYPE *type = D2I(NULL, &p, len); \ - \ - if (type != NULL) { \ - int len2; \ - BIO *bio = BIO_new(BIO_s_null()); \ - \ - if (bio != NULL) { \ - PRINT(bio, type); \ - BIO_free(bio); \ - } \ - len2 = I2D(type, &der); \ - if (len2 != 0) {} \ - OPENSSL_free(der); \ - TYPE ## _free(type); \ - } \ -} - -#define DO_TEST_PRINT_OFFSET(TYPE, D2I, I2D, PRINT) { \ - const unsigned char *p = buf; \ - unsigned char *der = NULL; \ - TYPE *type = D2I(NULL, &p, len); \ - \ - if (type != NULL) { \ - BIO *bio = BIO_new(BIO_s_null()); \ - \ - if (bio != NULL) { \ - PRINT(bio, type, 0); \ - BIO_free(bio); \ - } \ - I2D(type, &der); \ - OPENSSL_free(der); \ - TYPE ## _free(type); \ - } \ -} - -#define DO_TEST_PRINT_PCTX(TYPE, D2I, I2D, PRINT) { \ - const unsigned char *p = buf; \ - unsigned char *der = NULL; \ - TYPE *type = D2I(NULL, &p, len); \ - \ - if (type != NULL) { \ - BIO *bio = BIO_new(BIO_s_null()); \ - \ - if (bio != NULL) { \ - PRINT(bio, type, 0, pctx); \ - BIO_free(bio); \ - } \ - I2D(type, &der); \ - OPENSSL_free(der); \ - TYPE ## _free(type); \ - } \ -} +#define DO_TEST(TYPE, D2I, I2D, PRINT) \ + { \ + const unsigned char *p = buf; \ + unsigned char *der = NULL; \ + TYPE *type = D2I(NULL, &p, len); \ + \ + if (type != NULL) { \ + int len2; \ + BIO *bio = BIO_new(BIO_s_null()); \ + \ + if (bio != NULL) { \ + PRINT(bio, type); \ + BIO_free(bio); \ + } \ + len2 = I2D(type, &der); \ + if (len2 != 0) { } \ + OPENSSL_free(der); \ + TYPE##_free(type); \ + } \ + } +#define DO_TEST_PRINT_OFFSET(TYPE, D2I, I2D, PRINT) \ + { \ + const unsigned char *p = buf; \ + unsigned char *der = NULL; \ + TYPE *type = D2I(NULL, &p, len); \ + \ + if (type != NULL) { \ + BIO *bio = BIO_new(BIO_s_null()); \ + \ + if (bio != NULL) { \ + PRINT(bio, type, 0); \ + BIO_free(bio); \ + } \ + I2D(type, &der); \ + OPENSSL_free(der); \ + TYPE##_free(type); \ + } \ + } -#define DO_TEST_NO_PRINT(TYPE, D2I, I2D) { \ - const unsigned char *p = buf; \ - unsigned char *der = NULL; \ - TYPE *type = D2I(NULL, &p, len); \ - \ - if (type != NULL) { \ - BIO *bio = BIO_new(BIO_s_null()); \ - \ - BIO_free(bio); \ - I2D(type, &der); \ - OPENSSL_free(der); \ - TYPE ## _free(type); \ - } \ -} +#define DO_TEST_PRINT_PCTX(TYPE, D2I, I2D, PRINT) \ + { \ + const unsigned char *p = buf; \ + unsigned char *der = NULL; \ + TYPE *type = D2I(NULL, &p, len); \ + \ + if (type != NULL) { \ + BIO *bio = BIO_new(BIO_s_null()); \ + \ + if (bio != NULL) { \ + PRINT(bio, type, 0, pctx); \ + BIO_free(bio); \ + } \ + I2D(type, &der); \ + OPENSSL_free(der); \ + TYPE##_free(type); \ + } \ + } +#define DO_TEST_NO_PRINT(TYPE, D2I, I2D) \ + { \ + const unsigned char *p = buf; \ + unsigned char *der = NULL; \ + TYPE *type = D2I(NULL, &p, len); \ + \ + if (type != NULL) { \ + BIO *bio = BIO_new(BIO_s_null()); \ + \ + BIO_free(bio); \ + I2D(type, &der); \ + OPENSSL_free(der); \ + TYPE##_free(type); \ + } \ + } int FuzzerInitialize(int *argc, char ***argv) { FuzzerSetRand(); pctx = ASN1_PCTX_new(); - ASN1_PCTX_set_flags(pctx, ASN1_PCTX_FLAGS_SHOW_ABSENT | - ASN1_PCTX_FLAGS_SHOW_SEQUENCE | ASN1_PCTX_FLAGS_SHOW_SSOF | - ASN1_PCTX_FLAGS_SHOW_TYPE | ASN1_PCTX_FLAGS_SHOW_FIELD_STRUCT_NAME); - ASN1_PCTX_set_str_flags(pctx, ASN1_STRFLGS_UTF8_CONVERT | - ASN1_STRFLGS_SHOW_TYPE | ASN1_STRFLGS_DUMP_ALL); + ASN1_PCTX_set_flags(pctx, ASN1_PCTX_FLAGS_SHOW_ABSENT | ASN1_PCTX_FLAGS_SHOW_SEQUENCE | ASN1_PCTX_FLAGS_SHOW_SSOF | ASN1_PCTX_FLAGS_SHOW_TYPE | ASN1_PCTX_FLAGS_SHOW_FIELD_STRUCT_NAME); + ASN1_PCTX_set_str_flags(pctx, ASN1_STRFLGS_UTF8_CONVERT | ASN1_STRFLGS_SHOW_TYPE | ASN1_STRFLGS_DUMP_ALL); OPENSSL_init_crypto(OPENSSL_INIT_LOAD_CRYPTO_STRINGS, NULL); OPENSSL_init_ssl(OPENSSL_INIT_LOAD_SSL_STRINGS, NULL); @@ -304,7 +303,6 @@ int FuzzerTestOneInput(const uint8_t *buf, size_t len) { int n; - for (n = 0; item_type[n] != NULL; ++n) { const uint8_t *b = buf; unsigned char *der = NULL; @@ -349,22 +347,22 @@ int FuzzerTestOneInput(const uint8_t *buf, size_t len) #endif #ifndef OPENSSL_NO_DSA DO_TEST_NO_PRINT(DSA_SIG, d2i_DSA_SIG, i2d_DSA_SIG); -# ifndef OPENSSL_NO_DEPRECATED_3_0 +#ifndef OPENSSL_NO_DEPRECATED_3_0 DO_TEST_NO_PRINT(DSA, d2i_DSAPrivateKey, i2d_DSAPrivateKey); DO_TEST_NO_PRINT(DSA, d2i_DSAPublicKey, i2d_DSAPublicKey); DO_TEST_NO_PRINT(DSA, d2i_DSAparams, i2d_DSAparams); -# endif +#endif #endif #ifndef OPENSSL_NO_DEPRECATED_3_0 DO_TEST_NO_PRINT(RSA, d2i_RSAPublicKey, i2d_RSAPublicKey); #endif #ifndef OPENSSL_NO_EC -# ifndef OPENSSL_NO_DEPRECATED_3_0 +#ifndef OPENSSL_NO_DEPRECATED_3_0 DO_TEST_PRINT_OFFSET(EC_GROUP, d2i_ECPKParameters, i2d_ECPKParameters, ECPKParameters_print); DO_TEST_PRINT_OFFSET(EC_KEY, d2i_ECPrivateKey, i2d_ECPrivateKey, EC_KEY_print); DO_TEST(EC_KEY, d2i_ECParameters, i2d_ECParameters, ECParameters_print); DO_TEST_NO_PRINT(ECDSA_SIG, d2i_ECDSA_SIG, i2d_ECDSA_SIG); -# endif +#endif #endif DO_TEST_PRINT_PCTX(EVP_PKEY, d2i_AutoPrivateKey, i2d_PrivateKey, EVP_PKEY_print_private); DO_TEST(SSL_SESSION, d2i_SSL_SESSION, i2d_SSL_SESSION, SSL_SESSION_print); diff --git a/fuzz/bignum.c b/fuzz/bignum.c index 08da6fb197f5..66b41faf108a 100644 --- a/fuzz/bignum.c +++ b/fuzz/bignum.c @@ -18,7 +18,6 @@ #include <openssl/err.h> #include "fuzzer.h" - int FuzzerInitialize(int *argc, char ***argv) { OPENSSL_init_crypto(OPENSSL_INIT_LOAD_CRYPTO_STRINGS, NULL); @@ -92,7 +91,7 @@ int FuzzerTestOneInput(const uint8_t *buf, size_t len) putchar('\n'); } - done: +done: OPENSSL_assert(success); BN_free(b1); BN_free(b2); diff --git a/fuzz/bndiv.c b/fuzz/bndiv.c index d9467b5e8b41..7b48ac3dd955 100644 --- a/fuzz/bndiv.c +++ b/fuzz/bndiv.c @@ -87,7 +87,7 @@ int FuzzerTestOneInput(const uint8_t *buf, size_t len) success = (BN_is_negative(b3) != BN_is_negative(b2) || BN_is_zero(b3)) && (BN_is_negative(b4) || BN_is_zero(b4)); else - success = (BN_is_negative(b3) == BN_is_negative(b2) || BN_is_zero(b3)) + success = (BN_is_negative(b3) == BN_is_negative(b2) || BN_is_zero(b3)) && (!BN_is_negative(b4) || BN_is_zero(b4)); OPENSSL_assert(BN_mul(b5, b3, b2, ctx)); OPENSSL_assert(BN_add(b5, b5, b4)); @@ -105,15 +105,15 @@ int FuzzerTestOneInput(const uint8_t *buf, size_t len) BN_print_fp(stdout, b5); putchar('\n'); printf("%d %d %d %d %d %d %d\n", BN_is_negative(b1), - BN_is_negative(b2), - BN_is_negative(b3), BN_is_negative(b4), BN_is_zero(b4), - BN_is_negative(b3) != BN_is_negative(b2) - && (BN_is_negative(b4) || BN_is_zero(b4)), - BN_cmp(b5, b1)); + BN_is_negative(b2), + BN_is_negative(b3), BN_is_negative(b4), BN_is_zero(b4), + BN_is_negative(b3) != BN_is_negative(b2) + && (BN_is_negative(b4) || BN_is_zero(b4)), + BN_cmp(b5, b1)); puts("----\n"); } - done: +done: OPENSSL_assert(success); ERR_clear_error(); diff --git a/fuzz/client.c b/fuzz/client.c index 1754add50967..d5125af994ad 100644 --- a/fuzz/client.c +++ b/fuzz/client.c @@ -23,7 +23,12 @@ static int idx; #define FUZZTIME 1485898104 -#define TIME_IMPL(t) { if (t != NULL) *t = FUZZTIME; return FUZZTIME; } +#define TIME_IMPL(t) \ + { \ + if (t != NULL) \ + *t = FUZZTIME; \ + return FUZZTIME; \ + } /* * This might not work in all cases (and definitely not on Windows @@ -36,7 +41,7 @@ static int idx; time_t time(time_t *t) TIME_IMPL(t) #endif -int FuzzerInitialize(int *argc, char ***argv) + int FuzzerInitialize(int *argc, char ***argv) { STACK_OF(SSL_COMP) *comp_methods; @@ -94,7 +99,7 @@ int FuzzerTestOneInput(const uint8_t *buf, size_t len) } } } - end: +end: SSL_free(client); ERR_clear_error(); SSL_CTX_free(ctx); diff --git a/fuzz/cmp.c b/fuzz/cmp.c index 490c4211f8e2..22091d5abbaf 100644 --- a/fuzz/cmp.c +++ b/fuzz/cmp.c @@ -33,17 +33,17 @@ static OSSL_CMP_MSG *transfer_cb(OSSL_CMP_CTX *ctx, const OSSL_CMP_MSG *req) if (num_responses++ > 2) return NULL; /* prevent loops due to repeated pollRep */ return OSSL_CMP_MSG_dup((OSSL_CMP_MSG *) - OSSL_CMP_CTX_get_transfer_cb_arg(ctx)); + OSSL_CMP_CTX_get_transfer_cb_arg(ctx)); } static int print_noop(const char *func, const char *file, int line, - OSSL_CMP_severity level, const char *msg) + OSSL_CMP_severity level, const char *msg) { return 1; } static int allow_unprotected(const OSSL_CMP_CTX *ctx, const OSSL_CMP_MSG *rep, - int invalid_protection, int expected_type) + int invalid_protection, int expected_type) { return 1; } @@ -58,10 +58,10 @@ static void cmp_client_process_response(OSSL_CMP_CTX *ctx, OSSL_CMP_MSG *msg) ctx->popoMethod = OSSL_CRMF_POPO_NONE; /* satisfy ossl_cmp_certReq_new() */ ctx->oldCert = X509_new(); /* satisfy crm_new() and ossl_cmp_rr_new() */ if (!OSSL_CMP_CTX_set1_secretValue(ctx, (unsigned char *)"", - 0) /* prevent too unspecific error */ - || ctx->oldCert == NULL - || name == NULL || !X509_set_issuer_name(ctx->oldCert, name) - || serial == NULL || !X509_set_serialNumber(ctx->oldCert, serial)) + 0) /* prevent too unspecific error */ + || ctx->oldCert == NULL + || name == NULL || !X509_set_issuer_name(ctx->oldCert, name) + || serial == NULL || !X509_set_serialNumber(ctx->oldCert, serial)) goto err; (void)OSSL_CMP_CTX_set_transfer_cb(ctx, transfer_cb); @@ -88,68 +88,68 @@ static void cmp_client_process_response(OSSL_CMP_CTX *ctx, OSSL_CMP_MSG *msg) break; case OSSL_CMP_PKIBODY_GENP: sk_OSSL_CMP_ITAV_pop_free(OSSL_CMP_exec_GENM_ses(ctx), - OSSL_CMP_ITAV_free); + OSSL_CMP_ITAV_free); break; default: (void)ossl_cmp_msg_check_update(ctx, msg, allow_unprotected, 0); break; } - err: +err: X509_NAME_free(name); ASN1_INTEGER_free(serial); } static OSSL_CMP_PKISI *process_cert_request(OSSL_CMP_SRV_CTX *srv_ctx, - const OSSL_CMP_MSG *cert_req, - int certReqId, - const OSSL_CRMF_MSG *crm, - const X509_REQ *p10cr, - X509 **certOut, - STACK_OF(X509) **chainOut, - STACK_OF(X509) **caPubs) + const OSSL_CMP_MSG *cert_req, + int certReqId, + const OSSL_CRMF_MSG *crm, + const X509_REQ *p10cr, + X509 **certOut, + STACK_OF(X509) **chainOut, + STACK_OF(X509) **caPubs) { ERR_raise(ERR_LIB_CMP, CMP_R_ERROR_PROCESSING_MESSAGE); return NULL; } static OSSL_CMP_PKISI *process_rr(OSSL_CMP_SRV_CTX *srv_ctx, - const OSSL_CMP_MSG *rr, - const X509_NAME *issuer, - const ASN1_INTEGER *serial) + const OSSL_CMP_MSG *rr, + const X509_NAME *issuer, + const ASN1_INTEGER *serial) { ERR_raise(ERR_LIB_CMP, CMP_R_ERROR_PROCESSING_MESSAGE); return NULL; } static int process_genm(OSSL_CMP_SRV_CTX *srv_ctx, - const OSSL_CMP_MSG *genm, - const STACK_OF(OSSL_CMP_ITAV) *in, - STACK_OF(OSSL_CMP_ITAV) **out) + const OSSL_CMP_MSG *genm, + const STACK_OF(OSSL_CMP_ITAV) *in, + STACK_OF(OSSL_CMP_ITAV) **out) { ERR_raise(ERR_LIB_CMP, CMP_R_ERROR_PROCESSING_MESSAGE); return 0; } static void process_error(OSSL_CMP_SRV_CTX *srv_ctx, const OSSL_CMP_MSG *error, - const OSSL_CMP_PKISI *statusInfo, - const ASN1_INTEGER *errorCode, - const OSSL_CMP_PKIFREETEXT *errorDetails) + const OSSL_CMP_PKISI *statusInfo, + const ASN1_INTEGER *errorCode, + const OSSL_CMP_PKIFREETEXT *errorDetails) { ERR_raise(ERR_LIB_CMP, CMP_R_ERROR_PROCESSING_MESSAGE); } static int process_certConf(OSSL_CMP_SRV_CTX *srv_ctx, - const OSSL_CMP_MSG *certConf, int certReqId, - const ASN1_OCTET_STRING *certHash, - const OSSL_CMP_PKISI *si) + const OSSL_CMP_MSG *certConf, int certReqId, + const ASN1_OCTET_STRING *certHash, + const OSSL_CMP_PKISI *si) { ERR_raise(ERR_LIB_CMP, CMP_R_ERROR_PROCESSING_MESSAGE); return 0; } static int process_pollReq(OSSL_CMP_SRV_CTX *srv_ctx, - const OSSL_CMP_MSG *pollReq, int certReqId, - OSSL_CMP_MSG **certReq, int64_t *check_after) + const OSSL_CMP_MSG *pollReq, int certReqId, + OSSL_CMP_MSG **certReq, int64_t *check_after) { ERR_raise(ERR_LIB_CMP, CMP_R_ERROR_PROCESSING_MESSAGE); return 0; @@ -173,17 +173,17 @@ int FuzzerTestOneInput(const uint8_t *buf, size_t len) i2d_OSSL_CMP_MSG_bio(out, msg); ASN1_item_print(out, (ASN1_VALUE *)msg, 4, - ASN1_ITEM_rptr(OSSL_CMP_MSG), NULL); + ASN1_ITEM_rptr(OSSL_CMP_MSG), NULL); BIO_free(out); if (client_ctx != NULL) cmp_client_process_response(client_ctx, msg); if (srv_ctx != NULL && OSSL_CMP_CTX_set_log_cb(OSSL_CMP_SRV_CTX_get0_cmp_ctx(srv_ctx), - print_noop) + print_noop) && OSSL_CMP_SRV_CTX_init(srv_ctx, NULL, process_cert_request, - process_rr, process_genm, process_error, - process_certConf, process_pollReq)) + process_rr, process_genm, process_error, + process_certConf, process_pollReq)) OSSL_CMP_MSG_free(OSSL_CMP_SRV_process_request(srv_ctx, msg)); OSSL_CMP_CTX_free(client_ctx); diff --git a/fuzz/driver.c b/fuzz/driver.c index 337b8de5eb51..96c93e559ede 100644 --- a/fuzz/driver.c +++ b/fuzz/driver.c @@ -32,7 +32,7 @@ int LLVMFuzzerTestOneInput(const uint8_t *buf, size_t len) #define BUF_SIZE 65536 -int main(int argc, char** argv) +int main(int argc, char **argv) { FuzzerInitialize(&argc, &argv); diff --git a/fuzz/fuzz_rand.c b/fuzz/fuzz_rand.c index 6d160b092110..2a3d9c7a2796 100644 --- a/fuzz/fuzz_rand.c +++ b/fuzz/fuzz_rand.c @@ -23,7 +23,7 @@ static OSSL_FUNC_rand_get_ctx_params_fn fuzz_rand_get_ctx_params; static OSSL_FUNC_rand_enable_locking_fn fuzz_rand_enable_locking; static void *fuzz_rand_newctx( - void *provctx, void *parent, const OSSL_DISPATCH *parent_dispatch) + void *provctx, void *parent, const OSSL_DISPATCH *parent_dispatch) { int *st = OPENSSL_malloc(sizeof(*st)); @@ -38,11 +38,11 @@ static void fuzz_rand_freectx(ossl_unused void *vrng) } static int fuzz_rand_instantiate(ossl_unused void *vrng, - ossl_unused unsigned int strength, - ossl_unused int prediction_resistance, - ossl_unused const unsigned char *pstr, - ossl_unused size_t pstr_len, - ossl_unused const OSSL_PARAM params[]) + ossl_unused unsigned int strength, + ossl_unused int prediction_resistance, + ossl_unused const unsigned char *pstr, + ossl_unused size_t pstr_len, + ossl_unused const OSSL_PARAM params[]) { *(int *)vrng = EVP_RAND_STATE_READY; return 1; @@ -55,11 +55,11 @@ static int fuzz_rand_uninstantiate(ossl_unused void *vrng) } static int fuzz_rand_generate(ossl_unused void *vdrbg, - unsigned char *out, size_t outlen, - ossl_unused unsigned int strength, - ossl_unused int prediction_resistance, - ossl_unused const unsigned char *adin, - ossl_unused size_t adinlen) + unsigned char *out, size_t outlen, + ossl_unused unsigned int strength, + ossl_unused int prediction_resistance, + ossl_unused const unsigned char *adin, + ossl_unused size_t adinlen) { unsigned char val = 1; size_t i; @@ -93,7 +93,7 @@ static int fuzz_rand_get_ctx_params(void *vrng, OSSL_PARAM params[]) } static const OSSL_PARAM *fuzz_rand_gettable_ctx_params(ossl_unused void *vrng, - ossl_unused void *provctx) + ossl_unused void *provctx) { static const OSSL_PARAM known_gettable_ctx_params[] = { OSSL_PARAM_int(OSSL_RAND_PARAM_STATE, NULL), @@ -112,8 +112,8 @@ static const OSSL_DISPATCH fuzz_rand_functions[] = { { OSSL_FUNC_RAND_GENERATE, (void (*)(void))fuzz_rand_generate }, { OSSL_FUNC_RAND_ENABLE_LOCKING, (void (*)(void))fuzz_rand_enable_locking }, { OSSL_FUNC_RAND_GETTABLE_CTX_PARAMS, - (void(*)(void))fuzz_rand_gettable_ctx_params }, - { OSSL_FUNC_RAND_GET_CTX_PARAMS, (void(*)(void))fuzz_rand_get_ctx_params }, + (void (*)(void))fuzz_rand_gettable_ctx_params }, + { OSSL_FUNC_RAND_GET_CTX_PARAMS, (void (*)(void))fuzz_rand_get_ctx_params }, { 0, NULL } }; @@ -123,8 +123,8 @@ static const OSSL_ALGORITHM fuzz_rand_rand[] = { }; static const OSSL_ALGORITHM *fuzz_rand_query(void *provctx, - int operation_id, - int *no_cache) + int operation_id, + int *no_cache) { *no_cache = 0; switch (operation_id) { @@ -142,8 +142,8 @@ static const OSSL_DISPATCH fuzz_rand_method[] = { }; static int fuzz_rand_provider_init(const OSSL_CORE_HANDLE *handle, - const OSSL_DISPATCH *in, - const OSSL_DISPATCH **out, void **provctx) + const OSSL_DISPATCH *in, + const OSSL_DISPATCH **out, void **provctx) { *provctx = OSSL_LIB_CTX_new(); if (*provctx == NULL) diff --git a/fuzz/oids.txt b/fuzz/oids.txt index 36c79212bb75..efbe868c8bd0 100644 --- a/fuzz/oids.txt +++ b/fuzz/oids.txt @@ -1,7 +1,7 @@ # WARNING: do not edit! # Generated by fuzz/mkfuzzoids.pl # -# Copyright 2020-2022 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 2020-2025 The OpenSSL Project Authors. All Rights Reserved. # # Licensed under the Apache License 2.0 (the "License"). You may not use # this file except in compliance with the License. You can obtain a copy diff --git a/fuzz/server.c b/fuzz/server.c index e481e5621ce3..a15ce803f3b3 100644 --- a/fuzz/server.c +++ b/fuzz/server.c @@ -26,180 +26,1979 @@ #include "fuzzer.h" static const uint8_t kCertificateDER[] = { - 0x30, 0x82, 0x02, 0xff, 0x30, 0x82, 0x01, 0xe7, 0xa0, 0x03, 0x02, 0x01, - 0x02, 0x02, 0x11, 0x00, 0xb1, 0x84, 0xee, 0x34, 0x99, 0x98, 0x76, 0xfb, - 0x6f, 0xb2, 0x15, 0xc8, 0x47, 0x79, 0x05, 0x9b, 0x30, 0x0d, 0x06, 0x09, - 0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x0b, 0x05, 0x00, 0x30, - 0x12, 0x31, 0x10, 0x30, 0x0e, 0x06, 0x03, 0x55, 0x04, 0x0a, 0x13, 0x07, - 0x41, 0x63, 0x6d, 0x65, 0x20, 0x43, 0x6f, 0x30, 0x1e, 0x17, 0x0d, 0x31, - 0x35, 0x31, 0x31, 0x30, 0x37, 0x30, 0x30, 0x32, 0x34, 0x35, 0x36, 0x5a, - 0x17, 0x0d, 0x31, 0x36, 0x31, 0x31, 0x30, 0x36, 0x30, 0x30, 0x32, 0x34, - 0x35, 0x36, 0x5a, 0x30, 0x12, 0x31, 0x10, 0x30, 0x0e, 0x06, 0x03, 0x55, - 0x04, 0x0a, 0x13, 0x07, 0x41, 0x63, 0x6d, 0x65, 0x20, 0x43, 0x6f, 0x30, - 0x82, 0x01, 0x22, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, - 0x0d, 0x01, 0x01, 0x01, 0x05, 0x00, 0x03, 0x82, 0x01, 0x0f, 0x00, 0x30, - 0x82, 0x01, 0x0a, 0x02, 0x82, 0x01, 0x01, 0x00, 0xce, 0x47, 0xcb, 0x11, - 0xbb, 0xd2, 0x9d, 0x8e, 0x9e, 0xd2, 0x1e, 0x14, 0xaf, 0xc7, 0xea, 0xb6, - 0xc9, 0x38, 0x2a, 0x6f, 0xb3, 0x7e, 0xfb, 0xbc, 0xfc, 0x59, 0x42, 0xb9, - 0x56, 0xf0, 0x4c, 0x3f, 0xf7, 0x31, 0x84, 0xbe, 0xac, 0x03, 0x9e, 0x71, - 0x91, 0x85, 0xd8, 0x32, 0xbd, 0x00, 0xea, 0xac, 0x65, 0xf6, 0x03, 0xc8, - 0x0f, 0x8b, 0xfd, 0x6e, 0x58, 0x88, 0x04, 0x41, 0x92, 0x74, 0xa6, 0x57, - 0x2e, 0x8e, 0x88, 0xd5, 0x3d, 0xda, 0x14, 0x3e, 0x63, 0x88, 0x22, 0xe3, - 0x53, 0xe9, 0xba, 0x39, 0x09, 0xac, 0xfb, 0xd0, 0x4c, 0xf2, 0x3c, 0x20, - 0xd6, 0x97, 0xe6, 0xed, 0xf1, 0x62, 0x1e, 0xe5, 0xc9, 0x48, 0xa0, 0xca, - 0x2e, 0x3c, 0x14, 0x5a, 0x82, 0xd4, 0xed, 0xb1, 0xe3, 0x43, 0xc1, 0x2a, - 0x59, 0xa5, 0xb9, 0xc8, 0x48, 0xa7, 0x39, 0x23, 0x74, 0xa7, 0x37, 0xb0, - 0x6f, 0xc3, 0x64, 0x99, 0x6c, 0xa2, 0x82, 0xc8, 0xf6, 0xdb, 0x86, 0x40, - 0xce, 0xd1, 0x85, 0x9f, 0xce, 0x69, 0xf4, 0x15, 0x2a, 0x23, 0xca, 0xea, - 0xb7, 0x7b, 0xdf, 0xfb, 0x43, 0x5f, 0xff, 0x7a, 0x49, 0x49, 0x0e, 0xe7, - 0x02, 0x51, 0x45, 0x13, 0xe8, 0x90, 0x64, 0x21, 0x0c, 0x26, 0x2b, 0x5d, - 0xfc, 0xe4, 0xb5, 0x86, 0x89, 0x43, 0x22, 0x4c, 0xf3, 0x3b, 0xf3, 0x09, - 0xc4, 0xa4, 0x10, 0x80, 0xf2, 0x46, 0xe2, 0x46, 0x8f, 0x76, 0x50, 0xbf, - 0xaf, 0x2b, 0x90, 0x1b, 0x78, 0xc7, 0xcf, 0xc1, 0x77, 0xd0, 0xfb, 0xa9, - 0xfb, 0xc9, 0x66, 0x5a, 0xc5, 0x9b, 0x31, 0x41, 0x67, 0x01, 0xbe, 0x33, - 0x10, 0xba, 0x05, 0x58, 0xed, 0x76, 0x53, 0xde, 0x5d, 0xc1, 0xe8, 0xbb, - 0x9f, 0xf1, 0xcd, 0xfb, 0xdf, 0x64, 0x7f, 0xd7, 0x18, 0xab, 0x0f, 0x94, - 0x28, 0x95, 0x4a, 0xcc, 0x6a, 0xa9, 0x50, 0xc7, 0x05, 0x47, 0x10, 0x41, - 0x02, 0x03, 0x01, 0x00, 0x01, 0xa3, 0x50, 0x30, 0x4e, 0x30, 0x0e, 0x06, - 0x03, 0x55, 0x1d, 0x0f, 0x01, 0x01, 0xff, 0x04, 0x04, 0x03, 0x02, 0x05, - 0xa0, 0x30, 0x13, 0x06, 0x03, 0x55, 0x1d, 0x25, 0x04, 0x0c, 0x30, 0x0a, - 0x06, 0x08, 0x2b, 0x06, 0x01, 0x05, 0x05, 0x07, 0x03, 0x01, 0x30, 0x0c, - 0x06, 0x03, 0x55, 0x1d, 0x13, 0x01, 0x01, 0xff, 0x04, 0x02, 0x30, 0x00, - 0x30, 0x19, 0x06, 0x03, 0x55, 0x1d, 0x11, 0x04, 0x12, 0x30, 0x10, 0x82, - 0x0e, 0x66, 0x75, 0x7a, 0x7a, 0x2e, 0x62, 0x6f, 0x72, 0x69, 0x6e, 0x67, - 0x73, 0x73, 0x6c, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86, 0x48, 0x86, 0xf7, - 0x0d, 0x01, 0x01, 0x0b, 0x05, 0x00, 0x03, 0x82, 0x01, 0x01, 0x00, 0x92, - 0xde, 0xef, 0x96, 0x06, 0x7b, 0xff, 0x71, 0x7d, 0x4e, 0xa0, 0x7d, 0xae, - 0xb8, 0x22, 0xb4, 0x2c, 0xf7, 0x96, 0x9c, 0x37, 0x1d, 0x8f, 0xe7, 0xd9, - 0x47, 0xff, 0x3f, 0xe9, 0x35, 0x95, 0x0e, 0xdd, 0xdc, 0x7f, 0xc8, 0x8a, - 0x1e, 0x36, 0x1d, 0x38, 0x47, 0xfc, 0x76, 0xd2, 0x1f, 0x98, 0xa1, 0x36, - 0xac, 0xc8, 0x70, 0x38, 0x0a, 0x3d, 0x51, 0x8d, 0x0f, 0x03, 0x1b, 0xef, - 0x62, 0xa1, 0xcb, 0x2b, 0x4a, 0x8c, 0x12, 0x2b, 0x54, 0x50, 0x9a, 0x6b, - 0xfe, 0xaf, 0xd9, 0xf6, 0xbf, 0x58, 0x11, 0x58, 0x5e, 0xe5, 0x86, 0x1e, - 0x3b, 0x6b, 0x30, 0x7e, 0x72, 0x89, 0xe8, 0x6b, 0x7b, 0xb7, 0xaf, 0xef, - 0x8b, 0xa9, 0x3e, 0xb0, 0xcd, 0x0b, 0xef, 0xb0, 0x0c, 0x96, 0x2b, 0xc5, - 0x3b, 0xd5, 0xf1, 0xc2, 0xae, 0x3a, 0x60, 0xd9, 0x0f, 0x75, 0x37, 0x55, - 0x4d, 0x62, 0xd2, 0xed, 0x96, 0xac, 0x30, 0x6b, 0xda, 0xa1, 0x48, 0x17, - 0x96, 0x23, 0x85, 0x9a, 0x57, 0x77, 0xe9, 0x22, 0xa2, 0x37, 0x03, 0xba, - 0x49, 0x77, 0x40, 0x3b, 0x76, 0x4b, 0xda, 0xc1, 0x04, 0x57, 0x55, 0x34, - 0x22, 0x83, 0x45, 0x29, 0xab, 0x2e, 0x11, 0xff, 0x0d, 0xab, 0x55, 0xb1, - 0xa7, 0x58, 0x59, 0x05, 0x25, 0xf9, 0x1e, 0x3d, 0xb7, 0xac, 0x04, 0x39, - 0x2c, 0xf9, 0xaf, 0xb8, 0x68, 0xfb, 0x8e, 0x35, 0x71, 0x32, 0xff, 0x70, - 0xe9, 0x46, 0x6d, 0x5c, 0x06, 0x90, 0x88, 0x23, 0x48, 0x0c, 0x50, 0xeb, - 0x0a, 0xa9, 0xae, 0xe8, 0xfc, 0xbe, 0xa5, 0x76, 0x94, 0xd7, 0x64, 0x22, - 0x38, 0x98, 0x17, 0xa4, 0x3a, 0xa7, 0x59, 0x9f, 0x1d, 0x3b, 0x75, 0x90, - 0x1a, 0x81, 0xef, 0x19, 0xfb, 0x2b, 0xb7, 0xa7, 0x64, 0x61, 0x22, 0xa4, - 0x6f, 0x7b, 0xfa, 0x58, 0xbb, 0x8c, 0x4e, 0x77, 0x67, 0xd0, 0x5d, 0x58, - 0x76, 0x8a, 0xbb, + 0x30, + 0x82, + 0x02, + 0xff, + 0x30, + 0x82, + 0x01, + 0xe7, + 0xa0, + 0x03, + 0x02, + 0x01, + 0x02, + 0x02, + 0x11, + 0x00, + 0xb1, + 0x84, + 0xee, + 0x34, + 0x99, + 0x98, + 0x76, + 0xfb, + 0x6f, + 0xb2, + 0x15, + 0xc8, + 0x47, + 0x79, + 0x05, + 0x9b, + 0x30, + 0x0d, + 0x06, + 0x09, + 0x2a, + 0x86, + 0x48, + 0x86, + 0xf7, + 0x0d, + 0x01, + 0x01, + 0x0b, + 0x05, + 0x00, + 0x30, + 0x12, + 0x31, + 0x10, + 0x30, + 0x0e, + 0x06, + 0x03, + 0x55, + 0x04, + 0x0a, + 0x13, + 0x07, + 0x41, + 0x63, + 0x6d, + 0x65, + 0x20, + 0x43, + 0x6f, + 0x30, + 0x1e, + 0x17, + 0x0d, + 0x31, + 0x35, + 0x31, + 0x31, + 0x30, + 0x37, + 0x30, + 0x30, + 0x32, + 0x34, + 0x35, + 0x36, + 0x5a, + 0x17, + 0x0d, + 0x31, + 0x36, + 0x31, + 0x31, + 0x30, + 0x36, + 0x30, + 0x30, + 0x32, + 0x34, + 0x35, + 0x36, + 0x5a, + 0x30, + 0x12, + 0x31, + 0x10, + 0x30, + 0x0e, + 0x06, + 0x03, + 0x55, + 0x04, + 0x0a, + 0x13, + 0x07, + 0x41, + 0x63, + 0x6d, + 0x65, + 0x20, + 0x43, + 0x6f, + 0x30, + 0x82, + 0x01, + 0x22, + 0x30, + 0x0d, + 0x06, + 0x09, + 0x2a, + 0x86, + 0x48, + 0x86, + 0xf7, + 0x0d, + 0x01, + 0x01, + 0x01, + 0x05, + 0x00, + 0x03, + 0x82, + 0x01, + 0x0f, + 0x00, + 0x30, + 0x82, + 0x01, + 0x0a, + 0x02, + 0x82, + 0x01, + 0x01, + 0x00, + 0xce, + 0x47, + 0xcb, + 0x11, + 0xbb, + 0xd2, + 0x9d, + 0x8e, + 0x9e, + 0xd2, + 0x1e, + 0x14, + 0xaf, + 0xc7, + 0xea, + 0xb6, + 0xc9, + 0x38, + 0x2a, + 0x6f, + 0xb3, + 0x7e, + 0xfb, + 0xbc, + 0xfc, + 0x59, + 0x42, + 0xb9, + 0x56, + 0xf0, + 0x4c, + 0x3f, + 0xf7, + 0x31, + 0x84, + 0xbe, + 0xac, + 0x03, + 0x9e, + 0x71, + 0x91, + 0x85, + 0xd8, + 0x32, + 0xbd, + 0x00, + 0xea, + 0xac, + 0x65, + 0xf6, + 0x03, + 0xc8, + 0x0f, + 0x8b, + 0xfd, + 0x6e, + 0x58, + 0x88, + 0x04, + 0x41, + 0x92, + 0x74, + 0xa6, + 0x57, + 0x2e, + 0x8e, + 0x88, + 0xd5, + 0x3d, + 0xda, + 0x14, + 0x3e, + 0x63, + 0x88, + 0x22, + 0xe3, + 0x53, + 0xe9, + 0xba, + 0x39, + 0x09, + 0xac, + 0xfb, + 0xd0, + 0x4c, + 0xf2, + 0x3c, + 0x20, + 0xd6, + 0x97, + 0xe6, + 0xed, + 0xf1, + 0x62, + 0x1e, + 0xe5, + 0xc9, + 0x48, + 0xa0, + 0xca, + 0x2e, + 0x3c, + 0x14, + 0x5a, + 0x82, + 0xd4, + 0xed, + 0xb1, + 0xe3, + 0x43, + 0xc1, + 0x2a, + 0x59, + 0xa5, + 0xb9, + 0xc8, + 0x48, + 0xa7, + 0x39, + 0x23, + 0x74, + 0xa7, + 0x37, + 0xb0, + 0x6f, + 0xc3, + 0x64, + 0x99, + 0x6c, + 0xa2, + 0x82, + 0xc8, + 0xf6, + 0xdb, + 0x86, + 0x40, + 0xce, + 0xd1, + 0x85, + 0x9f, + 0xce, + 0x69, + 0xf4, + 0x15, + 0x2a, + 0x23, + 0xca, + 0xea, + 0xb7, + 0x7b, + 0xdf, + 0xfb, + 0x43, + 0x5f, + 0xff, + 0x7a, + 0x49, + 0x49, + 0x0e, + 0xe7, + 0x02, + 0x51, + 0x45, + 0x13, + 0xe8, + 0x90, + 0x64, + 0x21, + 0x0c, + 0x26, + 0x2b, + 0x5d, + 0xfc, + 0xe4, + 0xb5, + 0x86, + 0x89, + 0x43, + 0x22, + 0x4c, + 0xf3, + 0x3b, + 0xf3, + 0x09, + 0xc4, + 0xa4, + 0x10, + 0x80, + 0xf2, + 0x46, + 0xe2, + 0x46, + 0x8f, + 0x76, + 0x50, + 0xbf, + 0xaf, + 0x2b, + 0x90, + 0x1b, + 0x78, + 0xc7, + 0xcf, + 0xc1, + 0x77, + 0xd0, + 0xfb, + 0xa9, + 0xfb, + 0xc9, + 0x66, + 0x5a, + 0xc5, + 0x9b, + 0x31, + 0x41, + 0x67, + 0x01, + 0xbe, + 0x33, + 0x10, + 0xba, + 0x05, + 0x58, + 0xed, + 0x76, + 0x53, + 0xde, + 0x5d, + 0xc1, + 0xe8, + 0xbb, + 0x9f, + 0xf1, + 0xcd, + 0xfb, + 0xdf, + 0x64, + 0x7f, + 0xd7, + 0x18, + 0xab, + 0x0f, + 0x94, + 0x28, + 0x95, + 0x4a, + 0xcc, + 0x6a, + 0xa9, + 0x50, + 0xc7, + 0x05, + 0x47, + 0x10, + 0x41, + 0x02, + 0x03, + 0x01, + 0x00, + 0x01, + 0xa3, + 0x50, + 0x30, + 0x4e, + 0x30, + 0x0e, + 0x06, + 0x03, + 0x55, + 0x1d, + 0x0f, + 0x01, + 0x01, + 0xff, + 0x04, + 0x04, + 0x03, + 0x02, + 0x05, + 0xa0, + 0x30, + 0x13, + 0x06, + 0x03, + 0x55, + 0x1d, + 0x25, + 0x04, + 0x0c, + 0x30, + 0x0a, + 0x06, + 0x08, + 0x2b, + 0x06, + 0x01, + 0x05, + 0x05, + 0x07, + 0x03, + 0x01, + 0x30, + 0x0c, + 0x06, + 0x03, + 0x55, + 0x1d, + 0x13, + 0x01, + 0x01, + 0xff, + 0x04, + 0x02, + 0x30, + 0x00, + 0x30, + 0x19, + 0x06, + 0x03, + 0x55, + 0x1d, + 0x11, + 0x04, + 0x12, + 0x30, + 0x10, + 0x82, + 0x0e, + 0x66, + 0x75, + 0x7a, + 0x7a, + 0x2e, + 0x62, + 0x6f, + 0x72, + 0x69, + 0x6e, + 0x67, + 0x73, + 0x73, + 0x6c, + 0x30, + 0x0d, + 0x06, + 0x09, + 0x2a, + 0x86, + 0x48, + 0x86, + 0xf7, + 0x0d, + 0x01, + 0x01, + 0x0b, + 0x05, + 0x00, + 0x03, + 0x82, + 0x01, + 0x01, + 0x00, + 0x92, + 0xde, + 0xef, + 0x96, + 0x06, + 0x7b, + 0xff, + 0x71, + 0x7d, + 0x4e, + 0xa0, + 0x7d, + 0xae, + 0xb8, + 0x22, + 0xb4, + 0x2c, + 0xf7, + 0x96, + 0x9c, + 0x37, + 0x1d, + 0x8f, + 0xe7, + 0xd9, + 0x47, + 0xff, + 0x3f, + 0xe9, + 0x35, + 0x95, + 0x0e, + 0xdd, + 0xdc, + 0x7f, + 0xc8, + 0x8a, + 0x1e, + 0x36, + 0x1d, + 0x38, + 0x47, + 0xfc, + 0x76, + 0xd2, + 0x1f, + 0x98, + 0xa1, + 0x36, + 0xac, + 0xc8, + 0x70, + 0x38, + 0x0a, + 0x3d, + 0x51, + 0x8d, + 0x0f, + 0x03, + 0x1b, + 0xef, + 0x62, + 0xa1, + 0xcb, + 0x2b, + 0x4a, + 0x8c, + 0x12, + 0x2b, + 0x54, + 0x50, + 0x9a, + 0x6b, + 0xfe, + 0xaf, + 0xd9, + 0xf6, + 0xbf, + 0x58, + 0x11, + 0x58, + 0x5e, + 0xe5, + 0x86, + 0x1e, + 0x3b, + 0x6b, + 0x30, + 0x7e, + 0x72, + 0x89, + 0xe8, + 0x6b, + 0x7b, + 0xb7, + 0xaf, + 0xef, + 0x8b, + 0xa9, + 0x3e, + 0xb0, + 0xcd, + 0x0b, + 0xef, + 0xb0, + 0x0c, + 0x96, + 0x2b, + 0xc5, + 0x3b, + 0xd5, + 0xf1, + 0xc2, + 0xae, + 0x3a, + 0x60, + 0xd9, + 0x0f, + 0x75, + 0x37, + 0x55, + 0x4d, + 0x62, + 0xd2, + 0xed, + 0x96, + 0xac, + 0x30, + 0x6b, + 0xda, + 0xa1, + 0x48, + 0x17, + 0x96, + 0x23, + 0x85, + 0x9a, + 0x57, + 0x77, + 0xe9, + 0x22, + 0xa2, + 0x37, + 0x03, + 0xba, + 0x49, + 0x77, + 0x40, + 0x3b, + 0x76, + 0x4b, + 0xda, + 0xc1, + 0x04, + 0x57, + 0x55, + 0x34, + 0x22, + 0x83, + 0x45, + 0x29, + 0xab, + 0x2e, + 0x11, + 0xff, + 0x0d, + 0xab, + 0x55, + 0xb1, + 0xa7, + 0x58, + 0x59, + 0x05, + 0x25, + 0xf9, + 0x1e, + 0x3d, + 0xb7, + 0xac, + 0x04, + 0x39, + 0x2c, + 0xf9, + 0xaf, + 0xb8, + 0x68, + 0xfb, + 0x8e, + 0x35, + 0x71, + 0x32, + 0xff, + 0x70, + 0xe9, + 0x46, + 0x6d, + 0x5c, + 0x06, + 0x90, + 0x88, + 0x23, + 0x48, + 0x0c, + 0x50, + 0xeb, + 0x0a, + 0xa9, + 0xae, + 0xe8, + 0xfc, + 0xbe, + 0xa5, + 0x76, + 0x94, + 0xd7, + 0x64, + 0x22, + 0x38, + 0x98, + 0x17, + 0xa4, + 0x3a, + 0xa7, + 0x59, + 0x9f, + 0x1d, + 0x3b, + 0x75, + 0x90, + 0x1a, + 0x81, + 0xef, + 0x19, + 0xfb, + 0x2b, + 0xb7, + 0xa7, + 0x64, + 0x61, + 0x22, + 0xa4, + 0x6f, + 0x7b, + 0xfa, + 0x58, + 0xbb, + 0x8c, + 0x4e, + 0x77, + 0x67, + 0xd0, + 0x5d, + 0x58, + 0x76, + 0x8a, + 0xbb, }; #ifndef OPENSSL_NO_DEPRECATED_3_0 static const uint8_t kRSAPrivateKeyDER[] = { - 0x30, 0x82, 0x04, 0xa5, 0x02, 0x01, 0x00, 0x02, 0x82, 0x01, 0x01, 0x00, - 0xce, 0x47, 0xcb, 0x11, 0xbb, 0xd2, 0x9d, 0x8e, 0x9e, 0xd2, 0x1e, 0x14, - 0xaf, 0xc7, 0xea, 0xb6, 0xc9, 0x38, 0x2a, 0x6f, 0xb3, 0x7e, 0xfb, 0xbc, - 0xfc, 0x59, 0x42, 0xb9, 0x56, 0xf0, 0x4c, 0x3f, 0xf7, 0x31, 0x84, 0xbe, - 0xac, 0x03, 0x9e, 0x71, 0x91, 0x85, 0xd8, 0x32, 0xbd, 0x00, 0xea, 0xac, - 0x65, 0xf6, 0x03, 0xc8, 0x0f, 0x8b, 0xfd, 0x6e, 0x58, 0x88, 0x04, 0x41, - 0x92, 0x74, 0xa6, 0x57, 0x2e, 0x8e, 0x88, 0xd5, 0x3d, 0xda, 0x14, 0x3e, - 0x63, 0x88, 0x22, 0xe3, 0x53, 0xe9, 0xba, 0x39, 0x09, 0xac, 0xfb, 0xd0, - 0x4c, 0xf2, 0x3c, 0x20, 0xd6, 0x97, 0xe6, 0xed, 0xf1, 0x62, 0x1e, 0xe5, - 0xc9, 0x48, 0xa0, 0xca, 0x2e, 0x3c, 0x14, 0x5a, 0x82, 0xd4, 0xed, 0xb1, - 0xe3, 0x43, 0xc1, 0x2a, 0x59, 0xa5, 0xb9, 0xc8, 0x48, 0xa7, 0x39, 0x23, - 0x74, 0xa7, 0x37, 0xb0, 0x6f, 0xc3, 0x64, 0x99, 0x6c, 0xa2, 0x82, 0xc8, - 0xf6, 0xdb, 0x86, 0x40, 0xce, 0xd1, 0x85, 0x9f, 0xce, 0x69, 0xf4, 0x15, - 0x2a, 0x23, 0xca, 0xea, 0xb7, 0x7b, 0xdf, 0xfb, 0x43, 0x5f, 0xff, 0x7a, - 0x49, 0x49, 0x0e, 0xe7, 0x02, 0x51, 0x45, 0x13, 0xe8, 0x90, 0x64, 0x21, - 0x0c, 0x26, 0x2b, 0x5d, 0xfc, 0xe4, 0xb5, 0x86, 0x89, 0x43, 0x22, 0x4c, - 0xf3, 0x3b, 0xf3, 0x09, 0xc4, 0xa4, 0x10, 0x80, 0xf2, 0x46, 0xe2, 0x46, - 0x8f, 0x76, 0x50, 0xbf, 0xaf, 0x2b, 0x90, 0x1b, 0x78, 0xc7, 0xcf, 0xc1, - 0x77, 0xd0, 0xfb, 0xa9, 0xfb, 0xc9, 0x66, 0x5a, 0xc5, 0x9b, 0x31, 0x41, - 0x67, 0x01, 0xbe, 0x33, 0x10, 0xba, 0x05, 0x58, 0xed, 0x76, 0x53, 0xde, - 0x5d, 0xc1, 0xe8, 0xbb, 0x9f, 0xf1, 0xcd, 0xfb, 0xdf, 0x64, 0x7f, 0xd7, - 0x18, 0xab, 0x0f, 0x94, 0x28, 0x95, 0x4a, 0xcc, 0x6a, 0xa9, 0x50, 0xc7, - 0x05, 0x47, 0x10, 0x41, 0x02, 0x03, 0x01, 0x00, 0x01, 0x02, 0x82, 0x01, - 0x01, 0x00, 0xa8, 0x47, 0xb9, 0x4a, 0x06, 0x47, 0x93, 0x71, 0x3d, 0xef, - 0x7b, 0xca, 0xb4, 0x7c, 0x0a, 0xe6, 0x82, 0xd0, 0xe7, 0x0d, 0xa9, 0x08, - 0xf6, 0xa4, 0xfd, 0xd8, 0x73, 0xae, 0x6f, 0x56, 0x29, 0x5e, 0x25, 0x72, - 0xa8, 0x30, 0x44, 0x73, 0xcf, 0x56, 0x26, 0xb9, 0x61, 0xde, 0x42, 0x81, - 0xf4, 0xf0, 0x1f, 0x5d, 0xcb, 0x47, 0xf2, 0x26, 0xe9, 0xe0, 0x93, 0x28, - 0xa3, 0x10, 0x3b, 0x42, 0x1e, 0x51, 0x11, 0x12, 0x06, 0x5e, 0xaf, 0xce, - 0xb0, 0xa5, 0x14, 0xdd, 0x82, 0x58, 0xa1, 0xa4, 0x12, 0xdf, 0x65, 0x1d, - 0x51, 0x70, 0x64, 0xd5, 0x58, 0x68, 0x11, 0xa8, 0x6a, 0x23, 0xc2, 0xbf, - 0xa1, 0x25, 0x24, 0x47, 0xb3, 0xa4, 0x3c, 0x83, 0x96, 0xb7, 0x1f, 0xf4, - 0x44, 0xd4, 0xd1, 0xe9, 0xfc, 0x33, 0x68, 0x5e, 0xe2, 0x68, 0x99, 0x9c, - 0x91, 0xe8, 0x72, 0xc9, 0xd7, 0x8c, 0x80, 0x20, 0x8e, 0x77, 0x83, 0x4d, - 0xe4, 0xab, 0xf9, 0x74, 0xa1, 0xdf, 0xd3, 0xc0, 0x0d, 0x5b, 0x05, 0x51, - 0xc2, 0x6f, 0xb2, 0x91, 0x02, 0xec, 0xc0, 0x02, 0x1a, 0x5c, 0x91, 0x05, - 0xf1, 0xe3, 0xfa, 0x65, 0xc2, 0xad, 0x24, 0xe6, 0xe5, 0x3c, 0xb6, 0x16, - 0xf1, 0xa1, 0x67, 0x1a, 0x9d, 0x37, 0x56, 0xbf, 0x01, 0xd7, 0x3b, 0x35, - 0x30, 0x57, 0x73, 0xf4, 0xf0, 0x5e, 0xa7, 0xe8, 0x0a, 0xc1, 0x94, 0x17, - 0xcf, 0x0a, 0xbd, 0xf5, 0x31, 0xa7, 0x2d, 0xf7, 0xf5, 0xd9, 0x8c, 0xc2, - 0x01, 0xbd, 0xda, 0x16, 0x8e, 0xb9, 0x30, 0x40, 0xa6, 0x6e, 0xbd, 0xcd, - 0x4d, 0x84, 0x67, 0x4e, 0x0b, 0xce, 0xd5, 0xef, 0xf8, 0x08, 0x63, 0x02, - 0xc6, 0xc7, 0xf7, 0x67, 0x92, 0xe2, 0x23, 0x9d, 0x27, 0x22, 0x1d, 0xc6, - 0x67, 0x5e, 0x66, 0xbf, 0x03, 0xb8, 0xa9, 0x67, 0xd4, 0x39, 0xd8, 0x75, - 0xfa, 0xe8, 0xed, 0x56, 0xb8, 0x81, 0x02, 0x81, 0x81, 0x00, 0xf7, 0x46, - 0x68, 0xc6, 0x13, 0xf8, 0xba, 0x0f, 0x83, 0xdb, 0x05, 0xa8, 0x25, 0x00, - 0x70, 0x9c, 0x9e, 0x8b, 0x12, 0x34, 0x0d, 0x96, 0xcf, 0x0d, 0x98, 0x9b, - 0x8d, 0x9c, 0x96, 0x78, 0xd1, 0x3c, 0x01, 0x8c, 0xb9, 0x35, 0x5c, 0x20, - 0x42, 0xb4, 0x38, 0xe3, 0xd6, 0x54, 0xe7, 0x55, 0xd6, 0x26, 0x8a, 0x0c, - 0xf6, 0x1f, 0xe0, 0x04, 0xc1, 0x22, 0x42, 0x19, 0x61, 0xc4, 0x94, 0x7c, - 0x07, 0x2e, 0x80, 0x52, 0xfe, 0x8d, 0xe6, 0x92, 0x3a, 0x91, 0xfe, 0x72, - 0x99, 0xe1, 0x2a, 0x73, 0x76, 0xb1, 0x24, 0x20, 0x67, 0xde, 0x28, 0xcb, - 0x0e, 0xe6, 0x52, 0xb5, 0xfa, 0xfb, 0x8b, 0x1e, 0x6a, 0x1d, 0x09, 0x26, - 0xb9, 0xa7, 0x61, 0xba, 0xf8, 0x79, 0xd2, 0x66, 0x57, 0x28, 0xd7, 0x31, - 0xb5, 0x0b, 0x27, 0x19, 0x1e, 0x6f, 0x46, 0xfc, 0x54, 0x95, 0xeb, 0x78, - 0x01, 0xb6, 0xd9, 0x79, 0x5a, 0x4d, 0x02, 0x81, 0x81, 0x00, 0xd5, 0x8f, - 0x16, 0x53, 0x2f, 0x57, 0x93, 0xbf, 0x09, 0x75, 0xbf, 0x63, 0x40, 0x3d, - 0x27, 0xfd, 0x23, 0x21, 0xde, 0x9b, 0xe9, 0x73, 0x3f, 0x49, 0x02, 0xd2, - 0x38, 0x96, 0xcf, 0xc3, 0xba, 0x92, 0x07, 0x87, 0x52, 0xa9, 0x35, 0xe3, - 0x0c, 0xe4, 0x2f, 0x05, 0x7b, 0x37, 0xa5, 0x40, 0x9c, 0x3b, 0x94, 0xf7, - 0xad, 0xa0, 0xee, 0x3a, 0xa8, 0xfb, 0x1f, 0x11, 0x1f, 0xd8, 0x9a, 0x80, - 0x42, 0x3d, 0x7f, 0xa4, 0xb8, 0x9a, 0xaa, 0xea, 0x72, 0xc1, 0xe3, 0xed, - 0x06, 0x60, 0x92, 0x37, 0xf9, 0xba, 0xfb, 0x9e, 0xed, 0x05, 0xa6, 0xd4, - 0x72, 0x68, 0x4f, 0x63, 0xfe, 0xd6, 0x10, 0x0d, 0x4f, 0x0a, 0x93, 0xc6, - 0xb9, 0xd7, 0xaf, 0xfd, 0xd9, 0x57, 0x7d, 0xcb, 0x75, 0xe8, 0x93, 0x2b, - 0xae, 0x4f, 0xea, 0xd7, 0x30, 0x0b, 0x58, 0x44, 0x82, 0x0f, 0x84, 0x5d, - 0x62, 0x11, 0x78, 0xea, 0x5f, 0xc5, 0x02, 0x81, 0x81, 0x00, 0x82, 0x0c, - 0xc1, 0xe6, 0x0b, 0x72, 0xf1, 0x48, 0x5f, 0xac, 0xbd, 0x98, 0xe5, 0x7d, - 0x09, 0xbd, 0x15, 0x95, 0x47, 0x09, 0xa1, 0x6c, 0x03, 0x91, 0xbf, 0x05, - 0x70, 0xc1, 0x3e, 0x52, 0x64, 0x99, 0x0e, 0xa7, 0x98, 0x70, 0xfb, 0xf6, - 0xeb, 0x9e, 0x25, 0x9d, 0x8e, 0x88, 0x30, 0xf2, 0xf0, 0x22, 0x6c, 0xd0, - 0xcc, 0x51, 0x8f, 0x5c, 0x70, 0xc7, 0x37, 0xc4, 0x69, 0xab, 0x1d, 0xfc, - 0xed, 0x3a, 0x03, 0xbb, 0xa2, 0xad, 0xb6, 0xea, 0x89, 0x6b, 0x67, 0x4b, - 0x96, 0xaa, 0xd9, 0xcc, 0xc8, 0x4b, 0xfa, 0x18, 0x21, 0x08, 0xb2, 0xa3, - 0xb9, 0x3e, 0x61, 0x99, 0xdc, 0x5a, 0x97, 0x9c, 0x73, 0x6a, 0xb9, 0xf9, - 0x68, 0x03, 0x24, 0x5f, 0x55, 0x77, 0x9c, 0xb4, 0xbe, 0x7a, 0x78, 0x53, - 0x68, 0x48, 0x69, 0x53, 0xc8, 0xb1, 0xf5, 0xbf, 0x98, 0x2d, 0x11, 0x1e, - 0x98, 0xa8, 0x36, 0x50, 0xa0, 0xb1, 0x02, 0x81, 0x81, 0x00, 0x90, 0x88, - 0x30, 0x71, 0xc7, 0xfe, 0x9b, 0x6d, 0x95, 0x37, 0x6d, 0x79, 0xfc, 0x85, - 0xe7, 0x44, 0x78, 0xbc, 0x79, 0x6e, 0x47, 0x86, 0xc9, 0xf3, 0xdd, 0xc6, - 0xec, 0xa9, 0x94, 0x9f, 0x40, 0xeb, 0x87, 0xd0, 0xdb, 0xee, 0xcd, 0x1b, - 0x87, 0x23, 0xff, 0x76, 0xd4, 0x37, 0x8a, 0xcd, 0xb9, 0x6e, 0xd1, 0x98, - 0xf6, 0x97, 0x8d, 0xe3, 0x81, 0x6d, 0xc3, 0x4e, 0xd1, 0xa0, 0xc4, 0x9f, - 0xbd, 0x34, 0xe5, 0xe8, 0x53, 0x4f, 0xca, 0x10, 0xb5, 0xed, 0xe7, 0x16, - 0x09, 0x54, 0xde, 0x60, 0xa7, 0xd1, 0x16, 0x6e, 0x2e, 0xb7, 0xbe, 0x7a, - 0xd5, 0x9b, 0x26, 0xef, 0xe4, 0x0e, 0x77, 0xfa, 0xa9, 0xdd, 0xdc, 0xb9, - 0x88, 0x19, 0x23, 0x70, 0xc7, 0xe1, 0x60, 0xaf, 0x8c, 0x73, 0x04, 0xf7, - 0x71, 0x17, 0x81, 0x36, 0x75, 0xbb, 0x97, 0xd7, 0x75, 0xb6, 0x8e, 0xbc, - 0xac, 0x9c, 0x6a, 0x9b, 0x24, 0x89, 0x02, 0x81, 0x80, 0x5a, 0x2b, 0xc7, - 0x6b, 0x8c, 0x65, 0xdb, 0x04, 0x73, 0xab, 0x25, 0xe1, 0x5b, 0xbc, 0x3c, - 0xcf, 0x5a, 0x3c, 0x04, 0xae, 0x97, 0x2e, 0xfd, 0xa4, 0x97, 0x1f, 0x05, - 0x17, 0x27, 0xac, 0x7c, 0x30, 0x85, 0xb4, 0x82, 0x3f, 0x5b, 0xb7, 0x94, - 0x3b, 0x7f, 0x6c, 0x0c, 0xc7, 0x16, 0xc6, 0xa0, 0xbd, 0x80, 0xb0, 0x81, - 0xde, 0xa0, 0x23, 0xa6, 0xf6, 0x75, 0x33, 0x51, 0x35, 0xa2, 0x75, 0x55, - 0x70, 0x4d, 0x42, 0xbb, 0xcf, 0x54, 0xe4, 0xdb, 0x2d, 0x88, 0xa0, 0x7a, - 0xf2, 0x17, 0xa7, 0xdd, 0x13, 0x44, 0x9f, 0x5f, 0x6b, 0x2c, 0x42, 0x42, - 0x8b, 0x13, 0x4d, 0xf9, 0x5b, 0xf8, 0x33, 0x42, 0xd9, 0x9e, 0x50, 0x1c, - 0x7c, 0xbc, 0xfa, 0x62, 0x85, 0x0b, 0xcf, 0x99, 0xda, 0x9e, 0x04, 0x90, - 0xb2, 0xc6, 0xb2, 0x0a, 0x2a, 0x7c, 0x6d, 0x6a, 0x40, 0xfc, 0xf5, 0x50, - 0x98, 0x46, 0x89, 0x82, 0x40, + 0x30, + 0x82, + 0x04, + 0xa5, + 0x02, + 0x01, + 0x00, + 0x02, + 0x82, + 0x01, + 0x01, + 0x00, + 0xce, + 0x47, + 0xcb, + 0x11, + 0xbb, + 0xd2, + 0x9d, + 0x8e, + 0x9e, + 0xd2, + 0x1e, + 0x14, + 0xaf, + 0xc7, + 0xea, + 0xb6, + 0xc9, + 0x38, + 0x2a, + 0x6f, + 0xb3, + 0x7e, + 0xfb, + 0xbc, + 0xfc, + 0x59, + 0x42, + 0xb9, + 0x56, + 0xf0, + 0x4c, + 0x3f, + 0xf7, + 0x31, + 0x84, + 0xbe, + 0xac, + 0x03, + 0x9e, + 0x71, + 0x91, + 0x85, + 0xd8, + 0x32, + 0xbd, + 0x00, + 0xea, + 0xac, + 0x65, + 0xf6, + 0x03, + 0xc8, + 0x0f, + 0x8b, + 0xfd, + 0x6e, + 0x58, + 0x88, + 0x04, + 0x41, + 0x92, + 0x74, + 0xa6, + 0x57, + 0x2e, + 0x8e, + 0x88, + 0xd5, + 0x3d, + 0xda, + 0x14, + 0x3e, + 0x63, + 0x88, + 0x22, + 0xe3, + 0x53, + 0xe9, + 0xba, + 0x39, + 0x09, + 0xac, + 0xfb, + 0xd0, + 0x4c, + 0xf2, + 0x3c, + 0x20, + 0xd6, + 0x97, + 0xe6, + 0xed, + 0xf1, + 0x62, + 0x1e, + 0xe5, + 0xc9, + 0x48, + 0xa0, + 0xca, + 0x2e, + 0x3c, + 0x14, + 0x5a, + 0x82, + 0xd4, + 0xed, + 0xb1, + 0xe3, + 0x43, + 0xc1, + 0x2a, + 0x59, + 0xa5, + 0xb9, + 0xc8, + 0x48, + 0xa7, + 0x39, + 0x23, + 0x74, + 0xa7, + 0x37, + 0xb0, + 0x6f, + 0xc3, + 0x64, + 0x99, + 0x6c, + 0xa2, + 0x82, + 0xc8, + 0xf6, + 0xdb, + 0x86, + 0x40, + 0xce, + 0xd1, + 0x85, + 0x9f, + 0xce, + 0x69, + 0xf4, + 0x15, + 0x2a, + 0x23, + 0xca, + 0xea, + 0xb7, + 0x7b, + 0xdf, + 0xfb, + 0x43, + 0x5f, + 0xff, + 0x7a, + 0x49, + 0x49, + 0x0e, + 0xe7, + 0x02, + 0x51, + 0x45, + 0x13, + 0xe8, + 0x90, + 0x64, + 0x21, + 0x0c, + 0x26, + 0x2b, + 0x5d, + 0xfc, + 0xe4, + 0xb5, + 0x86, + 0x89, + 0x43, + 0x22, + 0x4c, + 0xf3, + 0x3b, + 0xf3, + 0x09, + 0xc4, + 0xa4, + 0x10, + 0x80, + 0xf2, + 0x46, + 0xe2, + 0x46, + 0x8f, + 0x76, + 0x50, + 0xbf, + 0xaf, + 0x2b, + 0x90, + 0x1b, + 0x78, + 0xc7, + 0xcf, + 0xc1, + 0x77, + 0xd0, + 0xfb, + 0xa9, + 0xfb, + 0xc9, + 0x66, + 0x5a, + 0xc5, + 0x9b, + 0x31, + 0x41, + 0x67, + 0x01, + 0xbe, + 0x33, + 0x10, + 0xba, + 0x05, + 0x58, + 0xed, + 0x76, + 0x53, + 0xde, + 0x5d, + 0xc1, + 0xe8, + 0xbb, + 0x9f, + 0xf1, + 0xcd, + 0xfb, + 0xdf, + 0x64, + 0x7f, + 0xd7, + 0x18, + 0xab, + 0x0f, + 0x94, + 0x28, + 0x95, + 0x4a, + 0xcc, + 0x6a, + 0xa9, + 0x50, + 0xc7, + 0x05, + 0x47, + 0x10, + 0x41, + 0x02, + 0x03, + 0x01, + 0x00, + 0x01, + 0x02, + 0x82, + 0x01, + 0x01, + 0x00, + 0xa8, + 0x47, + 0xb9, + 0x4a, + 0x06, + 0x47, + 0x93, + 0x71, + 0x3d, + 0xef, + 0x7b, + 0xca, + 0xb4, + 0x7c, + 0x0a, + 0xe6, + 0x82, + 0xd0, + 0xe7, + 0x0d, + 0xa9, + 0x08, + 0xf6, + 0xa4, + 0xfd, + 0xd8, + 0x73, + 0xae, + 0x6f, + 0x56, + 0x29, + 0x5e, + 0x25, + 0x72, + 0xa8, + 0x30, + 0x44, + 0x73, + 0xcf, + 0x56, + 0x26, + 0xb9, + 0x61, + 0xde, + 0x42, + 0x81, + 0xf4, + 0xf0, + 0x1f, + 0x5d, + 0xcb, + 0x47, + 0xf2, + 0x26, + 0xe9, + 0xe0, + 0x93, + 0x28, + 0xa3, + 0x10, + 0x3b, + 0x42, + 0x1e, + 0x51, + 0x11, + 0x12, + 0x06, + 0x5e, + 0xaf, + 0xce, + 0xb0, + 0xa5, + 0x14, + 0xdd, + 0x82, + 0x58, + 0xa1, + 0xa4, + 0x12, + 0xdf, + 0x65, + 0x1d, + 0x51, + 0x70, + 0x64, + 0xd5, + 0x58, + 0x68, + 0x11, + 0xa8, + 0x6a, + 0x23, + 0xc2, + 0xbf, + 0xa1, + 0x25, + 0x24, + 0x47, + 0xb3, + 0xa4, + 0x3c, + 0x83, + 0x96, + 0xb7, + 0x1f, + 0xf4, + 0x44, + 0xd4, + 0xd1, + 0xe9, + 0xfc, + 0x33, + 0x68, + 0x5e, + 0xe2, + 0x68, + 0x99, + 0x9c, + 0x91, + 0xe8, + 0x72, + 0xc9, + 0xd7, + 0x8c, + 0x80, + 0x20, + 0x8e, + 0x77, + 0x83, + 0x4d, + 0xe4, + 0xab, + 0xf9, + 0x74, + 0xa1, + 0xdf, + 0xd3, + 0xc0, + 0x0d, + 0x5b, + 0x05, + 0x51, + 0xc2, + 0x6f, + 0xb2, + 0x91, + 0x02, + 0xec, + 0xc0, + 0x02, + 0x1a, + 0x5c, + 0x91, + 0x05, + 0xf1, + 0xe3, + 0xfa, + 0x65, + 0xc2, + 0xad, + 0x24, + 0xe6, + 0xe5, + 0x3c, + 0xb6, + 0x16, + 0xf1, + 0xa1, + 0x67, + 0x1a, + 0x9d, + 0x37, + 0x56, + 0xbf, + 0x01, + 0xd7, + 0x3b, + 0x35, + 0x30, + 0x57, + 0x73, + 0xf4, + 0xf0, + 0x5e, + 0xa7, + 0xe8, + 0x0a, + 0xc1, + 0x94, + 0x17, + 0xcf, + 0x0a, + 0xbd, + 0xf5, + 0x31, + 0xa7, + 0x2d, + 0xf7, + 0xf5, + 0xd9, + 0x8c, + 0xc2, + 0x01, + 0xbd, + 0xda, + 0x16, + 0x8e, + 0xb9, + 0x30, + 0x40, + 0xa6, + 0x6e, + 0xbd, + 0xcd, + 0x4d, + 0x84, + 0x67, + 0x4e, + 0x0b, + 0xce, + 0xd5, + 0xef, + 0xf8, + 0x08, + 0x63, + 0x02, + 0xc6, + 0xc7, + 0xf7, + 0x67, + 0x92, + 0xe2, + 0x23, + 0x9d, + 0x27, + 0x22, + 0x1d, + 0xc6, + 0x67, + 0x5e, + 0x66, + 0xbf, + 0x03, + 0xb8, + 0xa9, + 0x67, + 0xd4, + 0x39, + 0xd8, + 0x75, + 0xfa, + 0xe8, + 0xed, + 0x56, + 0xb8, + 0x81, + 0x02, + 0x81, + 0x81, + 0x00, + 0xf7, + 0x46, + 0x68, + 0xc6, + 0x13, + 0xf8, + 0xba, + 0x0f, + 0x83, + 0xdb, + 0x05, + 0xa8, + 0x25, + 0x00, + 0x70, + 0x9c, + 0x9e, + 0x8b, + 0x12, + 0x34, + 0x0d, + 0x96, + 0xcf, + 0x0d, + 0x98, + 0x9b, + 0x8d, + 0x9c, + 0x96, + 0x78, + 0xd1, + 0x3c, + 0x01, + 0x8c, + 0xb9, + 0x35, + 0x5c, + 0x20, + 0x42, + 0xb4, + 0x38, + 0xe3, + 0xd6, + 0x54, + 0xe7, + 0x55, + 0xd6, + 0x26, + 0x8a, + 0x0c, + 0xf6, + 0x1f, + 0xe0, + 0x04, + 0xc1, + 0x22, + 0x42, + 0x19, + 0x61, + 0xc4, + 0x94, + 0x7c, + 0x07, + 0x2e, + 0x80, + 0x52, + 0xfe, + 0x8d, + 0xe6, + 0x92, + 0x3a, + 0x91, + 0xfe, + 0x72, + 0x99, + 0xe1, + 0x2a, + 0x73, + 0x76, + 0xb1, + 0x24, + 0x20, + 0x67, + 0xde, + 0x28, + 0xcb, + 0x0e, + 0xe6, + 0x52, + 0xb5, + 0xfa, + 0xfb, + 0x8b, + 0x1e, + 0x6a, + 0x1d, + 0x09, + 0x26, + 0xb9, + 0xa7, + 0x61, + 0xba, + 0xf8, + 0x79, + 0xd2, + 0x66, + 0x57, + 0x28, + 0xd7, + 0x31, + 0xb5, + 0x0b, + 0x27, + 0x19, + 0x1e, + 0x6f, + 0x46, + 0xfc, + 0x54, + 0x95, + 0xeb, + 0x78, + 0x01, + 0xb6, + 0xd9, + 0x79, + 0x5a, + 0x4d, + 0x02, + 0x81, + 0x81, + 0x00, + 0xd5, + 0x8f, + 0x16, + 0x53, + 0x2f, + 0x57, + 0x93, + 0xbf, + 0x09, + 0x75, + 0xbf, + 0x63, + 0x40, + 0x3d, + 0x27, + 0xfd, + 0x23, + 0x21, + 0xde, + 0x9b, + 0xe9, + 0x73, + 0x3f, + 0x49, + 0x02, + 0xd2, + 0x38, + 0x96, + 0xcf, + 0xc3, + 0xba, + 0x92, + 0x07, + 0x87, + 0x52, + 0xa9, + 0x35, + 0xe3, + 0x0c, + 0xe4, + 0x2f, + 0x05, + 0x7b, + 0x37, + 0xa5, + 0x40, + 0x9c, + 0x3b, + 0x94, + 0xf7, + 0xad, + 0xa0, + 0xee, + 0x3a, + 0xa8, + 0xfb, + 0x1f, + 0x11, + 0x1f, + 0xd8, + 0x9a, + 0x80, + 0x42, + 0x3d, + 0x7f, + 0xa4, + 0xb8, + 0x9a, + 0xaa, + 0xea, + 0x72, + 0xc1, + 0xe3, + 0xed, + 0x06, + 0x60, + 0x92, + 0x37, + 0xf9, + 0xba, + 0xfb, + 0x9e, + 0xed, + 0x05, + 0xa6, + 0xd4, + 0x72, + 0x68, + 0x4f, + 0x63, + 0xfe, + 0xd6, + 0x10, + 0x0d, + 0x4f, + 0x0a, + 0x93, + 0xc6, + 0xb9, + 0xd7, + 0xaf, + 0xfd, + 0xd9, + 0x57, + 0x7d, + 0xcb, + 0x75, + 0xe8, + 0x93, + 0x2b, + 0xae, + 0x4f, + 0xea, + 0xd7, + 0x30, + 0x0b, + 0x58, + 0x44, + 0x82, + 0x0f, + 0x84, + 0x5d, + 0x62, + 0x11, + 0x78, + 0xea, + 0x5f, + 0xc5, + 0x02, + 0x81, + 0x81, + 0x00, + 0x82, + 0x0c, + 0xc1, + 0xe6, + 0x0b, + 0x72, + 0xf1, + 0x48, + 0x5f, + 0xac, + 0xbd, + 0x98, + 0xe5, + 0x7d, + 0x09, + 0xbd, + 0x15, + 0x95, + 0x47, + 0x09, + 0xa1, + 0x6c, + 0x03, + 0x91, + 0xbf, + 0x05, + 0x70, + 0xc1, + 0x3e, + 0x52, + 0x64, + 0x99, + 0x0e, + 0xa7, + 0x98, + 0x70, + 0xfb, + 0xf6, + 0xeb, + 0x9e, + 0x25, + 0x9d, + 0x8e, + 0x88, + 0x30, + 0xf2, + 0xf0, + 0x22, + 0x6c, + 0xd0, + 0xcc, + 0x51, + 0x8f, + 0x5c, + 0x70, + 0xc7, + 0x37, + 0xc4, + 0x69, + 0xab, + 0x1d, + 0xfc, + 0xed, + 0x3a, + 0x03, + 0xbb, + 0xa2, + 0xad, + 0xb6, + 0xea, + 0x89, + 0x6b, + 0x67, + 0x4b, + 0x96, + 0xaa, + 0xd9, + 0xcc, + 0xc8, + 0x4b, + 0xfa, + 0x18, + 0x21, + 0x08, + 0xb2, + 0xa3, + 0xb9, + 0x3e, + 0x61, + 0x99, + 0xdc, + 0x5a, + 0x97, + 0x9c, + 0x73, + 0x6a, + 0xb9, + 0xf9, + 0x68, + 0x03, + 0x24, + 0x5f, + 0x55, + 0x77, + 0x9c, + 0xb4, + 0xbe, + 0x7a, + 0x78, + 0x53, + 0x68, + 0x48, + 0x69, + 0x53, + 0xc8, + 0xb1, + 0xf5, + 0xbf, + 0x98, + 0x2d, + 0x11, + 0x1e, + 0x98, + 0xa8, + 0x36, + 0x50, + 0xa0, + 0xb1, + 0x02, + 0x81, + 0x81, + 0x00, + 0x90, + 0x88, + 0x30, + 0x71, + 0xc7, + 0xfe, + 0x9b, + 0x6d, + 0x95, + 0x37, + 0x6d, + 0x79, + 0xfc, + 0x85, + 0xe7, + 0x44, + 0x78, + 0xbc, + 0x79, + 0x6e, + 0x47, + 0x86, + 0xc9, + 0xf3, + 0xdd, + 0xc6, + 0xec, + 0xa9, + 0x94, + 0x9f, + 0x40, + 0xeb, + 0x87, + 0xd0, + 0xdb, + 0xee, + 0xcd, + 0x1b, + 0x87, + 0x23, + 0xff, + 0x76, + 0xd4, + 0x37, + 0x8a, + 0xcd, + 0xb9, + 0x6e, + 0xd1, + 0x98, + 0xf6, + 0x97, + 0x8d, + 0xe3, + 0x81, + 0x6d, + 0xc3, + 0x4e, + 0xd1, + 0xa0, + 0xc4, + 0x9f, + 0xbd, + 0x34, + 0xe5, + 0xe8, + 0x53, + 0x4f, + 0xca, + 0x10, + 0xb5, + 0xed, + 0xe7, + 0x16, + 0x09, + 0x54, + 0xde, + 0x60, + 0xa7, + 0xd1, + 0x16, + 0x6e, + 0x2e, + 0xb7, + 0xbe, + 0x7a, + 0xd5, + 0x9b, + 0x26, + 0xef, + 0xe4, + 0x0e, + 0x77, + 0xfa, + 0xa9, + 0xdd, + 0xdc, + 0xb9, + 0x88, + 0x19, + 0x23, + 0x70, + 0xc7, + 0xe1, + 0x60, + 0xaf, + 0x8c, + 0x73, + 0x04, + 0xf7, + 0x71, + 0x17, + 0x81, + 0x36, + 0x75, + 0xbb, + 0x97, + 0xd7, + 0x75, + 0xb6, + 0x8e, + 0xbc, + 0xac, + 0x9c, + 0x6a, + 0x9b, + 0x24, + 0x89, + 0x02, + 0x81, + 0x80, + 0x5a, + 0x2b, + 0xc7, + 0x6b, + 0x8c, + 0x65, + 0xdb, + 0x04, + 0x73, + 0xab, + 0x25, + 0xe1, + 0x5b, + 0xbc, + 0x3c, + 0xcf, + 0x5a, + 0x3c, + 0x04, + 0xae, + 0x97, + 0x2e, + 0xfd, + 0xa4, + 0x97, + 0x1f, + 0x05, + 0x17, + 0x27, + 0xac, + 0x7c, + 0x30, + 0x85, + 0xb4, + 0x82, + 0x3f, + 0x5b, + 0xb7, + 0x94, + 0x3b, + 0x7f, + 0x6c, + 0x0c, + 0xc7, + 0x16, + 0xc6, + 0xa0, + 0xbd, + 0x80, + 0xb0, + 0x81, + 0xde, + 0xa0, + 0x23, + 0xa6, + 0xf6, + 0x75, + 0x33, + 0x51, + 0x35, + 0xa2, + 0x75, + 0x55, + 0x70, + 0x4d, + 0x42, + 0xbb, + 0xcf, + 0x54, + 0xe4, + 0xdb, + 0x2d, + 0x88, + 0xa0, + 0x7a, + 0xf2, + 0x17, + 0xa7, + 0xdd, + 0x13, + 0x44, + 0x9f, + 0x5f, + 0x6b, + 0x2c, + 0x42, + 0x42, + 0x8b, + 0x13, + 0x4d, + 0xf9, + 0x5b, + 0xf8, + 0x33, + 0x42, + 0xd9, + 0x9e, + 0x50, + 0x1c, + 0x7c, + 0xbc, + 0xfa, + 0x62, + 0x85, + 0x0b, + 0xcf, + 0x99, + 0xda, + 0x9e, + 0x04, + 0x90, + 0xb2, + 0xc6, + 0xb2, + 0x0a, + 0x2a, + 0x7c, + 0x6d, + 0x6a, + 0x40, + 0xfc, + 0xf5, + 0x50, + 0x98, + 0x46, + 0x89, + 0x82, + 0x40, }; #endif #ifndef OPENSSL_NO_EC -# ifndef OPENSSL_NO_DEPRECATED_3_0 +#ifndef OPENSSL_NO_DEPRECATED_3_0 /* * -----BEGIN EC PRIVATE KEY----- * MHcCAQEEIJLyl7hJjpQL/RhP1x2zS79xdiPJQB683gWeqcqHPeZkoAoGCCqGSM49 @@ -228,7 +2027,7 @@ static const char ECDSAPrivateKeyPEM[] = { 0x4e, 0x44, 0x20, 0x45, 0x43, 0x20, 0x50, 0x52, 0x49, 0x56, 0x41, 0x54, 0x45, 0x20, 0x4b, 0x45, 0x59, 0x2d, 0x2d, 0x2d, 0x2d, 0x2d, 0x0a }; -# endif +#endif /* * -----BEGIN CERTIFICATE----- @@ -476,7 +2275,12 @@ static int idx; #define FUZZTIME 1485898104 -#define TIME_IMPL(t) { if (t != NULL) *t = FUZZTIME; return FUZZTIME; } +#define TIME_IMPL(t) \ + { \ + if (t != NULL) \ + *t = FUZZTIME; \ + return FUZZTIME; \ + } /* * This might not work in all cases (and definitely not on Windows @@ -489,7 +2293,7 @@ static int idx; time_t time(time_t *t) TIME_IMPL(t) #endif -int FuzzerInitialize(int *argc, char ***argv) + int FuzzerInitialize(int *argc, char ***argv) { STACK_OF(SSL_COMP) *comp_methods; @@ -511,7 +2315,7 @@ int FuzzerTestOneInput(const uint8_t *buf, size_t len) SSL *server; BIO *in; BIO *out; -#if !defined(OPENSSL_NO_EC) \ +#if !defined(OPENSSL_NO_EC) \ || (!defined(OPENSSL_NO_DSA) && !defined(OPENSSL_NO_DEPRECATED_3_0)) BIO *bio_buf; #endif @@ -526,9 +2330,9 @@ int FuzzerTestOneInput(const uint8_t *buf, size_t len) #endif X509 *cert; #ifndef OPENSSL_NO_DEPRECATED_3_0 -# ifndef OPENSSL_NO_EC +#ifndef OPENSSL_NO_EC EC_KEY *ecdsakey = NULL; -# endif +#endif #endif #if !defined(OPENSSL_NO_DSA) && !defined(OPENSSL_NO_DEPRECATED_3_0) DSA *dsakey = NULL; @@ -566,7 +2370,7 @@ int FuzzerTestOneInput(const uint8_t *buf, size_t len) X509_free(cert); #ifndef OPENSSL_NO_EC -# ifndef OPENSSL_NO_DEPRECATED_3_0 +#ifndef OPENSSL_NO_DEPRECATED_3_0 /* ECDSA */ bio_buf = BIO_new(BIO_s_mem()); OPENSSL_assert((size_t)BIO_write(bio_buf, ECDSAPrivateKeyPEM, sizeof(ECDSAPrivateKeyPEM)) == sizeof(ECDSAPrivateKeyPEM)); @@ -579,7 +2383,7 @@ int FuzzerTestOneInput(const uint8_t *buf, size_t len) ret = SSL_CTX_use_PrivateKey(ctx, pkey); OPENSSL_assert(ret == 1); EVP_PKEY_free(pkey); -# endif +#endif bio_buf = BIO_new(BIO_s_mem()); OPENSSL_assert((size_t)BIO_write(bio_buf, ECDSACertPEM, sizeof(ECDSACertPEM)) == sizeof(ECDSACertPEM)); cert = PEM_read_bio_X509(bio_buf, NULL, NULL, NULL); @@ -620,13 +2424,12 @@ int FuzzerTestOneInput(const uint8_t *buf, size_t len) SSL_set_bio(server, in, out); SSL_set_accept_state(server); - opt = (uint8_t)buf[len-1]; + opt = (uint8_t)buf[len - 1]; len--; OPENSSL_assert((size_t)BIO_write(in, buf, len) == len); - if ((opt & 0x01) != 0) - { + if ((opt & 0x01) != 0) { do { char early_buf[16384]; size_t early_len; diff --git a/fuzz/test-corpus.c b/fuzz/test-corpus.c index aaeec778603f..783df1a07688 100644 --- a/fuzz/test-corpus.c +++ b/fuzz/test-corpus.c @@ -23,16 +23,16 @@ #include "internal/o_dir.h" #if defined(_WIN32) && defined(_MAX_PATH) && !defined(PATH_MAX) -# define PATH_MAX _MAX_PATH +#define PATH_MAX _MAX_PATH #endif #ifndef PATH_MAX -# define PATH_MAX 4096 +#define PATH_MAX 4096 #endif -# if !defined(S_ISREG) -# define S_ISREG(m) ((m) & S_IFREG) -# endif +#if !defined(S_ISREG) +#define S_ISREG(m) ((m) & S_IFREG) +#endif static void testfile(const char *pathname) { @@ -58,7 +58,8 @@ static void testfile(const char *pathname) fclose(f); } -int main(int argc, char **argv) { +int main(int argc, char **argv) +{ int n; FuzzerInitialize(&argc, &argv); diff --git a/fuzz/x509.c b/fuzz/x509.c index b1e12cf901ca..2faaafc77709 100644 --- a/fuzz/x509.c +++ b/fuzz/x509.c @@ -19,7 +19,8 @@ int FuzzerInitialize(int *argc, char ***argv) { FuzzerSetRand(); OPENSSL_init_crypto(OPENSSL_INIT_LOAD_CRYPTO_STRINGS - | OPENSSL_INIT_ADD_ALL_CIPHERS | OPENSSL_INIT_ADD_ALL_DIGESTS, NULL); + | OPENSSL_INIT_ADD_ALL_CIPHERS | OPENSSL_INIT_ADD_ALL_DIGESTS, + NULL); ERR_clear_error(); CRYPTO_free_ex_index(0, -1); return 1; @@ -131,7 +132,7 @@ int FuzzerTestOneInput(const uint8_t *buf, size_t len) if (id == NULL) goto err; OCSP_resp_find_status(bs, id, &status, &reason, &revtime, &thisupd, - &nextupd); + &nextupd); } err: |
