diff --git a/scapy/sendrecv.py b/scapy/sendrecv.py index 37a42940611955735c87c93c6b42b8a7b28cd67b..292274099bfc9ac4a59a0ab3e75e7249b076400a 100644 --- a/scapy/sendrecv.py +++ b/scapy/sendrecv.py @@ -19,6 +19,7 @@ from utils import warning,get_temp_file,PcapReader,wrpcap import plist from error import log_runtime,log_interactive from base_classes import SetGen +from supersocket import StreamSocket ################# ## Debug class ## @@ -123,7 +124,7 @@ def sndrcv(pks, pkt, timeout = None, inter = 0, verbose=None, chainCC=0, retry=0 if remaintime <= 0: break r = None - if arch.FREEBSD or arch.DARWIN: + if not isinstance(pks, StreamSocket) and (arch.FREEBSD or arch.DARWIN): inp, out, err = select(inmask,[],[], 0.05) if len(inp) == 0 or pks in inp: r = pks.nonblock_recv()