diff --git a/scapy/fields.py b/scapy/fields.py index 822fd100835c57d0284c5a3c148d763359dfc843..21314afd195bb3166ee21d7a50abb1526864996a 100644 --- a/scapy/fields.py +++ b/scapy/fields.py @@ -1065,6 +1065,9 @@ class FlagValue(object): return bool(self.value) __bool__ = __nonzero__ def flagrepr(self): + warning("obj.flagrepr() is obsolete. Use str(obj) instead.") + return str(self) + def __str__(self): i = 0 r = [] x = int(self) @@ -1075,7 +1078,7 @@ class FlagValue(object): x >>= 1 return ("+" if self.multi else "").join(r) def __repr__(self): - return "<Flag %d (%s)>" % (self, self.flagrepr()) + return "<Flag %d (%s)>" % (self, self) def __deepcopy__(self, memo): return self.__class__(int(self), self.names) def __getattr__(self, attr): @@ -1144,9 +1147,9 @@ class FlagsField(BitField): def i2repr(self, pkt, x): if isinstance(x, (list, tuple)): return repr(type(x)( - None if v is None else FlagValue(v, self.names).flagrepr() + None if v is None else str(FlagValue(v, self.names)) for v in x)) - return None if x is None else FlagValue(x, self.names).flagrepr() + return None if x is None else str(FlagValue(x, self.names)) MultiFlagsEntry = collections.namedtuple('MultiFlagEntry', ['short', 'long']) diff --git a/scapy/modules/nmap.py b/scapy/modules/nmap.py index efe6c7dcda9745a3efb480140aeeca34f6affb6a..a6017fd9220e9e665450eb9767a8bd90c536392c 100644 --- a/scapy/modules/nmap.py +++ b/scapy/modules/nmap.py @@ -95,7 +95,7 @@ def nmap_tcppacket_sig(pkt): res["DF"] = "Y" if pkt.flags.DF else "N" res["W"] = "%X" % pkt.window res["ACK"] = "S++" if pkt.ack == 2 else "S" if pkt.ack == 1 else "O" - res["Flags"] = pkt[TCP].flags.flagrepr()[::-1] + res["Flags"] = str(pkt[TCP].flags)[::-1] res["Ops"] = "".join(x[0][0] for x in pkt[TCP].options) else: res["Resp"] = "N"