X-Git-Url: https://git.openssl.org/gitweb/?a=blobdiff_plain;f=test%2Fct_test.c;h=de374764ef191af2d984eb2b5394d482f7a4965e;hb=aff58ee3828fec3bba8ffaeeba39bc77984fded4;hp=5123e50d0deaa4b4f954f9d74909ebcc13fbec97;hpb=2326bba0e5cbe98f4d00855a6909b1f14b6f5427;p=openssl.git diff --git a/test/ct_test.c b/test/ct_test.c index 5123e50d0d..de374764ef 100644 --- a/test/ct_test.c +++ b/test/ct_test.c @@ -1,5 +1,5 @@ /* - * Copyright 2016-2017 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved. * * Licensed under the OpenSSL license (the "License"). You may not use * this file except in compliance with the License. You can obtain a copy @@ -8,7 +8,6 @@ */ #include -#include #include #include #include @@ -19,7 +18,7 @@ #include #include #include "testutil.h" -#include "openssl/crypto.h" +#include #ifndef OPENSSL_NO_CT /* Used when declaring buffers to read text files into */ @@ -297,7 +296,8 @@ static int execute_cert_test(CT_TEST_FIXTURE *fixture) for (i = 0; i < sk_SCT_num(scts); ++i) { SCT *sct_i = sk_SCT_value(scts, i); - if (!TEST_int_eq(SCT_get_source(sct_i), SCT_SOURCE_X509V3_EXTENSION)) { + if (!TEST_int_eq(SCT_get_source(sct_i), + SCT_SOURCE_X509V3_EXTENSION)) { goto end; } } @@ -344,22 +344,27 @@ end: return success; } -# define SETUP_CT_TEST_FIXTURE() SETUP_TEST_FIXTURE(CT_TEST_FIXTURE *, set_up) +# define SETUP_CT_TEST_FIXTURE() SETUP_TEST_FIXTURE(CT_TEST_FIXTURE, set_up) # define EXECUTE_CT_TEST() EXECUTE_TEST(execute_cert_test, tear_down) static int test_no_scts_in_certificate(void) { SETUP_CT_TEST_FIXTURE(); + if (fixture == NULL) + return 0; fixture->certs_dir = certs_dir; fixture->certificate_file = "leaf.pem"; fixture->issuer_file = "subinterCA.pem"; fixture->expected_sct_count = 0; EXECUTE_CT_TEST(); + return result; } static int test_one_sct_in_certificate(void) { SETUP_CT_TEST_FIXTURE(); + if (fixture == NULL) + return 0; fixture->certs_dir = certs_dir; fixture->certificate_file = "embeddedSCTs1.pem"; fixture->issuer_file = "embeddedSCTs1_issuer.pem"; @@ -367,11 +372,14 @@ static int test_one_sct_in_certificate(void) fixture->sct_dir = certs_dir; fixture->sct_text_file = "embeddedSCTs1.sct"; EXECUTE_CT_TEST(); + return result; } static int test_multiple_scts_in_certificate(void) { SETUP_CT_TEST_FIXTURE(); + if (fixture == NULL) + return 0; fixture->certs_dir = certs_dir; fixture->certificate_file = "embeddedSCTs3.pem"; fixture->issuer_file = "embeddedSCTs3_issuer.pem"; @@ -379,33 +387,42 @@ static int test_multiple_scts_in_certificate(void) fixture->sct_dir = certs_dir; fixture->sct_text_file = "embeddedSCTs3.sct"; EXECUTE_CT_TEST(); + return result; } static int test_verify_one_sct(void) { SETUP_CT_TEST_FIXTURE(); + if (fixture == NULL) + return 0; fixture->certs_dir = certs_dir; fixture->certificate_file = "embeddedSCTs1.pem"; fixture->issuer_file = "embeddedSCTs1_issuer.pem"; fixture->expected_sct_count = fixture->expected_valid_sct_count = 1; fixture->test_validity = 1; EXECUTE_CT_TEST(); + return result; } static int test_verify_multiple_scts(void) { SETUP_CT_TEST_FIXTURE(); + if (fixture == NULL) + return 0; fixture->certs_dir = certs_dir; fixture->certificate_file = "embeddedSCTs3.pem"; fixture->issuer_file = "embeddedSCTs3_issuer.pem"; fixture->expected_sct_count = fixture->expected_valid_sct_count = 3; fixture->test_validity = 1; EXECUTE_CT_TEST(); + return result; } static int test_verify_fails_for_future_sct(void) { SETUP_CT_TEST_FIXTURE(); + if (fixture == NULL) + return 0; fixture->epoch_time_in_ms = 1365094800000; /* Apr 4 17:00:00 2013 GMT */ fixture->certs_dir = certs_dir; fixture->certificate_file = "embeddedSCTs1.pem"; @@ -414,6 +431,7 @@ static int test_verify_fails_for_future_sct(void) fixture->expected_valid_sct_count = 0; fixture->test_validity = 1; EXECUTE_CT_TEST(); + return result; } static int test_decode_tls_sct(void) @@ -437,11 +455,14 @@ static int test_decode_tls_sct(void) "\xED\xBF\x08"; SETUP_CT_TEST_FIXTURE(); + if (fixture == NULL) + return 0; fixture->tls_sct_list = tls_sct_list; fixture->tls_sct_list_len = 0x7a; fixture->sct_dir = ct_dir; fixture->sct_text_file = "tls1.sct"; EXECUTE_CT_TEST(); + return result; } static int test_encode_tls_sct(void) @@ -454,6 +475,8 @@ static int test_encode_tls_sct(void) SCT *sct = NULL; SETUP_CT_TEST_FIXTURE(); + if (fixture == NULL) + return 0; fixture->sct_list = sk_SCT_new_null(); if (!TEST_ptr(sct = SCT_new_from_base64(SCT_VERSION_V1, log_id, @@ -466,6 +489,7 @@ static int test_encode_tls_sct(void) fixture->sct_dir = ct_dir; fixture->sct_text_file = "tls1.sct"; EXECUTE_CT_TEST(); + return result; } /* @@ -476,11 +500,12 @@ static int test_default_ct_policy_eval_ctx_time_is_now(void) { int success = 0; CT_POLICY_EVAL_CTX *ct_policy_ctx = CT_POLICY_EVAL_CTX_new(); - const time_t default_time = CT_POLICY_EVAL_CTX_get_time(ct_policy_ctx) / - 1000; + const time_t default_time = + (time_t)(CT_POLICY_EVAL_CTX_get_time(ct_policy_ctx) / 1000); const time_t time_tolerance = 600; /* 10 minutes */ - if (!TEST_uint_le(fabs(difftime(time(NULL), default_time)), time_tolerance)) + if (!TEST_time_t_le(abs((int)difftime(time(NULL), default_time)), + time_tolerance)) goto end; success = 1;