Copyright consolidation 02/10
[openssl.git] / test / ssl_test_ctx.h
index a183272b4e3a8f1e5f7a7a0a75f81aab966d2c66..fe928075c6368d420c75e844cc575ea54f9e315e 100644 (file)
@@ -1,11 +1,10 @@
 /*
  * 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
+ * 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
- * or in the file LICENSE in the source distribution.
  */
 
 #ifndef HEADER_SSL_TEST_CTX_H
 #include <openssl/ssl.h>
 
 typedef enum {
-    SSL_TEST_SUCCESS,  /* Default */
+    SSL_TEST_SUCCESS = 0,  /* Default */
     SSL_TEST_SERVER_FAIL,
     SSL_TEST_CLIENT_FAIL,
     SSL_TEST_INTERNAL_ERROR
 } ssl_test_result_t;
 
+typedef enum {
+    SSL_TEST_VERIFY_NONE = 0, /* Default */
+    SSL_TEST_VERIFY_ACCEPT_ALL,
+    SSL_TEST_VERIFY_REJECT_ALL
+} ssl_verify_callback_t;
+
 typedef struct ssl_test_ctx {
     /* Test expectations. */
     /* Defaults to SUCCESS. */
@@ -34,11 +39,14 @@ typedef struct ssl_test_ctx {
     /* Negotiated protocol version. 0 if no expectation. */
     /* See ssl.h for protocol versions. */
     int protocol;
+    /* One of a number of predefined custom callbacks. */
+    ssl_verify_callback_t client_verify_callback;
 } SSL_TEST_CTX;
 
-const char *ssl_test_result_t_name(ssl_test_result_t result);
+const char *ssl_test_result_name(ssl_test_result_t result);
 const char *ssl_alert_name(int alert);
 const char *ssl_protocol_name(int protocol);
+const char *ssl_verify_callback_name(ssl_verify_callback_t verify_callback);
 
 /*
  * Load the test case context from |conf|.