00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #ifndef NETLINK_FIB_LOOKUP_REQUEST_H_
00013 #define NETLINK_FIB_LOOKUP_REQUEST_H_
00014
00015 #include <netlink/netlink.h>
00016 #include <netlink/addr.h>
00017
00018 #ifdef __cplusplus
00019 extern "C" {
00020 #endif
00021
00022 struct flnl_request;
00023
00024 #define REQUEST_CAST(ptr) ((struct flnl_request *) (ptr))
00025
00026 extern struct flnl_request * flnl_request_alloc(void);
00027
00028 extern void flnl_request_set_fwmark(struct flnl_request *,
00029 uint64_t);
00030 extern uint64_t flnl_request_get_fwmark(struct flnl_request *);
00031 extern void flnl_request_set_tos(struct flnl_request *,
00032 int);
00033 extern int flnl_request_get_tos(struct flnl_request *);
00034 extern void flnl_request_set_scope(struct flnl_request *,
00035 int);
00036 extern int flnl_request_get_scope(struct flnl_request *);
00037 extern void flnl_request_set_table(struct flnl_request *,
00038 int);
00039 extern int flnl_request_get_table(struct flnl_request *);
00040 extern int flnl_request_set_addr(struct flnl_request *,
00041 struct nl_addr *);
00042 extern struct nl_addr * flnl_request_get_addr(struct flnl_request *);
00043
00044 extern int flnl_request_cmp(struct flnl_request *,
00045 struct flnl_request *);
00046
00047 #ifdef __cplusplus
00048 }
00049 #endif
00050
00051 #endif