From 6359ab04f410900fc355cdf1883097ae4704f9b8 Mon Sep 17 00:00:00 2001 From: Martin Willi Date: Fri, 15 Mar 2013 14:32:51 +0100 Subject: Add a Netlink utility function to add a RTA header and reserve space for data --- src/libhydra/plugins/kernel_netlink/kernel_netlink_shared.h | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'src/libhydra/plugins/kernel_netlink/kernel_netlink_shared.h') diff --git a/src/libhydra/plugins/kernel_netlink/kernel_netlink_shared.h b/src/libhydra/plugins/kernel_netlink/kernel_netlink_shared.h index f5721dfbb..8be935bc3 100644 --- a/src/libhydra/plugins/kernel_netlink/kernel_netlink_shared.h +++ b/src/libhydra/plugins/kernel_netlink/kernel_netlink_shared.h @@ -76,4 +76,15 @@ netlink_socket_t *netlink_socket_create(int protocol); void netlink_add_attribute(struct nlmsghdr *hdr, int rta_type, chunk_t data, size_t buflen); +/** + * Reserve space in a netlink message for given size and type, returning buffer. + * + * @param hdr netlink message + * @param buflen size of full netlink buffer + * @param type RTA type + * @param len length of RTA data + * @return buffer to len bytes of attribute data, NULL on error + */ +void* netlink_reserve(struct nlmsghdr *hdr, int buflen, int type, int len); + #endif /* KERNEL_NETLINK_SHARED_H_ */ -- cgit v1.2.3