From 3ebb7cc10714178e540383d3970e2ebddcfab8a7 Mon Sep 17 00:00:00 2001 From: Craig Tiller Date: Wed, 9 Dec 2015 09:34:01 -0800 Subject: Hit some esoteric request header paths --- test/core/bad_client/tests/simple_request.c | 16 ++++++++++++++++ .../core/bad_client/tests/simple_request_unusual.headers | 11 +++++++++++ 2 files changed, 27 insertions(+) create mode 100644 test/core/bad_client/tests/simple_request_unusual.headers (limited to 'test/core/bad_client/tests') diff --git a/test/core/bad_client/tests/simple_request.c b/test/core/bad_client/tests/simple_request.c index b6c3b65ac3..5ded520fee 100644 --- a/test/core/bad_client/tests/simple_request.c +++ b/test/core/bad_client/tests/simple_request.c @@ -55,6 +55,21 @@ "\x10\x02te\x08trailers" \ "\x10\x0auser-agent\"bad-client grpc-c/0.12.0.0 (linux)" +#define PFX_STR_UNUSUAL \ + "PRI * HTTP/2.0\r\n\r\nSM\r\n\r\n" \ + "\x00\x00\x00\x04\x00\x00\x00\x00\x00" /* settings frame */ \ + "\x00\x00\xd1\x01\x04\x00\x00\x00\x01" /* headers: generated from \ + simple_request_unusual.headers \ + in this directory */ \ + "\x10\x05:path\x08/foo/bar" \ + "\x10\x07:scheme\x04http" \ + "\x10\x07:method\x04POST" \ + "\x10\x04host\x09localhost" \ + "\x10\x0c""content-type\x1e""application/grpc+this-is-valid" \ + "\x10\x14grpc-accept-encoding\x15identity,deflate,gzip" \ + "\x10\x02te\x08trailers" \ + "\x10\x0auser-agent\"bad-client grpc-c/0.12.0.0 (linux)" + static void *tag(gpr_intptr t) { return (void *)t; } static void verifier(grpc_server *server, grpc_completion_queue *cq) { @@ -87,6 +102,7 @@ int main(int argc, char **argv) { /* basic request: check that things are working */ GRPC_RUN_BAD_CLIENT_TEST(verifier, PFX_STR, 0); + GRPC_RUN_BAD_CLIENT_TEST(verifier, PFX_STR_UNUSUAL, 0); /* push an illegal data frame */ GRPC_RUN_BAD_CLIENT_TEST(verifier, PFX_STR diff --git a/test/core/bad_client/tests/simple_request_unusual.headers b/test/core/bad_client/tests/simple_request_unusual.headers new file mode 100644 index 0000000000..6750302f5c --- /dev/null +++ b/test/core/bad_client/tests/simple_request_unusual.headers @@ -0,0 +1,11 @@ +# headers used in simple_request.c +# use tools/codegen/core/gen_header_frame.py to generate the binary strings +# contained in the source code +:path: /foo/bar +:scheme: http +:method: POST +host: localhost +content-type: application/grpc+this-is-valid +grpc-accept-encoding: identity,deflate,gzip +te: trailers +user-agent: bad-client grpc-c/0.12.0.0 (linux) -- cgit v1.2.3 From ce4c34139b7bc0e106e158866bda76f0348ac1cf Mon Sep 17 00:00:00 2001 From: Craig Tiller Date: Wed, 9 Dec 2015 10:04:28 -0800 Subject: Add an unusual accept-encoding --- test/core/bad_client/tests/simple_request.c | 2 +- test/core/bad_client/tests/simple_request_unusual.headers | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'test/core/bad_client/tests') diff --git a/test/core/bad_client/tests/simple_request.c b/test/core/bad_client/tests/simple_request.c index 5ded520fee..e09e764dbb 100644 --- a/test/core/bad_client/tests/simple_request.c +++ b/test/core/bad_client/tests/simple_request.c @@ -51,7 +51,7 @@ "\x10\x0c" \ "content-type\x10" \ "application/grpc" \ - "\x10\x14grpc-accept-encoding\x15identity,deflate,gzip" \ + "\x10\x14grpc-accept-encoding\x15""deflate,identity,gzip" \ "\x10\x02te\x08trailers" \ "\x10\x0auser-agent\"bad-client grpc-c/0.12.0.0 (linux)" diff --git a/test/core/bad_client/tests/simple_request_unusual.headers b/test/core/bad_client/tests/simple_request_unusual.headers index 6750302f5c..ad14f24d3e 100644 --- a/test/core/bad_client/tests/simple_request_unusual.headers +++ b/test/core/bad_client/tests/simple_request_unusual.headers @@ -6,6 +6,6 @@ :method: POST host: localhost content-type: application/grpc+this-is-valid -grpc-accept-encoding: identity,deflate,gzip +grpc-accept-encoding: deflate,identity,gzip te: trailers user-agent: bad-client grpc-c/0.12.0.0 (linux) -- cgit v1.2.3 From 3b4af54c2141ba6a6db6da1cd83cf7314ffebb2c Mon Sep 17 00:00:00 2001 From: Craig Tiller Date: Wed, 9 Dec 2015 10:09:05 -0800 Subject: Add more unusualness --- test/core/bad_client/tests/simple_request.c | 6 ++++-- test/core/bad_client/tests/simple_request_unusual.headers | 2 ++ 2 files changed, 6 insertions(+), 2 deletions(-) (limited to 'test/core/bad_client/tests') diff --git a/test/core/bad_client/tests/simple_request.c b/test/core/bad_client/tests/simple_request.c index e09e764dbb..5cddafc0b5 100644 --- a/test/core/bad_client/tests/simple_request.c +++ b/test/core/bad_client/tests/simple_request.c @@ -58,7 +58,7 @@ #define PFX_STR_UNUSUAL \ "PRI * HTTP/2.0\r\n\r\nSM\r\n\r\n" \ "\x00\x00\x00\x04\x00\x00\x00\x00\x00" /* settings frame */ \ - "\x00\x00\xd1\x01\x04\x00\x00\x00\x01" /* headers: generated from \ + "\x00\x00\xf4\x01\x04\x00\x00\x00\x01" /* headers: generated from \ simple_request_unusual.headers \ in this directory */ \ "\x10\x05:path\x08/foo/bar" \ @@ -68,7 +68,9 @@ "\x10\x0c""content-type\x1e""application/grpc+this-is-valid" \ "\x10\x14grpc-accept-encoding\x15identity,deflate,gzip" \ "\x10\x02te\x08trailers" \ - "\x10\x0auser-agent\"bad-client grpc-c/0.12.0.0 (linux)" + "\x10\x0auser-agent\"bad-client grpc-c/0.12.0.0 (linux)" \ + "\x10\x0cgrpc-timeout\x03""10S" \ + "\x10\x0cgrpc-timeout\x02""5S" static void *tag(gpr_intptr t) { return (void *)t; } diff --git a/test/core/bad_client/tests/simple_request_unusual.headers b/test/core/bad_client/tests/simple_request_unusual.headers index ad14f24d3e..f36e1dfc9f 100644 --- a/test/core/bad_client/tests/simple_request_unusual.headers +++ b/test/core/bad_client/tests/simple_request_unusual.headers @@ -9,3 +9,5 @@ content-type: application/grpc+this-is-valid grpc-accept-encoding: deflate,identity,gzip te: trailers user-agent: bad-client grpc-c/0.12.0.0 (linux) +grpc-timeout: 10S +grpc-timeout: 5S -- cgit v1.2.3