Skip to content
Snippets Groups Projects
Commit 0089e890 authored by Malte Bauch's avatar Malte Bauch
Browse files

Remove direct access of addresses

parent 9a559f4e
No related branches found
No related tags found
4 merge requests!17Build basic ci,!10Add simple modem support on linux through modemmanager,!8General refactoring,!5Draft: Add basic set support for ip/routing via gnmi
......@@ -155,25 +155,30 @@ func generateSubinterface(subintf *gnmitargetygot.OpenconfigInterfaces_Interface
}
errs := make([]error, 0)
for _, addr := range subintf.Ipv4.Addresses.Address {
if !util.IsValueNil(addr.Config.Ip) && !util.IsValueNil(addr.Config.PrefixLength) {
netlinkAddr := &netlink.Addr{
IPNet: &net.IPNet{
IP: net.ParseIP(*addr.Config.Ip),
Mask: net.CIDRMask(int(*addr.Config.PrefixLength), 32),
},
if ipv4s := subintf.GetIpv4(); ipv4s != nil {
if addresses := ipv4s.GetAddresses(); addresses != nil {
for _, addr := range subintf.Ipv4.Addresses.Address {
if !util.IsValueNil(addr.Config.Ip) && !util.IsValueNil(addr.Config.PrefixLength) {
netlinkAddr := &netlink.Addr{
IPNet: &net.IPNet{
IP: net.ParseIP(*addr.Config.Ip),
Mask: net.CIDRMask(int(*addr.Config.PrefixLength), 32),
},
}
if err := netlink.AddrReplace(link, netlinkAddr); err != nil {
errs = append(errs, err)
}
}
}
if err := netlink.AddrReplace(link, netlinkAddr); err != nil {
errs = append(errs, err)
if len(errs) != 0 {
return fmt.Errorf("encountered %v errors during address adding \n%v", len(errs), errs)
}
return nil
}
}
if len(errs) != 0 {
return fmt.Errorf("encountered %v errors during address adding \n%v", len(errs), errs)
}
return nil
errs = append(errs, fmt.Errorf("no ipv4 addresses found"))
return fmt.Errorf("encountered %v errors during address adding \n%v", len(errs), errs)
}
func generateProtocol(protocol *gnmitargetygot.OpenconfigNetworkInstance_NetworkInstances_NetworkInstance_Protocols_Protocol) error {
......
......@@ -46,6 +46,7 @@ func (ou *OsclientUbuntu) GetConfig() *gnmitargetygot.Gnmitarget {
log.WithFields(log.Fields{}).Error(err)
}
for _, localIface := range localIfaces {
log.Println("Creating Interface with name: ", localIface.Attrs().Name)
ou.createInterfaces(localIface, ou.gt)
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment