From d26cbddf26193f12193e4e009df92ecd2e814677 Mon Sep 17 00:00:00 2001 From: Hiyama Manabu <hiyama.manabu@po.ntts.co.jp> Date: Mon, 10 Sep 2012 11:29:11 +0900 Subject: [PATCH] packet lib: fix ipv4 flags bitshift Fixed flags bitshift. Signed-off-by: HIYAMA Manabu <hiyama.manabu@po.ntts.co.jp> Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp> --- ryu/lib/packet/ipv4.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ryu/lib/packet/ipv4.py b/ryu/lib/packet/ipv4.py index 343049a5..e4f87782 100644 --- a/ryu/lib/packet/ipv4.py +++ b/ryu/lib/packet/ipv4.py @@ -50,8 +50,8 @@ class ipv4(packet_base.PacketBase): src, dst) = struct.unpack_from(cls._PACK_STR, buf) header_length = version & 0xf version = version >> 4 - offset = flags & ((1 << 15) - 1) - flags = flags >> 15 + offset = flags & ((1 << 13) - 1) + flags = flags >> 13 msg = cls(version, header_length, tos, total_length, identification, flags, offset, ttl, proto, csum, src, dst) @@ -63,7 +63,7 @@ class ipv4(packet_base.PacketBase): def serialize(self, payload, prev): hdr = bytearray().zfill(self.header_length * 4) version = self.version << 4 | self.header_length - flags = self.flags << 15 | self.offset + flags = self.flags << 13 | self.offset if self.total_length == 0: self.total_length = self.header_length * 4 + len(payload) struct.pack_into(ipv4._PACK_STR, hdr, 0, version, self.tos,