Try this patch.

Regards,
Francesco Piccinno

2008/10/26 Luis A. Bastiao Silva <[EMAIL PROTECTED]>:
> Hi Francesco.
>
> As you said, you will report to scapy community.
> I saw the ticket and someone suggest another function to use in BSD/Unix -
> using libdnet.
>
> So, I think that you need create a abstraction to put this working in BSD
> and Mac OSX.
>
> The output of function suggest:
>
> bastiao:exer luis$ scapy
> INFO: Can't import python gnuplot wrapper . Won't be able to plot.
> INFO: Can't import PyX. Won't be able to use psdump() or pdfdump().
> WARNING: No route found for IPv6 destination :: (no default route?)
> Welcome to Scapy (2.0.0.10 beta)
>>>> [i.get('name', None) for i in dnet.intf()]
> ['lo0', 'gif0', 'stf0', 'vmnet8', 'vmnet1', 'en0', 'fw0', 'en1']
>>>> [i for i in dnet.intf()]
> [{'addr': 127.0.0.1/8, 'mtu': 16384, 'flags': 35, 'type': 24, 'alias_addrs':
> [fe80:1::1/64, ::1], 'name': 'lo0'}, {'flags': 36, 'type': 53, 'name':
> 'gif0', 'mtu': 1280}, {'flags': 0, 'type': 1, 'name': 'stf0', 'mtu': 1280},
> {'addr': 172.16.81.1/24, 'mtu': 1500, 'flags': 48, 'link_addr':
> 00:50:56:c0:00:08, 'type': 6, 'name': 'vmnet8'}, {'addr': 172.16.187.1/24,
> 'mtu': 1500, 'flags': 48, 'link_addr': 00:50:56:c0:00:01, 'type': 6, 'name':
> 'vmnet1'}, {'flags': 49, 'link_addr': 00:1e:c2:11:ca:98, 'type': 6, 'name':
> 'en0', 'mtu': 1500}, {'flags': 49, 'type': 6, 'name': 'fw0', 'mtu': 2030},
> {'addr': 192.168.1.4/24, 'mtu': 1500, 'flags': 49, 'link_addr':
> 00:1e:c2:9e:78:f7, 'type': 6, 'alias_addrs':
> [fe80:8::21e:c2ff:fe9e:78f7/64], 'name': 'en1'}]
>>>>
>
> Virtual Networks appear too. That's awesome. If you can fix it should be
> nice because PM will run in Windows, Linux and Unixes. Thus I think we're
> close from PacketManipulator release (like alpha or something like that).
>
> Let me know if you need something else.
>
>
> On Sun, Oct 26, 2008 at 12:58 PM, Luis A. Bastiao Silva <[EMAIL PROTECTED]>
> wrote:
>>
>>
>> On Sun, Oct 26, 2008 at 1:23 PM, Francesco Piccinno <[EMAIL PROTECTED]>
>> wrote:
>>>
>>> Yes Luis is right. We should report this to scapy. This is a lack of
>>> the program because it should be implemented in unix or __init__ as
>>> well.
>>>
>>> Luis are you going to do the report else I could do it because I'm
>>> already on scapy ml.
>>
>> Ok, So just report it, please.
>> Thanks.
>>
>>>
>>> Regards,
>>> Francesco Piccinno
>>>
>>> 2008/10/26 Luis A. Bastiao Silva <[EMAIL PROTECTED]>:
>>> >
>>> >
>>> > On Sun, Oct 26, 2008 at 1:17 PM, Bartosz SKOWRON <[EMAIL PROTECTED]>
>>> > wrote:
>>> >>
>>> >> On Sun, Oct 26, 2008 at 1:08 PM, Francesco Piccinno
>>> >> <[EMAIL PROTECTED]>
>>> >> wrote:
>>> >>
>>> >> >>>> get_if_list()
>>> >> > ['lo', 'eth0', 'wlan0']
>>> >> >
>>> >> > What version you are using?
>>> >>
>>> >> Luis has a problem with virtual interfaces under OSX....
>>> >
>>> > Bart, it is a detail in apps like tcpdump or wireshark. Firstly I would
>>> > like
>>> > to see my interfaces (like loopback, en0, en1). But I didn't know why I
>>> > can't get if list. I think that wasn't implement in arch/unix.py of
>>> > scapy.
>>> > Well, I don't know..
>>> >
>>> >
>>> > --
>>> > Luis A. Bastiao Silva
>>> >
>>> >
>>
>>
>>
>> --
>> Luis A. Bastiao Silva
>>
>
>
> Cheers!
> --
> Luis A. Bastiao Silva
>
>
Index: PM/Backend/Scapy/utils.py
===================================================================
--- PM/Backend/Scapy/utils.py	(revisione 3767)
+++ PM/Backend/Scapy/utils.py	(copia locale)
@@ -120,33 +120,46 @@
 ###############################################################################
 
 def find_all_devs():
-    ifaces = get_if_list()
 
-    ips = []
-    hws = []
-    for iface in ifaces:
-        ip = "0.0.0.0"
-        hw = "00:00:00:00:00:00"
-        
-        try:
-            ip = get_if_addr(iface)
-        except Exception:
-            pass
+    # Use dnet as fallback
 
-        try:
-            hw = get_if_hwaddr(iface)
-        except Exception:
-            pass
+    if DARWIN or NETBSD or OPENBSD or FREEBSD:
+        ret = []
 
-        ips.append(ip)
-        hws.append(hw)
+        for obj in dnet.intf():
+            ret.append(
+                VirtualIFace(obj['name'], obj['link_addr'], obj['addr'])
+            )
 
-    ret = []
-    for iface, ip, hw in zip(ifaces, ips, hws):
-        ret.append(VirtualIFace(iface, hw, ip))
+        return ret
+    else:
+        ifaces = get_if_list()
 
-    return ret
+        ips = []
+        hws = []
+        for iface in ifaces:
+            ip = "0.0.0.0"
+            hw = "00:00:00:00:00:00"
+            
+            try:
+                ip = get_if_addr(iface)
+            except Exception:
+                pass
 
+            try:
+                hw = get_if_hwaddr(iface)
+            except Exception:
+                pass
+
+            ips.append(ip)
+            hws.append(hw)
+
+        ret = []
+        for iface, ip, hw in zip(ifaces, ips, hws):
+            ret.append(VirtualIFace(iface, hw, ip))
+
+        return ret
+
 ###############################################################################
 # Send Context functions
 ###############################################################################
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Umit-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/umit-devel

Reply via email to