diff --git a/scapy/all.py b/scapy/all.py index fd64c33ba60ff96ce5b394d95755dc6ed92ab78d..fbaf017c91c746b146e87a99ca8e7ef5b380f2a3 100644 --- a/scapy/all.py +++ b/scapy/all.py @@ -40,5 +40,4 @@ from asn1.asn1 import * from asn1.ber import * from asn1.mib import * - - +from crypto.cert import * diff --git a/scapy/crypto/cert.py b/scapy/crypto/cert.py index dd50e777a167c8e42965dff6eb3d3c65f12fef79..fd33fd42a118c4e0c2af81842ea2b7c798a1dd92 100644 --- a/scapy/crypto/cert.py +++ b/scapy/crypto/cert.py @@ -1715,8 +1715,12 @@ class Cert(OSSLHelper, _EncryptAndVerify): self.notBefore_str = v if self.notBefore_str is None: raise Exception(error_msg) - self.notBefore = time.strptime(self.notBefore_str, - "%b %d %H:%M:%S %Y %Z") + try: + self.notBefore = time.strptime(self.notBefore_str, + "%b %d %H:%M:%S %Y %Z") + except: + self.notBefore = time.strptime(self.notBefore_str, + "%b %d %H:%M:%S %Y") self.notBefore_str_simple = time.strftime("%x", self.notBefore) # not after @@ -1728,8 +1732,12 @@ class Cert(OSSLHelper, _EncryptAndVerify): self.notAfter_str = v if self.notAfter_str is None: raise Exception(error_msg) - self.notAfter = time.strptime(self.notAfter_str, - "%b %d %H:%M:%S %Y %Z") + try: + self.notAfter = time.strptime(self.notAfter_str, + "%b %d %H:%M:%S %Y %Z") + except: + self.notAfter = time.strptime(self.notAfter_str, + "%b %d %H:%M:%S %Y") self.notAfter_str_simple = time.strftime("%x", self.notAfter) # subject diff --git a/scapy/layers/inet.py b/scapy/layers/inet.py index db36d0b8370e27e3076da7f16ad2651975817dcd..b26a0cd8f8b6faddfe935b9ff48daee5f018a3d4 100644 --- a/scapy/layers/inet.py +++ b/scapy/layers/inet.py @@ -1312,7 +1312,7 @@ traceroute(target, [maxttl=30,] [dport=80,] [sport=80,] [verbose=conf.verb]) -> class TCP_client(Automaton): def parse_args(self, ip, port, *args, **kargs): - self.dst = ip + self.dst = iter(Net(ip)).next() self.dport = port self.sport = random.randrange(0,2**16) self.l4 = IP(dst=ip)/TCP(sport=self.sport, dport=self.dport, flags=0, diff --git a/scapy/main.py b/scapy/main.py index b8fc3f3a02e99a7120aa60b468c755d1302986ac..beb70afa7c29861602d264c94c49d8f38b705a5e 100644 --- a/scapy/main.py +++ b/scapy/main.py @@ -252,6 +252,7 @@ def interact(mydict=None,argv=None,mybanner=None,loglevel=20): globkeys += mydict.keys() + conf.color_theme = DefaultTheme() if STARTUP_FILE: _read_config_file(STARTUP_FILE) @@ -295,7 +296,6 @@ def interact(mydict=None,argv=None,mybanner=None,loglevel=20): atexit.register(scapy_write_history_file,readline) atexit.register(scapy_delete_temp_files) - conf.color_theme = DefaultTheme() IPYTHON=False if conf.interactive_shell.lower() == "ipython": diff --git a/scapy/supersocket.py b/scapy/supersocket.py index 9adf573323294ead65b7ad1b90c7b372639cac03..7863ff726612b6b8d5c6152ca9e919775ed7e2d9 100644 --- a/scapy/supersocket.py +++ b/scapy/supersocket.py @@ -88,7 +88,7 @@ class StreamSocket(SimpleSocket): if x == 0: raise socket.error((100,"Underlying stream socket tore down")) pkt = self.basecls(pkt) - pad = pkt[Padding] + pad = pkt.getlayer(Padding) if pad is not None and pad.underlayer is not None: del(pad.underlayer.payload) while pad is not None and not isinstance(pad, NoPayload):