Configure common config bits in one place.
Right now the logic happens twice which is a nuisance.
Change-Id: Ia8155ada0b4479b2ca4be06152b8cd99816e14e8
Reviewed-on: https://boringssl-review.googlesource.com/10440
Reviewed-by: Nick Harper <nharper@chromium.org>
Reviewed-by: David Benjamin <davidben@google.com>
Commit-Queue: David Benjamin <davidben@google.com>
CQ-Verified: CQ bot account: commit-bot@chromium.org <commit-bot@chromium.org>
diff --git a/ssl/test/runner/runner.go b/ssl/test/runner/runner.go
index 75b421e..54e601b 100644
--- a/ssl/test/runner/runner.go
+++ b/ssl/test/runner/runner.go
@@ -414,6 +414,32 @@
}
func doExchange(test *testCase, config *Config, conn net.Conn, isResume bool) error {
+ if !test.noSessionCache {
+ if config.ClientSessionCache == nil {
+ config.ClientSessionCache = NewLRUClientSessionCache(1)
+ }
+ if config.ServerSessionCache == nil {
+ config.ServerSessionCache = NewLRUServerSessionCache(1)
+ }
+ }
+ if test.testType == clientTest {
+ if len(config.Certificates) == 0 {
+ config.Certificates = []Certificate{rsaCertificate}
+ }
+ } else {
+ // Supply a ServerName to ensure a constant session cache key,
+ // rather than falling back to net.Conn.RemoteAddr.
+ if len(config.ServerName) == 0 {
+ config.ServerName = "test"
+ }
+ }
+ if *fuzzer {
+ config.Bugs.NullAllCiphers = true
+ }
+ if *deterministic {
+ config.Rand = &deterministicRand{}
+ }
+
conn = &timeoutConn{conn, *idleTimeout}
if test.protocol == dtls {
@@ -854,27 +880,6 @@
go func() { waitChan <- shim.Wait() }()
config := test.config
- if !test.noSessionCache {
- config.ClientSessionCache = NewLRUClientSessionCache(1)
- config.ServerSessionCache = NewLRUServerSessionCache(1)
- }
- if test.testType == clientTest {
- if len(config.Certificates) == 0 {
- config.Certificates = []Certificate{rsaCertificate}
- }
- } else {
- // Supply a ServerName to ensure a constant session cache key,
- // rather than falling back to net.Conn.RemoteAddr.
- if len(config.ServerName) == 0 {
- config.ServerName = "test"
- }
- }
- if *fuzzer {
- config.Bugs.NullAllCiphers = true
- }
- if *deterministic {
- config.Rand = &deterministicRand{}
- }
conn, err := acceptOrWait(listener, waitChan)
if err == nil {
@@ -886,25 +891,11 @@
var resumeConfig Config
if test.resumeConfig != nil {
resumeConfig = *test.resumeConfig
- if len(resumeConfig.ServerName) == 0 {
- resumeConfig.ServerName = config.ServerName
- }
- if len(resumeConfig.Certificates) == 0 {
- resumeConfig.Certificates = []Certificate{rsaCertificate}
- }
- if test.newSessionsOnResume {
- if !test.noSessionCache {
- resumeConfig.ClientSessionCache = NewLRUClientSessionCache(1)
- resumeConfig.ServerSessionCache = NewLRUServerSessionCache(1)
- }
- } else {
+ if !test.newSessionsOnResume {
resumeConfig.SessionTicketKey = config.SessionTicketKey
resumeConfig.ClientSessionCache = config.ClientSessionCache
resumeConfig.ServerSessionCache = config.ServerSessionCache
}
- if *fuzzer {
- resumeConfig.Bugs.NullAllCiphers = true
- }
resumeConfig.Rand = config.Rand
} else {
resumeConfig = config