aboutsummaryrefslogtreecommitdiffhomepage
path: root/test/core/bad_client/tests
diff options
context:
space:
mode:
Diffstat (limited to 'test/core/bad_client/tests')
-rw-r--r--test/core/bad_client/tests/headers.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/test/core/bad_client/tests/headers.c b/test/core/bad_client/tests/headers.c
index 7f0a9b82c3..abd2826111 100644
--- a/test/core/bad_client/tests/headers.c
+++ b/test/core/bad_client/tests/headers.c
@@ -262,11 +262,26 @@ int main(int argc, char **argv) {
"\x00\x00\x00\x01\x00\x00\x00\x00\x01"
"\x00\x00\x00\x00\x04\x00\x00\x00\x01",
0);
+ /* non-ending header followed by a continuation frame for a different stream */
+ GRPC_RUN_BAD_CLIENT_TEST(verifier,
+ PFX_STR
+ "\x00\x00\x00\x01\x04\x00\x00\x00\x01"
+ "\x00\x00\x00\x01\x00\x00\x00\x00\x03"
+ "\x00\x00\x00\x09\x04\x00\x00\x00\x01",
+ 0);
/* opening with a continuation frame */
GRPC_RUN_BAD_CLIENT_TEST(verifier,
PFX_STR
"\x00\x00\x00\x09\x04\x00\x00\x00\x01",
0);
+ /* three header frames */
+ GRPC_RUN_BAD_CLIENT_TEST(verifier,
+ PFX_STR
+ "\x00\x00\x00\x01\x04\x00\x00\x00\x01"
+ "\x00\x00\x00\x01\x04\x00\x00\x00\x01"
+ "\x00\x00\x00\x01\x04\x00\x00\x00\x01",
+ GRPC_BAD_CLIENT_DISCONNECT);
+
/* an invalid header found with fuzzing */
GRPC_RUN_BAD_CLIENT_TEST(verifier,