Provided by: manpages-fr-dev_4.13-4_all bug

NOM

       netlink - Macros pour netlink

SYNOPSIS

       #include <asm/types.h>
       #include <linux/netlink.h>

       int NLMSG_ALIGN(size_t len);
       int NLMSG_LENGTH(size_t len);
       int NLMSG_SPACE(size_t len);
       void *NLMSG_DATA(struct nlmsghdr *nlh);
       struct nlmsghdr *NLMSG_NEXT(struct nlmsghdr *nlh, int len);
       int NLMSG_OK(struct nlmsghdr *nlh, int len);
       int NLMSG_PAYLOAD(struct nlmsghdr *nlh, int len);

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.

CONFORMITÉ

       Ces macros sont des extensions de Linux non standard.

NOTES

       Il vaut souvent mieux utiliser la bibliothèque netlink via libnetlink  que  par  les  interfaces  de  bas
       niveau du noyau.

VOIR AUSSI

       libnetlink(3), netlink(7)

COLOPHON

       Cette page fait partie de la publication 5.10 du projet man-pages Linux. Une description du projet et des
       instructions  pour  signaler  des  anomalies et la dernière version de cette page peuvent être trouvées à
       l'adresse https://www.kernel.org/doc/man-pages/.

TRADUCTION

       La  traduction  française   de   cette   page   de   manuel   a   été   créée   par   Christophe   Blaess
       <https://www.blaess.fr/christophe/>,   Stéphan   Rafin   <stephan.rafin@laposte.net>,   Thierry   Vignaud
       <tvignaud@mandriva.com>, François Micaux, Alain Portal  <aportal@univ-montp2.fr>,  Jean-Philippe  Guérard
       <fevrier@tigreraye.org>,   Jean-Luc   Coulon   (f5ibh)   <jean-luc.coulon@wanadoo.fr>,   Julien   Cristau
       <jcristau@debian.org>,     Thomas     Huriaux      <thomas.huriaux@gmail.com>,      Nicolas      François
       <nicolas.francois@centraliens.net>,     Florentin     Duneau    <fduneau@gmail.com>,    Simon    Paillard
       <simon.paillard@resel.enst-bretagne.fr>,   Denis   Barbier   <barbier@debian.org>   et    David    Prévot
       <david@tilapin.org>

       Cette  traduction  est  une  documentation libre ; veuillez vous reporter à la GNU General Public License
       version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

       Si vous découvrez un bogue dans la traduction de cette page de manuel,  veuillez  envoyer  un  message  à
       debian-l10n-french@lists.debian.org.

GNU                                               20 mars 2014                                        NETLINK(3)