diff --git a/scapy/packet.py b/scapy/packet.py index cc44df7785528c26bde4077abeb5716f1ad80032..92e8abeaf2abbb8f82474e763a75bba604d3c9b5 100644 --- a/scapy/packet.py +++ b/scapy/packet.py @@ -1259,21 +1259,26 @@ def ls(obj=None, case_sensitive=False, verbose=False): cur_fld = cur_fld.fld if verbose and isinstance(cur_fld, EnumField) \ and hasattr(cur_fld, "i2s"): - long_attrs.extend( - "%s: %d" % (strval, numval) - for numval, strval in sorted(cur_fld.i2s.iteritems()) - ) + if len(cur_fld.i2s) < 50: + long_attrs.extend( + "%s: %d" % (strval, numval) + for numval, strval in + sorted(cur_fld.i2s.iteritems()) + ) elif isinstance(cur_fld, MultiEnumField): - fld_depend = cur_fld.depends_on(obj.__class__ if is_pkt else obj) + fld_depend = cur_fld.depends_on(obj.__class__ + if is_pkt else obj) attrs.append("Depends on %s" % fld_depend.name) if verbose: cur_i2s = cur_fld.i2s_multi.get( cur_fld.depends_on(obj if is_pkt else obj()), {} ) - long_attrs.extend( - "%s: %d" % (strval, numval) - for numval, strval in sorted(cur_i2s.iteritems()) - ) + if len(cur_i2s) < 50: + long_attrs.extend( + "%s: %d" % (strval, numval) + for numval, strval in + sorted(cur_i2s.iteritems()) + ) elif verbose and isinstance(cur_fld, FlagsField): names = cur_fld.names if isinstance(names, basestring):