diff --git a/scapy/packet.py b/scapy/packet.py index 1f79ab6d04c679a78e3d4b98210155f2c205797b..b7c5f7f365f3a977c72253ba1556d1d6f217053f 100644 --- a/scapy/packet.py +++ b/scapy/packet.py @@ -8,6 +8,7 @@ Packet class. Binding mechanism. fuzz() method. """ import time,itertools,os +import copy from fields import StrField,ConditionalField,Emph,PacketListField from config import conf from base_classes import BasePacket,Gen,SetGen,Packet_metaclass,NewDefaultValues @@ -93,7 +94,7 @@ class Packet(BasePacket): def do_init_fields(self, flist): for f in flist: - self.default_fields[f.name] = f.default + self.default_fields[f.name] = copy.deepcopy(f.default) self.fieldtype[f.name] = f if f.holds_packets: self.packetfields.append(f)