From f4e4765d315b7fffa427a1e6fe806e7acc601362 Mon Sep 17 00:00:00 2001 From: Ygor Amaral Date: Thu, 22 Aug 2013 17:07:24 +0900 Subject: [PATCH] packet lib: fix ipv6 parser payload length in ipv6 header doesn't include the basic ipv6 header length (40 bytes). Signed-off-by: FUJITA Tomonori --- ryu/lib/packet/ipv6.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ryu/lib/packet/ipv6.py b/ryu/lib/packet/ipv6.py index b65b8234..53bc5fbc 100644 --- a/ryu/lib/packet/ipv6.py +++ b/ryu/lib/packet/ipv6.py @@ -78,7 +78,8 @@ class ipv6(packet_base.PacketBase): msg = cls(version, traffic_class, flow_label, payload_length, nxt, hop_limit, addrconv.ipv6.bin_to_text(src), addrconv.ipv6.bin_to_text(dst)) - return msg, ipv6.get_packet_type(nxt), buf[cls._MIN_LEN:payload_length] + return (msg, ipv6.get_packet_type(nxt), + buf[cls._MIN_LEN:cls._MIN_LEN+payload_length]) def serialize(self, payload, prev): hdr = bytearray(40)