netlink(3)

NOM
netlink - Macros pour netlink

BIBLIOTHÈQUE
Bibliothèque C standard (libc, -lc)

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

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

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é à un socket netlink ne devrait pas être manipulé autrement que par ces macros.

NLMSG_ALIGN()
    Round the size of a netlink message up to align it properly.

NLMSG_LENGTH()
    Given the payload size, size, this macro returns the aligned size to store in the nlmsg_len field of the nlmsghdr.

NLMSG_SPACE()
    Return the number of bytes that a netlink message with payload of size would occupy.

NLMSG_DATA()
    Retourne un pointeur sur l'objet associé au nlmsghdr passé.

NLMSG_NEXT()
    Get the next nlmsghdr in a multipart message. The caller must check if the current nlmsghdr didn't have the NLMSG_DONE set—this function doesn't return NULL on end. The size argument is an lvalue containing the remaining size of the message buffer. This macro decrements it by the size of the message header.

NLMSG_OK()
    Renvoie vrai si le message netlink n'est pas tronqué et est dans un format adapté au traitement.

NLMSG_PAYLOAD()
    Return the size of the payload associated with the nlmsghdr.

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

STANDARDS
Linux.

VOIR AUSSI
libnetlink(3), netlink(7)

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 (https://www.gnu.org/licenses/gpl-3.0.html) 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.