1808 lines
89 KiB
Diff
1808 lines
89 KiB
Diff
|
|
From 290758ba7ee8ce9b1696628ee207bceed847d2d3 Mon Sep 17 00:00:00 2001
|
||
|
|
From: xuxuepeng <xuxuepeng1@huawei.com>
|
||
|
|
Date: Tue, 5 Sep 2023 11:10:11 +0000
|
||
|
|
Subject: [PATCH 07/33] !2171 Fix nullptr in src/daemon/entry * !2160 Fix
|
||
|
|
nullptr in src/daemon/entry
|
||
|
|
|
||
|
|
---
|
||
|
|
.../cri/v1/cri_v1_runtime_image_service.cc | 29 ++++-
|
||
|
|
.../cri/v1/cri_v1_runtime_runtime_service.cc | 116 ++++++++++++++++-
|
||
|
|
.../cri/v1alpha/cri_runtime_image_service.cc | 29 ++++-
|
||
|
|
.../v1alpha/cri_runtime_runtime_service.cc | 118 +++++++++++++++++-
|
||
|
|
.../connect/grpc/grpc_containers_service.cc | 35 ++++++
|
||
|
|
.../entry/connect/grpc/grpc_images_service.cc | 40 ++++++
|
||
|
|
.../connect/grpc/grpc_server_tls_auth.cc | 4 +
|
||
|
|
.../connect/grpc/grpc_volumes_service.cc | 15 +++
|
||
|
|
.../entry/connect/rest/rest_service_common.c | 12 +-
|
||
|
|
src/daemon/entry/cri/network_plugin.h | 10 +-
|
||
|
|
.../v1/v1_cri_container_manager_service.cc | 18 ++-
|
||
|
|
.../cri/v1/v1_cri_container_manager_service.h | 8 +-
|
||
|
|
.../cri/v1/v1_cri_image_manager_service.h | 4 +-
|
||
|
|
.../v1/v1_cri_image_manager_service_impl.cc | 12 +-
|
||
|
|
.../v1/v1_cri_image_manager_service_impl.h | 8 +-
|
||
|
|
.../v1/v1_cri_pod_sandbox_manager_service.cc | 6 +-
|
||
|
|
.../v1/v1_cri_pod_sandbox_manager_service.h | 2 +-
|
||
|
|
.../entry/cri/v1/v1_cri_runtime_service.h | 6 +-
|
||
|
|
.../cri/v1/v1_cri_runtime_service_impl.cc | 6 +-
|
||
|
|
.../cri/v1/v1_cri_runtime_service_impl.h | 6 +-
|
||
|
|
.../v1alpha/cri_container_manager_service.cc | 18 ++-
|
||
|
|
.../v1alpha/cri_container_manager_service.h | 8 +-
|
||
|
|
.../cri/v1alpha/cri_image_manager_service.h | 4 +-
|
||
|
|
.../v1alpha/cri_image_manager_service_impl.cc | 12 +-
|
||
|
|
.../v1alpha/cri_image_manager_service_impl.h | 8 +-
|
||
|
|
.../cri_pod_sandbox_manager_service.cc | 12 +-
|
||
|
|
.../v1alpha/cri_pod_sandbox_manager_service.h | 6 +-
|
||
|
|
.../entry/cri/v1alpha/cri_runtime_service.h | 8 +-
|
||
|
|
.../cri/v1alpha/cri_runtime_service_impl.cc | 8 +-
|
||
|
|
.../cri/v1alpha/cri_runtime_service_impl.h | 8 +-
|
||
|
|
30 files changed, 471 insertions(+), 105 deletions(-)
|
||
|
|
|
||
|
|
diff --git a/src/daemon/entry/connect/grpc/cri/v1/cri_v1_runtime_image_service.cc b/src/daemon/entry/connect/grpc/cri/v1/cri_v1_runtime_image_service.cc
|
||
|
|
index f3e745ff..ac62b6eb 100644
|
||
|
|
--- a/src/daemon/entry/connect/grpc/cri/v1/cri_v1_runtime_image_service.cc
|
||
|
|
+++ b/src/daemon/entry/connect/grpc/cri/v1/cri_v1_runtime_image_service.cc
|
||
|
|
@@ -33,6 +33,11 @@ grpc::Status RuntimeV1ImageServiceImpl::PullImage(grpc::ServerContext *context,
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
EVENT("Event: {Object: CRI, Type: Pulling image %s}", request->image().image().c_str());
|
||
|
|
|
||
|
|
std::string imageRef = rService->PullImage(request->image(), request->auth(), error);
|
||
|
|
@@ -54,9 +59,14 @@ grpc::Status RuntimeV1ImageServiceImpl::ListImages(grpc::ServerContext *context,
|
||
|
|
std::vector<std::unique_ptr<runtime::v1::Image>> images;
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
INFO("Event: {Object: CRI, Type: Listing all images}");
|
||
|
|
|
||
|
|
- rService->ListImages(request->filter(), &images, error);
|
||
|
|
+ rService->ListImages(request->filter(), images, error);
|
||
|
|
if (!error.Empty()) {
|
||
|
|
ERROR("{Object: CRI, Type: Failed to list all images: %s}", error.GetMessage().c_str());
|
||
|
|
return grpc::Status(grpc::StatusCode::UNKNOWN, error.GetMessage());
|
||
|
|
@@ -82,6 +92,11 @@ grpc::Status RuntimeV1ImageServiceImpl::ImageStatus(grpc::ServerContext *context
|
||
|
|
std::unique_ptr<runtime::v1::Image> image_info = nullptr;
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
INFO("Event: {Object: CRI, Type: Statusing image %s}", request->image().image().c_str());
|
||
|
|
|
||
|
|
image_info = rService->ImageStatus(request->image(), error);
|
||
|
|
@@ -108,9 +123,14 @@ grpc::Status RuntimeV1ImageServiceImpl::ImageFsInfo(grpc::ServerContext *context
|
||
|
|
std::vector<std::unique_ptr<runtime::v1::FilesystemUsage>> usages;
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
INFO("Event: {Object: CRI, Type: Statusing image fs info}");
|
||
|
|
|
||
|
|
- rService->ImageFsInfo(&usages, error);
|
||
|
|
+ rService->ImageFsInfo(usages, error);
|
||
|
|
if (!error.Empty()) {
|
||
|
|
ERROR("{Object: CRI, Type: Failed to status image fs info: %s}", error.GetMessage().c_str());
|
||
|
|
return grpc::Status(grpc::StatusCode::UNKNOWN, error.GetMessage());
|
||
|
|
@@ -135,6 +155,11 @@ grpc::Status RuntimeV1ImageServiceImpl::RemoveImage(grpc::ServerContext *context
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr) {
|
||
|
|
+ ERROR("Invalid arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
EVENT("Event: {Object: CRI, Type: Removing image %s}", request->image().image().c_str());
|
||
|
|
|
||
|
|
rService->RemoveImage(request->image(), error);
|
||
|
|
diff --git a/src/daemon/entry/connect/grpc/cri/v1/cri_v1_runtime_runtime_service.cc b/src/daemon/entry/connect/grpc/cri/v1/cri_v1_runtime_runtime_service.cc
|
||
|
|
index d897119d..b8d5746c 100644
|
||
|
|
--- a/src/daemon/entry/connect/grpc/cri/v1/cri_v1_runtime_runtime_service.cc
|
||
|
|
+++ b/src/daemon/entry/connect/grpc/cri/v1/cri_v1_runtime_runtime_service.cc
|
||
|
|
@@ -51,6 +51,11 @@ grpc::Status RuntimeV1RuntimeServiceImpl::Version(grpc::ServerContext *context,
|
||
|
|
runtime::v1::VersionResponse *reply)
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
m_rService->Version(request->version(), reply, error);
|
||
|
|
if (!error.Empty()) {
|
||
|
|
return grpc::Status(grpc::StatusCode::UNKNOWN, error.GetMessage());
|
||
|
|
@@ -65,6 +70,11 @@ grpc::Status RuntimeV1RuntimeServiceImpl::CreateContainer(grpc::ServerContext *c
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
EVENT("Event: {Object: CRI, Type: Creating Container}");
|
||
|
|
|
||
|
|
std::string responseID =
|
||
|
|
@@ -86,6 +96,11 @@ grpc::Status RuntimeV1RuntimeServiceImpl::StartContainer(grpc::ServerContext *co
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
EVENT("Event: {Object: CRI, Type: Starting Container: %s}", request->container_id().c_str());
|
||
|
|
|
||
|
|
m_rService->StartContainer(request->container_id(), error);
|
||
|
|
@@ -105,6 +120,11 @@ grpc::Status RuntimeV1RuntimeServiceImpl::StopContainer(grpc::ServerContext *con
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
EVENT("Event: {Object: CRI, Type: Stopping Container: %s}", request->container_id().c_str());
|
||
|
|
|
||
|
|
m_rService->StopContainer(request->container_id(), (int64_t)request->timeout(), error);
|
||
|
|
@@ -124,6 +144,11 @@ grpc::Status RuntimeV1RuntimeServiceImpl::RemoveContainer(grpc::ServerContext *c
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
EVENT("Event: {Object: CRI, Type: Removing Container: %s}", request->container_id().c_str());
|
||
|
|
|
||
|
|
m_rService->RemoveContainer(request->container_id(), error);
|
||
|
|
@@ -143,10 +168,15 @@ grpc::Status RuntimeV1RuntimeServiceImpl::ListContainers(grpc::ServerContext *co
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
INFO("Event: {Object: CRI, Type: Listing all Container}");
|
||
|
|
|
||
|
|
std::vector<std::unique_ptr<runtime::v1::Container>> containers;
|
||
|
|
- m_rService->ListContainers(request->has_filter() ? &request->filter() : nullptr, &containers, error);
|
||
|
|
+ m_rService->ListContainers(request->has_filter() ? &request->filter() : nullptr, containers, error);
|
||
|
|
if (!error.Empty()) {
|
||
|
|
ERROR("Object: CRI, Type: Failed to list all containers %s", error.GetMessage().c_str());
|
||
|
|
return grpc::Status(grpc::StatusCode::UNKNOWN, error.GetMessage());
|
||
|
|
@@ -172,6 +202,11 @@ grpc::Status RuntimeV1RuntimeServiceImpl::ContainerStats(grpc::ServerContext *co
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
INFO("Event: {Object: CRI, Type: Getting Container Stats: %s}", request->container_id().c_str());
|
||
|
|
|
||
|
|
std::unique_ptr<runtime::v1::ContainerStats> contStats =
|
||
|
|
@@ -193,10 +228,15 @@ grpc::Status RuntimeV1RuntimeServiceImpl::ListContainerStats(grpc::ServerContext
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
INFO("Event: {Object: CRI, Type: Listing all Container stats}");
|
||
|
|
|
||
|
|
std::vector<std::unique_ptr<runtime::v1::ContainerStats>> containers;
|
||
|
|
- m_rService->ListContainerStats(request->has_filter() ? &request->filter() : nullptr, &containers, error);
|
||
|
|
+ m_rService->ListContainerStats(request->has_filter() ? &request->filter() : nullptr, containers, error);
|
||
|
|
if (!error.Empty()) {
|
||
|
|
ERROR("Object: CRI, Type: Failed to list all containers stat %s", error.GetMessage().c_str());
|
||
|
|
return grpc::Status(grpc::StatusCode::UNKNOWN, error.GetMessage());
|
||
|
|
@@ -222,6 +262,11 @@ grpc::Status RuntimeV1RuntimeServiceImpl::ContainerStatus(grpc::ServerContext *c
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
INFO("Event: {Object: CRI, Type: Statusing Container: %s}", request->container_id().c_str());
|
||
|
|
|
||
|
|
std::unique_ptr<runtime::v1::ContainerStatus> contStatus =
|
||
|
|
@@ -243,6 +288,11 @@ grpc::Status RuntimeV1RuntimeServiceImpl::ExecSync(grpc::ServerContext *context,
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
WARN("Event: {Object: CRI, Type: sync execing Container: %s}", request->container_id().c_str());
|
||
|
|
|
||
|
|
m_rService->ExecSync(request->container_id(), request->cmd(), request->timeout(), reply, error);
|
||
|
|
@@ -262,6 +312,11 @@ grpc::Status RuntimeV1RuntimeServiceImpl::RunPodSandbox(grpc::ServerContext *con
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
EVENT("Event: {Object: CRI, Type: Running Pod}");
|
||
|
|
|
||
|
|
std::string responseID = m_rService->RunPodSandbox(request->config(), request->runtime_handler(), error);
|
||
|
|
@@ -282,6 +337,11 @@ grpc::Status RuntimeV1RuntimeServiceImpl::StopPodSandbox(grpc::ServerContext *co
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
EVENT("Event: {Object: CRI, Type: Stopping Pod: %s}", request->pod_sandbox_id().c_str());
|
||
|
|
|
||
|
|
m_rService->StopPodSandbox(request->pod_sandbox_id(), error);
|
||
|
|
@@ -302,6 +362,11 @@ grpc::Status RuntimeV1RuntimeServiceImpl::RemovePodSandbox(grpc::ServerContext *
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
EVENT("Event: {Object: CRI, Type: Removing Pod: %s}", request->pod_sandbox_id().c_str());
|
||
|
|
|
||
|
|
m_rService->RemovePodSandbox(request->pod_sandbox_id(), error);
|
||
|
|
@@ -322,6 +387,11 @@ grpc::Status RuntimeV1RuntimeServiceImpl::PodSandboxStatus(grpc::ServerContext *
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
INFO("Event: {Object: CRI, Type: Status Pod: %s}", request->pod_sandbox_id().c_str());
|
||
|
|
|
||
|
|
std::unique_ptr<runtime::v1::PodSandboxStatus> podStatus;
|
||
|
|
@@ -344,6 +414,11 @@ grpc::Status RuntimeV1RuntimeServiceImpl::ListPodSandbox(grpc::ServerContext *co
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
INFO("Event: {Object: CRI, Type: Listing all Pods}");
|
||
|
|
|
||
|
|
std::vector<std::unique_ptr<runtime::v1::PodSandbox>> pods;
|
||
|
|
@@ -373,6 +448,11 @@ grpc::Status RuntimeV1RuntimeServiceImpl::PodSandboxStats(grpc::ServerContext *c
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
INFO("Event: {Object: CRI, Type: Stats Pod: %s}", request->pod_sandbox_id().c_str());
|
||
|
|
|
||
|
|
std::unique_ptr<runtime::v1::PodSandboxStats> podStats;
|
||
|
|
@@ -396,10 +476,15 @@ RuntimeV1RuntimeServiceImpl::ListPodSandboxStats(grpc::ServerContext *context,
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
INFO("Event: {Object: CRI, Type: Listing Pods Stats}");
|
||
|
|
|
||
|
|
std::vector<std::unique_ptr<runtime::v1::PodSandboxStats>> podsStats;
|
||
|
|
- m_rService->ListPodSandboxStats(request->has_filter() ? &request->filter() : nullptr, &podsStats, error);
|
||
|
|
+ m_rService->ListPodSandboxStats(request->has_filter() ? &request->filter() : nullptr, podsStats, error);
|
||
|
|
if (!error.Empty()) {
|
||
|
|
ERROR("Object: CRI, Type: Failed to list pods stats: %s", error.GetCMessage());
|
||
|
|
return grpc::Status(grpc::StatusCode::UNKNOWN, error.GetMessage());
|
||
|
|
@@ -425,6 +510,11 @@ RuntimeV1RuntimeServiceImpl::UpdateContainerResources(grpc::ServerContext *conte
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
WARN("Event: {Object: CRI, Type: Updating container resources: %s}", request->container_id().c_str());
|
||
|
|
|
||
|
|
m_rService->UpdateContainerResources(request->container_id(), request->linux(), error);
|
||
|
|
@@ -445,6 +535,11 @@ grpc::Status RuntimeV1RuntimeServiceImpl::Exec(grpc::ServerContext *context,
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || response == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
EVENT("Event: {Object: CRI, Type: execing Container: %s}", request->container_id().c_str());
|
||
|
|
|
||
|
|
m_rService->Exec(*request, response, error);
|
||
|
|
@@ -465,6 +560,11 @@ grpc::Status RuntimeV1RuntimeServiceImpl::Attach(grpc::ServerContext *context,
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || response == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
EVENT("Event: {Object: CRI, Type: attaching Container: %s}", request->container_id().c_str());
|
||
|
|
|
||
|
|
m_rService->Attach(*request, response, error);
|
||
|
|
@@ -486,6 +586,11 @@ RuntimeV1RuntimeServiceImpl::UpdateRuntimeConfig(grpc::ServerContext *context,
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
EVENT("Event: {Object: CRI, Type: Updating Runtime Config}");
|
||
|
|
|
||
|
|
m_rService->UpdateRuntimeConfig(request->runtime_config(), error);
|
||
|
|
@@ -505,6 +610,11 @@ grpc::Status RuntimeV1RuntimeServiceImpl::Status(grpc::ServerContext *context,
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
INFO("Event: {Object: CRI, Type: Statusing daemon}");
|
||
|
|
|
||
|
|
std::unique_ptr<runtime::v1::RuntimeStatus> status = m_rService->Status(error);
|
||
|
|
diff --git a/src/daemon/entry/connect/grpc/cri/v1alpha/cri_runtime_image_service.cc b/src/daemon/entry/connect/grpc/cri/v1alpha/cri_runtime_image_service.cc
|
||
|
|
index b724e729..1353933b 100644
|
||
|
|
--- a/src/daemon/entry/connect/grpc/cri/v1alpha/cri_runtime_image_service.cc
|
||
|
|
+++ b/src/daemon/entry/connect/grpc/cri/v1alpha/cri_runtime_image_service.cc
|
||
|
|
@@ -33,6 +33,11 @@ grpc::Status RuntimeImageServiceImpl::PullImage(grpc::ServerContext *context,
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
EVENT("Event: {Object: CRI, Type: Pulling image %s}", request->image().image().c_str());
|
||
|
|
|
||
|
|
std::string imageRef = rService->PullImage(request->image(), request->auth(), error);
|
||
|
|
@@ -54,9 +59,14 @@ grpc::Status RuntimeImageServiceImpl::ListImages(grpc::ServerContext *context,
|
||
|
|
std::vector<std::unique_ptr<runtime::v1alpha2::Image>> images;
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
INFO("Event: {Object: CRI, Type: Listing all images}");
|
||
|
|
|
||
|
|
- rService->ListImages(request->filter(), &images, error);
|
||
|
|
+ rService->ListImages(request->filter(), images, error);
|
||
|
|
if (!error.Empty()) {
|
||
|
|
ERROR("{Object: CRI, Type: Failed to list all images: %s}", error.GetMessage().c_str());
|
||
|
|
return grpc::Status(grpc::StatusCode::UNKNOWN, error.GetMessage());
|
||
|
|
@@ -82,6 +92,11 @@ grpc::Status RuntimeImageServiceImpl::ImageStatus(grpc::ServerContext *context,
|
||
|
|
std::unique_ptr<runtime::v1alpha2::Image> image_info = nullptr;
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
INFO("Event: {Object: CRI, Type: Statusing image %s}", request->image().image().c_str());
|
||
|
|
|
||
|
|
image_info = rService->ImageStatus(request->image(), error);
|
||
|
|
@@ -108,9 +123,14 @@ grpc::Status RuntimeImageServiceImpl::ImageFsInfo(grpc::ServerContext *context,
|
||
|
|
std::vector<std::unique_ptr<runtime::v1alpha2::FilesystemUsage>> usages;
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
INFO("Event: {Object: CRI, Type: Statusing image fs info}");
|
||
|
|
|
||
|
|
- rService->ImageFsInfo(&usages, error);
|
||
|
|
+ rService->ImageFsInfo(usages, error);
|
||
|
|
if (!error.Empty()) {
|
||
|
|
ERROR("{Object: CRI, Type: Failed to status image fs info: %s}", error.GetMessage().c_str());
|
||
|
|
return grpc::Status(grpc::StatusCode::UNKNOWN, error.GetMessage());
|
||
|
|
@@ -135,6 +155,11 @@ grpc::Status RuntimeImageServiceImpl::RemoveImage(grpc::ServerContext *context,
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr) {
|
||
|
|
+ ERROR("Invalid arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
EVENT("Event: {Object: CRI, Type: Removing image %s}", request->image().image().c_str());
|
||
|
|
|
||
|
|
rService->RemoveImage(request->image(), error);
|
||
|
|
diff --git a/src/daemon/entry/connect/grpc/cri/v1alpha/cri_runtime_runtime_service.cc b/src/daemon/entry/connect/grpc/cri/v1alpha/cri_runtime_runtime_service.cc
|
||
|
|
index 28775554..ec3f01cd 100644
|
||
|
|
--- a/src/daemon/entry/connect/grpc/cri/v1alpha/cri_runtime_runtime_service.cc
|
||
|
|
+++ b/src/daemon/entry/connect/grpc/cri/v1alpha/cri_runtime_runtime_service.cc
|
||
|
|
@@ -49,6 +49,11 @@ grpc::Status RuntimeRuntimeServiceImpl::Version(grpc::ServerContext *context,
|
||
|
|
runtime::v1alpha2::VersionResponse *reply)
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
m_rService->Version(request->version(), reply, error);
|
||
|
|
if (!error.Empty()) {
|
||
|
|
return grpc::Status(grpc::StatusCode::UNKNOWN, error.GetMessage());
|
||
|
|
@@ -63,6 +68,11 @@ grpc::Status RuntimeRuntimeServiceImpl::CreateContainer(grpc::ServerContext *con
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
EVENT("Event: {Object: CRI, Type: Creating Container}");
|
||
|
|
|
||
|
|
std::string responseID =
|
||
|
|
@@ -84,6 +94,11 @@ grpc::Status RuntimeRuntimeServiceImpl::StartContainer(grpc::ServerContext *cont
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
EVENT("Event: {Object: CRI, Type: Starting Container: %s}", request->container_id().c_str());
|
||
|
|
|
||
|
|
m_rService->StartContainer(request->container_id(), error);
|
||
|
|
@@ -103,6 +118,11 @@ grpc::Status RuntimeRuntimeServiceImpl::StopContainer(grpc::ServerContext *conte
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
EVENT("Event: {Object: CRI, Type: Stopping Container: %s}", request->container_id().c_str());
|
||
|
|
|
||
|
|
m_rService->StopContainer(request->container_id(), (int64_t)request->timeout(), error);
|
||
|
|
@@ -122,6 +142,11 @@ grpc::Status RuntimeRuntimeServiceImpl::RemoveContainer(grpc::ServerContext *con
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
EVENT("Event: {Object: CRI, Type: Removing Container: %s}", request->container_id().c_str());
|
||
|
|
|
||
|
|
m_rService->RemoveContainer(request->container_id(), error);
|
||
|
|
@@ -141,10 +166,15 @@ grpc::Status RuntimeRuntimeServiceImpl::ListContainers(grpc::ServerContext *cont
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
INFO("Event: {Object: CRI, Type: Listing all Container}");
|
||
|
|
|
||
|
|
std::vector<std::unique_ptr<runtime::v1alpha2::Container>> containers;
|
||
|
|
- m_rService->ListContainers(request->has_filter() ? &request->filter() : nullptr, &containers, error);
|
||
|
|
+ m_rService->ListContainers(request->has_filter() ? &request->filter() : nullptr, containers, error);
|
||
|
|
if (!error.Empty()) {
|
||
|
|
ERROR("Object: CRI, Type: Failed to list all containers %s", error.GetMessage().c_str());
|
||
|
|
return grpc::Status(grpc::StatusCode::UNKNOWN, error.GetMessage());
|
||
|
|
@@ -170,6 +200,11 @@ grpc::Status RuntimeRuntimeServiceImpl::ContainerStats(grpc::ServerContext *cont
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
INFO("Event: {Object: CRI, Type: Getting Container Stats: %s}", request->container_id().c_str());
|
||
|
|
|
||
|
|
std::unique_ptr<runtime::v1alpha2::ContainerStats> contStats =
|
||
|
|
@@ -191,10 +226,15 @@ grpc::Status RuntimeRuntimeServiceImpl::ListContainerStats(grpc::ServerContext *
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
INFO("Event: {Object: CRI, Type: Listing all Container stats}");
|
||
|
|
|
||
|
|
std::vector<std::unique_ptr<runtime::v1alpha2::ContainerStats>> containers;
|
||
|
|
- m_rService->ListContainerStats(request->has_filter() ? &request->filter() : nullptr, &containers, error);
|
||
|
|
+ m_rService->ListContainerStats(request->has_filter() ? &request->filter() : nullptr, containers, error);
|
||
|
|
if (!error.Empty()) {
|
||
|
|
ERROR("Object: CRI, Type: Failed to list all containers stat %s", error.GetMessage().c_str());
|
||
|
|
return grpc::Status(grpc::StatusCode::UNKNOWN, error.GetMessage());
|
||
|
|
@@ -220,6 +260,11 @@ grpc::Status RuntimeRuntimeServiceImpl::ContainerStatus(grpc::ServerContext *con
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
INFO("Event: {Object: CRI, Type: Statusing Container: %s}", request->container_id().c_str());
|
||
|
|
|
||
|
|
std::unique_ptr<runtime::v1alpha2::ContainerStatus> contStatus =
|
||
|
|
@@ -241,6 +286,11 @@ grpc::Status RuntimeRuntimeServiceImpl::ExecSync(grpc::ServerContext *context,
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
WARN("Event: {Object: CRI, Type: sync execing Container: %s}", request->container_id().c_str());
|
||
|
|
|
||
|
|
m_rService->ExecSync(request->container_id(), request->cmd(), request->timeout(), reply, error);
|
||
|
|
@@ -260,6 +310,11 @@ grpc::Status RuntimeRuntimeServiceImpl::RunPodSandbox(grpc::ServerContext *conte
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
EVENT("Event: {Object: CRI, Type: Running Pod}");
|
||
|
|
|
||
|
|
std::string responseID = m_rService->RunPodSandbox(request->config(), request->runtime_handler(), error);
|
||
|
|
@@ -280,6 +335,11 @@ grpc::Status RuntimeRuntimeServiceImpl::StopPodSandbox(grpc::ServerContext *cont
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
EVENT("Event: {Object: CRI, Type: Stopping Pod: %s}", request->pod_sandbox_id().c_str());
|
||
|
|
|
||
|
|
m_rService->StopPodSandbox(request->pod_sandbox_id(), error);
|
||
|
|
@@ -300,6 +360,11 @@ grpc::Status RuntimeRuntimeServiceImpl::RemovePodSandbox(grpc::ServerContext *co
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
EVENT("Event: {Object: CRI, Type: Removing Pod: %s}", request->pod_sandbox_id().c_str());
|
||
|
|
|
||
|
|
m_rService->RemovePodSandbox(request->pod_sandbox_id(), error);
|
||
|
|
@@ -320,6 +385,11 @@ grpc::Status RuntimeRuntimeServiceImpl::PodSandboxStatus(grpc::ServerContext *co
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
INFO("Event: {Object: CRI, Type: Status Pod: %s}", request->pod_sandbox_id().c_str());
|
||
|
|
|
||
|
|
std::unique_ptr<runtime::v1alpha2::PodSandboxStatus> podStatus;
|
||
|
|
@@ -342,10 +412,15 @@ grpc::Status RuntimeRuntimeServiceImpl::ListPodSandbox(grpc::ServerContext *cont
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
INFO("Event: {Object: CRI, Type: Listing all Pods}");
|
||
|
|
|
||
|
|
std::vector<std::unique_ptr<runtime::v1alpha2::PodSandbox>> pods;
|
||
|
|
- m_rService->ListPodSandbox(request->has_filter() ? &request->filter() : nullptr, &pods, error);
|
||
|
|
+ m_rService->ListPodSandbox(request->has_filter() ? &request->filter() : nullptr, pods, error);
|
||
|
|
if (!error.Empty()) {
|
||
|
|
ERROR("Object: CRI, Type: Failed to list all pods: %s", error.GetMessage().c_str());
|
||
|
|
return grpc::Status(grpc::StatusCode::UNKNOWN, error.GetMessage());
|
||
|
|
@@ -370,6 +445,11 @@ grpc::Status RuntimeRuntimeServiceImpl::PodSandboxStats(grpc::ServerContext *con
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
INFO("Event: {Object: CRI, Type: Stats Pod: %s}", request->pod_sandbox_id().c_str());
|
||
|
|
|
||
|
|
std::unique_ptr<runtime::v1alpha2::PodSandboxStats> podStats;
|
||
|
|
@@ -393,10 +473,15 @@ RuntimeRuntimeServiceImpl::ListPodSandboxStats(grpc::ServerContext *context,
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
INFO("Event: {Object: CRI, Type: Listing Pods Stats}");
|
||
|
|
|
||
|
|
std::vector<std::unique_ptr<runtime::v1alpha2::PodSandboxStats>> podsStats;
|
||
|
|
- m_rService->ListPodSandboxStats(request->has_filter() ? &request->filter() : nullptr, &podsStats, error);
|
||
|
|
+ m_rService->ListPodSandboxStats(request->has_filter() ? &request->filter() : nullptr, podsStats, error);
|
||
|
|
if (!error.Empty()) {
|
||
|
|
ERROR("Object: CRI, Type: Failed to list pods stats: %s", error.GetCMessage());
|
||
|
|
return grpc::Status(grpc::StatusCode::UNKNOWN, error.GetMessage());
|
||
|
|
@@ -422,6 +507,11 @@ RuntimeRuntimeServiceImpl::UpdateContainerResources(grpc::ServerContext *context
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
WARN("Event: {Object: CRI, Type: Updating container resources: %s}", request->container_id().c_str());
|
||
|
|
|
||
|
|
m_rService->UpdateContainerResources(request->container_id(), request->linux(), error);
|
||
|
|
@@ -442,6 +532,11 @@ grpc::Status RuntimeRuntimeServiceImpl::Exec(grpc::ServerContext *context,
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || response == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
EVENT("Event: {Object: CRI, Type: execing Container: %s}", request->container_id().c_str());
|
||
|
|
|
||
|
|
m_rService->Exec(*request, response, error);
|
||
|
|
@@ -462,6 +557,11 @@ grpc::Status RuntimeRuntimeServiceImpl::Attach(grpc::ServerContext *context,
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || response == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
EVENT("Event: {Object: CRI, Type: attaching Container: %s}", request->container_id().c_str());
|
||
|
|
|
||
|
|
m_rService->Attach(*request, response, error);
|
||
|
|
@@ -483,6 +583,11 @@ RuntimeRuntimeServiceImpl::UpdateRuntimeConfig(grpc::ServerContext *context,
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
EVENT("Event: {Object: CRI, Type: Updating Runtime Config}");
|
||
|
|
|
||
|
|
m_rService->UpdateRuntimeConfig(request->runtime_config(), error);
|
||
|
|
@@ -502,6 +607,11 @@ grpc::Status RuntimeRuntimeServiceImpl::Status(grpc::ServerContext *context,
|
||
|
|
{
|
||
|
|
Errors error;
|
||
|
|
|
||
|
|
+ if (request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return grpc::Status(grpc::StatusCode::INVALID_ARGUMENT, "Invalid input arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
INFO("Event: {Object: CRI, Type: Statusing daemon}");
|
||
|
|
|
||
|
|
std::unique_ptr<runtime::v1alpha2::RuntimeStatus> status = m_rService->Status(error);
|
||
|
|
diff --git a/src/daemon/entry/connect/grpc/grpc_containers_service.cc b/src/daemon/entry/connect/grpc/grpc_containers_service.cc
|
||
|
|
index 76f597b5..ab3f6ab7 100644
|
||
|
|
--- a/src/daemon/entry/connect/grpc/grpc_containers_service.cc
|
||
|
|
+++ b/src/daemon/entry/connect/grpc/grpc_containers_service.cc
|
||
|
|
@@ -430,6 +430,11 @@ Status ContainerServiceImpl::RemoteExec(ServerContext *context,
|
||
|
|
container_exec_request *container_req = nullptr;
|
||
|
|
container_exec_response *container_res = nullptr;
|
||
|
|
|
||
|
|
+ if (context == nullptr || stream == nullptr) {
|
||
|
|
+ ERROR("Invalid arguments");
|
||
|
|
+ return Status(StatusCode::INVALID_ARGUMENT, "Invalid arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
prctl(PR_SET_NAME, "ContRExec");
|
||
|
|
|
||
|
|
auto status = GrpcServerTlsAuth::auth(context, "container_exec_create");
|
||
|
|
@@ -599,6 +604,11 @@ Status ContainerServiceImpl::Attach(ServerContext *context, ServerReaderWriter<A
|
||
|
|
sem_t sem_stderr;
|
||
|
|
int pipefd[2] = { -1, -1 };
|
||
|
|
|
||
|
|
+ if (context == nullptr || stream == nullptr) {
|
||
|
|
+ ERROR("Invalid arguments");
|
||
|
|
+ return Status(StatusCode::INVALID_ARGUMENT, "Invalid arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
prctl(PR_SET_NAME, "ContAttach");
|
||
|
|
|
||
|
|
auto status = AttachInit(context, &cb, &container_req, &container_res, &sem_stderr, pipefd);
|
||
|
|
@@ -704,6 +714,11 @@ Status ContainerServiceImpl::Wait(ServerContext *context, const WaitRequest *req
|
||
|
|
container_wait_request *container_req = nullptr;
|
||
|
|
container_wait_response *container_res = nullptr;
|
||
|
|
|
||
|
|
+ if (context == nullptr || request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid arguments");
|
||
|
|
+ return Status(StatusCode::INVALID_ARGUMENT, "Invalid arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
prctl(PR_SET_NAME, "ContWait");
|
||
|
|
|
||
|
|
auto status = GrpcServerTlsAuth::auth(context, "container_wait");
|
||
|
|
@@ -738,6 +753,11 @@ Status ContainerServiceImpl::Events(ServerContext *context, const EventsRequest
|
||
|
|
isulad_events_request *isuladreq = nullptr;
|
||
|
|
stream_func_wrapper stream = { 0 };
|
||
|
|
|
||
|
|
+ if (context == nullptr || request == nullptr) {
|
||
|
|
+ ERROR("Invalid arguments");
|
||
|
|
+ return Status(StatusCode::INVALID_ARGUMENT, "Invalid arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
prctl(PR_SET_NAME, "ContEvents");
|
||
|
|
|
||
|
|
auto status = GrpcServerTlsAuth::auth(context, "docker_events");
|
||
|
|
@@ -776,6 +796,11 @@ Status ContainerServiceImpl::CopyFromContainer(ServerContext *context, const Cop
|
||
|
|
service_executor_t *cb = nullptr;
|
||
|
|
isulad_copy_from_container_request *isuladreq = nullptr;
|
||
|
|
|
||
|
|
+ if (context == nullptr || request == nullptr) {
|
||
|
|
+ ERROR("Invalid arguments");
|
||
|
|
+ return Status(StatusCode::INVALID_ARGUMENT, "Invalid arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
prctl(PR_SET_NAME, "ContCopyFrom");
|
||
|
|
|
||
|
|
auto status = GrpcServerTlsAuth::auth(context, "container_archive");
|
||
|
|
@@ -820,6 +845,11 @@ ContainerServiceImpl::CopyToContainer(ServerContext *context,
|
||
|
|
service_executor_t *cb = nullptr;
|
||
|
|
container_copy_to_request *isuladreq = nullptr;
|
||
|
|
|
||
|
|
+ if (context == nullptr) {
|
||
|
|
+ ERROR("Invalid arguments");
|
||
|
|
+ return Status(StatusCode::INVALID_ARGUMENT, "Invalid arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
prctl(PR_SET_NAME, "ContCopyTo");
|
||
|
|
|
||
|
|
auto status = GrpcServerTlsAuth::auth(context, "container_archive");
|
||
|
|
@@ -929,6 +959,11 @@ Status ContainerServiceImpl::Logs(ServerContext *context, const LogsRequest *req
|
||
|
|
struct isulad_logs_response *isulad_response = nullptr;
|
||
|
|
stream_func_wrapper stream = { 0 };
|
||
|
|
|
||
|
|
+ if (context == nullptr || request == nullptr) {
|
||
|
|
+ ERROR("Invalid arguments");
|
||
|
|
+ return Status(StatusCode::INVALID_ARGUMENT, "Invalid arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
prctl(PR_SET_NAME, "ContLogs");
|
||
|
|
|
||
|
|
auto status = GrpcServerTlsAuth::auth(context, "container_logs");
|
||
|
|
diff --git a/src/daemon/entry/connect/grpc/grpc_images_service.cc b/src/daemon/entry/connect/grpc/grpc_images_service.cc
|
||
|
|
index 903b92ca..5d3fac6b 100644
|
||
|
|
--- a/src/daemon/entry/connect/grpc/grpc_images_service.cc
|
||
|
|
+++ b/src/daemon/entry/connect/grpc/grpc_images_service.cc
|
||
|
|
@@ -243,6 +243,11 @@ void ImagesServiceImpl::inspect_response_to_grpc(const image_inspect_response *r
|
||
|
|
|
||
|
|
Status ImagesServiceImpl::List(ServerContext *context, const ListImagesRequest *request, ListImagesResponse *reply)
|
||
|
|
{
|
||
|
|
+ if (context == nullptr || request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid arguments");
|
||
|
|
+ return Status(StatusCode::INVALID_ARGUMENT, "Invalid arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
prctl(PR_SET_NAME, "ImageList");
|
||
|
|
|
||
|
|
auto status = GrpcServerTlsAuth::auth(context, "image_list");
|
||
|
|
@@ -274,6 +279,11 @@ Status ImagesServiceImpl::List(ServerContext *context, const ListImagesRequest *
|
||
|
|
|
||
|
|
Status ImagesServiceImpl::Delete(ServerContext *context, const DeleteImageRequest *request, DeleteImageResponse *reply)
|
||
|
|
{
|
||
|
|
+ if (context == nullptr || request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid arguments");
|
||
|
|
+ return Status(StatusCode::INVALID_ARGUMENT, "Invalid arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
prctl(PR_SET_NAME, "ImageDelete");
|
||
|
|
|
||
|
|
auto status = GrpcServerTlsAuth::auth(context, "image_delete");
|
||
|
|
@@ -305,6 +315,11 @@ Status ImagesServiceImpl::Delete(ServerContext *context, const DeleteImageReques
|
||
|
|
|
||
|
|
Status ImagesServiceImpl::Tag(ServerContext *context, const TagImageRequest *request, TagImageResponse *reply)
|
||
|
|
{
|
||
|
|
+ if (context == nullptr || request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid arguments");
|
||
|
|
+ return Status(StatusCode::INVALID_ARGUMENT, "Invalid arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
prctl(PR_SET_NAME, "ImageTag");
|
||
|
|
|
||
|
|
auto status = GrpcServerTlsAuth::auth(context, "image_tag");
|
||
|
|
@@ -352,6 +367,11 @@ void ImagesServiceImpl::import_response_to_grpc(const image_import_response *res
|
||
|
|
|
||
|
|
Status ImagesServiceImpl::Import(ServerContext *context, const ImportRequest *request, ImportResponse *reply)
|
||
|
|
{
|
||
|
|
+ if (context == nullptr || request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid arguments");
|
||
|
|
+ return Status(StatusCode::INVALID_ARGUMENT, "Invalid arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
prctl(PR_SET_NAME, "ImageImport");
|
||
|
|
|
||
|
|
auto status = GrpcServerTlsAuth::auth(context, "image_import");
|
||
|
|
@@ -383,6 +403,11 @@ Status ImagesServiceImpl::Import(ServerContext *context, const ImportRequest *re
|
||
|
|
|
||
|
|
Status ImagesServiceImpl::Load(ServerContext *context, const LoadImageRequest *request, LoadImageResponse *reply)
|
||
|
|
{
|
||
|
|
+ if (context == nullptr || request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid arguments");
|
||
|
|
+ return Status(StatusCode::INVALID_ARGUMENT, "Invalid arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
prctl(PR_SET_NAME, "ImageLoad");
|
||
|
|
|
||
|
|
auto status = GrpcServerTlsAuth::auth(context, "image_load");
|
||
|
|
@@ -420,6 +445,11 @@ Status ImagesServiceImpl::Inspect(ServerContext *context, const InspectImageRequ
|
||
|
|
image_inspect_request *image_req = nullptr;
|
||
|
|
image_inspect_response *image_res = nullptr;
|
||
|
|
|
||
|
|
+ if (context == nullptr || request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid arguments");
|
||
|
|
+ return Status(StatusCode::INVALID_ARGUMENT, "Invalid arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
prctl(PR_SET_NAME, "ImageInspect");
|
||
|
|
|
||
|
|
Status status = GrpcServerTlsAuth::auth(context, "image_inspect");
|
||
|
|
@@ -494,6 +524,11 @@ int ImagesServiceImpl::image_logout_request_from_grpc(const LogoutRequest *grequ
|
||
|
|
|
||
|
|
Status ImagesServiceImpl::Login(ServerContext *context, const LoginRequest *request, LoginResponse *reply)
|
||
|
|
{
|
||
|
|
+ if (context == nullptr || request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid arguments");
|
||
|
|
+ return Status(StatusCode::INVALID_ARGUMENT, "Invalid arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
prctl(PR_SET_NAME, "RegistryLogin");
|
||
|
|
|
||
|
|
auto status = GrpcServerTlsAuth::auth(context, "login");
|
||
|
|
@@ -527,6 +562,11 @@ Status ImagesServiceImpl::Login(ServerContext *context, const LoginRequest *requ
|
||
|
|
|
||
|
|
Status ImagesServiceImpl::Logout(ServerContext *context, const LogoutRequest *request, LogoutResponse *reply)
|
||
|
|
{
|
||
|
|
+ if (context == nullptr || request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid arguments");
|
||
|
|
+ return Status(StatusCode::INVALID_ARGUMENT, "Invalid arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
prctl(PR_SET_NAME, "RegistryLogout");
|
||
|
|
|
||
|
|
auto status = GrpcServerTlsAuth::auth(context, "logout");
|
||
|
|
diff --git a/src/daemon/entry/connect/grpc/grpc_server_tls_auth.cc b/src/daemon/entry/connect/grpc/grpc_server_tls_auth.cc
|
||
|
|
index 968a6dfe..2656a9bf 100644
|
||
|
|
--- a/src/daemon/entry/connect/grpc/grpc_server_tls_auth.cc
|
||
|
|
+++ b/src/daemon/entry/connect/grpc/grpc_server_tls_auth.cc
|
||
|
|
@@ -27,6 +27,10 @@ namespace GrpcServerTlsAuth {
|
||
|
|
Status auth(ServerContext *context, const std::string &action)
|
||
|
|
{
|
||
|
|
#ifdef ENABLE_GRPC_REMOTE_CONNECT
|
||
|
|
+ if (context == nullptr) {
|
||
|
|
+ return Status(StatusCode::INVALID_ARGUMENT, "Invalid arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
const std::multimap<grpc::string_ref, grpc::string_ref> &init_metadata = context->client_metadata();
|
||
|
|
auto tls_mode_kv = init_metadata.find("tls_mode");
|
||
|
|
if (tls_mode_kv == init_metadata.end()) {
|
||
|
|
diff --git a/src/daemon/entry/connect/grpc/grpc_volumes_service.cc b/src/daemon/entry/connect/grpc/grpc_volumes_service.cc
|
||
|
|
index 8b090486..004b57b2 100644
|
||
|
|
--- a/src/daemon/entry/connect/grpc/grpc_volumes_service.cc
|
||
|
|
+++ b/src/daemon/entry/connect/grpc/grpc_volumes_service.cc
|
||
|
|
@@ -118,6 +118,11 @@ int VolumeServiceImpl::volume_prune_response_to_grpc(volume_prune_volume_respons
|
||
|
|
|
||
|
|
Status VolumeServiceImpl::List(ServerContext *context, const ListVolumeRequest *request, ListVolumeResponse *reply)
|
||
|
|
{
|
||
|
|
+ if (context == nullptr || request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid arguments");
|
||
|
|
+ return Status(StatusCode::INVALID_ARGUMENT, "Invalid arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
auto status = GrpcServerTlsAuth::auth(context, "volume_list");
|
||
|
|
if (!status.ok()) {
|
||
|
|
return status;
|
||
|
|
@@ -152,6 +157,11 @@ Status VolumeServiceImpl::List(ServerContext *context, const ListVolumeRequest *
|
||
|
|
Status VolumeServiceImpl::Remove(ServerContext *context, const RemoveVolumeRequest *request,
|
||
|
|
RemoveVolumeResponse *reply)
|
||
|
|
{
|
||
|
|
+ if (context == nullptr || request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid arguments");
|
||
|
|
+ return Status(StatusCode::INVALID_ARGUMENT, "Invalid arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
auto status = GrpcServerTlsAuth::auth(context, "volume_remove");
|
||
|
|
if (!status.ok()) {
|
||
|
|
return status;
|
||
|
|
@@ -185,6 +195,11 @@ Status VolumeServiceImpl::Remove(ServerContext *context, const RemoveVolumeReque
|
||
|
|
|
||
|
|
Status VolumeServiceImpl::Prune(ServerContext *context, const PruneVolumeRequest *request, PruneVolumeResponse *reply)
|
||
|
|
{
|
||
|
|
+ if (context == nullptr || request == nullptr || reply == nullptr) {
|
||
|
|
+ ERROR("Invalid arguments");
|
||
|
|
+ return Status(StatusCode::INVALID_ARGUMENT, "Invalid arguments");
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
auto status = GrpcServerTlsAuth::auth(context, "volume_prune");
|
||
|
|
if (!status.ok()) {
|
||
|
|
return status;
|
||
|
|
diff --git a/src/daemon/entry/connect/rest/rest_service_common.c b/src/daemon/entry/connect/rest/rest_service_common.c
|
||
|
|
index 54ac5c95..c4161d02 100644
|
||
|
|
--- a/src/daemon/entry/connect/rest/rest_service_common.c
|
||
|
|
+++ b/src/daemon/entry/connect/rest/rest_service_common.c
|
||
|
|
@@ -26,7 +26,7 @@
|
||
|
|
/* get body */
|
||
|
|
int get_body(const evhtp_request_t *req, size_t *size_out, char **record_out)
|
||
|
|
{
|
||
|
|
- evbuf_t *buf = req->buffer_in;
|
||
|
|
+ evbuf_t *buf = NULL;
|
||
|
|
size_t read_count = 0;
|
||
|
|
size_t total = 0;
|
||
|
|
size_t content_len = 0;
|
||
|
|
@@ -34,6 +34,12 @@ int get_body(const evhtp_request_t *req, size_t *size_out, char **record_out)
|
||
|
|
char *body_p = NULL;
|
||
|
|
int ret = 0;
|
||
|
|
|
||
|
|
+ if (req == NULL || size_out == NULL || record_out == NULL) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return -1;
|
||
|
|
+ }
|
||
|
|
+
|
||
|
|
+ buf = req->buffer_in;
|
||
|
|
content_len = (size_t)evbuffer_get_length(buf);
|
||
|
|
|
||
|
|
if (content_len >= MAX_BODY_SIZE) {
|
||
|
|
@@ -81,6 +87,10 @@ empty:
|
||
|
|
/* evhtp send repsponse */
|
||
|
|
void evhtp_send_response(evhtp_request_t *req, const char *responsedata, int rescode)
|
||
|
|
{
|
||
|
|
+ if (req == NULL || responsedata == NULL) {
|
||
|
|
+ ERROR("Invalid input arguments");
|
||
|
|
+ return;
|
||
|
|
+ }
|
||
|
|
evhtp_headers_add_header(req->headers_out, evhtp_header_new("Content-Type", "application/json", 0, 0));
|
||
|
|
evbuffer_add(req->buffer_out, responsedata, strlen(responsedata));
|
||
|
|
evhtp_send_reply(req, rescode);
|
||
|
|
diff --git a/src/daemon/entry/cri/network_plugin.h b/src/daemon/entry/cri/network_plugin.h
|
||
|
|
index 09b0987a..3cb003ba 100644
|
||
|
|
--- a/src/daemon/entry/cri/network_plugin.h
|
||
|
|
+++ b/src/daemon/entry/cri/network_plugin.h
|
||
|
|
@@ -30,11 +30,11 @@ const std::string POD_DISABLE_DEFAULT_NET_ANNOTATION_KEY = "network.alpha.kubern
|
||
|
|
class NetworkPluginConf {
|
||
|
|
public:
|
||
|
|
/* settings for net plugin */
|
||
|
|
- NetworkPluginConf(const std::string &dockershimRootDirectory = "/var/lib/isulad/shim",
|
||
|
|
- const std::string &pluginConfDir = "/etc/cni/net.d/",
|
||
|
|
- const std::string &pluginBinDir = "/opt/cni/bin", const std::string &pluginName = "",
|
||
|
|
- const std::string &hairpinMode = "hairpin-veth", const std::string &nonMasqueradeCIDR = "",
|
||
|
|
- int32_t mtu = 1460)
|
||
|
|
+ explicit NetworkPluginConf(const std::string &dockershimRootDirectory = "/var/lib/isulad/shim",
|
||
|
|
+ const std::string &pluginConfDir = "/etc/cni/net.d/",
|
||
|
|
+ const std::string &pluginBinDir = "/opt/cni/bin", const std::string &pluginName = "",
|
||
|
|
+ const std::string &hairpinMode = "hairpin-veth", const std::string &nonMasqueradeCIDR = "",
|
||
|
|
+ int32_t mtu = 1460)
|
||
|
|
: m_dockershimRootDirectory(dockershimRootDirectory),
|
||
|
|
m_pluginConfDir(pluginConfDir),
|
||
|
|
m_pluginBinDir(pluginBinDir),
|
||
|
|
diff --git a/src/daemon/entry/cri/v1/v1_cri_container_manager_service.cc b/src/daemon/entry/cri/v1/v1_cri_container_manager_service.cc
|
||
|
|
index ba95f684..ecb7ffbd 100644
|
||
|
|
--- a/src/daemon/entry/cri/v1/v1_cri_container_manager_service.cc
|
||
|
|
+++ b/src/daemon/entry/cri/v1/v1_cri_container_manager_service.cc
|
||
|
|
@@ -653,7 +653,7 @@ void ContainerManagerService::ListContainersFromGRPC(const runtime::v1::Containe
|
||
|
|
}
|
||
|
|
|
||
|
|
void ContainerManagerService::ListContainersToGRPC(container_list_response *response,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1::Container>> *containers,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1::Container>> &containers,
|
||
|
|
Errors &error)
|
||
|
|
{
|
||
|
|
for (size_t i {}; i < response->containers_len; i++) {
|
||
|
|
@@ -700,12 +700,12 @@ void ContainerManagerService::ListContainersToGRPC(container_list_response *resp
|
||
|
|
CRIHelpersV1::ContainerStatusToRuntime(Container_Status(response->containers[i]->status));
|
||
|
|
container->set_state(state);
|
||
|
|
|
||
|
|
- containers->push_back(move(container));
|
||
|
|
+ containers.push_back(move(container));
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
void ContainerManagerService::ListContainers(const runtime::v1::ContainerFilter *filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1::Container>> *containers,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1::Container>> &containers,
|
||
|
|
Errors &error)
|
||
|
|
{
|
||
|
|
if (m_cb == nullptr || m_cb->container.list == nullptr) {
|
||
|
|
@@ -856,7 +856,7 @@ void ContainerManagerService::PackContainerStatsFilesystemUsage(
|
||
|
|
|
||
|
|
void ContainerManagerService::ContainerStatsToGRPC(
|
||
|
|
container_stats_response *response,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1::ContainerStats>> *containerstats, Errors &error)
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1::ContainerStats>> &containerstats, Errors &error)
|
||
|
|
{
|
||
|
|
if (response == nullptr) {
|
||
|
|
return;
|
||
|
|
@@ -906,22 +906,18 @@ void ContainerManagerService::ContainerStatsToGRPC(
|
||
|
|
if (response->container_stats[i]->major_page_faults != 0u) {
|
||
|
|
container->mutable_memory()->mutable_major_page_faults()->set_value(response->container_stats[i]->major_page_faults);
|
||
|
|
}
|
||
|
|
- containerstats->push_back(std::move(container));
|
||
|
|
+ containerstats.push_back(std::move(container));
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
void ContainerManagerService::ListContainerStats(
|
||
|
|
const runtime::v1::ContainerStatsFilter *filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1::ContainerStats>> *containerstats, Errors &error)
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1::ContainerStats>> &containerstats, Errors &error)
|
||
|
|
{
|
||
|
|
if (m_cb == nullptr || m_cb->container.stats == nullptr) {
|
||
|
|
error.SetError("Unimplemented callback");
|
||
|
|
return;
|
||
|
|
}
|
||
|
|
- if (containerstats == nullptr) {
|
||
|
|
- error.SetError("Invalid arguments");
|
||
|
|
- return;
|
||
|
|
- }
|
||
|
|
|
||
|
|
container_stats_response *response { nullptr };
|
||
|
|
container_stats_request *request = (container_stats_request *)util_common_calloc_s(sizeof(container_stats_request));
|
||
|
|
@@ -998,7 +994,7 @@ auto ContainerManagerService::ContainerStats(const std::string &containerID, Err
|
||
|
|
goto cleanup;
|
||
|
|
}
|
||
|
|
|
||
|
|
- ContainerStatsToGRPC(response, &contStatsVec, error);
|
||
|
|
+ ContainerStatsToGRPC(response, contStatsVec, error);
|
||
|
|
if (error.NotEmpty()) {
|
||
|
|
goto cleanup;
|
||
|
|
}
|
||
|
|
diff --git a/src/daemon/entry/cri/v1/v1_cri_container_manager_service.h b/src/daemon/entry/cri/v1/v1_cri_container_manager_service.h
|
||
|
|
index 83f4acbe..4f349829 100644
|
||
|
|
--- a/src/daemon/entry/cri/v1/v1_cri_container_manager_service.h
|
||
|
|
+++ b/src/daemon/entry/cri/v1/v1_cri_container_manager_service.h
|
||
|
|
@@ -50,10 +50,10 @@ public:
|
||
|
|
void RemoveContainer(const std::string &containerID, Errors &error);
|
||
|
|
|
||
|
|
void ListContainers(const runtime::v1::ContainerFilter *filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1::Container>> *containers, Errors &error);
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1::Container>> &containers, Errors &error);
|
||
|
|
|
||
|
|
void ListContainerStats(const runtime::v1::ContainerStatsFilter *filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1::ContainerStats>> *containerstats,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1::ContainerStats>> &containerstats,
|
||
|
|
Errors &error);
|
||
|
|
|
||
|
|
auto ContainerStats(const std::string &containerID, Errors &error)
|
||
|
|
@@ -99,11 +99,11 @@ private:
|
||
|
|
void ListContainersFromGRPC(const runtime::v1::ContainerFilter *filter, container_list_request **request,
|
||
|
|
Errors &error);
|
||
|
|
void ListContainersToGRPC(container_list_response *response,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1::Container>> *pods, Errors &error);
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1::Container>> &pods, Errors &error);
|
||
|
|
auto PackContainerStatsFilter(const runtime::v1::ContainerStatsFilter *filter,
|
||
|
|
container_stats_request *request, Errors &error) -> int;
|
||
|
|
void ContainerStatsToGRPC(container_stats_response *response,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1::ContainerStats>> *containerstats,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1::ContainerStats>> &containerstats,
|
||
|
|
Errors &error);
|
||
|
|
void PackContainerStatsAttributes(const char *id, std::unique_ptr<runtime::v1::ContainerStats> &container,
|
||
|
|
Errors &error);
|
||
|
|
diff --git a/src/daemon/entry/cri/v1/v1_cri_image_manager_service.h b/src/daemon/entry/cri/v1/v1_cri_image_manager_service.h
|
||
|
|
index 66af0abe..3a5fdf8c 100644
|
||
|
|
--- a/src/daemon/entry/cri/v1/v1_cri_image_manager_service.h
|
||
|
|
+++ b/src/daemon/entry/cri/v1/v1_cri_image_manager_service.h
|
||
|
|
@@ -28,7 +28,7 @@ public:
|
||
|
|
virtual ~ImageManagerService() = default;
|
||
|
|
|
||
|
|
virtual void ListImages(const runtime::v1::ImageFilter &filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1::Image>> *images, Errors &error) = 0;
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1::Image>> &images, Errors &error) = 0;
|
||
|
|
|
||
|
|
virtual auto ImageStatus(const runtime::v1::ImageSpec &image,
|
||
|
|
Errors &error) -> std::unique_ptr<runtime::v1::Image> = 0;
|
||
|
|
@@ -38,7 +38,7 @@ public:
|
||
|
|
|
||
|
|
virtual void RemoveImage(const runtime::v1::ImageSpec &image, Errors &error) = 0;
|
||
|
|
|
||
|
|
- virtual void ImageFsInfo(std::vector<std::unique_ptr<runtime::v1::FilesystemUsage>> *usages,
|
||
|
|
+ virtual void ImageFsInfo(std::vector<std::unique_ptr<runtime::v1::FilesystemUsage>> &usages,
|
||
|
|
Errors &error) = 0;
|
||
|
|
};
|
||
|
|
} // namespace CRIV1
|
||
|
|
diff --git a/src/daemon/entry/cri/v1/v1_cri_image_manager_service_impl.cc b/src/daemon/entry/cri/v1/v1_cri_image_manager_service_impl.cc
|
||
|
|
index 763b6cd5..b74834fb 100644
|
||
|
|
--- a/src/daemon/entry/cri/v1/v1_cri_image_manager_service_impl.cc
|
||
|
|
+++ b/src/daemon/entry/cri/v1/v1_cri_image_manager_service_impl.cc
|
||
|
|
@@ -133,7 +133,7 @@ auto ImageManagerServiceImpl::list_request_from_grpc(const runtime::v1::ImageFil
|
||
|
|
}
|
||
|
|
|
||
|
|
void ImageManagerServiceImpl::list_images_to_grpc(im_list_response *response,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1::Image>> *images,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1::Image>> &images,
|
||
|
|
Errors &error)
|
||
|
|
{
|
||
|
|
imagetool_images_list *list_images = response->images;
|
||
|
|
@@ -150,12 +150,12 @@ void ImageManagerServiceImpl::list_images_to_grpc(im_list_response *response,
|
||
|
|
|
||
|
|
imagetool_image_summary *element = list_images->images[i];
|
||
|
|
conv_image_to_grpc(element, image);
|
||
|
|
- images->push_back(move(image));
|
||
|
|
+ images.push_back(move(image));
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
void ImageManagerServiceImpl::ListImages(const runtime::v1::ImageFilter &filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1::Image>> *images, Errors &error)
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1::Image>> &images, Errors &error)
|
||
|
|
{
|
||
|
|
im_list_request *request { nullptr };
|
||
|
|
im_list_response *response { nullptr };
|
||
|
|
@@ -331,7 +331,7 @@ cleanup:
|
||
|
|
}
|
||
|
|
|
||
|
|
void ImageManagerServiceImpl::fs_info_to_grpc(im_fs_info_response *response,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1::FilesystemUsage>> *fs_infos,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1::FilesystemUsage>> &fs_infos,
|
||
|
|
Errors & /*error*/)
|
||
|
|
{
|
||
|
|
imagetool_fs_info *got_fs_info = response->fs_info;
|
||
|
|
@@ -381,11 +381,11 @@ void ImageManagerServiceImpl::fs_info_to_grpc(im_fs_info_response *response,
|
||
|
|
fs_info->set_allocated_inodes_used(inodes_used);
|
||
|
|
}
|
||
|
|
|
||
|
|
- fs_infos->push_back(std::move(fs_info));
|
||
|
|
+ fs_infos.push_back(std::move(fs_info));
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
-void ImageManagerServiceImpl::ImageFsInfo(std::vector<std::unique_ptr<runtime::v1::FilesystemUsage>> *usages,
|
||
|
|
+void ImageManagerServiceImpl::ImageFsInfo(std::vector<std::unique_ptr<runtime::v1::FilesystemUsage>> &usages,
|
||
|
|
Errors &error)
|
||
|
|
{
|
||
|
|
im_fs_info_response *response { nullptr };
|
||
|
|
diff --git a/src/daemon/entry/cri/v1/v1_cri_image_manager_service_impl.h b/src/daemon/entry/cri/v1/v1_cri_image_manager_service_impl.h
|
||
|
|
index 30e7c588..3f13a157 100644
|
||
|
|
--- a/src/daemon/entry/cri/v1/v1_cri_image_manager_service_impl.h
|
||
|
|
+++ b/src/daemon/entry/cri/v1/v1_cri_image_manager_service_impl.h
|
||
|
|
@@ -30,7 +30,7 @@ public:
|
||
|
|
virtual ~ImageManagerServiceImpl() = default;
|
||
|
|
|
||
|
|
void ListImages(const runtime::v1::ImageFilter &filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1::Image>> *images, Errors &error) override;
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1::Image>> &images, Errors &error) override;
|
||
|
|
|
||
|
|
std::unique_ptr<runtime::v1::Image> ImageStatus(const runtime::v1::ImageSpec &image,
|
||
|
|
Errors &error) override;
|
||
|
|
@@ -40,7 +40,7 @@ public:
|
||
|
|
|
||
|
|
void RemoveImage(const runtime::v1::ImageSpec &image, Errors &error) override;
|
||
|
|
|
||
|
|
- void ImageFsInfo(std::vector<std::unique_ptr<runtime::v1::FilesystemUsage>> *usages, Errors &error) override;
|
||
|
|
+ void ImageFsInfo(std::vector<std::unique_ptr<runtime::v1::FilesystemUsage>> &usages, Errors &error) override;
|
||
|
|
|
||
|
|
private:
|
||
|
|
int pull_request_from_grpc(const runtime::v1::ImageSpec *image, const runtime::v1::AuthConfig *auth,
|
||
|
|
@@ -48,7 +48,7 @@ private:
|
||
|
|
|
||
|
|
int list_request_from_grpc(const runtime::v1::ImageFilter *filter, im_list_request **request, Errors &error);
|
||
|
|
|
||
|
|
- void list_images_to_grpc(im_list_response *response, std::vector<std::unique_ptr<runtime::v1::Image>> *images,
|
||
|
|
+ void list_images_to_grpc(im_list_response *response, std::vector<std::unique_ptr<runtime::v1::Image>> &images,
|
||
|
|
Errors &error);
|
||
|
|
|
||
|
|
int status_request_from_grpc(const runtime::v1::ImageSpec *image, im_summary_request **request,
|
||
|
|
@@ -57,7 +57,7 @@ private:
|
||
|
|
std::unique_ptr<runtime::v1::Image> status_image_to_grpc(im_summary_response *response, Errors &error);
|
||
|
|
|
||
|
|
void fs_info_to_grpc(im_fs_info_response *response,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1::FilesystemUsage>> *fs_infos, Errors &error);
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1::FilesystemUsage>> &fs_infos, Errors &error);
|
||
|
|
|
||
|
|
int remove_request_from_grpc(const runtime::v1::ImageSpec *image, im_rmi_request **request, Errors &error);
|
||
|
|
};
|
||
|
|
diff --git a/src/daemon/entry/cri/v1/v1_cri_pod_sandbox_manager_service.cc b/src/daemon/entry/cri/v1/v1_cri_pod_sandbox_manager_service.cc
|
||
|
|
index 687f4e6d..d57338c8 100644
|
||
|
|
--- a/src/daemon/entry/cri/v1/v1_cri_pod_sandbox_manager_service.cc
|
||
|
|
+++ b/src/daemon/entry/cri/v1/v1_cri_pod_sandbox_manager_service.cc
|
||
|
|
@@ -915,7 +915,7 @@ void PodSandboxManagerService::PackagePodSandboxContainerStats(
|
||
|
|
runtime::v1::ContainerStatsFilter filter;
|
||
|
|
|
||
|
|
filter.set_pod_sandbox_id(id);
|
||
|
|
- containerManager->ListContainerStats(&filter, &containerStats, error);
|
||
|
|
+ containerManager->ListContainerStats(&filter, containerStats, error);
|
||
|
|
if (error.NotEmpty()) {
|
||
|
|
error.Errorf("Failed to list container stats: %s", error.GetCMessage());
|
||
|
|
return;
|
||
|
|
@@ -1140,7 +1140,7 @@ cleanup:
|
||
|
|
|
||
|
|
void PodSandboxManagerService::ListPodSandboxStats(const runtime::v1::PodSandboxStatsFilter *filter,
|
||
|
|
const std::unique_ptr<ContainerManagerService> &containerManager,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1::PodSandboxStats>> *podsStats,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1::PodSandboxStats>> &podsStats,
|
||
|
|
Errors &error)
|
||
|
|
{
|
||
|
|
std::vector<std::string> podSandboxIDs;
|
||
|
|
@@ -1165,7 +1165,7 @@ void PodSandboxManagerService::ListPodSandboxStats(const runtime::v1::PodSandbox
|
||
|
|
continue;
|
||
|
|
}
|
||
|
|
|
||
|
|
- podsStats->push_back(move(podStats));
|
||
|
|
+ podsStats.push_back(move(podStats));
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
diff --git a/src/daemon/entry/cri/v1/v1_cri_pod_sandbox_manager_service.h b/src/daemon/entry/cri/v1/v1_cri_pod_sandbox_manager_service.h
|
||
|
|
index ddab6f4e..99347fd8 100644
|
||
|
|
--- a/src/daemon/entry/cri/v1/v1_cri_pod_sandbox_manager_service.h
|
||
|
|
+++ b/src/daemon/entry/cri/v1/v1_cri_pod_sandbox_manager_service.h
|
||
|
|
@@ -66,7 +66,7 @@ public:
|
||
|
|
|
||
|
|
void ListPodSandboxStats(const runtime::v1::PodSandboxStatsFilter *filter,
|
||
|
|
const std::unique_ptr<ContainerManagerService> &containerManager,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1::PodSandboxStats>> *podsStats,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1::PodSandboxStats>> &podsStats,
|
||
|
|
Errors &error);
|
||
|
|
|
||
|
|
void PortForward(const runtime::v1::PortForwardRequest &req, runtime::v1::PortForwardResponse *resp,
|
||
|
|
diff --git a/src/daemon/entry/cri/v1/v1_cri_runtime_service.h b/src/daemon/entry/cri/v1/v1_cri_runtime_service.h
|
||
|
|
index cd7c52db..87394173 100644
|
||
|
|
--- a/src/daemon/entry/cri/v1/v1_cri_runtime_service.h
|
||
|
|
+++ b/src/daemon/entry/cri/v1/v1_cri_runtime_service.h
|
||
|
|
@@ -43,10 +43,10 @@ public:
|
||
|
|
virtual void RemoveContainer(const std::string &containerID, Errors &error) = 0;
|
||
|
|
|
||
|
|
virtual void ListContainers(const runtime::v1::ContainerFilter *filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1::Container>> *containers, Errors &error) = 0;
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1::Container>> &containers, Errors &error) = 0;
|
||
|
|
|
||
|
|
virtual void ListContainerStats(const runtime::v1::ContainerStatsFilter *filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1::ContainerStats>> *containerstats,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1::ContainerStats>> &containerstats,
|
||
|
|
Errors &error) = 0;
|
||
|
|
|
||
|
|
virtual auto ContainerStats(const std::string &containerID,
|
||
|
|
@@ -80,7 +80,7 @@ public:
|
||
|
|
Errors &error) -> std::unique_ptr<runtime::v1::PodSandboxStats> = 0;
|
||
|
|
|
||
|
|
virtual void ListPodSandboxStats(const runtime::v1::PodSandboxStatsFilter *filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1::PodSandboxStats>> *podsStats,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1::PodSandboxStats>> &podsStats,
|
||
|
|
Errors &error) = 0;
|
||
|
|
|
||
|
|
virtual void UpdateContainerResources(const std::string &containerID,
|
||
|
|
diff --git a/src/daemon/entry/cri/v1/v1_cri_runtime_service_impl.cc b/src/daemon/entry/cri/v1/v1_cri_runtime_service_impl.cc
|
||
|
|
index b6652f7d..67cda5ed 100644
|
||
|
|
--- a/src/daemon/entry/cri/v1/v1_cri_runtime_service_impl.cc
|
||
|
|
+++ b/src/daemon/entry/cri/v1/v1_cri_runtime_service_impl.cc
|
||
|
|
@@ -57,7 +57,7 @@ void CRIRuntimeServiceImpl::RemoveContainer(const std::string &containerID, Erro
|
||
|
|
}
|
||
|
|
|
||
|
|
void CRIRuntimeServiceImpl::ListContainers(const runtime::v1::ContainerFilter *filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1::Container>> *containers,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1::Container>> &containers,
|
||
|
|
Errors &error)
|
||
|
|
{
|
||
|
|
m_containerManager->ListContainers(filter, containers, error);
|
||
|
|
@@ -65,7 +65,7 @@ void CRIRuntimeServiceImpl::ListContainers(const runtime::v1::ContainerFilter *f
|
||
|
|
|
||
|
|
void CRIRuntimeServiceImpl::ListContainerStats(
|
||
|
|
const runtime::v1::ContainerStatsFilter *filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1::ContainerStats>> *containerstats, Errors &error)
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1::ContainerStats>> &containerstats, Errors &error)
|
||
|
|
{
|
||
|
|
m_containerManager->ListContainerStats(filter, containerstats, error);
|
||
|
|
}
|
||
|
|
@@ -145,7 +145,7 @@ auto CRIRuntimeServiceImpl::PodSandboxStats(const std::string &podSandboxID, Err
|
||
|
|
|
||
|
|
void
|
||
|
|
CRIRuntimeServiceImpl::ListPodSandboxStats(const runtime::v1::PodSandboxStatsFilter *filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1::PodSandboxStats>> *podsStats,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1::PodSandboxStats>> &podsStats,
|
||
|
|
Errors &error)
|
||
|
|
{
|
||
|
|
m_podSandboxManager->ListPodSandboxStats(filter, m_containerManager, podsStats, error);
|
||
|
|
diff --git a/src/daemon/entry/cri/v1/v1_cri_runtime_service_impl.h b/src/daemon/entry/cri/v1/v1_cri_runtime_service_impl.h
|
||
|
|
index 49272281..23866648 100644
|
||
|
|
--- a/src/daemon/entry/cri/v1/v1_cri_runtime_service_impl.h
|
||
|
|
+++ b/src/daemon/entry/cri/v1/v1_cri_runtime_service_impl.h
|
||
|
|
@@ -45,10 +45,10 @@ public:
|
||
|
|
void RemoveContainer(const std::string &containerID, Errors &error) override;
|
||
|
|
|
||
|
|
void ListContainers(const runtime::v1::ContainerFilter *filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1::Container>> *containers, Errors &error) override;
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1::Container>> &containers, Errors &error) override;
|
||
|
|
|
||
|
|
void ListContainerStats(const runtime::v1::ContainerStatsFilter *filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1::ContainerStats>> *containerstats,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1::ContainerStats>> &containerstats,
|
||
|
|
Errors &error) override;
|
||
|
|
|
||
|
|
auto ContainerStats(const std::string &containerID, Errors &error)
|
||
|
|
@@ -82,7 +82,7 @@ public:
|
||
|
|
Errors &error) -> std::unique_ptr<runtime::v1::PodSandboxStats> override;
|
||
|
|
|
||
|
|
void ListPodSandboxStats(const runtime::v1::PodSandboxStatsFilter *filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1::PodSandboxStats>> *podsStats,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1::PodSandboxStats>> &podsStats,
|
||
|
|
Errors &error) override;
|
||
|
|
|
||
|
|
void UpdateContainerResources(const std::string &containerID,
|
||
|
|
diff --git a/src/daemon/entry/cri/v1alpha/cri_container_manager_service.cc b/src/daemon/entry/cri/v1alpha/cri_container_manager_service.cc
|
||
|
|
index 569f339b..b4faab95 100644
|
||
|
|
--- a/src/daemon/entry/cri/v1alpha/cri_container_manager_service.cc
|
||
|
|
+++ b/src/daemon/entry/cri/v1alpha/cri_container_manager_service.cc
|
||
|
|
@@ -671,7 +671,7 @@ void ContainerManagerService::ListContainersFromGRPC(const runtime::v1alpha2::Co
|
||
|
|
}
|
||
|
|
|
||
|
|
void ContainerManagerService::ListContainersToGRPC(container_list_response *response,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::Container>> *pods,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::Container>> &pods,
|
||
|
|
Errors &error)
|
||
|
|
{
|
||
|
|
for (size_t i {}; i < response->containers_len; i++) {
|
||
|
|
@@ -718,12 +718,12 @@ void ContainerManagerService::ListContainersToGRPC(container_list_response *resp
|
||
|
|
CRIHelpersV1Alpha::ContainerStatusToRuntime(Container_Status(response->containers[i]->status));
|
||
|
|
container->set_state(state);
|
||
|
|
|
||
|
|
- pods->push_back(move(container));
|
||
|
|
+ pods.push_back(move(container));
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
void ContainerManagerService::ListContainers(const runtime::v1alpha2::ContainerFilter *filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::Container>> *containers,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::Container>> &containers,
|
||
|
|
Errors &error)
|
||
|
|
{
|
||
|
|
if (m_cb == nullptr || m_cb->container.list == nullptr) {
|
||
|
|
@@ -874,7 +874,7 @@ void ContainerManagerService::PackContainerStatsFilesystemUsage(
|
||
|
|
|
||
|
|
void ContainerManagerService::ContainerStatsToGRPC(
|
||
|
|
container_stats_response *response,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::ContainerStats>> *containerstats, Errors &error)
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::ContainerStats>> &containerstats, Errors &error)
|
||
|
|
{
|
||
|
|
if (response == nullptr) {
|
||
|
|
return;
|
||
|
|
@@ -924,22 +924,18 @@ void ContainerManagerService::ContainerStatsToGRPC(
|
||
|
|
if (response->container_stats[i]->major_page_faults != 0u) {
|
||
|
|
container->mutable_memory()->mutable_major_page_faults()->set_value(response->container_stats[i]->major_page_faults);
|
||
|
|
}
|
||
|
|
- containerstats->push_back(std::move(container));
|
||
|
|
+ containerstats.push_back(std::move(container));
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
void ContainerManagerService::ListContainerStats(
|
||
|
|
const runtime::v1alpha2::ContainerStatsFilter *filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::ContainerStats>> *containerstats, Errors &error)
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::ContainerStats>> &containerstats, Errors &error)
|
||
|
|
{
|
||
|
|
if (m_cb == nullptr || m_cb->container.stats == nullptr) {
|
||
|
|
error.SetError("Unimplemented callback");
|
||
|
|
return;
|
||
|
|
}
|
||
|
|
- if (containerstats == nullptr) {
|
||
|
|
- error.SetError("Invalid arguments");
|
||
|
|
- return;
|
||
|
|
- }
|
||
|
|
|
||
|
|
container_stats_response *response { nullptr };
|
||
|
|
container_stats_request *request = (container_stats_request *)util_common_calloc_s(sizeof(container_stats_request));
|
||
|
|
@@ -1016,7 +1012,7 @@ auto ContainerManagerService::ContainerStats(const std::string &containerID, Err
|
||
|
|
goto cleanup;
|
||
|
|
}
|
||
|
|
|
||
|
|
- ContainerStatsToGRPC(response, &contStatsVec, error);
|
||
|
|
+ ContainerStatsToGRPC(response, contStatsVec, error);
|
||
|
|
if (error.NotEmpty()) {
|
||
|
|
goto cleanup;
|
||
|
|
}
|
||
|
|
diff --git a/src/daemon/entry/cri/v1alpha/cri_container_manager_service.h b/src/daemon/entry/cri/v1alpha/cri_container_manager_service.h
|
||
|
|
index ea22b1cd..f802d3bc 100644
|
||
|
|
--- a/src/daemon/entry/cri/v1alpha/cri_container_manager_service.h
|
||
|
|
+++ b/src/daemon/entry/cri/v1alpha/cri_container_manager_service.h
|
||
|
|
@@ -47,10 +47,10 @@ public:
|
||
|
|
void RemoveContainer(const std::string &containerID, Errors &error);
|
||
|
|
|
||
|
|
void ListContainers(const runtime::v1alpha2::ContainerFilter *filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::Container>> *containers, Errors &error);
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::Container>> &containers, Errors &error);
|
||
|
|
|
||
|
|
void ListContainerStats(const runtime::v1alpha2::ContainerStatsFilter *filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::ContainerStats>> *containerstats,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::ContainerStats>> &containerstats,
|
||
|
|
Errors &error);
|
||
|
|
|
||
|
|
auto ContainerStats(const std::string &containerID, Errors &error)
|
||
|
|
@@ -97,11 +97,11 @@ private:
|
||
|
|
void ListContainersFromGRPC(const runtime::v1alpha2::ContainerFilter *filter, container_list_request **request,
|
||
|
|
Errors &error);
|
||
|
|
void ListContainersToGRPC(container_list_response *response,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::Container>> *pods, Errors &error);
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::Container>> &pods, Errors &error);
|
||
|
|
auto PackContainerStatsFilter(const runtime::v1alpha2::ContainerStatsFilter *filter,
|
||
|
|
container_stats_request *request, Errors &error) -> int;
|
||
|
|
void ContainerStatsToGRPC(container_stats_response *response,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::ContainerStats>> *containerstats,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::ContainerStats>> &containerstats,
|
||
|
|
Errors &error);
|
||
|
|
void PackContainerStatsAttributes(const char *id, std::unique_ptr<runtime::v1alpha2::ContainerStats> &container,
|
||
|
|
Errors &error);
|
||
|
|
diff --git a/src/daemon/entry/cri/v1alpha/cri_image_manager_service.h b/src/daemon/entry/cri/v1alpha/cri_image_manager_service.h
|
||
|
|
index b6e506d5..9b2530ab 100644
|
||
|
|
--- a/src/daemon/entry/cri/v1alpha/cri_image_manager_service.h
|
||
|
|
+++ b/src/daemon/entry/cri/v1alpha/cri_image_manager_service.h
|
||
|
|
@@ -28,7 +28,7 @@ public:
|
||
|
|
virtual ~ImageManagerService() = default;
|
||
|
|
|
||
|
|
virtual void ListImages(const runtime::v1alpha2::ImageFilter &filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::Image>> *images, Errors &error) = 0;
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::Image>> &images, Errors &error) = 0;
|
||
|
|
|
||
|
|
virtual auto ImageStatus(const runtime::v1alpha2::ImageSpec &image,
|
||
|
|
Errors &error) -> std::unique_ptr<runtime::v1alpha2::Image> = 0;
|
||
|
|
@@ -38,7 +38,7 @@ public:
|
||
|
|
|
||
|
|
virtual void RemoveImage(const runtime::v1alpha2::ImageSpec &image, Errors &error) = 0;
|
||
|
|
|
||
|
|
- virtual void ImageFsInfo(std::vector<std::unique_ptr<runtime::v1alpha2::FilesystemUsage>> *usages,
|
||
|
|
+ virtual void ImageFsInfo(std::vector<std::unique_ptr<runtime::v1alpha2::FilesystemUsage>> &usages,
|
||
|
|
Errors &error) = 0;
|
||
|
|
};
|
||
|
|
} // namespace CRI
|
||
|
|
diff --git a/src/daemon/entry/cri/v1alpha/cri_image_manager_service_impl.cc b/src/daemon/entry/cri/v1alpha/cri_image_manager_service_impl.cc
|
||
|
|
index ad9e8ef1..3ff79ffc 100644
|
||
|
|
--- a/src/daemon/entry/cri/v1alpha/cri_image_manager_service_impl.cc
|
||
|
|
+++ b/src/daemon/entry/cri/v1alpha/cri_image_manager_service_impl.cc
|
||
|
|
@@ -133,7 +133,7 @@ auto ImageManagerServiceImpl::list_request_from_grpc(const runtime::v1alpha2::Im
|
||
|
|
}
|
||
|
|
|
||
|
|
void ImageManagerServiceImpl::list_images_to_grpc(im_list_response *response,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::Image>> *images,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::Image>> &images,
|
||
|
|
Errors &error)
|
||
|
|
{
|
||
|
|
imagetool_images_list *list_images = response->images;
|
||
|
|
@@ -150,12 +150,12 @@ void ImageManagerServiceImpl::list_images_to_grpc(im_list_response *response,
|
||
|
|
|
||
|
|
imagetool_image_summary *element = list_images->images[i];
|
||
|
|
conv_image_to_grpc(element, image);
|
||
|
|
- images->push_back(move(image));
|
||
|
|
+ images.push_back(move(image));
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
void ImageManagerServiceImpl::ListImages(const runtime::v1alpha2::ImageFilter &filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::Image>> *images, Errors &error)
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::Image>> &images, Errors &error)
|
||
|
|
{
|
||
|
|
im_list_request *request { nullptr };
|
||
|
|
im_list_response *response { nullptr };
|
||
|
|
@@ -331,7 +331,7 @@ cleanup:
|
||
|
|
}
|
||
|
|
|
||
|
|
void ImageManagerServiceImpl::fs_info_to_grpc(im_fs_info_response *response,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::FilesystemUsage>> *fs_infos,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::FilesystemUsage>> &fs_infos,
|
||
|
|
Errors & /*error*/)
|
||
|
|
{
|
||
|
|
imagetool_fs_info *got_fs_info = response->fs_info;
|
||
|
|
@@ -381,11 +381,11 @@ void ImageManagerServiceImpl::fs_info_to_grpc(im_fs_info_response *response,
|
||
|
|
fs_info->set_allocated_inodes_used(inodes_used);
|
||
|
|
}
|
||
|
|
|
||
|
|
- fs_infos->push_back(std::move(fs_info));
|
||
|
|
+ fs_infos.push_back(std::move(fs_info));
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
-void ImageManagerServiceImpl::ImageFsInfo(std::vector<std::unique_ptr<runtime::v1alpha2::FilesystemUsage>> *usages,
|
||
|
|
+void ImageManagerServiceImpl::ImageFsInfo(std::vector<std::unique_ptr<runtime::v1alpha2::FilesystemUsage>> &usages,
|
||
|
|
Errors &error)
|
||
|
|
{
|
||
|
|
im_fs_info_response *response { nullptr };
|
||
|
|
diff --git a/src/daemon/entry/cri/v1alpha/cri_image_manager_service_impl.h b/src/daemon/entry/cri/v1alpha/cri_image_manager_service_impl.h
|
||
|
|
index b94f8908..edf482c9 100644
|
||
|
|
--- a/src/daemon/entry/cri/v1alpha/cri_image_manager_service_impl.h
|
||
|
|
+++ b/src/daemon/entry/cri/v1alpha/cri_image_manager_service_impl.h
|
||
|
|
@@ -30,7 +30,7 @@ public:
|
||
|
|
virtual ~ImageManagerServiceImpl() = default;
|
||
|
|
|
||
|
|
void ListImages(const runtime::v1alpha2::ImageFilter &filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::Image>> *images, Errors &error) override;
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::Image>> &images, Errors &error) override;
|
||
|
|
|
||
|
|
std::unique_ptr<runtime::v1alpha2::Image> ImageStatus(const runtime::v1alpha2::ImageSpec &image,
|
||
|
|
Errors &error) override;
|
||
|
|
@@ -40,7 +40,7 @@ public:
|
||
|
|
|
||
|
|
void RemoveImage(const runtime::v1alpha2::ImageSpec &image, Errors &error) override;
|
||
|
|
|
||
|
|
- void ImageFsInfo(std::vector<std::unique_ptr<runtime::v1alpha2::FilesystemUsage>> *usages, Errors &error) override;
|
||
|
|
+ void ImageFsInfo(std::vector<std::unique_ptr<runtime::v1alpha2::FilesystemUsage>> &usages, Errors &error) override;
|
||
|
|
|
||
|
|
private:
|
||
|
|
int pull_request_from_grpc(const runtime::v1alpha2::ImageSpec *image, const runtime::v1alpha2::AuthConfig *auth,
|
||
|
|
@@ -48,7 +48,7 @@ private:
|
||
|
|
|
||
|
|
int list_request_from_grpc(const runtime::v1alpha2::ImageFilter *filter, im_list_request **request, Errors &error);
|
||
|
|
|
||
|
|
- void list_images_to_grpc(im_list_response *response, std::vector<std::unique_ptr<runtime::v1alpha2::Image>> *images,
|
||
|
|
+ void list_images_to_grpc(im_list_response *response, std::vector<std::unique_ptr<runtime::v1alpha2::Image>> &images,
|
||
|
|
Errors &error);
|
||
|
|
|
||
|
|
int status_request_from_grpc(const runtime::v1alpha2::ImageSpec *image, im_summary_request **request,
|
||
|
|
@@ -57,7 +57,7 @@ private:
|
||
|
|
std::unique_ptr<runtime::v1alpha2::Image> status_image_to_grpc(im_summary_response *response, Errors &error);
|
||
|
|
|
||
|
|
void fs_info_to_grpc(im_fs_info_response *response,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::FilesystemUsage>> *fs_infos, Errors &error);
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::FilesystemUsage>> &fs_infos, Errors &error);
|
||
|
|
|
||
|
|
int remove_request_from_grpc(const runtime::v1alpha2::ImageSpec *image, im_rmi_request **request, Errors &error);
|
||
|
|
};
|
||
|
|
diff --git a/src/daemon/entry/cri/v1alpha/cri_pod_sandbox_manager_service.cc b/src/daemon/entry/cri/v1alpha/cri_pod_sandbox_manager_service.cc
|
||
|
|
index d23e7754..c24c1f69 100644
|
||
|
|
--- a/src/daemon/entry/cri/v1alpha/cri_pod_sandbox_manager_service.cc
|
||
|
|
+++ b/src/daemon/entry/cri/v1alpha/cri_pod_sandbox_manager_service.cc
|
||
|
|
@@ -1246,7 +1246,7 @@ void PodSandboxManagerService::ListPodSandboxFromGRPC(const runtime::v1alpha2::P
|
||
|
|
}
|
||
|
|
|
||
|
|
void PodSandboxManagerService::ListPodSandboxToGRPC(container_list_response *response,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::PodSandbox>> *pods,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::PodSandbox>> &pods,
|
||
|
|
bool filterOutReadySandboxes, Errors &error)
|
||
|
|
{
|
||
|
|
for (size_t i = 0; i < response->containers_len; i++) {
|
||
|
|
@@ -1272,12 +1272,12 @@ void PodSandboxManagerService::ListPodSandboxToGRPC(container_list_response *res
|
||
|
|
continue;
|
||
|
|
}
|
||
|
|
|
||
|
|
- pods->push_back(std::move(pod));
|
||
|
|
+ pods.push_back(std::move(pod));
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
void PodSandboxManagerService::ListPodSandbox(const runtime::v1alpha2::PodSandboxFilter *filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::PodSandbox>> *pods,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::PodSandbox>> &pods,
|
||
|
|
Errors &error)
|
||
|
|
{
|
||
|
|
int ret = 0;
|
||
|
|
@@ -1464,7 +1464,7 @@ void PodSandboxManagerService::PackagePodSandboxContainerStats(
|
||
|
|
runtime::v1alpha2::ContainerStatsFilter filter;
|
||
|
|
|
||
|
|
filter.set_pod_sandbox_id(id);
|
||
|
|
- containerManager->ListContainerStats(&filter, &containerStats, error);
|
||
|
|
+ containerManager->ListContainerStats(&filter, containerStats, error);
|
||
|
|
if (error.NotEmpty()) {
|
||
|
|
error.Errorf("Failed to list container stats: %s", error.GetCMessage());
|
||
|
|
return;
|
||
|
|
@@ -1689,7 +1689,7 @@ cleanup:
|
||
|
|
|
||
|
|
void PodSandboxManagerService::ListPodSandboxStats(const runtime::v1alpha2::PodSandboxStatsFilter *filter,
|
||
|
|
const std::unique_ptr<ContainerManagerService> &containerManager,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::PodSandboxStats>> *podsStats,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::PodSandboxStats>> &podsStats,
|
||
|
|
Errors &error)
|
||
|
|
{
|
||
|
|
std::vector<std::string> podSandboxIDs;
|
||
|
|
@@ -1714,7 +1714,7 @@ void PodSandboxManagerService::ListPodSandboxStats(const runtime::v1alpha2::PodS
|
||
|
|
continue;
|
||
|
|
}
|
||
|
|
|
||
|
|
- podsStats->push_back(move(podStats));
|
||
|
|
+ podsStats.push_back(move(podStats));
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
diff --git a/src/daemon/entry/cri/v1alpha/cri_pod_sandbox_manager_service.h b/src/daemon/entry/cri/v1alpha/cri_pod_sandbox_manager_service.h
|
||
|
|
index 2f4505df..1a075f86 100644
|
||
|
|
--- a/src/daemon/entry/cri/v1alpha/cri_pod_sandbox_manager_service.h
|
||
|
|
+++ b/src/daemon/entry/cri/v1alpha/cri_pod_sandbox_manager_service.h
|
||
|
|
@@ -57,7 +57,7 @@ public:
|
||
|
|
-> std::unique_ptr<runtime::v1alpha2::PodSandboxStatus>;
|
||
|
|
|
||
|
|
void ListPodSandbox(const runtime::v1alpha2::PodSandboxFilter *filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::PodSandbox>> *pods, Errors &error);
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::PodSandbox>> &pods, Errors &error);
|
||
|
|
|
||
|
|
auto PodSandboxStats(const std::string &podSandboxID,
|
||
|
|
const std::unique_ptr<ContainerManagerService> &containerManager,
|
||
|
|
@@ -65,7 +65,7 @@ public:
|
||
|
|
|
||
|
|
void ListPodSandboxStats(const runtime::v1alpha2::PodSandboxStatsFilter *filter,
|
||
|
|
const std::unique_ptr<ContainerManagerService> &containerManager,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::PodSandboxStats>> *podsStats,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::PodSandboxStats>> &podsStats,
|
||
|
|
Errors &error);
|
||
|
|
|
||
|
|
void PortForward(const runtime::v1alpha2::PortForwardRequest &req, runtime::v1alpha2::PortForwardResponse *resp,
|
||
|
|
@@ -130,7 +130,7 @@ private:
|
||
|
|
void ListPodSandboxFromGRPC(const runtime::v1alpha2::PodSandboxFilter *filter, container_list_request **request,
|
||
|
|
bool *filterOutReadySandboxes, Errors &error);
|
||
|
|
void ListPodSandboxToGRPC(container_list_response *response,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::PodSandbox>> *pods,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::PodSandbox>> &pods,
|
||
|
|
bool filterOutReadySandboxes, Errors &error);
|
||
|
|
void UpdatePodSandboxNetworkSettings(const std::string &id, const std::string &json, Errors &error);
|
||
|
|
auto GetNsenterPath(Errors &error) -> std::string;
|
||
|
|
diff --git a/src/daemon/entry/cri/v1alpha/cri_runtime_service.h b/src/daemon/entry/cri/v1alpha/cri_runtime_service.h
|
||
|
|
index d157237c..79f61a44 100644
|
||
|
|
--- a/src/daemon/entry/cri/v1alpha/cri_runtime_service.h
|
||
|
|
+++ b/src/daemon/entry/cri/v1alpha/cri_runtime_service.h
|
||
|
|
@@ -43,10 +43,10 @@ public:
|
||
|
|
virtual void RemoveContainer(const std::string &containerID, Errors &error) = 0;
|
||
|
|
|
||
|
|
virtual void ListContainers(const runtime::v1alpha2::ContainerFilter *filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::Container>> *containers, Errors &error) = 0;
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::Container>> &containers, Errors &error) = 0;
|
||
|
|
|
||
|
|
virtual void ListContainerStats(const runtime::v1alpha2::ContainerStatsFilter *filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::ContainerStats>> *containerstats,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::ContainerStats>> &containerstats,
|
||
|
|
Errors &error) = 0;
|
||
|
|
|
||
|
|
virtual auto ContainerStats(const std::string &containerID,
|
||
|
|
@@ -74,13 +74,13 @@ public:
|
||
|
|
Errors &error) -> std::unique_ptr<runtime::v1alpha2::PodSandboxStatus> = 0;
|
||
|
|
|
||
|
|
virtual void ListPodSandbox(const runtime::v1alpha2::PodSandboxFilter *filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::PodSandbox>> *pods, Errors &error) = 0;
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::PodSandbox>> &pods, Errors &error) = 0;
|
||
|
|
|
||
|
|
virtual auto PodSandboxStats(const std::string &podSandboxID,
|
||
|
|
Errors &error) -> std::unique_ptr<runtime::v1alpha2::PodSandboxStats> = 0;
|
||
|
|
|
||
|
|
virtual void ListPodSandboxStats(const runtime::v1alpha2::PodSandboxStatsFilter *filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::PodSandboxStats>> *podsStats,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::PodSandboxStats>> &podsStats,
|
||
|
|
Errors &error) = 0;
|
||
|
|
|
||
|
|
virtual void UpdateContainerResources(const std::string &containerID,
|
||
|
|
diff --git a/src/daemon/entry/cri/v1alpha/cri_runtime_service_impl.cc b/src/daemon/entry/cri/v1alpha/cri_runtime_service_impl.cc
|
||
|
|
index 778b0b69..d50e23e9 100644
|
||
|
|
--- a/src/daemon/entry/cri/v1alpha/cri_runtime_service_impl.cc
|
||
|
|
+++ b/src/daemon/entry/cri/v1alpha/cri_runtime_service_impl.cc
|
||
|
|
@@ -57,7 +57,7 @@ void CRIRuntimeServiceImpl::RemoveContainer(const std::string &containerID, Erro
|
||
|
|
}
|
||
|
|
|
||
|
|
void CRIRuntimeServiceImpl::ListContainers(const runtime::v1alpha2::ContainerFilter *filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::Container>> *containers,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::Container>> &containers,
|
||
|
|
Errors &error)
|
||
|
|
{
|
||
|
|
m_containerManager->ListContainers(filter, containers, error);
|
||
|
|
@@ -65,7 +65,7 @@ void CRIRuntimeServiceImpl::ListContainers(const runtime::v1alpha2::ContainerFil
|
||
|
|
|
||
|
|
void CRIRuntimeServiceImpl::ListContainerStats(
|
||
|
|
const runtime::v1alpha2::ContainerStatsFilter *filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::ContainerStats>> *containerstats, Errors &error)
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::ContainerStats>> &containerstats, Errors &error)
|
||
|
|
{
|
||
|
|
m_containerManager->ListContainerStats(filter, containerstats, error);
|
||
|
|
}
|
||
|
|
@@ -131,7 +131,7 @@ auto CRIRuntimeServiceImpl::PodSandboxStatus(const std::string &podSandboxID, Er
|
||
|
|
}
|
||
|
|
|
||
|
|
void CRIRuntimeServiceImpl::ListPodSandbox(const runtime::v1alpha2::PodSandboxFilter *filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::PodSandbox>> *pods,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::PodSandbox>> &pods,
|
||
|
|
Errors &error)
|
||
|
|
{
|
||
|
|
m_podSandboxManager->ListPodSandbox(filter, pods, error);
|
||
|
|
@@ -145,7 +145,7 @@ auto CRIRuntimeServiceImpl::PodSandboxStats(const std::string &podSandboxID, Err
|
||
|
|
|
||
|
|
void
|
||
|
|
CRIRuntimeServiceImpl::ListPodSandboxStats(const runtime::v1alpha2::PodSandboxStatsFilter *filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::PodSandboxStats>> *podsStats,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::PodSandboxStats>> &podsStats,
|
||
|
|
Errors &error)
|
||
|
|
{
|
||
|
|
m_podSandboxManager->ListPodSandboxStats(filter, m_containerManager, podsStats, error);
|
||
|
|
diff --git a/src/daemon/entry/cri/v1alpha/cri_runtime_service_impl.h b/src/daemon/entry/cri/v1alpha/cri_runtime_service_impl.h
|
||
|
|
index f2323524..23c8a400 100644
|
||
|
|
--- a/src/daemon/entry/cri/v1alpha/cri_runtime_service_impl.h
|
||
|
|
+++ b/src/daemon/entry/cri/v1alpha/cri_runtime_service_impl.h
|
||
|
|
@@ -45,10 +45,10 @@ public:
|
||
|
|
void RemoveContainer(const std::string &containerID, Errors &error) override;
|
||
|
|
|
||
|
|
void ListContainers(const runtime::v1alpha2::ContainerFilter *filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::Container>> *containers, Errors &error) override;
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::Container>> &containers, Errors &error) override;
|
||
|
|
|
||
|
|
void ListContainerStats(const runtime::v1alpha2::ContainerStatsFilter *filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::ContainerStats>> *containerstats,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::ContainerStats>> &containerstats,
|
||
|
|
Errors &error) override;
|
||
|
|
|
||
|
|
auto ContainerStats(const std::string &containerID, Errors &error)
|
||
|
|
@@ -76,13 +76,13 @@ public:
|
||
|
|
-> std::unique_ptr<runtime::v1alpha2::PodSandboxStatus> override;
|
||
|
|
|
||
|
|
void ListPodSandbox(const runtime::v1alpha2::PodSandboxFilter *filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::PodSandbox>> *pods, Errors &error) override;
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::PodSandbox>> &pods, Errors &error) override;
|
||
|
|
|
||
|
|
auto PodSandboxStats(const std::string &podSandboxID,
|
||
|
|
Errors &error) -> std::unique_ptr<runtime::v1alpha2::PodSandboxStats> override;
|
||
|
|
|
||
|
|
void ListPodSandboxStats(const runtime::v1alpha2::PodSandboxStatsFilter *filter,
|
||
|
|
- std::vector<std::unique_ptr<runtime::v1alpha2::PodSandboxStats>> *podsStats,
|
||
|
|
+ std::vector<std::unique_ptr<runtime::v1alpha2::PodSandboxStats>> &podsStats,
|
||
|
|
Errors &error) override;
|
||
|
|
|
||
|
|
void UpdateContainerResources(const std::string &containerID,
|
||
|
|
--
|
||
|
|
2.40.1
|
||
|
|
|