aboutsummaryrefslogtreecommitdiff
path: root/test/sysdefaulttest.c
diff options
context:
space:
mode:
authorTomas Mraz <tmraz@fedoraproject.org>2018-03-19 10:01:39 -0400
committerRich Salz <rsalz@openssl.org>2018-03-19 10:22:49 -0400
commit8a5ed9dce8ee36b4bb05cb928fa7a01aba6d8e41 (patch)
tree3b942fbfeb7c69a11ed45db6993cd39455ea7e0a /test/sysdefaulttest.c
parent440bce8f813fa661437ce52378c3df38e2fd073b (diff)
downloadopenssl-8a5ed9dce8ee36b4bb05cb928fa7a01aba6d8e41.zip
openssl-8a5ed9dce8ee36b4bb05cb928fa7a01aba6d8e41.tar.gz
openssl-8a5ed9dce8ee36b4bb05cb928fa7a01aba6d8e41.tar.bz2
Apply system_default configuration on SSL_CTX_new().
When SSL_CTX is created preinitialize it with system default configuration from system_default section. Reviewed-by: Tim Hudson <tjh@openssl.org> Reviewed-by: Rich Salz <rsalz@openssl.org> (Merged from https://github.com/openssl/openssl/pull/4848)
Diffstat (limited to 'test/sysdefaulttest.c')
-rw-r--r--test/sysdefaulttest.c50
1 files changed, 50 insertions, 0 deletions
diff --git a/test/sysdefaulttest.c b/test/sysdefaulttest.c
new file mode 100644
index 0000000..8ee4f24
--- /dev/null
+++ b/test/sysdefaulttest.c
@@ -0,0 +1,50 @@
+/*
+ * Copyright 2016-2017 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
+ * in the file LICENSE in the source distribution or at
+ * https://www.openssl.org/source/license.html
+ */
+
+#include <stdio.h>
+#include <openssl/opensslconf.h>
+
+#include <string.h>
+#include <openssl/evp.h>
+#include <openssl/ssl.h>
+#include <openssl/tls1.h>
+#include "testutil.h"
+
+static SSL_CTX *ctx;
+
+static int test_func(void)
+{
+ if (!TEST_int_eq(SSL_CTX_get_min_proto_version(ctx), TLS1_2_VERSION)
+ && !TEST_int_eq(SSL_CTX_get_max_proto_version(ctx), TLS1_2_VERSION)) {
+ TEST_info("min/max version setting incorrect");
+ return 0;
+ }
+ return 1;
+}
+
+int global_init(void)
+{
+ if (!OPENSSL_init_ssl(OPENSSL_INIT_ENGINE_ALL_BUILTIN
+ | OPENSSL_INIT_LOAD_CONFIG, NULL))
+ return 0;
+ return 1;
+}
+
+int setup_tests(void)
+{
+ if (!TEST_ptr(ctx = SSL_CTX_new(TLS_method())))
+ return 0;
+ ADD_TEST(test_func);
+ return 1;
+}
+
+void cleanup_tests(void)
+{
+ SSL_CTX_free(ctx);
+}