-
Notifications
You must be signed in to change notification settings - Fork 4.9k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
api: ensure HeaderValue keys are non-empty. (#3901)
Some sites where we consume HeaderValue, e.g. in Google gRPC client library metadata, require non-empty keys as a precondition. This seems a general property; there shouldn't be any use case for a header key that is empty. Found with server_fuzz_test under oss-fuzz (issue 9373). As a bonus, also fixed another proto descriptor crash that occurs with this corpus addition due to missing proto descriptor pool entries in server_fuzz_test. Risk level: Low Testing: New server_fuzz corpus entry. Signed-off-by: Harvey Tuch <htuch@google.com>
- Loading branch information
Showing
4 changed files
with
31 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
26 changes: 26 additions & 0 deletions
26
test/server/server_corpus/clusterfuzz-testcase-server_fuzz_test-6036175623028736
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
dynamic_resources { | ||
ads_config { | ||
api_type: GRPC | ||
grpc_services { | ||
google_grpc { | ||
target_uri: "\177\177" | ||
stat_prefix: "\177\001D\177" | ||
} | ||
timeout { | ||
seconds: 2048 | ||
} | ||
initial_metadata { | ||
value: "\177\177\177\177" | ||
} | ||
} | ||
} | ||
} | ||
flags_path: "\'" | ||
admin { | ||
access_log_path: "@" | ||
address { | ||
pipe { | ||
path: "^" | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters