diff options
Diffstat (limited to 'src/core/security/jwt_verifier.c')
-rw-r--r-- | src/core/security/jwt_verifier.c | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/src/core/security/jwt_verifier.c b/src/core/security/jwt_verifier.c index 790f2178db..a6736c922c 100644 --- a/src/core/security/jwt_verifier.c +++ b/src/core/security/jwt_verifier.c @@ -570,7 +570,8 @@ end: } static void on_keys_retrieved(void *user_data, - const grpc_httpcli_response *response) { + const grpc_httpcli_response *response, + grpc_call_list *call_list) { grpc_json *json = json_from_http(response); verifier_cb_ctx *ctx = (verifier_cb_ctx *)user_data; EVP_PKEY *verification_key = NULL; @@ -611,7 +612,8 @@ end: } static void on_openid_config_retrieved(void *user_data, - const grpc_httpcli_response *response) { + const grpc_httpcli_response *response, + grpc_call_list *call_list) { const grpc_json *cur; grpc_json *json = json_from_http(response); verifier_cb_ctx *ctx = (verifier_cb_ctx *)user_data; @@ -643,7 +645,7 @@ static void on_openid_config_retrieved(void *user_data, grpc_httpcli_get( &ctx->verifier->http_ctx, ctx->pollset, &req, gpr_time_add(gpr_now(GPR_CLOCK_REALTIME), grpc_jwt_verifier_max_delay), - on_keys_retrieved, ctx); + on_keys_retrieved, ctx, call_list); grpc_json_destroy(json); gpr_free(req.host); return; @@ -682,7 +684,8 @@ static void verifier_put_mapping(grpc_jwt_verifier *v, const char *email_domain, } /* Takes ownership of ctx. */ -static void retrieve_key_and_verify(verifier_cb_ctx *ctx) { +static void retrieve_key_and_verify(verifier_cb_ctx *ctx, + grpc_call_list *call_list) { const char *at_sign; grpc_httpcli_response_cb http_cb; char *path_prefix = NULL; @@ -745,7 +748,7 @@ static void retrieve_key_and_verify(verifier_cb_ctx *ctx) { grpc_httpcli_get( &ctx->verifier->http_ctx, ctx->pollset, &req, gpr_time_add(gpr_now(GPR_CLOCK_REALTIME), grpc_jwt_verifier_max_delay), - http_cb, ctx); + http_cb, ctx, call_list); gpr_free(req.host); gpr_free(req.path); return; @@ -758,8 +761,8 @@ error: void grpc_jwt_verifier_verify(grpc_jwt_verifier *verifier, grpc_pollset *pollset, const char *jwt, const char *audience, - grpc_jwt_verification_done_cb cb, - void *user_data) { + grpc_jwt_verification_done_cb cb, void *user_data, + grpc_call_list *call_list) { const char *dot = NULL; grpc_json *json; jose_header *header = NULL; @@ -792,7 +795,8 @@ void grpc_jwt_verifier_verify(grpc_jwt_verifier *verifier, if (GPR_SLICE_IS_EMPTY(signature)) goto error; retrieve_key_and_verify( verifier_cb_ctx_create(verifier, pollset, header, claims, audience, - signature, jwt, signed_jwt_len, user_data, cb)); + signature, jwt, signed_jwt_len, user_data, cb), + call_list); return; error: |