PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : pylibpcap hängt sich auf!



Deever
23-06-2004, 10:54
Hey Amigos, wie geht's?

Das drumherum meines Netzwerksniffers ist soweit eigentlich fertig, jedoch als ich zum eigentlichen Teil, dem Sniffen, kam, gibts Probs ohne Ende!

--- verkürzt ---
import sys, pcap

def cpt(len, data, tst):
if data[12:14] == '\x08\x00' and data[23] == '\x06': # IP _and_ TCP
dest_mac = ''
source_mac = ''
for i in data[0:6]:
o = hex(ord(i))[2:]
if len(o)<2 : o = o+'0'
dest_mac = dest_mac+o+':'
for i in data[6:12]:
o = hex(ord(i))[2:]
if len(o)<2 : o = o+'0'
source_mac = source_mac+o+':'
dest_mac = dest_mac[:-1]
source_mac = source_mac[:-1]
source_ip = ntoa(data[26:30])
dest_ip = ntoa(data[30:34])
print source_mac, source_ip
print dest_mac, dest_ip

filter = 'ip and ether host 12:34:56:78:91:01'
p = pcap.pcapObject()
p.open_live('eth0', 1600, 1, 100)
p.setfilter(filter, 0, 0)

--- 1. Variante ---
p.loop(-1, cpt)

--- 2. Variante ---
while 1:
p.dispatch(1, cpt)

Bei beidem hängt sich das Skript aber auf und gibt überhaupt nix aus, obwohl passende Pakete ankommen! Gibts da irgendnen Bug?

Danke && Gruß,
/dev