Add the IFA_FLAGS RTAttr and a couple of new flags
This commit is contained in:
@@ -310,24 +310,27 @@ module Linux
|
|||||||
VLAN_FLAG_MVRP = 0x8
|
VLAN_FLAG_MVRP = 0x8
|
||||||
|
|
||||||
# from linux/if_addr.h
|
# from linux/if_addr.h
|
||||||
IFA_UNSPEC = 0
|
IFA_UNSPEC = 0
|
||||||
IFA_ADDRESS = 1
|
IFA_ADDRESS = 1
|
||||||
IFA_LOCAL = 2
|
IFA_LOCAL = 2
|
||||||
IFA_LABEL = 3
|
IFA_LABEL = 3
|
||||||
IFA_BROADCAST = 4
|
IFA_BROADCAST = 4
|
||||||
IFA_ANYCAST = 5
|
IFA_ANYCAST = 5
|
||||||
IFA_CACHEINFO = 6
|
IFA_CACHEINFO = 6
|
||||||
IFA_MULTICAST = 7
|
IFA_MULTICAST = 7
|
||||||
|
IFA_FLAGS = 8
|
||||||
|
|
||||||
IFA_F_SECONDARY = 0x01
|
IFA_F_SECONDARY = 0x01
|
||||||
IFA_F_TEMPORARY = IFA_F_SECONDARY
|
IFA_F_TEMPORARY = IFA_F_SECONDARY
|
||||||
IFA_F_NODAD = 0x02
|
IFA_F_NODAD = 0x02
|
||||||
IFA_F_OPTIMISTIC = 0x04
|
IFA_F_OPTIMISTIC = 0x04
|
||||||
IFA_F_DADFAILED = 0x08
|
IFA_F_DADFAILED = 0x08
|
||||||
IFA_F_HOMEADDRESS = 0x10
|
IFA_F_HOMEADDRESS = 0x10
|
||||||
IFA_F_DEPRECATED = 0x20
|
IFA_F_DEPRECATED = 0x20
|
||||||
IFA_F_TENTATIVE = 0x40
|
IFA_F_TENTATIVE = 0x40
|
||||||
IFA_F_PERMANENT = 0x80
|
IFA_F_PERMANENT = 0x80
|
||||||
|
IFA_F_MANAGETEMPADDR = 0x100
|
||||||
|
IFA_F_NOPREFIXROUTE = 0x200
|
||||||
|
|
||||||
# from linux/if_arp.h - selected subset
|
# from linux/if_arp.h - selected subset
|
||||||
ARPHRD_NETROM = 0
|
ARPHRD_NETROM = 0
|
||||||
|
@@ -24,6 +24,10 @@ module Netlink
|
|||||||
:pack => lambda { |val,obj| val.to_a.pack("L*") },
|
:pack => lambda { |val,obj| val.to_a.pack("L*") },
|
||||||
:unpack => lambda { |str,obj| IFACacheInfo.new(*(str.unpack("L*"))) }
|
:unpack => lambda { |str,obj| IFACacheInfo.new(*(str.unpack("L*"))) }
|
||||||
rtattr :multicast, IFA_MULTICAST, :l3addr
|
rtattr :multicast, IFA_MULTICAST, :l3addr
|
||||||
|
|
||||||
|
# TODO: is there any difference between flags and ifa_flags? The latter only
|
||||||
|
# shows up on newer kernels
|
||||||
|
rtattr :ifa_flags, IFA_FLAGS, :uint
|
||||||
end
|
end
|
||||||
|
|
||||||
module Route
|
module Route
|
||||||
|
Reference in New Issue
Block a user