aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/lib/security/credentials
diff options
context:
space:
mode:
authorGravatar Craig Tiller <ctiller@google.com>2017-01-12 13:41:52 -0800
committerGravatar Craig Tiller <ctiller@google.com>2017-01-12 13:41:52 -0800
commit95beab22843369189836828a0116a9760482ce7f (patch)
tree607151de481b16a18df4fdaaf83aaf74eb743f2b /src/core/lib/security/credentials
parente5d8e02aa6efd3ce97f788560df3994473df8327 (diff)
Uncover the badness
Diffstat (limited to 'src/core/lib/security/credentials')
-rw-r--r--src/core/lib/security/credentials/plugin/plugin_credentials.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/core/lib/security/credentials/plugin/plugin_credentials.c b/src/core/lib/security/credentials/plugin/plugin_credentials.c
index c5e8d67039..afce6a6b12 100644
--- a/src/core/lib/security/credentials/plugin/plugin_credentials.c
+++ b/src/core/lib/security/credentials/plugin/plugin_credentials.c
@@ -44,6 +44,7 @@
#include "src/core/lib/slice/slice_internal.h"
#include "src/core/lib/slice/slice_string_helpers.h"
#include "src/core/lib/surface/api_trace.h"
+#include "src/core/lib/surface/validate_metadata.h"
typedef struct {
void *user_data;
@@ -78,14 +79,14 @@ static void plugin_md_request_metadata_ready(void *request,
bool seen_illegal_header = false;
grpc_credentials_md *md_array = NULL;
for (i = 0; i < num_md; i++) {
- if (!grpc_header_key_is_legal(md[i].key)) {
- char *key = grpc_slice_to_c_string(md[i].key);
- gpr_log(GPR_ERROR, "Plugin added invalid metadata key: %s", key);
- gpr_free(key);
+ if (!GRPC_LOG_IF_ERROR("validate_metadata_from_plugin",
+ grpc_validate_header_key_is_legal(md[i].key))) {
seen_illegal_header = true;
break;
} else if (!grpc_is_binary_header(md[i].key) &&
- !grpc_header_nonbin_value_is_legal(md[i].value)) {
+ !GRPC_LOG_IF_ERROR(
+ "validate_metadata_from_plugin",
+ grpc_validate_header_nonbin_value_is_legal(md[i].value))) {
gpr_log(GPR_ERROR, "Plugin added invalid metadata value.");
seen_illegal_header = true;
break;