in plugins/eni/engine/nsclosure.go [53:91]
func newSetupNamespaceClosureContext(
netLink netlinkwrapper.NetLink,
ifName string,
deviceName string,
macAddress string,
ipAddresses []string,
gatewayAddresses []string,
blockIMDS bool,
mtu int) (*setupNamespaceClosureContext, error) {
nsClosure := &setupNamespaceClosureContext{
netLink: netLink,
ifName: ifName,
deviceName: deviceName,
macAddress: macAddress,
blockIMDS: blockIMDS,
mtu: mtu,
}
for _, addr := range ipAddresses {
nlIPAddr, err := netLink.ParseAddr(addr)
if err != nil {
return nil, errors.Wrapf(err,
"setupNamespaceClosure engine: unable to parse ip address '%s' for the interface", addr)
}
nsClosure.ipAddrs = append(nsClosure.ipAddrs, nlIPAddr)
}
for _, addr := range gatewayAddresses {
gatewayAddr := net.ParseIP(addr)
if gatewayAddr == nil {
return nil, fmt.Errorf(
"setupNamespaceClosure engine: unable to parse gateway ip address '%s'", addr)
}
nsClosure.gatewayAddrs = append(nsClosure.gatewayAddrs, gatewayAddr)
}
return nsClosure, nil
}