Zamknięty

3445 Program filtrujacy strumien pakietow w C lub C++

Chciałbym zlecić napisanie poniższego programu.

Oczywiście zależy mi na kodzie z opisem i czasie. Termin upływa w piątek. Program powinien być w języku C lub C++

Program filtrujacy strumien pakietow,

wywolywany z trzema argumentami : wejsciowym plikiem

ze zrzutem tcpdumpowym, plikiem z opisem filtra,

oraz plikiem wyjsciowym - do ktorego nalezy zrzucic

te fragmenty pliku wejsciowego, ktore zgadzaja sie

z filtrem. Filtrem takim jest wyrazenie regularne

na pakietach, zdefiniowane nastepujaco :

1) pojedynczy pakiet opisany jest ujetym w nawiasy

kwadratowe wyrazeniem filtrujacym tcpdump-a, np.

[dst port 80] albo [src host 192.168.0.1]

( dowolny pakiet to [] );

2) z opisow pojedynczych pakietow mozna budowac

wyrazenia regularne zgodnie z ogolnie przyjeta

ich skladnia - obslugiwana powinna byc

wielokrotnosc (* oraz +), alternatywa (| oraz ?),

oraz mozliwosc nawiasowania wyrazen.

W rezultacie program moze wybierac konkretne sekwencje

pakietow, a nie tylko - jak tcpdump - filtrowac pakiety

oddzielne, kazdy niezaleznie od pozostalych.

Uwaga - w zadaniu nie chodzi o filtrowanie szukajace

tekstowych wyrazen regularnych wewnatrz tresci pakietow.

W tym przypadku ,,literami\'\' wyrazenia regularnego

maja byc nie znaczki ascii, ale cale pakiety. Poniewaz

takiego pakietu nie da sie opisac jedna literka, dlatego

do jego opisu uzywamy calego tcpdumpowego wyrazenia

filtrujacego (ujetego w kwadratowe nawiasy), co jest

pewna analogia do klas liter, jak [:alnum:] lub [:upper:].

W efekcie program powinien moc wychwytywac ze strumienia

pakietow ich podciagi o z gory zadanej strukturze, np.

[dst port 22][proto tcp]*[src port 23] to filtr

wybierajacy ciagi pakietow rozpoczynajace sie od pakietu

z docelowym portem 22 a konczace na pakiecie ze zrodlowym

portem 23, pomiedzy ktorymi jest dowolna ilosc pakietow tcp.

Umiejętności: Wszystko inne

Zobacz więcej: src program, klas, c# moc, 192 168.1.1, tek c, proto, poni, liter, c++ pi, c pi, ALE, tcp program, program tcp, tcp host, ascii tcp, zale, dst, program f, lub

O pracodawcy:
( 0 ocen ) Poland

Numer ID Projektu: #5579958