/usr/include/libnl3/netlink/route
NameSizeModeActions
act/-0755rm
cls/-0755rm
link/-0755rm
qdisc/-0755rm
action.h15870644editdlrm
addr.h34660644editdlrm
class.h18270644editdlrm
classifier.h15960644editdlrm
link.h113980644editdlrm
neighbour.h30160644editdlrm
neightbl.h26770644editdlrm
netconf.h14360644editdlrm
nexthop.h24490644editdlrm
pktloc.h10840644editdlrm
qdisc.h21230644editdlrm
route.h49060644editdlrm
rtnl.h13600644editdlrm
rule.h37480644editdlrm
tc-api.h5670644editdlrm
tc.h36510644editdlrm
Edit: /usr/include/libnl3/netlink/route/rule.h (3748B)
/* * netlink/route/rule.h Rules * * 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-2010 Thomas Graf */ #ifndef NETLINK_RULE_H_ #define NETLINK_RULE_H_ #include #include #include #include #include #ifdef __cplusplus extern "C" { #endif struct rtnl_rule; /* General */ extern struct rtnl_rule * rtnl_rule_alloc(void); extern void rtnl_rule_put(struct rtnl_rule *); extern int rtnl_rule_alloc_cache(struct nl_sock *, int, struct nl_cache **); extern void rtnl_rule_dump(struct rtnl_rule *, FILE *, struct nl_dump_params *); extern int rtnl_rule_build_add_request(struct rtnl_rule *, int, struct nl_msg **); extern int rtnl_rule_add(struct nl_sock *, struct rtnl_rule *, int); extern int rtnl_rule_build_delete_request(struct rtnl_rule *, int, struct nl_msg **); extern int rtnl_rule_delete(struct nl_sock *, struct rtnl_rule *, int); /* attribute modification */ extern void rtnl_rule_set_family(struct rtnl_rule *, int); extern int rtnl_rule_get_family(struct rtnl_rule *); extern void rtnl_rule_set_prio(struct rtnl_rule *, uint32_t); extern uint32_t rtnl_rule_get_prio(struct rtnl_rule *); extern void rtnl_rule_set_mark(struct rtnl_rule *, uint32_t); extern uint32_t rtnl_rule_get_mark(struct rtnl_rule *); extern void rtnl_rule_set_mask(struct rtnl_rule *, uint32_t); extern uint32_t rtnl_rule_get_mask(struct rtnl_rule *); extern void rtnl_rule_set_table(struct rtnl_rule *, uint32_t); extern uint32_t rtnl_rule_get_table(struct rtnl_rule *); extern void rtnl_rule_set_dsfield(struct rtnl_rule *, uint8_t); extern uint8_t rtnl_rule_get_dsfield(struct rtnl_rule *); extern int rtnl_rule_set_src(struct rtnl_rule *, struct nl_addr *); extern struct nl_addr * rtnl_rule_get_src(struct rtnl_rule *); extern int rtnl_rule_set_dst(struct rtnl_rule *, struct nl_addr *); extern struct nl_addr * rtnl_rule_get_dst(struct rtnl_rule *); extern void rtnl_rule_set_action(struct rtnl_rule *, uint8_t); extern uint8_t rtnl_rule_get_action(struct rtnl_rule *); extern int rtnl_rule_set_iif(struct rtnl_rule *, const char *); extern char * rtnl_rule_get_iif(struct rtnl_rule *); extern int rtnl_rule_set_oif(struct rtnl_rule *, const char *); extern char * rtnl_rule_get_oif(struct rtnl_rule *); extern void rtnl_rule_set_realms(struct rtnl_rule *, uint32_t); extern uint32_t rtnl_rule_get_realms(struct rtnl_rule *); extern void rtnl_rule_set_goto(struct rtnl_rule *, uint32_t); extern uint32_t rtnl_rule_get_goto(struct rtnl_rule *); extern void rtnl_rule_set_l3mdev(struct rtnl_rule *, int); extern int rtnl_rule_get_l3mdev(struct rtnl_rule *); extern int rtnl_rule_set_protocol(struct rtnl_rule *, uint8_t); extern int rtnl_rule_get_protocol(struct rtnl_rule *, uint8_t *); extern int rtnl_rule_set_ipproto(struct rtnl_rule *, uint8_t); extern int rtnl_rule_get_ipproto(struct rtnl_rule *, uint8_t *); extern int rtnl_rule_set_sport(struct rtnl_rule *, uint16_t start); extern int rtnl_rule_set_sport_range(struct rtnl_rule *, uint16_t start, uint16_t end); extern int rtnl_rule_get_sport(struct rtnl_rule *, uint16_t *start, uint16_t *end); extern int rtnl_rule_set_dport(struct rtnl_rule *, uint16_t start); extern int rtnl_rule_set_dport_range(struct rtnl_rule *, uint16_t start, uint16_t end); extern int rtnl_rule_get_dport(struct rtnl_rule *, uint16_t *start, uint16_t *end); #ifdef __cplusplus } #endif #endif