diff options
author | 2023-06-26 21:42:03 +0800 | |
---|---|---|
committer | 2023-06-26 09:42:03 -0400 | |
commit | 6e1263d3d9ae1deef399df23d4ae47d2c3154e03 (patch) | |
tree | 7d49276e2bbea9217c32bafb0a7ca7dff1925cee | |
parent | 5b5a6ac6ad94e9ef1e23bd76a2cd1f3987cbe8df (diff) | |
download | coredns-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.go | 15 |
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 |