19 #ifndef GRPCPP_SECURITY_TLS_CREDENTIALS_OPTIONS_H 20 #define GRPCPP_SECURITY_TLS_CREDENTIALS_OPTIONS_H 40 namespace experimental {
54 return pem_key_cert_pair_list_;
68 std::vector<PemKeyCertPair> pem_key_cert_pair_list_;
108 const std::shared_ptr<TlsKeyMaterialsConfig>& key_materials_config);
136 credential_reload_interface);
140 if (credential_reload_interface_ ==
nullptr) {
142 if (arg !=
nullptr) {
145 "the interface of the credential reload config is nullptr");
149 return credential_reload_interface_->Schedule(arg);
153 if (credential_reload_interface_ ==
nullptr) {
155 if (arg !=
nullptr) {
158 "the interface of the credential reload config is nullptr");
162 credential_reload_interface_->Cancel(arg);
170 std::shared_ptr<TlsCredentialReloadInterface> credential_reload_interface_;
239 std::shared_ptr<TlsServerAuthorizationCheckInterface>
240 server_authorization_check_interface);
244 if (server_authorization_check_interface_ ==
nullptr) {
246 if (arg !=
nullptr) {
249 "the interface of the server authorization check config is " 254 return server_authorization_check_interface_->Schedule(arg);
258 if (server_authorization_check_interface_ ==
nullptr) {
260 if (arg !=
nullptr) {
263 "the interface of the server authorization check config is " 268 server_authorization_check_interface_->Cancel(arg);
278 std::shared_ptr<TlsServerAuthorizationCheckInterface>
279 server_authorization_check_interface_;
292 std::shared_ptr<TlsServerAuthorizationCheckConfig>
298 return cert_request_type_;
301 return key_materials_config_;
304 return credential_reload_config_;
306 std::shared_ptr<TlsServerAuthorizationCheckConfig>
308 return server_authorization_check_config_;
311 return c_credentials_options_;
320 std::shared_ptr<TlsKeyMaterialsConfig> key_materials_config_;
321 std::shared_ptr<TlsCredentialReloadConfig> credential_reload_config_;
322 std::shared_ptr<TlsServerAuthorizationCheckConfig>
323 server_authorization_check_config_;
330 #endif // GRPCPP_SECURITY_TLS_CREDENTIALS_OPTIONS_H grpc_ssl_certificate_config_reload_status
Callback results for dynamically loading a SSL certificate config.
Definition: grpc_security_constants.h:53
virtual int Schedule(TlsServerAuthorizationCheckArg *arg)=0
A callback that invokes the server authorization check.
grpc::string error_details() const
Definition: tls_credentials_options.cc:193
grpc_status_code
Definition: status.h:26
void set_cb_user_data(void *cb_user_data)
Setters for member fields.
Definition: tls_credentials_options.cc:77
TlsCredentialReloadArg(grpc_tls_credential_reload_arg *arg)
TlsCredentialReloadArg does not take ownership of the C arg that is passed to the constructor...
Definition: tls_credentials_options.cc:47
std::string string
Definition: config.h:35
~TlsServerAuthorizationCheckConfig()
Definition: tls_credentials_options.cc:245
grpc::string peer_cert() const
Definition: tls_credentials_options.cc:184
std::shared_ptr< TlsKeyMaterialsConfig > key_materials_config() const
Definition: tls_credentials_options.h:300
virtual ~TlsCredentialReloadInterface()=default
struct grpc_tls_credential_reload_arg grpc_tls_credential_reload_arg
Definition: tls_credentials_options.h:30
void * cb_user_data() const
Getters for member fields.
Definition: tls_credentials_options.cc:59
Definition: grpc_security_constants.h:56
grpc_tls_credentials_options * c_credentials_options() const
Definition: tls_credentials_options.h:310
TlsServerAuthorizationCheckConfig(std::shared_ptr< TlsServerAuthorizationCheckInterface > server_authorization_check_interface)
gRPC TLS server authorization check config API implementation.
Definition: tls_credentials_options.cc:234
int Schedule(TlsServerAuthorizationCheckArg *arg) const
Definition: tls_credentials_options.h:243
grpc::string error_details() const
Definition: tls_credentials_options.cc:72
void set_success(int success)
Definition: tls_credentials_options.cc:202
const grpc::string pem_root_certs() const
Getters for member fields.
Definition: tls_credentials_options.h:52
virtual int Schedule(TlsCredentialReloadArg *arg)=0
A callback that invokes the credential reload.
void Cancel(TlsCredentialReloadArg *arg) const
Definition: tls_credentials_options.h:152
void OnServerAuthorizationCheckDoneCallback()
Calls the C arg's callback function.
Definition: tls_credentials_options.cc:225
GPRAPI void gpr_log(const char *file, int line, gpr_log_severity severity, const char *format,...) GPR_PRINT_FORMAT_CHECK(4
Log a message.
TLS server authorization check config, wraps grps_tls_server_authorization_check_config.
Definition: tls_credentials_options.h:236
void set_key_materials_config(const std::shared_ptr< TlsKeyMaterialsConfig > &key_materials_config)
Definition: tls_credentials_options.cc:101
void set_target_name(const grpc::string &target_name)
Definition: tls_credentials_options.cc:206
TLS server authorization check arguments, wraps grpc_tls_server_authorization_check_arg.
Definition: tls_credentials_options.h:182
An interface that the application derives and uses to instantiate a TlsCredentialReloadConfig instanc...
Definition: tls_credentials_options.h:123
TLS credentials options, wrapper for grpc_tls_credentials_options.
Definition: tls_credentials_options.h:286
TlsServerAuthorizationCheckArg(grpc_tls_server_authorization_check_arg *arg)
TlsServerAuthorizationCheckArg does not take ownership of the C arg passed to the constructor...
Definition: tls_credentials_options.cc:161
int version() const
Definition: tls_credentials_options.h:56
grpc::string private_key
Definition: tls_credentials_options.h:47
void Cancel(TlsServerAuthorizationCheckArg *arg) const
Definition: tls_credentials_options.h:257
grpc_ssl_client_certificate_request_type cert_request_type() const
Getters for member fields.
Definition: tls_credentials_options.h:297
~TlsServerAuthorizationCheckArg()
Definition: tls_credentials_options.cc:171
An interface that the application derives and uses to instantiate a TlsServerAuthorizationCheckConfig...
Definition: tls_credentials_options.h:225
grpc::string cert_chain
Definition: tls_credentials_options.h:48
Definition: tls_credentials_options.h:46
const std::vector< PemKeyCertPair > & pem_key_cert_pair_list() const
Definition: tls_credentials_options.h:53
TlsCredentialReloadConfig(std::shared_ptr< TlsCredentialReloadInterface > credential_reload_interface)
gRPC TLS credential reload config API implementation
Definition: tls_credentials_options.cc:149
#define GPR_ERROR
Definition: log.h:57
TLS credential reload arguments, wraps grpc_tls_credential_reload_arg.
Definition: tls_credentials_options.h:80
void add_pem_key_cert_pair(TlsKeyMaterialsConfig::PemKeyCertPair pem_key_cert_pair)
Definition: tls_credentials_options.cc:88
void set_key_materials(grpc::string pem_root_certs, std::vector< PemKeyCertPair > pem_key_cert_pair_list)
Definition: tls_credentials_options.cc:39
void add_pem_key_cert_pair(const PemKeyCertPair &pem_key_cert_pair)
Definition: tls_credentials_options.cc:34
std::shared_ptr< TlsServerAuthorizationCheckConfig > server_authorization_check_config() const
Definition: tls_credentials_options.h:307
virtual void Cancel(TlsCredentialReloadArg *)
A callback that cancels a credential reload request.
Definition: tls_credentials_options.h:128
grpc::string target_name() const
Definition: tls_credentials_options.cc:179
int Schedule(TlsCredentialReloadArg *arg) const
Definition: tls_credentials_options.h:139
grpc_ssl_client_certificate_request_type
Definition: grpc_security_constants.h:59
int success() const
Definition: tls_credentials_options.cc:177
void set_pem_root_certs(grpc::string pem_root_certs)
Setter for key materials that will be called by the user.
Definition: tls_credentials_options.cc:30
void set_status(grpc_status_code status)
Definition: tls_credentials_options.cc:216
struct grpc_tls_server_authorization_check_arg grpc_tls_server_authorization_check_arg
Definition: tls_credentials_options.h:33
void set_version(int version)
Definition: tls_credentials_options.h:64
virtual void Cancel(TlsServerAuthorizationCheckArg *)
A callback that cancels a server authorization check request.
Definition: tls_credentials_options.h:230
struct grpc_tls_credential_reload_config grpc_tls_credential_reload_config
Definition: tls_credentials_options.h:31
TLS key materials config, wrapper for grpc_tls_key_materials_config.
Definition: tls_credentials_options.h:44
std::shared_ptr< TlsCredentialReloadConfig > credential_reload_config() const
Definition: tls_credentials_options.h:303
TLS credential reloag config, wraps grpc_tls_credential_reload_config.
Definition: tls_credentials_options.h:133
struct grpc_tls_credentials_options grpc_tls_credentials_options
Definition: tls_credentials_options.h:37
void set_cb_user_data(void *cb_user_data)
Setters for member fields.
Definition: tls_credentials_options.cc:198
An Alarm posts the user-provided tag to its associated completion queue or invokes the user-provided ...
Definition: alarm_impl.h:33
void set_error_details(const grpc::string &error_details)
Definition: tls_credentials_options.cc:135
void set_peer_cert(const grpc::string &peer_cert)
Definition: tls_credentials_options.cc:211
~TlsCredentialReloadConfig()
Definition: tls_credentials_options.cc:158
struct grpc_tls_server_authorization_check_config grpc_tls_server_authorization_check_config
Definition: tls_credentials_options.h:35
grpc_tls_credential_reload_config * c_config() const
Returns a C struct for the credential reload config.
Definition: tls_credentials_options.h:166
void set_error_details(const grpc::string &error_details)
Definition: tls_credentials_options.cc:220
~TlsCredentialReloadArg()
Definition: tls_credentials_options.cc:57
Some requested entity (e.g., file or directory) was not found.
Definition: status.h:54
virtual ~TlsServerAuthorizationCheckInterface()=default
void set_status(grpc_ssl_certificate_config_reload_status status)
Definition: tls_credentials_options.cc:130
void set_pem_root_certs(const grpc::string &pem_root_certs)
Definition: tls_credentials_options.cc:81
grpc_ssl_certificate_config_reload_status status() const
Definition: tls_credentials_options.cc:67
bool is_pem_key_cert_pair_list_empty() const
Definition: tls_credentials_options.cc:63
grpc_status_code status() const
Definition: tls_credentials_options.cc:189
grpc_tls_server_authorization_check_config * c_config() const
Returns C struct for the server authorization check config.
Definition: tls_credentials_options.h:272
~TlsCredentialsOptions()
Definition: tls_credentials_options.cc:277
void * cb_user_data() const
Getters for member fields.
Definition: tls_credentials_options.cc:173
void OnCredentialReloadDoneCallback()
Calls the C arg's callback function.
Definition: tls_credentials_options.cc:140
TlsCredentialsOptions(grpc_ssl_client_certificate_request_type cert_request_type, std::shared_ptr< TlsKeyMaterialsConfig > key_materials_config, std::shared_ptr< TlsCredentialReloadConfig > credential_reload_config, std::shared_ptr< TlsServerAuthorizationCheckConfig > server_authorization_check_config)
gRPC TLS credential options API implementation
Definition: tls_credentials_options.cc:248