From a6d444345e9b45891317a9b8e94507f36d674e84 Mon Sep 17 00:00:00 2001
From: Phil <phil@secdev.org>
Date: Sun, 31 Aug 2008 00:42:45 +0200
Subject: [PATCH] Fix arch/linux.py supersockets

---
 scapy/arch/linux.py | 20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/scapy/arch/linux.py b/scapy/arch/linux.py
index f4071650..2f265132 100644
--- a/scapy/arch/linux.py
+++ b/scapy/arch/linux.py
@@ -226,7 +226,7 @@ class L3PacketSocket(SuperSocket):
                 else:
                     filter = "not (%s)" % conf.except_filter
             if filter is not None:
-                arch.attach_filter(self.ins, filter)
+                attach_filter(self.ins, filter)
         self.ins.setsockopt(socket.SOL_SOCKET, socket.SO_RCVBUF, 2**30)
         self.outs = socket.socket(socket.AF_PACKET, socket.SOCK_RAW, socket.htons(type))
         self.outs.setsockopt(socket.SOL_SOCKET, socket.SO_SNDBUF, 2**30)
@@ -235,21 +235,21 @@ class L3PacketSocket(SuperSocket):
         self.promisc = promisc
         if self.promisc:
             if iface is None:
-                self.iff = arch.get_if_list()
+                self.iff = get_if_list()
             else:
                 if iface.__class__ is list:
                     self.iff = iface
                 else:
                     self.iff = [iface]
             for i in self.iff:
-                arch.set_promisc(self.ins, i)
+                set_promisc(self.ins, i)
     def close(self):
         if self.closed:
             return
         self.closed=1
         if self.promisc:
             for i in self.iff:
-                arch.set_promisc(self.ins, i, 0)
+                set_promisc(self.ins, i, 0)
         SuperSocket.close(self)
     def recv(self, x):
         pkt, sa_ll = self.ins.recvfrom(x)
@@ -278,7 +278,7 @@ class L3PacketSocket(SuperSocket):
             pkt = pkt.payload
             
         if pkt is not None:
-            pkt.time = arch.get_last_packet_timestamp(self.ins)
+            pkt.time = get_last_packet_timestamp(self.ins)
         return pkt
     
     def send(self, x):
@@ -323,7 +323,7 @@ class L2Socket(SuperSocket):
                 else:
                     filter = "not (%s)" % conf.except_filter
             if filter is not None:
-                arch.attach_filter(self.ins, filter)
+                attach_filter(self.ins, filter)
         self.ins.bind((iface, type))
         self.ins.setsockopt(socket.SOL_SOCKET, socket.SO_RCVBUF, 2**30)
         self.outs = self.ins
@@ -370,12 +370,12 @@ class L2ListenSocket(SuperSocket):
                 else:
                     filter = "not (%s)" % conf.except_filter
             if filter is not None:
-                arch.attach_filter(self.ins, filter)
+                attach_filter(self.ins, filter)
         if promisc is None:
             promisc = conf.sniff_promisc
         self.promisc = promisc
         if iface is None:
-            self.iff = arch.get_if_list()
+            self.iff = get_if_list()
         else:
             if iface.__class__ is list:
                 self.iff = iface
@@ -383,12 +383,12 @@ class L2ListenSocket(SuperSocket):
                 self.iff = [iface]
         if self.promisc:
             for i in self.iff:
-                arch.set_promisc(self.ins, i)
+                set_promisc(self.ins, i)
         self.ins.setsockopt(socket.SOL_SOCKET, socket.SO_RCVBUF, 2**30)
     def close(self):
         if self.promisc:
             for i in self.iff:
-                arch.set_promisc(self.ins, i, 0)
+                set_promisc(self.ins, i, 0)
         SuperSocket.close(self)
 
     def recv(self, x):
-- 
GitLab