99
1010--*/
1111
12+ #pragma once
13+
1214//
1315// For official releases, disable tests for preview features:
1416// the official release test binary for a version is used for down-level compatibility testing
@@ -43,6 +45,14 @@ extern "C" {
4345void QuicTestInitialize ();
4446void QuicTestUninitialize ();
4547
48+ //
49+ // Parameter structures used by many tests
50+ //
51+
52+ struct FamilyArgs {
53+ int Family ;
54+ };
55+
4656//
4757// Parameter Validation Tests
4858//
@@ -52,7 +62,7 @@ void QuicTestValidateRegistration();
5262void QuicTestValidateConfiguration ();
5363void QuicTestValidateListener ();
5464void QuicTestValidateConnection ();
55- void QuicTestValidateStream (bool Connect );
65+ void QuicTestValidateStream (const bool & Connect );
5666void QuicTestCloseConnBeforeStreamFlush ();
5767void QuicTestGlobalParam ();
5868void QuicTestCommonParam ();
@@ -61,7 +71,7 @@ void QuicTestConfigurationParam();
6171void QuicTestListenerParam ();
6272void QuicTestConnectionParam ();
6373void QuicTestTlsParam ();
64- void QuicTestTlsHandshakeInfo (_In_ bool EnableResumption );
74+ void QuicTestTlsHandshakeInfo (const bool & EnableResumption );
6575void QuicTestStreamParam ();
6676void QuicTestGetPerfCounters ();
6777void QuicTestVersionSettings ();
@@ -84,7 +94,7 @@ void QuicTestConnectionCloseBeforeStreamClose();
8494//
8595// Rejection Tests
8696//
87- void QuicTestConnectionRejection (bool RejectByClosing );
97+ void QuicTestConnectionRejection (const bool & RejectByClosing );
8898
8999//
90100// Event Validation Tests
@@ -104,15 +114,15 @@ void QuicTestRegistrationOpenClose();
104114void QuicTestCreateListener ();
105115void QuicTestStartListener ();
106116void QuicTestStartListenerMultiAlpns ();
107- void QuicTestStartListenerImplicit (_In_ int Family );
117+ void QuicTestStartListenerImplicit (const FamilyArgs & Params );
108118void QuicTestStartTwoListeners ();
109119void QuicTestStartTwoListenersSameALPN ();
110- void QuicTestStartListenerExplicit (_In_ int Family );
120+ void QuicTestStartListenerExplicit (const FamilyArgs & Params );
111121void QuicTestCreateConnection ();
112- void QuicTestBindConnectionImplicit (_In_ int Family );
113- void QuicTestBindConnectionExplicit (_In_ int Family );
122+ void QuicTestBindConnectionImplicit (const FamilyArgs & Params );
123+ void QuicTestBindConnectionExplicit (const FamilyArgs & Params );
114124void QuicTestConnectionCloseFromCallback ();
115- void QuicTestAddrFunctions (_In_ int Family );
125+ void QuicTestAddrFunctions (const FamilyArgs & Params );
116126
117127//
118128// MTU tests
@@ -131,7 +141,7 @@ QuicTestMtuDiscovery(
131141//
132142void
133143QuicTestLocalPathChanges (
134- _In_ int Family
144+ const FamilyArgs & Params
135145 );
136146
137147//
@@ -169,17 +179,17 @@ QuicTestConnect(
169179#ifdef QUIC_API_ENABLE_PREVIEW_FEATURES
170180void
171181QuicTestVersionNegotiation (
172- _In_ int Family
182+ const FamilyArgs & Params
173183 );
174184
175185void
176186QuicTestVersionNegotiationRetry (
177- _In_ int Family
187+ const FamilyArgs & Params
178188 );
179189
180190void
181191QuicTestCompatibleVersionNegotiationRetry (
182- _In_ int Family
192+ const FamilyArgs & Params
183193 );
184194
185195void
@@ -205,12 +215,12 @@ QuicTestCompatibleVersionNegotiationDefaultServer(
205215
206216void
207217QuicTestIncompatibleVersionNegotiation (
208- _In_ int Family
218+ const FamilyArgs & Params
209219 );
210220
211221void
212222QuicTestFailedVersionNegotiation (
213- _In_ int Family
223+ const FamilyArgs & Params
214224 );
215225
216226void
@@ -258,22 +268,22 @@ QuicTestInvalidAlpnLengths(
258268
259269void
260270QuicTestLoadBalancedHandshake (
261- _In_ int Family
271+ const FamilyArgs & Params
262272 );
263273
264274void
265275QuicTestClientSharedLocalPort (
266- _In_ int Family
276+ const FamilyArgs & Params
267277 );
268278
269279void
270280QuicTestInterfaceBinding (
271- _In_ int Family
281+ const FamilyArgs & Params
272282 );
273283
274284void
275285QuicTestRetryMemoryLimitConnect (
276- _In_ int Family
286+ const FamilyArgs & Params
277287 );
278288
279289#ifdef QUIC_API_ENABLE_PREVIEW_FEATURES
@@ -311,7 +321,7 @@ QuicTestShutdownDuringHandshake(
311321
312322void
313323QuicTestConnectUnreachable (
314- _In_ int Family
324+ const FamilyArgs & Params
315325 );
316326
317327void
@@ -320,17 +330,17 @@ QuicTestConnectInvalidAddress(
320330
321331void
322332QuicTestConnectBadAlpn (
323- _In_ int Family
333+ const FamilyArgs & Params
324334 );
325335
326336void
327337QuicTestConnectBadSni (
328- _In_ int Family
338+ const FamilyArgs & Params
329339 );
330340
331341void
332342QuicTestConnectServerRejected (
333- _In_ int Family
343+ const FamilyArgs & Params
334344 );
335345
336346void
@@ -355,7 +365,7 @@ QuicTestConnectExpiredClientCertificate(
355365
356366void
357367QuicTestClientBlockedSourcePort (
358- _In_ int Family
368+ const FamilyArgs & Params
359369 );
360370
361371#ifdef QUIC_API_ENABLE_PREVIEW_FEATURES
@@ -437,12 +447,12 @@ QuicTestNatAddrRebind(
437447
438448void
439449QuicTestPathValidationTimeout (
440- _In_ int Family
450+ const FamilyArgs & Params
441451 );
442452
443453void
444454QuicTestChangeMaxStreamID (
445- _In_ int Family
455+ const FamilyArgs & Params
446456 );
447457
448458//
@@ -474,7 +484,7 @@ QuicTestConnectAndPing(
474484
475485void
476486QuicTestConnectAndIdle (
477- _In_ bool EnableKeepAlive
487+ const bool & EnableKeepAlive
478488 );
479489
480490void
@@ -489,7 +499,7 @@ QuicTestServerDisconnect(
489499
490500void
491501QuicTestClientDisconnect (
492- bool StopListenerFirst
502+ const bool & StopListenerFirst
493503 );
494504
495505void
@@ -499,12 +509,12 @@ QuicTestStatelessResetKey(
499509
500510void
501511QuicTestForceKeyUpdate (
502- _In_ int Family
512+ const FamilyArgs & Params
503513 );
504514
505515void
506516QuicTestKeyUpdate (
507- _In_ int Family
517+ const FamilyArgs & Params
508518 );
509519
510520void
@@ -579,13 +589,9 @@ QuicTestReceiveResumeNoData(
579589 _In_ QUIC_RECEIVE_RESUME_SHUTDOWN_TYPE ShutdownType
580590 );
581591
582- struct FamilyArgs2 {
583- int Family ;
584- };
585-
586592void
587593QuicTestAckSendDelay (
588- const FamilyArgs2 & Params
594+ const FamilyArgs & Params
589595 );
590596
591597typedef enum QUIC_ABORT_RECEIVE_TYPE {
@@ -662,13 +668,44 @@ QuicTestConnectionStreamStartSendPriority(
662668
663669void
664670QuicTestEcn (
665- _In_ int Family
671+ const FamilyArgs & Params
672+ );
673+
674+ struct AppProvidedBuffersConfig {
675+ uint32_t StreamStartBuffersNum ;
676+ uint32_t StreamStartBuffersSize ;
677+ uint32_t AdditionalBuffersNum ;
678+ uint32_t AdditionalBuffersSize ;
679+ };
680+
681+ void
682+ QuicTestStreamAppProvidedBuffers_ClientSend (
683+ const AppProvidedBuffersConfig & BufferConfig
684+ );
685+
686+ void
687+ QuicTestStreamAppProvidedBuffers_ServerSend (
688+ const AppProvidedBuffersConfig & BufferConfig
689+ );
690+
691+ void
692+ QuicTestStreamAppProvidedBuffersOutOfSpace_ClientSend_AbortStream (
693+ const AppProvidedBuffersConfig & BufferConfig
694+ );
695+
696+ void
697+ QuicTestStreamAppProvidedBuffersOutOfSpace_ClientSend_ProvideMoreBuffer (
698+ const AppProvidedBuffersConfig & BufferConfig
666699 );
667700
668- void QuicTestStreamAppProvidedBuffers (
701+ void
702+ QuicTestStreamAppProvidedBuffersOutOfSpace_ServerSend_AbortStream (
703+ const AppProvidedBuffersConfig & BufferConfig
669704 );
670705
671- void QuicTestStreamAppProvidedBuffersOutOfSpace (
706+ void
707+ QuicTestStreamAppProvidedBuffersOutOfSpace_ServerSend_ProvideMoreBuffer (
708+ const AppProvidedBuffersConfig & BufferConfig
672709 );
673710
674711//
@@ -713,12 +750,12 @@ QuicTestDatagramNegotiation(
713750
714751void
715752QuicTestDatagramSend (
716- _In_ int Family
753+ const FamilyArgs & Params
717754 );
718755
719756void
720757QuicTestDatagramDrop (
721- _In_ int Family
758+ const FamilyArgs & Params
722759 );
723760
724761//
0 commit comments