Skip to content

Commit ed40d64

Browse files
author
Mrunal Patel
authored
Merge pull request cri-o#1255 from runcom/panics-grpc-getters
server: use grpc getters to avoid panics
2 parents ddb14b7 + 8c190a6 commit ed40d64

File tree

2 files changed

+14
-6
lines changed

2 files changed

+14
-6
lines changed

server/container_create.go

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -669,7 +669,11 @@ func (s *Server) CreateContainer(ctx context.Context, req *pb.CreateContainerReq
669669
return nil, fmt.Errorf("CreateContainerRequest.ContainerConfig is nil")
670670
}
671671

672-
name := containerConfig.GetMetadata().Name
672+
if containerConfig.GetMetadata() == nil {
673+
return nil, fmt.Errorf("CreateContainerRequest.ContainerConfig.Metadata is nil")
674+
}
675+
676+
name := containerConfig.GetMetadata().GetName()
673677
if name == "" {
674678
return nil, fmt.Errorf("CreateContainerRequest.ContainerConfig.Name is empty")
675679
}

server/sandbox_run.go

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -101,16 +101,20 @@ func (s *Server) RunPodSandbox(ctx context.Context, req *pb.RunPodSandboxRequest
101101
s.updateLock.RLock()
102102
defer s.updateLock.RUnlock()
103103

104+
if req.GetConfig().GetMetadata() == nil {
105+
return nil, fmt.Errorf("CreateContainerRequest.ContainerConfig.Metadata is nil")
106+
}
107+
104108
logrus.Debugf("RunPodSandboxRequest %+v", req)
105109
var processLabel, mountLabel, resolvPath string
106110
// process req.Name
107-
kubeName := req.GetConfig().GetMetadata().Name
111+
kubeName := req.GetConfig().GetMetadata().GetName()
108112
if kubeName == "" {
109113
return nil, fmt.Errorf("PodSandboxConfig.Name should not be empty")
110114
}
111115

112-
namespace := req.GetConfig().GetMetadata().Namespace
113-
attempt := req.GetConfig().GetMetadata().Attempt
116+
namespace := req.GetConfig().GetMetadata().GetNamespace()
117+
attempt := req.GetConfig().GetMetadata().GetAttempt()
114118

115119
id, name, err := s.generatePodIDandName(req.GetConfig())
116120
if err != nil {
@@ -156,8 +160,8 @@ func (s *Server) RunPodSandbox(ctx context.Context, req *pb.RunPodSandboxRequest
156160
name, id,
157161
s.config.PauseImage, "",
158162
containerName,
159-
req.GetConfig().GetMetadata().Name,
160-
req.GetConfig().GetMetadata().Uid,
163+
req.GetConfig().GetMetadata().GetName(),
164+
req.GetConfig().GetMetadata().GetUid(),
161165
namespace,
162166
attempt,
163167
nil)

0 commit comments

Comments
 (0)