Skip to content

Commit 4cbdb7b

Browse files
committed
[Controller]: cidr nil ptr dereference
1 parent 044a4ce commit 4cbdb7b

File tree

1 file changed

+3
-4
lines changed

1 file changed

+3
-4
lines changed

pkg/controller/nodeipam/ipam/cidrset/cidr_set.go

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -158,15 +158,14 @@ func (s *CidrSet) AllocateNext() (*net.IPNet, error) {
158158
}
159159

160160
func (s *CidrSet) getBeginingAndEndIndices(cidr *net.IPNet) (begin, end int, err error) {
161+
if cidr == nil {
162+
return -1, -1, fmt.Errorf("error getting indices for cluster cidr %v, cidr is nil", s.clusterCIDR)
163+
}
161164
begin, end = 0, s.maxCIDRs-1
162165
cidrMask := cidr.Mask
163166
maskSize, _ := cidrMask.Size()
164167
var ipSize int
165168

166-
if cidr == nil {
167-
return -1, -1, fmt.Errorf("error getting indices for cluster cidr %v, cidr is nil", s.clusterCIDR)
168-
}
169-
170169
if !s.clusterCIDR.Contains(cidr.IP.Mask(s.clusterCIDR.Mask)) && !cidr.Contains(s.clusterCIDR.IP.Mask(cidr.Mask)) {
171170
return -1, -1, fmt.Errorf("cidr %v is out the range of cluster cidr %v", cidr, s.clusterCIDR)
172171
}

0 commit comments

Comments
 (0)