runner: Add a convenience function for base64 flags. base64.StdEncoding.EncodeToString is very long to write out. Change-Id: Ie987d483513e4192a31c8562b9cf25e99f8a838b Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/48134 Commit-Queue: David Benjamin <davidben@google.com> Reviewed-by: Adam Langley <agl@google.com>
diff --git a/ssl/test/runner/runner.go b/ssl/test/runner/runner.go index e07621d..5bdd50c 100644 --- a/ssl/test/runner/runner.go +++ b/ssl/test/runner/runner.go
@@ -266,6 +266,10 @@ return ret } +func base64FlagValue(in []byte) string { + return base64.StdEncoding.EncodeToString(in) +} + func useDebugger() bool { return *useGDB || *useLLDB || *useRR || *waitForDebugger } @@ -1469,9 +1473,9 @@ } flags = append(flags, "-quic-transport-params", - base64.StdEncoding.EncodeToString([]byte{3, 4}), + base64FlagValue([]byte{3, 4}), "-expect-quic-transport-params", - base64.StdEncoding.EncodeToString([]byte{1, 2}), + base64FlagValue([]byte{1, 2}), "-quic-use-legacy-codepoint", useCodepointFlag) } if !test.skipQUICALPNConfig { @@ -1982,7 +1986,7 @@ }, flags: []string{ "-expect-certificate-types", - base64.StdEncoding.EncodeToString([]byte{ + base64FlagValue([]byte{ CertTypeDSSSign, CertTypeRSASign, CertTypeECDSASign, @@ -5216,7 +5220,7 @@ flags: []string{ "-enable-ocsp-stapling", "-expect-ocsp-response", - base64.StdEncoding.EncodeToString(testOCSPResponse), + base64FlagValue(testOCSPResponse), "-verify-peer", }, resumeSession: true, @@ -5232,7 +5236,7 @@ }, flags: []string{ "-ocsp-response", - base64.StdEncoding.EncodeToString(testOCSPResponse), + base64FlagValue(testOCSPResponse), }, resumeSession: true, }) @@ -5309,7 +5313,7 @@ "-use-ocsp-callback", "-set-ocsp-in-callback", "-ocsp-response", - base64.StdEncoding.EncodeToString(testOCSPResponse), + base64FlagValue(testOCSPResponse), }, resumeSession: true, }) @@ -5330,7 +5334,7 @@ "-use-ocsp-callback", "-decline-ocsp-callback", "-ocsp-response", - base64.StdEncoding.EncodeToString(testOCSPResponse), + base64FlagValue(testOCSPResponse), }, resumeSession: true, }) @@ -5346,7 +5350,7 @@ "-use-ocsp-callback", "-fail-ocsp-callback", "-ocsp-response", - base64.StdEncoding.EncodeToString(testOCSPResponse), + base64FlagValue(testOCSPResponse), }, shouldFail: true, expectedError: ":OCSP_CB_ERROR:", @@ -5790,7 +5794,7 @@ }, flags: []string{ "-expect-channel-id", - base64.StdEncoding.EncodeToString(channelIDBytes), + base64FlagValue(channelIDBytes), "-advertise-npn", "\x03foo\x03bar\x03baz", "-expect-next-proto", "bar", }, @@ -5843,7 +5847,7 @@ }, flags: []string{ "-expect-channel-id", - base64.StdEncoding.EncodeToString(channelIDBytes), + base64FlagValue(channelIDBytes), }, resumeSession: true, expectations: connectionExpectations{ @@ -7750,7 +7754,7 @@ } flags := []string{ "-quic-transport-params", - base64.StdEncoding.EncodeToString([]byte{1, 2}), + base64FlagValue([]byte{1, 2}), "-quic-use-legacy-codepoint", useCodepointFlag, } expectations := connectionExpectations{ @@ -7775,7 +7779,7 @@ } else { flags = append(flags, "-expect-quic-transport-params", - base64.StdEncoding.EncodeToString([]byte{3, 4})) + base64FlagValue([]byte{3, 4})) } testCases = append(testCases, testCase{ testType: clientTest, @@ -7813,7 +7817,7 @@ } flags := []string{ "-quic-transport-params", - base64.StdEncoding.EncodeToString([]byte{3, 4}), + base64FlagValue([]byte{3, 4}), "-quic-use-legacy-codepoint", useCodepointFlag, } if clientSends != QUICUseCodepointBoth && clientSends != serverConfig { @@ -7823,7 +7827,7 @@ } else { flags = append(flags, "-expect-quic-transport-params", - base64.StdEncoding.EncodeToString([]byte{1, 2}), + base64FlagValue([]byte{1, 2}), ) } testCases = append(testCases, testCase{ @@ -7864,7 +7868,7 @@ "-max-version", strconv.Itoa(int(ver.versionWire)), "-quic-transport-params", - base64.StdEncoding.EncodeToString([]byte{3, 4}), + base64FlagValue([]byte{3, 4}), "-quic-use-legacy-codepoint", useCodepointFlag, }, shouldFail: true, @@ -8167,7 +8171,7 @@ flags: []string{ "-enable-signed-cert-timestamps", "-expect-signed-cert-timestamps", - base64.StdEncoding.EncodeToString(testSCTList), + base64FlagValue(testSCTList), }, resumeSession: true, }) @@ -8190,7 +8194,7 @@ flags: []string{ "-enable-signed-cert-timestamps", "-expect-signed-cert-timestamps", - base64.StdEncoding.EncodeToString(testSCTList), + base64FlagValue(testSCTList), }, resumeSession: true, }) @@ -8204,7 +8208,7 @@ }, flags: []string{ "-signed-cert-timestamps", - base64.StdEncoding.EncodeToString(testSCTList), + base64FlagValue(testSCTList), }, expectations: connectionExpectations{ sctList: testSCTList, @@ -8264,9 +8268,9 @@ }, flags: []string{ "-ocsp-response", - base64.StdEncoding.EncodeToString(testOCSPResponse), + base64FlagValue(testOCSPResponse), "-signed-cert-timestamps", - base64.StdEncoding.EncodeToString(testSCTList), + base64FlagValue(testSCTList), }, }) @@ -8313,7 +8317,7 @@ echConfig := generateServerECHConfig(&ECHConfig{ConfigID: 42}) test.config.ServerECHConfigs = []ServerECHConfig{echConfig} test.flags = append(test.flags, - "-ech-config-list", base64.StdEncoding.EncodeToString(CreateECHConfigList(echConfig.ECHConfig.Raw)), + "-ech-config-list", base64FlagValue(CreateECHConfigList(echConfig.ECHConfig.Raw)), "-expect-ech-accept", ) test.expectations.echAccepted = true @@ -8438,7 +8442,7 @@ flags: []string{ "-enable-ocsp-stapling", "-expect-ocsp-response", - base64.StdEncoding.EncodeToString(testOCSPResponse), + base64FlagValue(testOCSPResponse), }, resumeSession: true, }) @@ -8515,10 +8519,10 @@ flags: []string{ "-enable-ocsp-stapling", "-expect-ocsp-response", - base64.StdEncoding.EncodeToString(testOCSPResponse), + base64FlagValue(testOCSPResponse), "-enable-signed-cert-timestamps", "-expect-signed-cert-timestamps", - base64.StdEncoding.EncodeToString(testSCTList), + base64FlagValue(testSCTList), }, resumeSession: true, }) @@ -8538,9 +8542,9 @@ "-cert-file", path.Join(*resourceDir, rsaChainCertificateFile), "-key-file", path.Join(*resourceDir, rsaChainKeyFile), "-ocsp-response", - base64.StdEncoding.EncodeToString(testOCSPResponse), + base64FlagValue(testOCSPResponse), "-signed-cert-timestamps", - base64.StdEncoding.EncodeToString(testSCTList), + base64FlagValue(testSCTList), }, }) @@ -8555,9 +8559,9 @@ "-cert-file", path.Join(*resourceDir, rsaCertificateFile), "-key-file", path.Join(*resourceDir, rsaKeyFile), "-ocsp-response", - base64.StdEncoding.EncodeToString(testOCSPResponse), + base64FlagValue(testOCSPResponse), "-signed-cert-timestamps", - base64.StdEncoding.EncodeToString(testSCTList), + base64FlagValue(testSCTList), }, }) @@ -8583,7 +8587,7 @@ testType: serverTest, flags: []string{ "-signed-cert-timestamps", - base64.StdEncoding.EncodeToString([]byte{0, 0}), + base64FlagValue([]byte{0, 0}), }, shouldFail: true, expectedError: ":INVALID_SCT_LIST:", @@ -8738,7 +8742,7 @@ }, flags: []string{ "-ticket-key", - base64.StdEncoding.EncodeToString(TestShimTicketKey), + base64FlagValue(TestShimTicketKey), }, }) @@ -8758,7 +8762,7 @@ }, flags: []string{ "-ticket-key", - base64.StdEncoding.EncodeToString(TestShimTicketKey), + base64FlagValue(TestShimTicketKey), }, expectResumeRejected: true, }) @@ -8777,7 +8781,7 @@ }, flags: []string{ "-ticket-key", - base64.StdEncoding.EncodeToString(TestShimTicketKey), + base64FlagValue(TestShimTicketKey), }, expectResumeRejected: true, }) @@ -8798,7 +8802,7 @@ }, flags: []string{ "-ticket-key", - base64.StdEncoding.EncodeToString(TestShimTicketKey), + base64FlagValue(TestShimTicketKey), }, expectResumeRejected: true, }) @@ -8819,7 +8823,7 @@ flags: []string{ "-cipher", "AES128", "-ticket-key", - base64.StdEncoding.EncodeToString(TestShimTicketKey), + base64FlagValue(TestShimTicketKey), }, expectResumeRejected: true, }) @@ -8840,7 +8844,7 @@ }, flags: []string{ "-ticket-key", - base64.StdEncoding.EncodeToString(TestShimTicketKey), + base64FlagValue(TestShimTicketKey), }, shouldFail: false, expectResumeRejected: true, @@ -8865,7 +8869,7 @@ }, flags: []string{ "-ticket-key", - base64.StdEncoding.EncodeToString(TestShimTicketKey), + base64FlagValue(TestShimTicketKey), }, shouldFail: false, expectResumeRejected: true, @@ -8886,7 +8890,7 @@ }, flags: []string{ "-ticket-key", - base64.StdEncoding.EncodeToString(TestShimTicketKey), + base64FlagValue(TestShimTicketKey), }, expectResumeRejected: true, }) @@ -9636,10 +9640,10 @@ "-expect-total-renegotiations", "1", "-enable-ocsp-stapling", "-expect-ocsp-response", - base64.StdEncoding.EncodeToString(testOCSPResponse), + base64FlagValue(testOCSPResponse), "-enable-signed-cert-timestamps", "-expect-signed-cert-timestamps", - base64.StdEncoding.EncodeToString(testSCTList), + base64FlagValue(testSCTList), "-verify-fail", "-expect-verify-result", }, @@ -12912,7 +12916,7 @@ }, flags: []string{ "-expect-channel-id", - base64.StdEncoding.EncodeToString(channelIDBytes), + base64FlagValue(channelIDBytes), }, }, }) @@ -14617,7 +14621,7 @@ }, flags: []string{ "-expect-channel-id", - base64.StdEncoding.EncodeToString(channelIDBytes), + base64FlagValue(channelIDBytes), "-on-resume-expect-early-data-reason", "channel_id", }, }) @@ -16488,8 +16492,8 @@ }, resumeSession: true, flags: []string{ - "-ech-server-config", base64.StdEncoding.EncodeToString(echConfig.ECHConfig.Raw), - "-ech-server-key", base64.StdEncoding.EncodeToString(echConfig.Key), + "-ech-server-config", base64FlagValue(echConfig.ECHConfig.Raw), + "-ech-server-key", base64FlagValue(echConfig.Key), "-ech-is-retry-config", "1", "-expect-server-name", "secret.example", "-expect-ech-accept", @@ -16516,8 +16520,8 @@ }, resumeSession: true, flags: []string{ - "-ech-server-config", base64.StdEncoding.EncodeToString(echConfig.ECHConfig.Raw), - "-ech-server-key", base64.StdEncoding.EncodeToString(echConfig.Key), + "-ech-server-config", base64FlagValue(echConfig.ECHConfig.Raw), + "-ech-server-key", base64FlagValue(echConfig.Key), "-ech-is-retry-config", "1", "-expect-server-name", "secret.example", "-expect-ech-accept", @@ -16548,14 +16552,14 @@ flags: []string{ // Configure three ECHConfigs on the shim, only two of which // should be sent in retry configs. - "-ech-server-config", base64.StdEncoding.EncodeToString(echConfig1.ECHConfig.Raw), - "-ech-server-key", base64.StdEncoding.EncodeToString(echConfig1.Key), + "-ech-server-config", base64FlagValue(echConfig1.ECHConfig.Raw), + "-ech-server-key", base64FlagValue(echConfig1.Key), "-ech-is-retry-config", "0", - "-ech-server-config", base64.StdEncoding.EncodeToString(echConfig2.ECHConfig.Raw), - "-ech-server-key", base64.StdEncoding.EncodeToString(echConfig2.Key), + "-ech-server-config", base64FlagValue(echConfig2.ECHConfig.Raw), + "-ech-server-key", base64FlagValue(echConfig2.Key), "-ech-is-retry-config", "1", - "-ech-server-config", base64.StdEncoding.EncodeToString(echConfig3.ECHConfig.Raw), - "-ech-server-key", base64.StdEncoding.EncodeToString(echConfig3.Key), + "-ech-server-config", base64FlagValue(echConfig3.ECHConfig.Raw), + "-ech-server-key", base64FlagValue(echConfig3.Key), "-ech-is-retry-config", "1", "-expect-server-name", "public.example", }, @@ -16576,8 +16580,8 @@ }, }, flags: []string{ - "-ech-server-config", base64.StdEncoding.EncodeToString(echConfig.ECHConfig.Raw), - "-ech-server-key", base64.StdEncoding.EncodeToString(echConfig.Key), + "-ech-server-config", base64FlagValue(echConfig.ECHConfig.Raw), + "-ech-server-key", base64FlagValue(echConfig.Key), "-ech-is-retry-config", "1"}, shouldFail: true, expectedLocalError: "remote error: illegal parameter", @@ -16600,8 +16604,8 @@ }, }, flags: []string{ - "-ech-server-config", base64.StdEncoding.EncodeToString(echConfig.ECHConfig.Raw), - "-ech-server-key", base64.StdEncoding.EncodeToString(echConfig.Key), + "-ech-server-config", base64FlagValue(echConfig.ECHConfig.Raw), + "-ech-server-key", base64FlagValue(echConfig.Key), "-ech-is-retry-config", "1", }, shouldFail: true, @@ -16635,8 +16639,8 @@ }, }, flags: []string{ - "-ech-server-config", base64.StdEncoding.EncodeToString(echConfig.ECHConfig.Raw), - "-ech-server-key", base64.StdEncoding.EncodeToString(echConfig.Key), + "-ech-server-config", base64FlagValue(echConfig.ECHConfig.Raw), + "-ech-server-key", base64FlagValue(echConfig.Key), "-ech-is-retry-config", "1", "-expect-server-name", "secret.example", "-expect-ech-accept", @@ -16667,8 +16671,8 @@ }, }, flags: []string{ - "-ech-server-config", base64.StdEncoding.EncodeToString(echConfig.ECHConfig.Raw), - "-ech-server-key", base64.StdEncoding.EncodeToString(echConfig.Key), + "-ech-server-config", base64FlagValue(echConfig.ECHConfig.Raw), + "-ech-server-key", base64FlagValue(echConfig.Key), "-ech-is-retry-config", "1", }, shouldFail: true, @@ -16694,8 +16698,8 @@ }, }, flags: []string{ - "-ech-server-config", base64.StdEncoding.EncodeToString(echConfig.ECHConfig.Raw), - "-ech-server-key", base64.StdEncoding.EncodeToString(echConfig.Key), + "-ech-server-config", base64FlagValue(echConfig.ECHConfig.Raw), + "-ech-server-key", base64FlagValue(echConfig.Key), "-ech-is-retry-config", "1", "-expect-server-name", "secret.example", "-expect-ech-accept", @@ -16724,8 +16728,8 @@ }, }, flags: []string{ - "-ech-server-config", base64.StdEncoding.EncodeToString(echConfig.ECHConfig.Raw), - "-ech-server-key", base64.StdEncoding.EncodeToString(echConfig.Key), + "-ech-server-config", base64FlagValue(echConfig.ECHConfig.Raw), + "-ech-server-key", base64FlagValue(echConfig.Key), "-ech-is-retry-config", "1", }, shouldFail: true, @@ -16747,8 +16751,8 @@ flags: []string{ "-async", "-use-early-callback", - "-ech-server-config", base64.StdEncoding.EncodeToString(echConfig.ECHConfig.Raw), - "-ech-server-key", base64.StdEncoding.EncodeToString(echConfig.Key), + "-ech-server-config", base64FlagValue(echConfig.ECHConfig.Raw), + "-ech-server-key", base64FlagValue(echConfig.Key), "-ech-is-retry-config", "1", "-expect-server-name", "secret.example", "-expect-ech-accept", @@ -16769,11 +16773,11 @@ ClientECHConfig: echConfig1.ECHConfig, }, flags: []string{ - "-ech-server-config", base64.StdEncoding.EncodeToString(echConfig.ECHConfig.Raw), - "-ech-server-key", base64.StdEncoding.EncodeToString(echConfig.Key), + "-ech-server-config", base64FlagValue(echConfig.ECHConfig.Raw), + "-ech-server-key", base64FlagValue(echConfig.Key), "-ech-is-retry-config", "1", - "-ech-server-config", base64.StdEncoding.EncodeToString(echConfig1.ECHConfig.Raw), - "-ech-server-key", base64.StdEncoding.EncodeToString(echConfig1.Key), + "-ech-server-config", base64FlagValue(echConfig1.ECHConfig.Raw), + "-ech-server-key", base64FlagValue(echConfig1.Key), "-ech-is-retry-config", "1", "-expect-server-name", "secret.example", "-expect-ech-accept", @@ -16794,11 +16798,11 @@ ClientECHConfig: echConfigRepeatID.ECHConfig, }, flags: []string{ - "-ech-server-config", base64.StdEncoding.EncodeToString(echConfig.ECHConfig.Raw), - "-ech-server-key", base64.StdEncoding.EncodeToString(echConfig.Key), + "-ech-server-config", base64FlagValue(echConfig.ECHConfig.Raw), + "-ech-server-key", base64FlagValue(echConfig.Key), "-ech-is-retry-config", "1", - "-ech-server-config", base64.StdEncoding.EncodeToString(echConfigRepeatID.ECHConfig.Raw), - "-ech-server-key", base64.StdEncoding.EncodeToString(echConfigRepeatID.Key), + "-ech-server-config", base64FlagValue(echConfigRepeatID.ECHConfig.Raw), + "-ech-server-key", base64FlagValue(echConfigRepeatID.Key), "-ech-is-retry-config", "1", "-expect-server-name", "secret.example", "-expect-ech-accept", @@ -16823,8 +16827,8 @@ ECHCipherSuites: []HPKECipherSuite{cipher.cipher}, }, flags: []string{ - "-ech-server-config", base64.StdEncoding.EncodeToString(echConfig.ECHConfig.Raw), - "-ech-server-key", base64.StdEncoding.EncodeToString(echConfig.Key), + "-ech-server-config", base64FlagValue(echConfig.ECHConfig.Raw), + "-ech-server-key", base64FlagValue(echConfig.Key), "-ech-is-retry-config", "1", "-expect-server-name", "secret.example", "-expect-ech-accept", @@ -16853,7 +16857,7 @@ ServerECHConfigs: []ServerECHConfig{cipherConfig}, }, flags: []string{ - "-ech-config-list", base64.StdEncoding.EncodeToString(CreateECHConfigList(cipherConfig.ECHConfig.Raw)), + "-ech-config-list", base64FlagValue(CreateECHConfigList(cipherConfig.ECHConfig.Raw)), "-host-name", "secret.example", "-expect-ech-accept", }, @@ -16881,8 +16885,8 @@ }, }, flags: []string{ - "-ech-server-config", base64.StdEncoding.EncodeToString(otherCipherConfig.ECHConfig.Raw), - "-ech-server-key", base64.StdEncoding.EncodeToString(otherCipherConfig.Key), + "-ech-server-config", base64FlagValue(otherCipherConfig.ECHConfig.Raw), + "-ech-server-key", base64FlagValue(otherCipherConfig.Key), "-ech-is-retry-config", "1", "-expect-server-name", "public.example", }, @@ -16904,8 +16908,8 @@ }, }, flags: []string{ - "-ech-server-config", base64.StdEncoding.EncodeToString(echConfig.ECHConfig.Raw), - "-ech-server-key", base64.StdEncoding.EncodeToString(echConfig.Key), + "-ech-server-config", base64FlagValue(echConfig.ECHConfig.Raw), + "-ech-server-key", base64FlagValue(echConfig.Key), "-ech-is-retry-config", "1", "-expect-server-name", "public.example", }, @@ -16926,8 +16930,8 @@ }, }, flags: []string{ - "-ech-server-config", base64.StdEncoding.EncodeToString(echConfig.ECHConfig.Raw), - "-ech-server-key", base64.StdEncoding.EncodeToString(echConfig.Key), + "-ech-server-config", base64FlagValue(echConfig.ECHConfig.Raw), + "-ech-server-key", base64FlagValue(echConfig.Key), "-ech-is-retry-config", "1", }, }) @@ -16948,8 +16952,8 @@ }, }, flags: []string{ - "-ech-server-config", base64.StdEncoding.EncodeToString(echConfig.ECHConfig.Raw), - "-ech-server-key", base64.StdEncoding.EncodeToString(echConfig.Key), + "-ech-server-config", base64FlagValue(echConfig.ECHConfig.Raw), + "-ech-server-key", base64FlagValue(echConfig.Key), "-ech-is-retry-config", "1", }, shouldFail: true, @@ -16972,8 +16976,8 @@ }, }, flags: []string{ - "-ech-server-config", base64.StdEncoding.EncodeToString(echConfig.ECHConfig.Raw), - "-ech-server-key", base64.StdEncoding.EncodeToString(echConfig.Key), + "-ech-server-config", base64FlagValue(echConfig.ECHConfig.Raw), + "-ech-server-key", base64FlagValue(echConfig.Key), "-ech-is-retry-config", "1", }, shouldFail: true, @@ -16996,8 +17000,8 @@ }, }, flags: []string{ - "-ech-server-config", base64.StdEncoding.EncodeToString(echConfig.ECHConfig.Raw), - "-ech-server-key", base64.StdEncoding.EncodeToString(echConfig.Key), + "-ech-server-config", base64FlagValue(echConfig.ECHConfig.Raw), + "-ech-server-key", base64FlagValue(echConfig.Key), "-ech-is-retry-config", "1", }, shouldFail: true, @@ -17017,8 +17021,8 @@ resumeSession: true, earlyData: true, flags: []string{ - "-ech-server-config", base64.StdEncoding.EncodeToString(echConfig.ECHConfig.Raw), - "-ech-server-key", base64.StdEncoding.EncodeToString(echConfig.Key), + "-ech-server-config", base64FlagValue(echConfig.ECHConfig.Raw), + "-ech-server-key", base64FlagValue(echConfig.Key), "-ech-is-retry-config", "1", "-expect-ech-accept", }, @@ -17042,8 +17046,8 @@ earlyData: true, expectEarlyDataRejected: true, flags: []string{ - "-ech-server-config", base64.StdEncoding.EncodeToString(echConfig.ECHConfig.Raw), - "-ech-server-key", base64.StdEncoding.EncodeToString(echConfig.Key), + "-ech-server-config", base64FlagValue(echConfig.ECHConfig.Raw), + "-ech-server-key", base64FlagValue(echConfig.Key), "-ech-is-retry-config", "1", "-expect-ech-accept", }, @@ -17281,7 +17285,7 @@ }, }, flags: []string{ - "-ech-config-list", base64.StdEncoding.EncodeToString(CreateECHConfigList(echConfig.ECHConfig.Raw)), + "-ech-config-list", base64FlagValue(CreateECHConfigList(echConfig.ECHConfig.Raw)), "-host-name", "secret.example", "-expect-ech-accept", }, @@ -17305,7 +17309,7 @@ }, resumeSession: true, flags: []string{ - "-ech-config-list", base64.StdEncoding.EncodeToString(CreateECHConfigList(echConfig.ECHConfig.Raw)), + "-ech-config-list", base64FlagValue(CreateECHConfigList(echConfig.ECHConfig.Raw)), "-host-name", "secret.example", "-expect-ech-accept", "-expect-hrr", // Check we triggered HRR. @@ -17327,7 +17331,7 @@ }, }, flags: []string{ - "-ech-config-list", base64.StdEncoding.EncodeToString(CreateECHConfigList(echConfig.ECHConfig.Raw)), + "-ech-config-list", base64FlagValue(CreateECHConfigList(echConfig.ECHConfig.Raw)), "-host-name", "secret.example", "-expect-ech-accept", }, @@ -17349,7 +17353,7 @@ }, }, flags: []string{ - "-ech-config-list", base64.StdEncoding.EncodeToString(CreateECHConfigList(echConfig.ECHConfig.Raw)), + "-ech-config-list", base64FlagValue(CreateECHConfigList(echConfig.ECHConfig.Raw)), "-host-name", "secret.example", "-expect-ech-accept", }, @@ -17376,7 +17380,7 @@ }, }, flags: []string{ - "-on-resume-ech-config-list", base64.StdEncoding.EncodeToString(CreateECHConfigList(echConfig.ECHConfig.Raw)), + "-on-resume-ech-config-list", base64FlagValue(CreateECHConfigList(echConfig.ECHConfig.Raw)), "-on-resume-expect-ech-accept", }, resumeSession: true, @@ -17397,7 +17401,7 @@ }, }, flags: []string{ - "-on-resume-ech-config-list", base64.StdEncoding.EncodeToString(CreateECHConfigList(echConfig.ECHConfig.Raw)), + "-on-resume-ech-config-list", base64FlagValue(CreateECHConfigList(echConfig.ECHConfig.Raw)), "-on-resume-expect-ech-accept", }, resumeSession: true, @@ -17418,7 +17422,7 @@ ServerECHConfigs: []ServerECHConfig{echConfig}, }, flags: []string{ - "-ech-config-list", base64.StdEncoding.EncodeToString(CreateECHConfigList(echConfig.ECHConfig.Raw)), + "-ech-config-list", base64FlagValue(CreateECHConfigList(echConfig.ECHConfig.Raw)), "-expect-ech-accept", // Enable NPN. "-select-next-proto", "foo", @@ -17447,7 +17451,7 @@ ServerECHConfigs: []ServerECHConfig{echConfig}, }, flags: []string{ - "-ech-config-list", base64.StdEncoding.EncodeToString(CreateECHConfigList( + "-ech-config-list", base64FlagValue(CreateECHConfigList( unsupportedVersion, unsupportedKEM.Raw, unsupportedCipherSuites.Raw, @@ -17476,7 +17480,7 @@ }, }, flags: []string{ - "-ech-config-list", base64.StdEncoding.EncodeToString(CreateECHConfigList( + "-ech-config-list", base64FlagValue(CreateECHConfigList( unsupportedVersion, unsupportedKEM.Raw, unsupportedCipherSuites.Raw, @@ -17497,7 +17501,7 @@ }, }, flags: []string{ - "-ech-config-list", base64.StdEncoding.EncodeToString(CreateECHConfigList( + "-ech-config-list", base64FlagValue(CreateECHConfigList( unsupportedVersion, unsupportedKEM.Raw, unsupportedCipherSuites.Raw, @@ -17517,7 +17521,7 @@ ServerECHConfigs: []ServerECHConfig{echConfig}, }, flags: []string{ - "-ech-config-list", base64.StdEncoding.EncodeToString(CreateECHConfigList(echConfig.ECHConfig.Raw)), + "-ech-config-list", base64FlagValue(CreateECHConfigList(echConfig.ECHConfig.Raw)), "-expect-ech-accept", }, resumeSession: true, @@ -17537,7 +17541,7 @@ }, }, flags: []string{ - "-ech-config-list", base64.StdEncoding.EncodeToString(CreateECHConfigList(echConfig.ECHConfig.Raw)), + "-ech-config-list", base64FlagValue(CreateECHConfigList(echConfig.ECHConfig.Raw)), "-expect-ech-accept", "-enable-grease", }, @@ -17556,7 +17560,7 @@ ServerECHConfigs: []ServerECHConfig{unsupportedExtension}, }, flags: []string{ - "-ech-config-list", base64.StdEncoding.EncodeToString(CreateECHConfigList(unsupportedExtension.ECHConfig.Raw)), + "-ech-config-list", base64FlagValue(CreateECHConfigList(unsupportedExtension.ECHConfig.Raw)), "-expect-ech-accept", }, expectations: connectionExpectations{echAccepted: true}, @@ -17568,7 +17572,7 @@ protocol: protocol, name: prefix + "ECH-Client-InvalidECHConfigList", flags: []string{ - "-ech-config-list", base64.StdEncoding.EncodeToString(CreateECHConfigList(echConfig.ECHConfig.Raw[1:])), + "-ech-config-list", base64FlagValue(CreateECHConfigList(echConfig.ECHConfig.Raw[1:])), }, shouldFail: true, expectedError: ":INVALID_ECH_CONFIG_LIST:", @@ -17593,7 +17597,7 @@ }, }, flags: []string{ - "-ech-config-list", base64.StdEncoding.EncodeToString(CreateECHConfigList(echConfig.ECHConfig.Raw)), + "-ech-config-list", base64FlagValue(CreateECHConfigList(echConfig.ECHConfig.Raw)), // No -host-name flag. "-expect-ech-accept", }, @@ -17623,7 +17627,7 @@ }, }, flags: []string{ - "-ech-config-list", base64.StdEncoding.EncodeToString(CreateECHConfigList(echConfig.ECHConfig.Raw)), + "-ech-config-list", base64FlagValue(CreateECHConfigList(echConfig.ECHConfig.Raw)), "-expect-ech-accept", "-advertise-alpn", "\x05proto", "-expect-alpn", "proto", @@ -17652,7 +17656,7 @@ }, }, flags: []string{ - "-ech-config-list", base64.StdEncoding.EncodeToString(CreateECHConfigList(echConfig.ECHConfig.Raw)), + "-ech-config-list", base64FlagValue(CreateECHConfigList(echConfig.ECHConfig.Raw)), "-expect-ech-accept", "-host-name", "public.example", }, @@ -17674,7 +17678,7 @@ }, }, flags: []string{ - "-ech-config-list", base64.StdEncoding.EncodeToString(CreateECHConfigList(echConfig.ECHConfig.Raw)), + "-ech-config-list", base64FlagValue(CreateECHConfigList(echConfig.ECHConfig.Raw)), "-host-name", "secret.example", "-expect-ech-accept", "-min-version", strconv.Itoa(int(VersionTLS13)), @@ -17696,7 +17700,7 @@ }, }, flags: []string{ - "-ech-config-list", base64.StdEncoding.EncodeToString(CreateECHConfigList(maxNameLen10.ECHConfig.Raw)), + "-ech-config-list", base64FlagValue(CreateECHConfigList(maxNameLen10.ECHConfig.Raw)), "-host-name", "test0123456789.example", "-expect-ech-accept", }, @@ -17716,7 +17720,7 @@ }, }, flags: []string{ - "-ech-config-list", base64.StdEncoding.EncodeToString(CreateECHConfigList(echConfig.ECHConfig.Raw)), + "-ech-config-list", base64FlagValue(CreateECHConfigList(echConfig.ECHConfig.Raw)), }, shouldFail: true, expectedError: ":CONNECTION_REJECTED:", @@ -17733,7 +17737,7 @@ }, }, flags: []string{ - "-ech-config-list", base64.StdEncoding.EncodeToString(CreateECHConfigList(echConfig.ECHConfig.Raw)), + "-ech-config-list", base64FlagValue(CreateECHConfigList(echConfig.ECHConfig.Raw)), "-expect-hrr", // Check we triggered HRR. }, shouldFail: true, @@ -17752,7 +17756,7 @@ }, }, flags: []string{ - "-ech-config-list", base64.StdEncoding.EncodeToString(CreateECHConfigList(echConfig.ECHConfig.Raw)), + "-ech-config-list", base64FlagValue(CreateECHConfigList(echConfig.ECHConfig.Raw)), "-expect-hrr", // Check we triggered HRR. }, shouldFail: true, @@ -17783,7 +17787,7 @@ }, resumeSession: true, flags: []string{ - "-ech-config-list", base64.StdEncoding.EncodeToString(CreateECHConfigList(echConfig.ECHConfig.Raw)), + "-ech-config-list", base64FlagValue(CreateECHConfigList(echConfig.ECHConfig.Raw)), "-host-name", "secret.example", "-on-initial-expect-ech-accept", }, @@ -17810,7 +17814,7 @@ }, }, flags: []string{ - "-ech-config-list", base64.StdEncoding.EncodeToString(CreateECHConfigList(echConfig.ECHConfig.Raw)), + "-ech-config-list", base64FlagValue(CreateECHConfigList(echConfig.ECHConfig.Raw)), "-host-name", "secret.example", // Although the resumption connection does not accept ECH, the // API will report ECH was accepted at the 0-RTT point. @@ -17845,7 +17849,7 @@ }, }, flags: []string{ - "-ech-config-list", base64.StdEncoding.EncodeToString(CreateECHConfigList(echConfig.ECHConfig.Raw)), + "-ech-config-list", base64FlagValue(CreateECHConfigList(echConfig.ECHConfig.Raw)), "-host-name", "secret.example", // Although the resumption connection does not accept ECH, the // API will report ECH was accepted at the 0-RTT point. @@ -17884,7 +17888,7 @@ }, }, flags: []string{ - "-ech-config-list", base64.StdEncoding.EncodeToString(CreateECHConfigList(invalidPublicName.ECHConfig.Raw)), + "-ech-config-list", base64FlagValue(CreateECHConfigList(invalidPublicName.ECHConfig.Raw)), "-host-name", "secret.example", }, }) @@ -17901,7 +17905,7 @@ }, }, flags: []string{ - "-ech-config-list", base64.StdEncoding.EncodeToString(CreateECHConfigList(invalidPublicName.ECHConfig.Raw, echConfig.ECHConfig.Raw)), + "-ech-config-list", base64FlagValue(CreateECHConfigList(invalidPublicName.ECHConfig.Raw, echConfig.ECHConfig.Raw)), "-host-name", "secret.example", "-expect-ech-accept", }, @@ -18217,8 +18221,8 @@ "-install-cert-compression-algs", // Configure the shim and handshaker with different OCSP // responses, so the compression inputs do not match. - "-on-shim-ocsp-response", base64.StdEncoding.EncodeToString(testOCSPResponse), - "-on-handshaker-ocsp-response", base64.StdEncoding.EncodeToString(testOCSPResponse2), + "-on-shim-ocsp-response", base64FlagValue(testOCSPResponse), + "-on-handshaker-ocsp-response", base64FlagValue(testOCSPResponse2), }, expectations: connectionExpectations{ // The shim's configuration should take precendence.