VSF Documented
Data Structures | Macros
netlink.h File Reference
#include "../sys/socket.h"

Go to the source code of this file.

Data Structures

struct  sockaddr_nl
 
struct  nlmsghdr
 
struct  nlmsgerr
 

Macros

#define NLMSG_NOOP   0x1
 
#define NLMSG_ERROR   0x2
 
#define NLMSG_DONE   0x3
 
#define NLMSG_OVERRUN   0x4
 
#define NETLINK_ROUTE   0
 
#define NLMSG_ALIGNTO   4U
 
#define NLMSG_ALIGN(len)   (((len) + NLMSG_ALIGNTO - 1) & ~(NLMSG_ALIGNTO - 1))
 
#define NLMSG_HDRLEN   ((int)NLMSG_ALIGN(sizeof(struct nlmsghdr)))
 
#define NLMSG_LENGTH(len)   ((len) + NLMSG_HDRLEN)
 
#define NLMSG_SPACE(len)   NLMSG_ALIGN(NLMSG_LENGTH(len))
 
#define NLMSG_DATA(nlh)   ((void*)(((char*)nlh) + NLMSG_LENGTH(0)))
 
#define NLMSG_NEXT(nlh, len)
 
#define NLMSG_OK(nlh, len)
 
#define NLMSG_PAYLOAD(nlh, len)   ((nlh)->nlmsg_len - NLMSG_SPACE((len)))
 

Macro Definition Documentation

◆ NLMSG_NOOP

#define NLMSG_NOOP   0x1

◆ NLMSG_ERROR

#define NLMSG_ERROR   0x2

◆ NLMSG_DONE

#define NLMSG_DONE   0x3

◆ NLMSG_OVERRUN

#define NLMSG_OVERRUN   0x4

◆ NETLINK_ROUTE

#define NETLINK_ROUTE   0

◆ NLMSG_ALIGNTO

#define NLMSG_ALIGNTO   4U

◆ NLMSG_ALIGN

#define NLMSG_ALIGN (   len)    (((len) + NLMSG_ALIGNTO - 1) & ~(NLMSG_ALIGNTO - 1))

◆ NLMSG_HDRLEN

#define NLMSG_HDRLEN   ((int)NLMSG_ALIGN(sizeof(struct nlmsghdr)))

◆ NLMSG_LENGTH

#define NLMSG_LENGTH (   len)    ((len) + NLMSG_HDRLEN)

◆ NLMSG_SPACE

#define NLMSG_SPACE (   len)    NLMSG_ALIGN(NLMSG_LENGTH(len))

◆ NLMSG_DATA

#define NLMSG_DATA (   nlh)    ((void*)(((char*)nlh) + NLMSG_LENGTH(0)))

◆ NLMSG_NEXT

#define NLMSG_NEXT (   nlh,
  len 
)
Value:
((len) -= NLMSG_ALIGN((nlh)->nlmsg_len), \
(struct nlmsghdr*)(((char*)(nlh)) + NLMSG_ALIGN((nlh)->nlmsg_len)))
Definition netlink.h:24

◆ NLMSG_OK

#define NLMSG_OK (   nlh,
  len 
)
Value:
((len) >= (int)sizeof(struct nlmsghdr) && \
(nlh)->nlmsg_len >= sizeof(struct nlmsghdr) && \
(nlh)->nlmsg_len <= (len))
uint32_t nlmsg_len
Definition netlink.h:25

◆ NLMSG_PAYLOAD

#define NLMSG_PAYLOAD (   nlh,
  len 
)    ((nlh)->nlmsg_len - NLMSG_SPACE((len)))