diff options
author | 2017-07-21 15:42:00 -0700 | |
---|---|---|
committer | 2017-07-21 15:42:00 -0700 | |
commit | e0778b2c1817f3b7aff5af4b1b15493d4a8a207d (patch) | |
tree | ac0249dc00b2aa50a2a7a0eeb31469d02a333735 /src/core/lib/security/credentials/plugin/plugin_credentials.h | |
parent | 8321cadeb031cfa7f142479b40fc13e52216790c (diff) |
Add cancellation to asynchronous security APIs.
Diffstat (limited to 'src/core/lib/security/credentials/plugin/plugin_credentials.h')
-rw-r--r-- | src/core/lib/security/credentials/plugin/plugin_credentials.h | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/core/lib/security/credentials/plugin/plugin_credentials.h b/src/core/lib/security/credentials/plugin/plugin_credentials.h index ba3dd76859..57266d589a 100644 --- a/src/core/lib/security/credentials/plugin/plugin_credentials.h +++ b/src/core/lib/security/credentials/plugin/plugin_credentials.h @@ -21,10 +21,22 @@ #include "src/core/lib/security/credentials/credentials.h" -typedef struct { +struct grpc_plugin_credentials; + +typedef struct grpc_plugin_credentials_pending_request { + bool cancelled; + struct grpc_plugin_credentials *creds; + grpc_credentials_mdelem_array *md_array; + grpc_closure *on_request_metadata; + struct grpc_plugin_credentials_pending_request *prev; + struct grpc_plugin_credentials_pending_request *next; +} grpc_plugin_credentials_pending_request; + +typedef struct grpc_plugin_credentials { grpc_call_credentials base; grpc_metadata_credentials_plugin plugin; - grpc_credentials_md_store *plugin_md; + gpr_mu mu; + grpc_plugin_credentials_pending_request *pending_requests; } grpc_plugin_credentials; #endif /* GRPC_CORE_LIB_SECURITY_CREDENTIALS_PLUGIN_PLUGIN_CREDENTIALS_H */ |