Sous-routine pcap_open_live_sb

Objectif

Ouvre un périphérique réseau pour la capture de paquets, vous permettant de spécifier la longueur de la mémoire tampon d'un filtre BPF (Berkeley Packet Filter).

Bibliothèque

Bibliothèque pcap (libpcap.a)

Syntaxe

#include <pcap.h>
pcap_t * pcap_open_live_sb( const char *device, int snaplen,
int promisc, int to_ms, char *ebuf, int buflen )

Descriptif

La sous-routine pcap_open_live_sb ouvre le périphérique réseau spécifié pour la capture de paquets. Cette sous-routine permet de spécifier la taille de la mémoire tampon que le filtre BPF doit utiliser pour capturer les paquets. Vous devez exécuter cette sous-routine avant toute capture de paquet. Toutes les autres sous-routines traitant de la capture de paquet nécessitent le descripteur de capture de paquet qui est créé et initialisé avec ce sous-programme.

Pour ouvrir un fichier précédemment sauvegardé qui contient des données de capture de paquet, utilisez la sous-routine pcap_open_offline .

Paramètres

Article Descriptif
longueur_buf Indique la taille de mémoire tampon que le filtre BPF doit utiliser. Si le système ne peut pas fournir de mémoire de cette taille, il choisira une taille plus petite.
unité Indique une chaîne contenant le nom du périphérique réseau à ouvrir pour la capture de paquets, par exemple, en0.
ebuf Renvoie un texte d'erreur et n'est défini que lorsque la sous-routine pcap_open_live échoue.
promisc Indique que l'unité doit être placée en mode espion. La valeur 1 (True) active le mode espion. Si ce paramètre est défini sur zéro (False), l'unité reste inchangée. Dans ce cas, s'il a déjà été mis en mode promiscuité (pour une autre raison), il reste dans ce mode.
mnaplen Indique le nombre maximal d'octets à capturer par paquet.
to_ms Indique le délai d'attente de lecture en millisecondes.

Valeurs renvoyées

Si l'opération aboutit, la sous-routine pcap_open_live_sb renvoie un pointeur vers le descripteur de capture de paquet créé. Si la sous-routine pcap_open_live_sb échoue, la valeur NULL est renvoyée et le texte indiquant l'erreur spécifique est écrit dans la mémoire tampon ebuf .