1 /* 2 * 3 * Copyright 2018 gRPC authors. 4 * 5 * Licensed under the Apache License, Version 2.0 (the "License"); 6 * you may not use this file except in compliance with the License. 7 * You may obtain a copy of the License at 8 * 9 * http://www.apache.org/licenses/LICENSE-2.0 10 * 11 * Unless required by applicable law or agreed to in writing, software 12 * distributed under the License is distributed on an "AS IS" BASIS, 13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 * See the License for the specific language governing permissions and 15 * limitations under the License. 16 * 17 */ 18 19 #ifndef GRPC_CORE_LIB_SECURITY_SECURITY_CONNECTOR_LOCAL_SECURITY_CONNECTOR_H 20 #define GRPC_CORE_LIB_SECURITY_SECURITY_CONNECTOR_LOCAL_SECURITY_CONNECTOR_H 21 22 #include <grpc/support/port_platform.h> 23 24 #include "src/core/lib/security/context/security_context.h" 25 26 /** 27 * This method creates a local channel security connector. 28 * 29 * - channel_creds: channel credential instance. 30 * - request_metadata_creds: credential object which will be sent with each 31 * request. This parameter can be nullptr. 32 * - target_name: the name of the endpoint that the channel is connecting to. 33 * - args: channel args passed from the caller. 34 * - sc: address of local channel security connector instance to be returned 35 * from the method. 36 * 37 * It returns GRPC_SECURITY_OK on success, and an error stauts code on failure. 38 */ 39 grpc_security_status grpc_local_channel_security_connector_create( 40 grpc_channel_credentials* channel_creds, 41 grpc_call_credentials* request_metadata_creds, 42 const grpc_channel_args* args, const char* target_name, 43 grpc_channel_security_connector** sc); 44 45 /** 46 * This method creates a local server security connector. 47 * 48 * - server_creds: server credential instance. 49 * - sc: address of local server security connector instance to be returned from 50 * the method. 51 * 52 * It returns GRPC_SECURITY_OK on success, and an error status code on failure. 53 */ 54 grpc_security_status grpc_local_server_security_connector_create( 55 grpc_server_credentials* server_creds, grpc_server_security_connector** sc); 56 57 #endif /* GRPC_CORE_LIB_SECURITY_SECURITY_CONNECTOR_LOCAL_SECURITY_CONNECTOR_H \ 58 */ 59