The Sniffer class is the one that use the pcap library to extract the packet information. It discards any packet that is not Ethernet->IP->(TCP|UDP), and pass up to the GUI the packets that are Ethernet->IP->(TCP|UDP).
Más...
#include <sniffer.h>
|
void | process () |
| El sniffer se corre como un hilo por separado y la funcion process es la funcion principal de el hilo. Es el sniffer.
|
|
|
void | resultReady (unsigned long index) |
|
|
| Sniffer () |
| Constructor, no hace nada.
|
|
| Sniffer (QWaitCondition *pw, QMutex *mx, int *ps) |
| Ajusta los mutexes para la inter comunicacion entre el sniffer y el GUI. Más...
|
|
| ~Sniffer () |
| Destructor, no hace nada.
|
|
vector< ip_packet > * | getPacketList () |
| Devuelve la lista de paquetes que contiene los paquetes que son Ethernet -> IP -> (TCP|UDP) Más...
|
|
string | format_payload (const char *payload, int len) |
| Formatea la carga de un torrente de bytes a un cadena de caracteres ascii. Más...
|
|
string | format_hex_ascii_line (const char *payload, int len, int offset) |
| Devuelve una cadena de caracteres con los bytes de una linea de la carga en ascii. Más...
|
|
void | find_devices (vector< string > &) |
| Encuentra los dispositivos de red en la computadora, y los almacena en el vector devs. Más...
|
|
void | setDevice (string) |
| Ajusta el dispositivo para caputurar paquetes a dev. Más...
|
|
|
void | print_payload (const u_char *payload, int len) |
| Imprime la carga en ascii. Más...
|
|
void | print_hex_ascii_line (const u_char *payload, int len, int offset) |
| Imprime la carga en ascii a std output. Más...
|
|
void | got_packet (const struct pcap_pkthdr *header, const u_char *packet) |
| Secciona el paquete recibido. Extrae la informacion necesaria. Más...
|
|
|
vector< ip_packet > | packet_list |
|
QWaitCondition * | wait_pause |
|
QMutex * | mutex |
|
string | device |
|
string | filter |
|
int * | pause |
|
The Sniffer class is the one that use the pcap library to extract the packet information. It discards any packet that is not Ethernet->IP->(TCP|UDP), and pass up to the GUI the packets that are Ethernet->IP->(TCP|UDP).
Sniffer::Sniffer |
( |
QWaitCondition * |
pw, |
|
|
QMutex * |
mx, |
|
|
int * |
ps |
|
) |
| |
Ajusta los mutexes para la inter comunicacion entre el sniffer y el GUI.
- Parámetros
-
pw | se usa para pausar la captura de paquetes |
mx | usado para proteger la region critica |
ps | bandera para pausar la captura de paquetes |
void Sniffer::find_devices |
( |
vector< string > & |
devs | ) |
|
Encuentra los dispositivos de red en la computadora, y los almacena en el vector devs.
- Parámetros
-
devs | vector de cadenas de caracteres para los nombres |
string Sniffer::format_hex_ascii_line |
( |
const char * |
payload, |
|
|
int |
len, |
|
|
int |
offset |
|
) |
| |
Devuelve una cadena de caracteres con los bytes de una linea de la carga en ascii.
- Parámetros
-
payload | carga del paquete |
len | largo del paquete |
offset | distancia del paquete |
- Devuelve
- a string with the bytes of a payload line in ascii
string Sniffer::format_payload |
( |
const char * |
payload, |
|
|
int |
len |
|
) |
| |
Formatea la carga de un torrente de bytes a un cadena de caracteres ascii.
- Parámetros
-
payload | carga del paquete |
len | largo del paquete |
- Devuelve
- la carga en una cadena de caracteres ascii
vector< ip_packet > * Sniffer::getPacketList |
( |
| ) |
|
Devuelve la lista de paquetes que contiene los paquetes que son Ethernet -> IP -> (TCP|UDP)
- Devuelve
- vector de paquetes
void Sniffer::got_packet |
( |
const struct pcap_pkthdr * |
header, |
|
|
const u_char * |
packet |
|
) |
| |
|
private |
Secciona el paquete recibido. Extrae la informacion necesaria.
- Parámetros
-
pcap_pkthdr | encabezado del paquete de pcap |
packet | paquete recibido |
void Sniffer::print_hex_ascii_line |
( |
const u_char * |
payload, |
|
|
int |
len, |
|
|
int |
offset |
|
) |
| |
|
private |
Imprime la carga en ascii a std output.
- Parámetros
-
payload | carga del paquete |
len | largo de la carga |
offset | distancia |
void Sniffer::print_payload |
( |
const u_char * |
payload, |
|
|
int |
len |
|
) |
| |
|
private |
Imprime la carga en ascii.
- Parámetros
-
payload | carga del paquete |
len | largo de la carga |
void Sniffer::setDevice |
( |
string |
dev | ) |
|
Ajusta el dispositivo para caputurar paquetes a dev.
- Parámetros
-
dev | nombre del dispositivo |
La documentación para esta clase fue generada a partir de los siguientes ficheros: