diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/netlink-local.h | 1 | ||||
-rw-r--r-- | include/netlink/errno.h | 3 | ||||
-rw-r--r-- | include/netlink/route/pktloc.h | 44 |
3 files changed, 47 insertions, 1 deletions
diff --git a/include/netlink-local.h b/include/netlink-local.h index 1fafb51..e0c79db 100644 --- a/include/netlink-local.h +++ b/include/netlink-local.h @@ -23,6 +23,7 @@ #include <stdarg.h> #include <ctype.h> #include <sys/types.h> +#include <sys/stat.h> #include <sys/socket.h> #include <inttypes.h> #include <assert.h> diff --git a/include/netlink/errno.h b/include/netlink/errno.h index 0b43da0..c8a376e 100644 --- a/include/netlink/errno.h +++ b/include/netlink/errno.h @@ -45,8 +45,9 @@ extern "C" { #define NLE_PROTO_MISMATCH 26 #define NLE_NOACCESS 27 #define NLE_PERM 28 +#define NLE_PKTLOC_FILE 29 -#define NLE_MAX NLE_PERM +#define NLE_MAX NLE_PKTLOC_FILE extern const char * nl_geterror(int); extern void nl_perror(int, const char *); diff --git a/include/netlink/route/pktloc.h b/include/netlink/route/pktloc.h new file mode 100644 index 0000000..28e1dc2 --- /dev/null +++ b/include/netlink/route/pktloc.h @@ -0,0 +1,44 @@ +/* + * netlink/route/pktloc.h Packet Location Aliasing + * + * 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) 2010 Thomas Graf <tgraf@suug.ch> + */ + +#ifndef NETLINK_PKTLOC_H_ +#define NETLINK_PKTLOC_H_ + +#include <netlink/netlink.h> +#include <netlink/cache.h> +#include <netlink/route/tc.h> + +#include <linux/tc_ematch/tc_em_cmp.h> + +#ifdef __cplusplus +extern "C" { +#endif + +struct rtnl_pktloc +{ + char * name; + uint8_t align:4; + uint8_t layer:4; + uint8_t flags; + uint16_t offset; + uint32_t mask; + + struct nl_list_head list; +}; + +extern int rtnl_pktloc_lookup(const char *, struct rtnl_pktloc **); + + +#ifdef __cplusplus +} +#endif + +#endif |