Compare commits
11 Commits
0.13-1+squ
...
0.15-1+squ
Author | SHA1 | Date | |
---|---|---|---|
![]() |
0c30853e93 | ||
![]() |
6cbda4bb58 | ||
![]() |
e0aae9c67c | ||
![]() |
e96601981b | ||
![]() |
d858e3d5b3 | ||
![]() |
f2e31b5337 | ||
![]() |
8bbb45af33 | ||
![]() |
d86d0c8408 | ||
![]() |
0281a5e4eb | ||
![]() |
84c0414550 | ||
![]() |
5880ede839 |
12
debian/changelog
vendored
12
debian/changelog
vendored
@@ -1,3 +1,15 @@
|
|||||||
|
linux-netlink-ruby (0.15-1+squeeze1) oldstable; urgency=low
|
||||||
|
|
||||||
|
* New upstream release.
|
||||||
|
|
||||||
|
-- Patrick J Cherry <patrick@bytemark.co.uk> Tue, 21 Jan 2014 10:02:54 +0000
|
||||||
|
|
||||||
|
linux-netlink-ruby (0.14-1+squeeze1) oldstable; urgency=low
|
||||||
|
|
||||||
|
* New upstream release.
|
||||||
|
|
||||||
|
-- Patrick J Cherry <patrick@bytemark.co.uk> Thu, 14 Nov 2013 11:59:05 +0000
|
||||||
|
|
||||||
linux-netlink-ruby (0.13-1+squeeze1) oldstable; urgency=low
|
linux-netlink-ruby (0.13-1+squeeze1) oldstable; urgency=low
|
||||||
|
|
||||||
* New upstream release.
|
* New upstream release.
|
||||||
|
@@ -25,7 +25,7 @@ module Netlink
|
|||||||
# Check the sockaddr on a received message. Raises an error if the AF
|
# Check the sockaddr on a received message. Raises an error if the AF
|
||||||
# is not AF_NETLINK or the PID is not 0 (this is important for security)
|
# is not AF_NETLINK or the PID is not 0 (this is important for security)
|
||||||
def self.check_sockaddr(str)
|
def self.check_sockaddr(str)
|
||||||
af, pad, pid, groups = str.unpack(SOCKADDR_PACK)
|
af, _, pid, _ = str.unpack(SOCKADDR_PACK)
|
||||||
raise "Bad AF #{af}!" if af != Socket::AF_NETLINK
|
raise "Bad AF #{af}!" if af != Socket::AF_NETLINK
|
||||||
raise "Bad PID #{pid}!" if pid != 0
|
raise "Bad PID #{pid}!" if pid != 0
|
||||||
end
|
end
|
||||||
@@ -135,8 +135,8 @@ module Netlink
|
|||||||
# (Compare: rtnl_talk in lib/libnetlink.c, with answer=NULL)
|
# (Compare: rtnl_talk in lib/libnetlink.c, with answer=NULL)
|
||||||
def cmd(type, msg, flags=NLM_F_REQUEST, resp_type=NLMSG_ERROR, timeout=@timeout, sockaddr=SOCKADDR_DEFAULT)
|
def cmd(type, msg, flags=NLM_F_REQUEST, resp_type=NLMSG_ERROR, timeout=@timeout, sockaddr=SOCKADDR_DEFAULT)
|
||||||
send_request(type, msg, flags|NLM_F_ACK, sockaddr)
|
send_request(type, msg, flags|NLM_F_ACK, sockaddr)
|
||||||
receive_responses(true, timeout) do |type,msg|
|
receive_responses(true, timeout) do |rtype,rmsg|
|
||||||
return msg if type == resp_type
|
return rmsg if rtype == resp_type
|
||||||
false
|
false
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@@ -144,7 +144,7 @@ module Netlink
|
|||||||
# Discard all waiting messages
|
# Discard all waiting messages
|
||||||
def drain
|
def drain
|
||||||
while select([@socket], nil, nil, 0)
|
while select([@socket], nil, nil, 0)
|
||||||
mesg, sender, rflags, controls = @socket.recvmsg
|
mesg, _, _, _ = @socket.recvmsg
|
||||||
raise EOFError unless mesg
|
raise EOFError unless mesg
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@@ -209,7 +209,7 @@ module Netlink
|
|||||||
# kernel closes the socket.
|
# kernel closes the socket.
|
||||||
def recvmsg(timeout=@timeout)
|
def recvmsg(timeout=@timeout)
|
||||||
if select([@socket], nil, nil, timeout)
|
if select([@socket], nil, nil, timeout)
|
||||||
mesg, sender, rflags, controls = @socket.recvmsg
|
mesg, sender, _, _ = @socket.recvmsg
|
||||||
raise EOFError unless mesg
|
raise EOFError unless mesg
|
||||||
sender = sender.to_sockaddr if sender.respond_to? :to_sockaddr
|
sender = sender.to_sockaddr if sender.respond_to? :to_sockaddr
|
||||||
NLSocket.check_sockaddr(sender)
|
NLSocket.check_sockaddr(sender)
|
||||||
|
@@ -122,6 +122,7 @@ module Netlink
|
|||||||
:unpack => lambda { |str,obj| VlanFlags.parse(str) }
|
:unpack => lambda { |str,obj| VlanFlags.parse(str) }
|
||||||
rtattr :egress_qos, IFLA_VLAN_EGRESS_QOS
|
rtattr :egress_qos, IFLA_VLAN_EGRESS_QOS
|
||||||
rtattr :ingress_qos, IFLA_VLAN_INGRESS_QOS
|
rtattr :ingress_qos, IFLA_VLAN_INGRESS_QOS
|
||||||
|
rtattr :protocol, IFLA_VLAN_PROTOCOL, :ushort
|
||||||
end
|
end
|
||||||
|
|
||||||
module Route
|
module Route
|
||||||
|
@@ -8,12 +8,12 @@ module Netlink
|
|||||||
def clear_cache
|
def clear_cache
|
||||||
# No cache
|
# No cache
|
||||||
end
|
end
|
||||||
|
|
||||||
def list(filter={}, &blk)
|
def list(filter={}, &blk)
|
||||||
@rtsocket.link.list(filter.merge(:kind=>"vlan"))
|
@rtsocket.link.list(filter.merge(:kind=>"vlan"))
|
||||||
end
|
end
|
||||||
alias :each :list
|
alias :each :list
|
||||||
|
|
||||||
# Higher-level API to manipulate VLAN interface.
|
# Higher-level API to manipulate VLAN interface.
|
||||||
# nl.vlans.add(
|
# nl.vlans.add(
|
||||||
# :link=>"lo",
|
# :link=>"lo",
|
||||||
@@ -24,15 +24,15 @@ module Netlink
|
|||||||
def add(opt)
|
def add(opt)
|
||||||
@rtsocket.link.add(vlan_options(opt))
|
@rtsocket.link.add(vlan_options(opt))
|
||||||
end
|
end
|
||||||
|
|
||||||
def change(opt)
|
def change(opt)
|
||||||
@rtsocket.link.change(vlan_options(opt))
|
@rtsocket.link.change(vlan_options(opt))
|
||||||
end
|
end
|
||||||
|
|
||||||
def replace(opt)
|
def replace(opt)
|
||||||
@rtsocket.link.replace(vlan_options(opt))
|
@rtsocket.link.replace(vlan_options(opt))
|
||||||
end
|
end
|
||||||
|
|
||||||
# Delete vlan given :link and :vlan_id. If you want to delete
|
# Delete vlan given :link and :vlan_id. If you want to delete
|
||||||
# by :index then call link.delete instead.
|
# by :index then call link.delete instead.
|
||||||
def delete(opt)
|
def delete(opt)
|
||||||
@@ -59,6 +59,7 @@ module Netlink
|
|||||||
end
|
end
|
||||||
li.data.egress_qos = opt.delete(:egress_qos) if opt.has_key?(:egress_qos)
|
li.data.egress_qos = opt.delete(:egress_qos) if opt.has_key?(:egress_qos)
|
||||||
li.data.ingress_qos = opt.delete(:ingress_qos) if opt.has_key?(:ingress_qos)
|
li.data.ingress_qos = opt.delete(:ingress_qos) if opt.has_key?(:ingress_qos)
|
||||||
|
li.data.protocol = opt.delete(:protocol) if opt.has_key?(:protocol)
|
||||||
opt
|
opt
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
Reference in New Issue
Block a user