summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLorenzo Colitti <lorenzo@google.com>2016-01-06 07:56:54 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2016-01-06 07:56:54 +0000
commit09f36abb939ebad430a8b95beda70577c8fc1fa2 (patch)
treecc8da1736e0f51c69723f93366c54fda43ffef61
parente732b22a44ce9ee3745b368471b7a41399735c27 (diff)
parent4c0ff912fef4aeaa9dc660f88a49f3144b3fc79e (diff)
downloadextras-09f36abb939ebad430a8b95beda70577c8fc1fa2.tar.gz
Merge changes I10fbb3bc,Iba2afc09
* changes: Make GetSockDiag really return an InetDiagMsg, not a tuple. Don't fail if getting SO_BINDTODEVICE is not yet supported.
-rwxr-xr-xtests/net_test/sock_diag.py7
-rwxr-xr-xtests/net_test/sock_diag_test.py2
2 files changed, 6 insertions, 3 deletions
diff --git a/tests/net_test/sock_diag.py b/tests/net_test/sock_diag.py
index 80899472..5fa7a7d5 100755
--- a/tests/net_test/sock_diag.py
+++ b/tests/net_test/sock_diag.py
@@ -195,7 +195,10 @@ class SockDiag(netlink.NetlinkSocket):
"""Creates an InetDiagReqV2 that matches the specified socket."""
family = s.getsockopt(net_test.SOL_SOCKET, net_test.SO_DOMAIN)
protocol = s.getsockopt(net_test.SOL_SOCKET, net_test.SO_PROTOCOL)
- iface = s.getsockopt(SOL_SOCKET, net_test.SO_BINDTODEVICE)
+ if net_test.LINUX_VERSION >= (3, 8):
+ iface = s.getsockopt(SOL_SOCKET, net_test.SO_BINDTODEVICE)
+ else:
+ iface = 0
src, sport = s.getsockname()[:2]
try:
dst, dport = s.getpeername()[:2]
@@ -223,7 +226,7 @@ class SockDiag(netlink.NetlinkSocket):
def GetSockDiag(self, req):
"""Gets an InetDiagMsg from the kernel for the specified request."""
self._SendNlRequest(SOCK_DIAG_BY_FAMILY, req.Pack(), netlink.NLM_F_REQUEST)
- return self._GetMsg(InetDiagMsg)
+ return self._GetMsg(InetDiagMsg)[0]
@staticmethod
def DiagReqFromDiagMsg(d, protocol):
diff --git a/tests/net_test/sock_diag_test.py b/tests/net_test/sock_diag_test.py
index c9ee0c87..7eff7e40 100755
--- a/tests/net_test/sock_diag_test.py
+++ b/tests/net_test/sock_diag_test.py
@@ -128,7 +128,7 @@ class SockDiagTest(multinetwork_base.MultiNetworkBaseTest):
req = self.sock_diag.DiagReqFromSocket(sock)
req.id.cookie = cookie
req.states = 1 << diag_msg.state
- diag_msg, attrs = self.sock_diag.GetSockDiag(req)
+ diag_msg = self.sock_diag.GetSockDiag(req)
self.assertSockDiagMatchesSocket(sock, diag_msg)