Linux

CentOS 4.8

netlink(3)


NETLINK

NOM

netlink − Macros pour netlink

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);

DESCRIPTION

netlink.h définit plusieurs macros standardes pour accéder ou créer un datagramme netlink. Elles sont similaires dans leurs principes avec les macros définies dans cmsg(3) pour les données auxiliaires. Le tampon passé à un netlink ne devrait pas être accédé autrement que par ces macros.

NLMSG_ALIGN

Arrondit la taille du message netlink pour l’aligner proprement.

NLMSG_LENGTH

Prend la taille brute comme argument et retourne la taille alignée à stocker dans le champs nlmsg_taille de nlmsghdr.

NLMSG_SPACE

Retourne le nombre d’octets d’un message netlink (pas la taille alignée).

NLMSG_DATA

Retourne un pointeur sur l’objet associé au nlmsghdr passé.

NLMSG_NEXT

Récupère la partie suivante d’un message multipartie Get the next nlmsghdr . L’appellant doit vérifier que le nlmsghdr courrant n’a pas le NLMSG_DONE positionné (cette fonction retourne NULL à la fin). Le paramètre taille est une lvalue [Ndt: expression pouvant être affectée : variable, champs, ...] contenant la taille restante du tampon du message. Cette macro décrémente cette taille par celle de l’en-tête de message.

NLMSG_OK

Retourne vrai si le message netlink n’est pas tronqué et prêt à être utilisé.

NLMSG_PAYLOAD

Retourne la taille de l’objet associé à nlmsghdr.

NOTES

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

VOIR AUSSI

netlink(7)

et ftp://ftp.inr.ac.ru/ip-routing/iproute2* pour libnetlink.

TRADUCTION

Thierry Vignaud <tvignaud@mandrakesoft.com>, 1999


netlink(3)