RFC2402 says:
All IPv6 extension headers, as per RFC 1883, encode the "Hdr Ext Len"
field by first
subtracting 1 (64-bit word) from the header length (measured in 64-bit
words).
AH is an IPv6 extension header. However, since its length is measured
in 32-bit words,
the "Payload Length" is calculated by subtracting 2 (32 bit words).
This patch fixes as follows:
return (int(size) - 1) * 8 ->
return (int(size) + 2) * 4
^ ^ ^
Signed-off-by: TAKAHASHI Minoru <[email protected]>
---
ryu/lib/packet/ipv6.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/ryu/lib/packet/ipv6.py b/ryu/lib/packet/ipv6.py
index 960f1ac..6b29a7c 100644
--- a/ryu/lib/packet/ipv6.py
+++ b/ryu/lib/packet/ipv6.py
@@ -420,7 +420,7 @@ class auth(header):
@classmethod
def _get_size(cls, size):
- return (int(size) - 1) * 8
+ return (int(size) + 2) * 4
@classmethod
def parser(cls, buf):
--
1.7.10.4
------------------------------------------------------------------------------
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/NeoTech
_______________________________________________
Ryu-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ryu-devel