Add support for gRPC authenticated communications

Also, make a few namespace corrections and some minor refactoring.

Change-Id: Iedcaf6b43cb7576bc11dfefe980abd190c838831
This commit is contained in:
Chris Freehill
2020-03-02 15:06:01 -06:00
parent 020f6939f7
commit 47fdfa4c7e
28 changed files with 824 additions and 43 deletions
+2 -2
View File
@@ -39,7 +39,7 @@ class RDCAdminServiceImpl final : public ::rdc::RdcAdmin::Service {
private:
};
} // namespace rdc
} // namespace amd
} // namespace rdc
} // namespace amd
#endif // SERVER_INCLUDE_RDC_RDC_ADMIN_SERVICE_H_
+15 -3
View File
@@ -31,14 +31,22 @@ THE SOFTWARE.
#include "rdc/rdc_admin_service.h"
#include "rdc/rdc_api_service.h"
typedef struct {
std::string listen_port;
bool no_authentication;
bool use_pinned_certs;
bool log_dbg;
} RdcdCmdLineOpts;
class RDCServer {
public:
RDCServer();
~RDCServer();
void Initialize();
void Initialize(RdcdCmdLineOpts *cl);
void Run(void);
void ShutDown(void);
bool start_rsmi_service(void) const {return start_rsmi_service_;}
void set_start_rsmi_service(bool s) {start_rsmi_service_ = s;}
@@ -49,15 +57,19 @@ class RDCServer {
bool start_api_service(void) const {return start_api_service_;}
void set_start_api_service(bool s) {start_api_service_ = s;}
void ShutDown(void);
bool secure_creds(void) const {return secure_creds_;}
void set_secure_creds(bool s) {secure_creds_ = s;}
private:
void HandleSignal(int sig);
std::string server_address_;
std::unique_ptr<::grpc::Server> server_;
bool secure_creds_;
bool use_pinned_certs_;
bool log_debug_;
bool start_rsmi_service_;
amd::rdc::RsmiServiceImpl *rsmi_service_;
RdcdCmdLineOpts *cmd_line_;
bool start_rdc_admin_service_;
amd::rdc::RDCAdminServiceImpl *rdc_admin_service_;
+6 -1
View File
@@ -24,7 +24,12 @@ THE SOFTWARE.
#include <sys/capability.h>
namespace amd {
namespace rdc {
int GetCapability(cap_value_t cap, cap_flag_t cap_type, bool *enabled);
int ModifyCapability(cap_value_t cap, cap_flag_t cap_type, bool enable);
} // namespace rdc
} // namespace amd
#endif // SERVER_INCLUDE_RDC_RDC_SERVER_UTILS_H_
#endif // SERVER_INCLUDE_RDC_RDC_SERVER_UTILS_H_