rtentry
struct rtentry;
struct rtentry;
struct rtentry *rt;
struct rtentry *rt;
struct rtentry;
struct sockaddr *, struct rtentry *);
struct sockaddr *, struct rtentry *);
linux_route_print(struct rtentry *rt, void *vw)
struct rtentry *rt)
struct rtentry *);
struct rtentry *);
struct rtentry; /* ifa_rtrequest */
rt_ifdelroute(const struct rtentry *rt, const struct nhop_object *nh, void *arg)
int rt_print(char *buf, int buflen, struct rtentry *rt);
rt_print(char *buf, int buflen, struct rtentry *rt)
rt_routemsg(int cmd, struct rtentry *rt, struct nhop_object *nh,
static int rt_ifdelroute(const struct rtentry *rt, const struct nhop_object *,
struct rtentry;
typedef int rib_filter_f_t(const struct rtentry *, const struct nhop_object *,
int rt_routemsg(int, struct rtentry *, struct nhop_object *, int);
sync_algo_cb(struct rtentry *rt, void *_data)
typedef enum flm_op_result flm_dump_t(struct rtentry *rt, void *data);
nhgrp_get_filtered_group(struct rib_head *rh, const struct rtentry *rt,
struct rtentry *rt;
rt = (struct rtentry *)rnh->rnh_lookup(info->rti_info[RTAX_DST],
change_mpath_route(struct rib_head *rnh, struct rtentry *rt,
change_route_byinfo(struct rib_head *rnh, struct rtentry *rt,
add_route(struct rib_head *rnh, struct rtentry *rt,
delete_route(struct rib_head *rnh, struct rtentry *rt, struct rib_cmd_info *rc)
change_route(struct rib_head *rnh, struct rtentry *rt,
change_route_conditional(struct rib_head *rnh, struct rtentry *rt,
struct rtentry *rt_new;
struct rtentry *head;
struct rtentry *rt = (struct rtentry *)rn;
struct rtentry *rt;
struct rtentry *rt = RNTORT(rn);
rib_match_gw(const struct rtentry *rt, const struct nhop_object *nh, void *gw_sa)
match_gw_one(const struct rtentry *rt, const struct nhop_object *nh, void *_data)
check_info_match_nhop(const struct rt_addrinfo *info, const struct rtentry *rt,
static struct rtentry *
struct rtentry *rt;
rt = (struct rtentry *)rnh->rnh_lookup(dst, netmask, &rnh->head);
struct rtentry *
lookup_prefix_rt(struct rib_head *rnh, const struct rtentry *rt,
struct rtentry *
struct rtentry *rt;
const struct rtentry *
struct rtentry *rt = NULL;
struct rtentry *rt = lookup_prefix_bysa(rnh, dst, netmask, &rnd);
rib_copy_route(struct rtentry *rt, const struct route_nhop_data *rnd_src,
struct rtentry *rt_new = rt_alloc(rh_dst, rt_key(rt), rt_mask(rt));
struct rtentry *rt;
if (dst->sa_len > sizeof(((struct rtentry *)NULL)->rt_dstb)) {
add_route_flags(struct rib_head *rnh, struct rtentry *rt, struct route_nhop_data *rnd_add,
struct rtentry *rt_orig;
static int change_route_byinfo(struct rib_head *rnh, struct rtentry *rt,
static int add_route_flags(struct rib_head *rnh, struct rtentry *rt,
static int add_route_flags_mpath(struct rib_head *rnh, struct rtentry *rt,
add_route_flags_mpath(struct rib_head *rnh, struct rtentry *rt,
static int add_route(struct rib_head *rnh, struct rtentry *rt,
static int delete_route(struct rib_head *rnh, struct rtentry *rt,
static int rt_delete_conditional(struct rib_head *rnh, struct rtentry *rt,
struct rtentry *rt = lookup_prefix_bysa(rnh, dst, netmask, &rnd);
rt_delete_conditional(struct rib_head *rnh, struct rtentry *rt,
typedef int rib_walktree_f_t(struct rtentry *, void *);
const struct rtentry *
bool rt_is_host(const struct rtentry *rt);
sa_family_t rt_get_family(const struct rtentry *);
struct nhop_object *rt_get_raw_nhop(const struct rtentry *rt);
void rt_get_rnd(const struct rtentry *rt, struct route_nhop_data *rnd);
bool rt_is_exportable(const struct rtentry *rt, struct ucred *cred);
void rt_get_inet_prefix_plen(const struct rtentry *rt, struct in_addr *paddr,
void rt_get_inet_prefix_pmask(const struct rtentry *rt, struct in_addr *paddr,
struct rtentry *rt_get_inet_parent(uint32_t fibnum, struct in_addr addr, int plen);
void rt_get_inet6_prefix_plen(const struct rtentry *rt, struct in6_addr *paddr,
void rt_get_inet6_prefix_pmask(const struct rtentry *rt, struct in6_addr *paddr,
struct rtentry *rt_get_inet6_parent(uint32_t fibnum, const struct in6_addr *paddr,
struct rtentry *rc_rt; /* Target entry */
int rib_match_gw(const struct rtentry *rt, const struct nhop_object *nh,
struct rtentry *rt;
struct rtentry *rt;
rt = (struct rtentry *)rn;
struct rtentry;
char *rt_print_buf(const struct rtentry *rt, char *buf, size_t bufsize);
static struct rtentry *
struct rtentry *rt;
struct rtentry *
struct rtentry *rt;
static struct rtentry *
struct rtentry *rt;
struct rtentry *
struct rtentry *rt;
rt_print_buf(const struct rtentry *rt, char *buf, size_t bufsize)
match_kernel_route(const struct rtentry *rt, struct nhop_object *nh)
pick_kernel_route(struct rtentry *rt, void *arg)
destroy_rtentry(struct rtentry *rt)
struct rtentry *rt;
rt = __containerof(ctx, struct rtentry, rt_epoch_ctx);
rt_free(struct rtentry *rt)
rt_free_immediate(struct rtentry *rt)
rt_is_host(const struct rtentry *rt)
rt_get_family(const struct rtentry *rt)
rt_get_raw_nhop(const struct rtentry *rt)
rt_get_rnd(const struct rtentry *rt, struct route_nhop_data *rnd)
rt_is_exportable(const struct rtentry *rt, struct ucred *cred)
rt_get_inet_prefix_plen(const struct rtentry *rt, struct in_addr *paddr,
rt_get_inet_prefix_pmask(const struct rtentry *rt, struct in_addr *paddr,
rt_get_inet6_prefix_plen(const struct rtentry *rt, struct in6_addr *paddr,
rt_get_inet6_prefix_pmask(const struct rtentry *rt, struct in6_addr *paddr,
V_rtzone = uma_zcreate("rtentry", sizeof(struct rtentry),
struct rtentry *
MPASS(dst->sa_len <= sizeof(((struct rtentry *)NULL)->rt_dstb));
struct rtentry *rt = uma_zalloc(V_rtzone, M_NOWAIT | M_ZERO);
tmproutes_update(struct rib_head *rnh, struct rtentry *rt, struct nhop_object *nh)
expire_route(const struct rtentry *rt, const struct nhop_object *nh, void *arg)
#define RNTORT(p) ((struct rtentry *)(p))
struct rtentry *rt_chain; /* pointer to next rtentry to delete */
void tmproutes_update(struct rib_head *rnh, struct rtentry *rt, struct nhop_object *nh);
int change_route(struct rib_head *rnh, struct rtentry *rt,
int change_route_conditional(struct rib_head *rnh, struct rtentry *rt,
struct rtentry *lookup_prefix(struct rib_head *rnh,
struct rtentry *lookup_prefix_rt(struct rib_head *rnh, const struct rtentry *rt,
int rib_copy_route(struct rtentry *rt, const struct route_nhop_data *rnd_src,
const struct rtentry *rt, const struct nhop_object *nh);
void rt_free(struct rtentry *rt);
void rt_free_immediate(struct rtentry *rt);
struct rtentry *rt_alloc(struct rib_head *rnh, const struct sockaddr *dst,
struct rtentry *rt, struct route_nhop_data *rnd_add,
int nhgrp_get_filtered_group(struct rib_head *rh, const struct rtentry *rt,
int rtsock_routemsg(int cmd, struct rtentry *rt, struct nhop_object *nh,
rt_getmetrics(const struct rtentry *rt, const struct nhop_object *nh,
static int sysctl_dumpentry(struct rtentry *rt, void *vw);
static int sysctl_dumpnhop(struct rtentry *rt, struct nhop_object *nh,
rtsock_routemsg(int cmd, struct rtentry *rt, struct nhop_object *nh,
static void rt_getmetrics(const struct rtentry *rt,
sysctl_dumpentry(struct rtentry *rt, void *vw)
sysctl_dumpnhop(struct rtentry *rt, struct nhop_object *nh, uint32_t weight,
rc->rc_rt = (struct rtentry *) rnh->rnh_matchaddr(
rc->rc_rt = (struct rtentry *) rnh->rnh_lookup(
rc->rc_rt = (struct rtentry *)rnh->rnh_matchaddr(
export_rtaddrs(const struct rtentry *rt, struct sockaddr *dst,
struct rtentry *rt;
struct rtentry *rt;
struct rtentry *rt;
struct rtentry *rt;
in_match_ifaddr(const struct rtentry *rt, const struct nhop_object *nh, void *arg)
struct rtentry *
struct rtentry *rt;
rt = (struct rtentry *)rn;
struct rtentry *rt;
struct rtentry;
struct rtentry *fib4_lookup_rt(uint32_t fibnum, struct in_addr dst, uint32_t scopeid,
bsearch4_add_route_cb(struct rtentry *rt, void *_data)
lradix4_add_route_cb(struct rtentry *rt, void *_data)
radix4_add_route_cb(struct rtentry *rt, void *_data)
dxr_dump_rib_item(struct rtentry *rt, void *data)
struct rtentry *rt;
dxr_walk(struct rtentry *rt, void *arg)
in_ifadownkill(const struct rtentry *rt, const struct nhop_object *nh,
struct rtentry *
struct rtentry *rt;
rt = (struct rtentry *)rn;
struct rtentry *rt;
struct rtentry;
struct rtentry *fib6_lookup_rt(uint32_t fibnum, const struct in6_addr *dst6,
lradix6_add_route_cb(struct rtentry *rt, void *_data)
radix6_add_route_cb(struct rtentry *rt, void *_data)
nd6_isdynrte(const struct rtentry *rt, const struct nhop_object *nh, void *xap)
rt6_deleteroute(const struct rtentry *rt, const struct nhop_object *nh,
const struct rtentry *rt, struct route_nhop_data *rnd,
dump_rtentry(struct rtentry *rt, void *_arg)
const struct rtentry *rt;
rt = (const struct rtentry *)rnh->rnh_matchaddr(dst, &rnh->head);
path_match_func(const struct rtentry *rt, const struct nhop_object *nh, void *_data)
static int ta_dump_kfib_tentry_int(int familt, const struct rtentry *rt,
ta_dump_kfib_tentry_int(int family, const struct rtentry *rt,
struct rtentry *rt = NULL;
struct rtentry *rt;
walk_wrapper_f(struct rtentry *rt, void *arg)
struct rtentry *rt;
struct rtentry *rt;
add_prefix(struct rtentry *rt, void *_data)
add_prefix6(struct rtentry *rt, void *_data)
reduce_keys(struct rtentry *rt, void *_data)
struct rtentry;
struct rtentry;