/* * netlink/data.h Abstract Data * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation version 2.1 * of the License. * * Copyright (c) 2003-2008 Thomas Graf <tgraf@suug.ch> */ #ifndef NETLINK_DATA_H_ #define NETLINK_DATA_H_ #include <netlink/netlink.h> #ifdef __cplusplus extern "C" { #endif struct nl_data; /* General */ extern struct nl_data * nl_data_alloc(void *, size_t); extern struct nl_data * nl_data_alloc_attr(struct nlattr *); extern struct nl_data * nl_data_clone(struct nl_data *); extern int nl_data_append(struct nl_data *, void *, size_t); extern void nl_data_free(struct nl_data *); /* Access Functions */ extern void * nl_data_get(struct nl_data *); extern size_t nl_data_get_size(struct nl_data *); /* Misc */ extern int nl_data_cmp(struct nl_data *, struct nl_data *); #ifdef __cplusplus } #endif #endif