1. NOM▲
netlink - Macros pour netlink
2. SYNOPSIS ▲
#include <asm/types.h>
#include <linux/netlink.h>
int
NLMSG_ALIGN
(
size_t taille);
int
NLMSG_LENGTH
(
size_t taille);
int
NLMSG_SPACE
(
size_t taille);
void
*
NLMSG_DATA
(
struct
nlmsghdr *
nlh);
struct
nlmsghdr *
NLMSG_NEXT
(
struct
nlmsghdr *
nlh, int
taille);
int
NLMSG_OK
(
struct
nlmsghdr *
nlh, int
taille);
int
NLMSG_PAYLOAD
(
struct
nlmsghdr *
nlh, int
taille);
3. DESCRIPTION ▲
<linux/netlink.h> définit plusieurs macros standard pour accéder ou créer un datagramme netlink. Elles sont similaires dans leurs principes aux macros définies dans cmsg(3) pour les données auxiliaires. Le tampon passé à une socket netlink ne devrait pas être manipulé autrement que par ces macros.
- NLMSG_ALIGN()
Arrondit la taille du message netlink pour avoir un alignement correct. - NLMSG_LENGTH()
Prend la taille du message, len, comme argument et retourne la taille alignée à stocker dans le champ nlmsg_len de nlmsghdr. - NLMSG_SPACE()
Renvoie le nombre d'octets qu'un message netlink occuperait pour la quantité de données len. - NLMSG_DATA()
Retourne un pointeur sur l'objet associé au nlmsghdr passé.
NLMSG_NEXT() Récupère la structure nlmsghdr suivante d'un message multiple. L'appelant doit vérifier que le nlmsghdr en cours n'a pas l'attribut NLMSG_DONE positionné cette fonction ne retourne pas NULL à la fin. Le paramètre len est une lvalue contenant la taille restante du tampon du message. La macro diminue cette taille de celle de l'en-tête de message.- NLMSG_OK()
Renvoie vrai si le message netlink n'est pas tronqué et est dans un format adapté au traitement. - NLMSG_PAYLOAD()
Renvoie la taille des données associées à nlmsghdr.
4. CONFORMITÉ ▲
Ces macros sont des extensions de Linux non standard.
5. NOTES ▲
Il vaut souvent mieux utiliser la bibliothèque netlink via libnetlink que par les interfaces de bas niveau du noyau.
6. VOIR AUSSI ▲
netlink(7) ftp://ftp.inr.ac.ru/ip-routing/iproute2* pour libnetlink
7. COLOPHON ▲
Cette page fait partie de la publication 3.52 du projet man-pages Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse http://www.kernel.org/doc/man-pages/.
8. TRADUCTION ▲
Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a <http://po4a.alioth.debian.org/> par l'équipe de traduction francophone au sein du projet perkamon <http://perkamon.alioth.debian.org/>.
Thierry Vignaud (2002), Alain Portal <http://manpagesfr.free.fr/> (2006). Nicolas François et l'équipe francophone de traduction de Debian (2006-2009).
Veuillez signaler toute erreur de traduction en écrivant à <>.
Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la commande « LC_ALL=C man <section> <page_de_man> ».