Add comments to test_ciphersuite_change()
[openssl.git] / test / ossl_shim / test_config.h
index e04fdd40ea40231a36a1888d15699bfd9ee47bda..b4efa455aebcfa482f8bcacb4567a5a3ea457a20 100644 (file)
@@ -1,30 +1,25 @@
-/* Copyright (c) 2014, Google Inc.
+/*
+ * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved.
  *
- * Permission to use, copy, modify, and/or distribute this software for any
- * purpose with or without fee is hereby granted, provided that the above
- * copyright notice and this permission notice appear in all copies.
- *
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
- * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
- * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
- * SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
- * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
- * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
- * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */
+ * 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
+ */
 
 #ifndef HEADER_TEST_CONFIG
 #define HEADER_TEST_CONFIG
 
 #include <string>
+#include <vector>
 
 
 struct TestConfig {
   int port = 0;
   bool is_server = false;
   bool is_dtls = false;
-  bool resume = false;
+  int resume_count = 0;
   bool fallback_scsv = false;
-  std::string digest_prefs;
   std::string key_file;
   std::string cert_file;
   std::string expected_server_name;
@@ -32,51 +27,37 @@ struct TestConfig {
   bool require_any_client_certificate = false;
   std::string advertise_npn;
   std::string expected_next_proto;
-  bool false_start = false;
   std::string select_next_proto;
   bool async = false;
   bool write_different_record_sizes = false;
-  bool cbc_record_splitting = false;
   bool partial_write = false;
+  bool no_tls13 = false;
   bool no_tls12 = false;
   bool no_tls11 = false;
   bool no_tls1 = false;
   bool no_ssl3 = false;
-  std::string expected_channel_id;
-  std::string send_channel_id;
   bool shim_writes_first = false;
   std::string host_name;
   std::string advertise_alpn;
   std::string expected_alpn;
   std::string expected_advertised_alpn;
   std::string select_alpn;
+  bool decline_alpn = false;
   bool expect_session_miss = false;
   bool expect_extended_master_secret = false;
   std::string psk;
   std::string psk_identity;
   std::string srtp_profiles;
-  bool enable_ocsp_stapling = false;
-  std::string expected_ocsp_response;
-  bool enable_signed_cert_timestamps = false;
-  std::string expected_signed_cert_timestamps;
   int min_version = 0;
   int max_version = 0;
   int mtu = 0;
   bool implicit_handshake = false;
-  bool use_early_callback = false;
-  bool fail_early_callback = false;
-  bool install_ddos_callback = false;
-  bool fail_ddos_callback = false;
-  bool fail_second_ddos_callback = false;
   std::string cipher;
-  std::string cipher_tls10;
-  std::string cipher_tls11;
   bool handshake_never_done = false;
   int export_keying_material = 0;
   std::string export_label;
   std::string export_context;
   bool use_export_context = false;
-  bool tls_unique = false;
   bool expect_ticket_renewal = false;
   bool expect_no_session = false;
   bool use_ticket_callback = false;
@@ -85,24 +66,20 @@ struct TestConfig {
   bool enable_server_custom_extension = false;
   bool custom_extension_skip = false;
   bool custom_extension_fail_add = false;
-  std::string ocsp_response;
   bool check_close_notify = false;
   bool shim_shuts_down = false;
   bool verify_fail = false;
   bool verify_peer = false;
   bool expect_verify_result = false;
-  std::string signed_cert_timestamps;
   int expect_total_renegotiations = 0;
-  bool renegotiate_once = false;
   bool renegotiate_freely = false;
-  bool renegotiate_ignore = false;
-  bool disable_npn = false;
-  int expect_server_key_exchange_hash = 0;
   bool p384_only = false;
   bool enable_all_curves = false;
   bool use_sparse_dh_prime = false;
-  int expect_key_exchange_info = 0;
   bool use_old_client_cert_callback = false;
+  bool use_null_client_ca_list = false;
+  bool peek_then_read = false;
+  int max_cert_list = 0;
 };
 
 bool ParseConfig(int argc, char **argv, TestConfig *out_config);