#include <cstring>#include <asm/types.h>#include <sys/socket.h>#include <linux/rtnetlink.h>#include <linux/pkt_sched.h>#include <stdexcept>#include <cerrno>#include "netlink.hh"Go to the source code of this file.
Namespaces | |
| namespace | olsr |
| namespace | olsr::sys |
| namespace | olsr::sys::netlink |
Defines | |
| #define | QOLYESTER_SYS_LINUX_NETLINK_HXX 1 |
| #define | PREPARE_MESSAGE(Payload, Name) |
| #define | PREPARE_MESSAGE_GET(Payload, Name) |
| #define | PREPARE_MESSAGE_NEW(Payload, Name) |
| #define | PREPARE_MESSAGE_DEL(Payload, Name) |
| #define | SHIPOUT_MESSAGE |
| #define PREPARE_MESSAGE | ( | Payload, | |||
| Name | ) |
Value:
nlmsghdr* nh; \
Payload * Name ; \
int len = NLMSG_SPACE(sizeof ( Payload )); \
char* r = new char[len]; \
memset(r, 0, len); \
\
nh = reinterpret_cast<nlmsghdr*>(r); \
Name = reinterpret_cast< Payload *>(NLMSG_DATA(nh)); \
\
nh->nlmsg_len = NLMSG_LENGTH(sizeof ( Payload )); \
nh->nlmsg_seq = RequestVisitor::seqnum++; \
nh->nlmsg_pid = 0;
| #define PREPARE_MESSAGE_DEL | ( | Payload, | |||
| Name | ) |
Value:
PREPARE_MESSAGE(Payload, Name); \ nh->nlmsg_flags = NLM_F_REQUEST | NLM_F_ACK
Referenced by olsr::sys::netlink::RequestVisitor::visit().
| #define PREPARE_MESSAGE_GET | ( | Payload, | |||
| Name | ) |
Value:
PREPARE_MESSAGE(Payload, Name); \ nh->nlmsg_flags = NLM_F_ROOT | NLM_F_REQUEST
Referenced by olsr::sys::netlink::RequestVisitor::visit().
| #define PREPARE_MESSAGE_NEW | ( | Payload, | |||
| Name | ) |
Value:
PREPARE_MESSAGE(Payload, Name); \ nh->nlmsg_flags = NLM_F_CREATE | NLM_F_EXCL | \ NLM_F_REQUEST | NLM_F_ACK
Referenced by olsr::sys::netlink::RequestVisitor::visit().
| #define QOLYESTER_SYS_LINUX_NETLINK_HXX 1 |
| #define SHIPOUT_MESSAGE |
Value:
iovec i = { r, len }; \
_buffers.push_back(i)
Referenced by olsr::sys::netlink::RequestVisitor::visit().
1.5.6