aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/lib/security/credentials/iam/iam_credentials.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/lib/security/credentials/iam/iam_credentials.cc')
-rw-r--r--src/core/lib/security/credentials/iam/iam_credentials.cc22
1 files changed, 13 insertions, 9 deletions
diff --git a/src/core/lib/security/credentials/iam/iam_credentials.cc b/src/core/lib/security/credentials/iam/iam_credentials.cc
index 75acb2a58e..1741bf3068 100644
--- a/src/core/lib/security/credentials/iam/iam_credentials.cc
+++ b/src/core/lib/security/credentials/iam/iam_credentials.cc
@@ -27,12 +27,14 @@
#include <grpc/support/string_util.h>
#include <grpc/support/sync.h>
-static void iam_destruct(grpc_call_credentials* creds) {
+static void iam_destruct(grpc_exec_ctx* exec_ctx,
+ grpc_call_credentials* creds) {
grpc_google_iam_credentials* c = (grpc_google_iam_credentials*)creds;
- grpc_credentials_mdelem_array_destroy(&c->md_array);
+ grpc_credentials_mdelem_array_destroy(exec_ctx, &c->md_array);
}
-static bool iam_get_request_metadata(grpc_call_credentials* creds,
+static bool iam_get_request_metadata(grpc_exec_ctx* exec_ctx,
+ grpc_call_credentials* creds,
grpc_polling_entity* pollent,
grpc_auth_metadata_context context,
grpc_credentials_mdelem_array* md_array,
@@ -44,8 +46,8 @@ static bool iam_get_request_metadata(grpc_call_credentials* creds,
}
static void iam_cancel_get_request_metadata(
- grpc_call_credentials* c, grpc_credentials_mdelem_array* md_array,
- grpc_error* error) {
+ grpc_exec_ctx* exec_ctx, grpc_call_credentials* c,
+ grpc_credentials_mdelem_array* md_array, grpc_error* error) {
GRPC_ERROR_UNREF(error);
}
@@ -54,7 +56,7 @@ static grpc_call_credentials_vtable iam_vtable = {
grpc_call_credentials* grpc_google_iam_credentials_create(
const char* token, const char* authority_selector, void* reserved) {
- grpc_core::ExecCtx exec_ctx;
+ grpc_exec_ctx exec_ctx = GRPC_EXEC_CTX_INIT;
GRPC_API_TRACE(
"grpc_iam_credentials_create(token=%s, authority_selector=%s, "
"reserved=%p)",
@@ -68,15 +70,17 @@ grpc_call_credentials* grpc_google_iam_credentials_create(
c->base.vtable = &iam_vtable;
gpr_ref_init(&c->base.refcount, 1);
grpc_mdelem md = grpc_mdelem_from_slices(
+ &exec_ctx,
grpc_slice_from_static_string(GRPC_IAM_AUTHORIZATION_TOKEN_METADATA_KEY),
grpc_slice_from_copied_string(token));
grpc_credentials_mdelem_array_add(&c->md_array, md);
- GRPC_MDELEM_UNREF(md);
+ GRPC_MDELEM_UNREF(&exec_ctx, md);
md = grpc_mdelem_from_slices(
+ &exec_ctx,
grpc_slice_from_static_string(GRPC_IAM_AUTHORITY_SELECTOR_METADATA_KEY),
grpc_slice_from_copied_string(authority_selector));
grpc_credentials_mdelem_array_add(&c->md_array, md);
- GRPC_MDELEM_UNREF(md);
-
+ GRPC_MDELEM_UNREF(&exec_ctx, md);
+ grpc_exec_ctx_finish(&exec_ctx);
return &c->base;
}