diff --git a/scapy/contrib/ikev2.py b/scapy/contrib/ikev2.py index 3bf12e65bff..b1ffd8cdc17 100644 --- a/scapy/contrib/ikev2.py +++ b/scapy/contrib/ikev2.py @@ -568,7 +568,7 @@ class IKEv2_Payload(_IKEv2_Packet): name = "IKEv2 Payload" fields_desc = [ ByteEnumField("next_payload", None, IKEv2PayloadTypes), - FlagsField("flags", 0, 8, ["critical"]), + FlagsField("flags", 0, 8, {0x80: "critical"}), ShortField("length", None), XStrLenField("load", "", length_from=lambda pkt: pkt.length - 4), ] diff --git a/test/contrib/ikev2.uts b/test/contrib/ikev2.uts index db503867fc1..9d51493daa1 100644 --- a/test/contrib/ikev2.uts +++ b/test/contrib/ikev2.uts @@ -28,8 +28,8 @@ a[IKEv2_Transform].show() = Build Ikev2 SA request packet -a = IKEv2(init_SPI="MySPI",exch_type=34)/IKEv2_SA(prop=IKEv2_Proposal()) -assert raw(a) == b'MySPI\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00! "\x00\x00\x00\x00\x00\x00\x00\x00(\x00\x00\x00\x0c\x00\x00\x00\x08\x01\x01\x00\x00' +a = IKEv2(init_SPI="MySPI",exch_type=34)/IKEv2_SA(flags="critical", prop=IKEv2_Proposal()) +assert raw(a) == b'MySPI\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00! "\x00\x00\x00\x00\x00\x00\x00\x00(\x00\x80\x00\x0c\x00\x00\x00\x08\x01\x01\x00\x00' = Build advanced IKEv2