summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLorenzo Colitti <lorenzo@google.com>2020-04-17 06:36:17 +0000
committerMaciej Zenczykowski <maze@google.com>2020-04-17 08:30:24 +0000
commit838457f5079b970e1b68929522beefa11019211c (patch)
tree0fa57c58967fcfa7522c7ee1f4160b8356165b86
parent616dec948d5e950dc1b4fb69f0c478f5506a552a (diff)
downloadtests-838457f5079b970e1b68929522beefa11019211c.tar.gz
Fix format of pref64 option.
The lifetime is not shifted left three bits, It's divided by 8 (so shifted right 3 bits), but it's also a 13-bit integer that occupies the beginning of a 16-bit field. So it's effectively the same as a 16-bit integer with the least significant 3 bits replaced by the plc. Bug: 153694684 Test: ROOTFS=net_test.rootfs.amd64.buster.20200129 ../net_test/run_net_test.sh Change-Id: Ibf7f5372f31439794cc196f0fd27b60b9fd176bd Merged-In: Ibf7f5372f31439794cc196f0fd27b60b9fd176bd
-rwxr-xr-xnet/test/multinetwork_test.py2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/test/multinetwork_test.py b/net/test/multinetwork_test.py
index dc440b3..a0b464a 100755
--- a/net/test/multinetwork_test.py
+++ b/net/test/multinetwork_test.py
@@ -890,7 +890,7 @@ class RATest(multinetwork_base.MultiNetworkBaseTest):
def MakePref64Option(self, prefix, lifetime):
prefix = inet_pton(AF_INET6, prefix)[:12]
- lft_plc = (lifetime << 3) | 0 # 96-bit prefix length
+ lft_plc = (lifetime & 0xfff8) | 0 # 96-bit prefix length
return self.Pref64Option((self.ND_OPT_PREF64, 2, lft_plc, prefix))
@unittest.skipUnless(net_test.LINUX_VERSION >= (4, 9, 0), "not backported")