aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar rokkiter <101091030+rokkiter@users.noreply.github.com> 2023-06-26 21:42:03 +0800
committerGravatar GitHub <noreply@github.com> 2023-06-26 09:42:03 -0400
commit6e1263d3d9ae1deef399df23d4ae47d2c3154e03 (patch)
tree7d49276e2bbea9217c32bafb0a7ca7dff1925cee
parent5b5a6ac6ad94e9ef1e23bd76a2cd1f3987cbe8df (diff)
downloadcoredns-6e1263d3d9ae1deef399df23d4ae47d2c3154e03.tar.gz
coredns-6e1263d3d9ae1deef399df23d4ae47d2c3154e03.tar.zst
coredns-6e1263d3d9ae1deef399df23d4ae47d2c3154e03.zip
fix ports panic (#6179)
Signed-off-by: rokkiter <101091030+rokkiter@users.noreply.github.com>
-rw-r--r--plugin/kubernetes/object/endpoint.go15
1 files changed, 13 insertions, 2 deletions
diff --git a/plugin/kubernetes/object/endpoint.go b/plugin/kubernetes/object/endpoint.go
index b8c2f63f7..26555e1ac 100644
--- a/plugin/kubernetes/object/endpoint.go
+++ b/plugin/kubernetes/object/endpoint.go
@@ -66,7 +66,19 @@ func EndpointSliceToEndpoints(obj meta.Object) (meta.Object, error) {
} else {
e.Subsets[0].Ports = make([]EndpointPort, len(ends.Ports))
for k, p := range ends.Ports {
- ep := EndpointPort{Port: *p.Port, Name: *p.Name, Protocol: string(*p.Protocol)}
+ port := int32(-1)
+ name := ""
+ protocol := ""
+ if p.Port != nil {
+ port = *p.Port
+ }
+ if p.Name != nil {
+ name = *p.Name
+ }
+ if p.Protocol != nil {
+ protocol = string(*p.Protocol)
+ }
+ ep := EndpointPort{Port: port, Name: name, Protocol: protocol}
e.Subsets[0].Ports[k] = ep
}
}
@@ -146,7 +158,6 @@ func (e *Endpoints) DeepCopyObject() runtime.Object {
ep := EndpointPort{Port: p.Port, Name: p.Name, Protocol: p.Protocol}
sub.Ports[k] = ep
}
-
e1.Subsets[i] = sub
}
return e1