diff --git a/scapy/supersocket.py b/scapy/supersocket.py index 7f25db8d2680c55e3ce4fb3d2e29d7400cf5cb56..f35e881715dad7319f83b8aa48ccd671fe5180ec 100644 --- a/scapy/supersocket.py +++ b/scapy/supersocket.py @@ -489,6 +489,8 @@ class StreamSocket(SimpleSocket): def recv(self, x=MTU): pkt = self.ins.recv(x, socket.MSG_PEEK) x = len(pkt) + if x == 0: + raise socket.error((100,"Underlying stream socket tore down")) pkt = self.basecls(pkt) pad = pkt[Padding] if pad is not None and pad.underlayer is not None: