// Copyright 2025 The BoringSSL Authors // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // https://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. package runner func addPeekTests() { // Test SSL_peek works, including on empty records. testCases = append(testCases, testCase{ name: "Peek-Basic", sendEmptyRecords: 1, flags: []string{"-peek-then-read"}, }) // Test SSL_peek can drive the initial handshake. testCases = append(testCases, testCase{ name: "Peek-ImplicitHandshake", flags: []string{ "-peek-then-read", "-implicit-handshake", }, }) // Test SSL_peek can discover and drive a renegotiation. testCases = append(testCases, testCase{ name: "Peek-Renegotiate", config: Config{ MaxVersion: VersionTLS12, }, renegotiate: 1, flags: []string{ "-peek-then-read", "-renegotiate-freely", "-expect-total-renegotiations", "1", }, }) // Test SSL_peek can discover a close_notify. testCases = append(testCases, testCase{ name: "Peek-Shutdown", config: Config{ Bugs: ProtocolBugs{ ExpectCloseNotify: true, }, }, flags: []string{ "-peek-then-read", "-check-close-notify", }, }) // Test SSL_peek can discover an alert. testCases = append(testCases, testCase{ name: "Peek-Alert", config: Config{ Bugs: ProtocolBugs{ SendSpuriousAlert: alertRecordOverflow, }, }, flags: []string{"-peek-then-read"}, shouldFail: true, expectedError: ":TLSV1_ALERT_RECORD_OVERFLOW:", }) // Test SSL_peek can handle KeyUpdate. testCases = append(testCases, testCase{ name: "Peek-KeyUpdate", config: Config{ MaxVersion: VersionTLS13, }, sendKeyUpdates: 1, keyUpdateRequest: keyUpdateNotRequested, flags: []string{"-peek-then-read"}, }) }