From f505b733d02c9520ac81097af2b9928cabef0d4b Mon Sep 17 00:00:00 2001 From: Yaroslav Kolomiiets Date: Tue, 30 Apr 2019 17:18:00 +0100 Subject: [PATCH] rtnl: AddrAdd: ensure v4 address format is used for AF_INET Signed-off-by: Yaroslav Kolomiiets --- rtnl/addr.go | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/rtnl/addr.go b/rtnl/addr.go index 399582b..07e2443 100644 --- a/rtnl/addr.go +++ b/rtnl/addr.go @@ -26,8 +26,10 @@ func (c *Conn) AddrAdd(ifc *net.Interface, addr *net.IPNet) error { Local: addr.IP, }, } - if addr.IP.To4() != nil { + if ip4 := addr.IP.To4(); ip4 != nil { tx.Attributes.Broadcast = broadcastAddr(addr) + tx.Attributes.Address = ip4 + tx.Attributes.Local = ip4 } return c.Conn.Address.New(tx) } @@ -54,8 +56,9 @@ func (c *Conn) AddrDel(ifc *net.Interface, addr *net.IPNet) error { Address: addr.IP, }, } - if addr.IP.To4() != nil { + if ip4 := addr.IP.To4(); ip4 != nil { tx.Attributes.Broadcast = broadcastAddr(addr) + tx.Attributes.Address = ip4 } return c.Conn.Address.Delete(tx) }