19 #ifndef GRPC_INTERNAL_CPP_SERVER_SECURE_SERVER_CREDENTIALS_H
20 #define GRPC_INTERNAL_CPP_SERVER_SECURE_SERVER_CREDENTIALS_H
27 #include <grpc/grpc_security.h>
42 static void Destroy(
void* wrapper);
44 static void Process(
void* wrapper, grpc_auth_context* context,
46 grpc_process_auth_metadata_done_cb cb,
void* user_data);
49 const std::shared_ptr<AuthMetadataProcessor>& processor)
50 : processor_(processor) {
51 if (processor && processor->IsBlocking()) {
57 void InvokeProcessor(grpc_auth_context* context,
const grpc_metadata* md,
58 size_t num_md, grpc_process_auth_metadata_done_cb cb,
60 std::unique_ptr<ThreadPoolInterface> thread_pool_;
61 std::shared_ptr<AuthMetadataProcessor> processor_;
73 grpc_server_credentials_release(creds_);
79 const std::shared_ptr<grpc::AuthMetadataProcessor>& processor)
override;
82 grpc_server_credentials* creds_;
83 std::unique_ptr<grpc::AuthMetadataProcessorAyncWrapper> processor_;
Definition: secure_server_credentials.h:68
void SetAuthMetadataProcessor(const std::shared_ptr< grpc::AuthMetadataProcessor > &processor) override
This method is not thread-safe and has to be called before the server is started.
Definition: secure_server_credentials.cc:103
int AddPortToServer(const grpc::string &addr, grpc_server *server) override
Tries to bind server to the given addr (eg, localhost:1234, 192.168.1.1:31416, [::1]:27182,...
Definition: secure_server_credentials.cc:98
SecureServerCredentials(grpc_server_credentials *creds)
Definition: secure_server_credentials.h:70
~SecureServerCredentials() override
Definition: secure_server_credentials.h:72
Wrapper around grpc_server_credentials, a way to authenticate a server.
Definition: server_credentials_impl.h:40
struct grpc_server grpc_server
A server listens to some port and responds to request calls.
Definition: grpc_types.h:65
An Alarm posts the user-provided tag to its associated completion queue or invokes the user-provided ...
Definition: alarm_impl.h:33
This header provides an object that reads bytes directly from a grpc::ByteBuffer, via the ZeroCopyInp...
Definition: alarm.h:24
ThreadPoolInterface * CreateDefaultThreadPool()
Definition: create_default_thread_pool.cc:38
std::string string
Definition: config.h:35
::grpc_impl::SecureServerCredentials SecureServerCredentials
Definition: secure_server_credentials.h:38