Add a callback for DDoS protection.

This callback receives information about the ClientHello and can decide
whether or not to allow the handshake to continue.

Change-Id: I21be28335fa74fedb5b73a310ee24310670fc923
Reviewed-on: https://boringssl-review.googlesource.com/3721
Reviewed-by: Adam Langley <agl@google.com>
diff --git a/ssl/test/test_config.cc b/ssl/test/test_config.cc
index 4db72b4..cbfc10f 100644
--- a/ssl/test/test_config.cc
+++ b/ssl/test/test_config.cc
@@ -75,6 +75,9 @@
   { "-implicit-handshake", &TestConfig::implicit_handshake },
   { "-use-early-callback", &TestConfig::use_early_callback },
   { "-fail-early-callback", &TestConfig::fail_early_callback },
+  { "-install-ddos-callback", &TestConfig::install_ddos_callback },
+  { "-fail-ddos-callback", &TestConfig::fail_ddos_callback },
+  { "-fail-second-ddos-callback", &TestConfig::fail_second_ddos_callback },
 };
 
 const Flag<std::string> kStringFlags[] = {
@@ -142,7 +145,9 @@
       mtu(0),
       implicit_handshake(false),
       use_early_callback(false),
-      fail_early_callback(false) {
+      fail_early_callback(false),
+      install_ddos_callback(false),
+      fail_ddos_callback(false) {
 }
 
 bool ParseConfig(int argc, char **argv, TestConfig *out_config) {