OpenVPN
|
Go to the source code of this file.
Data Structures | |
struct | route_bypass |
struct | route_special_addr |
struct | route_option |
struct | route_option_list |
struct | route_ipv6_option |
struct | route_ipv6_option_list |
struct | route_ipv4 |
struct | route_ipv6 |
struct | route_gateway_address |
struct | route_gateway_info |
struct | route_ipv6_gateway_address |
struct | route_ipv6_gateway_info |
struct | route_list |
struct | route_ipv6_list |
struct | iroute |
struct | iroute_ipv6 |
Macros | |
#define | ROUTE_METHOD_ADAPTIVE 0 /* try IP helper first then route.exe */ |
#define | ROUTE_METHOD_IPAPI 1 /* use IP helper API */ |
#define | ROUTE_METHOD_EXE 2 /* use route.exe */ |
#define | ROUTE_METHOD_SERVICE 3 /* use the privileged Windows service */ |
#define | ROUTE_METHOD_MASK 3 |
#define | ROUTE_DELETE_FIRST (1<<2) |
#define | ROUTE_REF_GW (1<<3) |
#define | N_ROUTE_BYPASS 8 |
#define | RTSA_REMOTE_ENDPOINT (1<<0) |
#define | RTSA_REMOTE_HOST (1<<1) |
#define | RTSA_DEFAULT_METRIC (1<<2) |
#define | RG_ENABLE (1<<0) |
#define | RG_LOCAL (1<<1) |
#define | RG_DEF1 (1<<2) |
#define | RG_BYPASS_DHCP (1<<3) |
#define | RG_BYPASS_DNS (1<<4) |
#define | RG_REROUTE_GW (1<<5) |
#define | RG_AUTO_LOCAL (1<<6) |
#define | RG_BLOCK_LOCAL (1<<7) |
#define | RT_DEFINED (1<<0) |
#define | RT_ADDED (1<<1) |
#define | RT_METRIC_DEFINED (1<<2) |
#define | RGI_ADDR_DEFINED (1<<0) /* set if gateway.addr defined */ |
#define | RGI_NETMASK_DEFINED (1<<1) /* set if gateway.netmask defined */ |
#define | RGI_HWADDR_DEFINED (1<<2) /* set if hwaddr is defined */ |
#define | RGI_IFACE_DEFINED (1<<3) /* set if iface is defined */ |
#define | RGI_OVERFLOW (1<<4) /* set if more interface addresses than will fit in addrs */ |
#define | RGI_ON_LINK (1<<5) |
#define | RGI_N_ADDRESSES 8 |
#define | RGI_N_ADDRESSES 8 |
#define | RL_DID_REDIRECT_DEFAULT_GATEWAY (1<<0) |
#define | RL_DID_LOCAL (1<<1) |
#define | RL_ROUTES_ADDED (1<<2) |
#define | TLA_NOT_IMPLEMENTED 0 |
#define | TLA_NONLOCAL 1 |
#define | TLA_LOCAL 2 |
Functions | |
bool | block_local_needed (const struct route_list *rl) |
Get the decision whether to block traffic to local networks while the VPN is connected. More... | |
struct route_option_list * | new_route_option_list (struct gc_arena *a) |
struct route_ipv6_option_list * | new_route_ipv6_option_list (struct gc_arena *a) |
struct route_option_list * | clone_route_option_list (const struct route_option_list *src, struct gc_arena *a) |
struct route_ipv6_option_list * | clone_route_ipv6_option_list (const struct route_ipv6_option_list *src, struct gc_arena *a) |
void | copy_route_option_list (struct route_option_list *dest, const struct route_option_list *src, struct gc_arena *a) |
void | copy_route_ipv6_option_list (struct route_ipv6_option_list *dest, const struct route_ipv6_option_list *src, struct gc_arena *a) |
void | route_ipv6_clear_host_bits (struct route_ipv6 *r6) |
bool | add_route_ipv6 (struct route_ipv6 *r, const struct tuntap *tt, unsigned int flags, const struct env_set *es, openvpn_net_ctx_t *ctx) |
void | delete_route_ipv6 (const struct route_ipv6 *r, const struct tuntap *tt, unsigned int flags, const struct env_set *es, openvpn_net_ctx_t *ctx) |
bool | add_route (struct route_ipv4 *r, const struct tuntap *tt, unsigned int flags, const struct route_gateway_info *rgi, const struct env_set *es, openvpn_net_ctx_t *ctx) |
void | add_route_to_option_list (struct route_option_list *l, const char *network, const char *netmask, const char *gateway, const char *metric) |
void | add_route_ipv6_to_option_list (struct route_ipv6_option_list *l, const char *prefix, const char *gateway, const char *metric) |
bool | init_route_list (struct route_list *rl, const struct route_option_list *opt, const char *remote_endpoint, int default_metric, in_addr_t remote_host, struct env_set *es, openvpn_net_ctx_t *ctx) |
bool | init_route_ipv6_list (struct route_ipv6_list *rl6, const struct route_ipv6_option_list *opt6, const char *remote_endpoint, int default_metric, const struct in6_addr *remote_host, struct env_set *es, openvpn_net_ctx_t *ctx) |
void | route_list_add_vpn_gateway (struct route_list *rl, struct env_set *es, const in_addr_t addr) |
bool | add_routes (struct route_list *rl, struct route_ipv6_list *rl6, const struct tuntap *tt, unsigned int flags, const struct env_set *es, openvpn_net_ctx_t *ctx) |
void | delete_routes (struct route_list *rl, struct route_ipv6_list *rl6, const struct tuntap *tt, unsigned int flags, const struct env_set *es, openvpn_net_ctx_t *ctx) |
void | setenv_routes (struct env_set *es, const struct route_list *rl) |
void | setenv_routes_ipv6 (struct env_set *es, const struct route_ipv6_list *rl6) |
bool | is_special_addr (const char *addr_str) |
void | get_default_gateway (struct route_gateway_info *rgi, openvpn_net_ctx_t *ctx) |
void | get_default_gateway_ipv6 (struct route_ipv6_gateway_info *rgi, const struct in6_addr *dest, openvpn_net_ctx_t *ctx) |
void | print_default_gateway (const int msglevel, const struct route_gateway_info *rgi, const struct route_ipv6_gateway_info *rgi6) |
int | test_local_addr (const in_addr_t addr, const struct route_gateway_info *rgi) |
void | print_route_options (const struct route_option_list *rol, int level) |
void | print_routes (const struct route_list *rl, int level) |
void | show_routes (int msglev) |
bool | test_routes (const struct route_list *rl, const struct tuntap *tt) |
bool | netmask_to_netbits (const in_addr_t network, const in_addr_t netmask, int *netbits) |
int | netmask_to_netbits2 (in_addr_t netmask) |
static in_addr_t | netbits_to_netmask (const int netbits) |
static bool | route_list_vpn_gateway_needed (const struct route_list *rl) |
static int | route_did_redirect_default_gateway (const struct route_list *rl) |
#define RGI_ADDR_DEFINED (1<<0) /* set if gateway.addr defined */ |
#define RGI_HWADDR_DEFINED (1<<2) /* set if hwaddr is defined */ |
#define RGI_IFACE_DEFINED (1<<3) /* set if iface is defined */ |
#define RGI_NETMASK_DEFINED (1<<1) /* set if gateway.netmask defined */ |
#define RGI_OVERFLOW (1<<4) /* set if more interface addresses than will fit in addrs */ |
#define ROUTE_METHOD_ADAPTIVE 0 /* try IP helper first then route.exe */ |
#define ROUTE_METHOD_SERVICE 3 /* use the privileged Windows service */ |
bool add_route | ( | struct route_ipv4 * | r, |
const struct tuntap * | tt, | ||
unsigned int | flags, | ||
const struct route_gateway_info * | rgi, | ||
const struct env_set * | es, | ||
openvpn_net_ctx_t * | ctx | ||
) |
Definition at line 1565 of file route.c.
References route_gateway_info::adapter_index, add_route_ipapi(), add_route_service(), argv_free(), argv_msg(), argv_new(), argv_printf(), argv_printf_cat(), ASSERT, D_ROUTE, es, route_ipv4::flags, route_ipv4::gateway, gc_free(), gc_new(), get_win_sys_path(), iface, is_on_link(), local_route(), LR_ERROR, M_FATAL, M_WARN, route_ipv4::metric, msg, net_ctx_reset(), netcmd_semaphore_lock(), netcmd_semaphore_release(), route_ipv4::netmask, netmask_to_netbits2(), route_ipv4::network, openvpn_execve_check(), print_in_addr_t(), ROUTE_METHOD_ADAPTIVE, ROUTE_METHOD_EXE, ROUTE_METHOD_IPAPI, ROUTE_METHOD_MASK, ROUTE_METHOD_SERVICE, ROUTE_PATH, RT_ADDED, RT_DEFINED, RT_METRIC_DEFINED, RTA_EEXIST, RTA_ERROR, RTA_SUCCESS, status, TUN_ADAPTER_INDEX_INVALID, and WIN_ROUTE_PATH_SUFFIX.
Referenced by add_route3(), add_routes(), and do_ifconfig_ipv4().
bool add_route_ipv6 | ( | struct route_ipv6 * | r, |
const struct tuntap * | tt, | ||
unsigned int | flags, | ||
const struct env_set * | es, | ||
openvpn_net_ctx_t * | ctx | ||
) |
Definition at line 1899 of file route.c.
References tuntap::actual_name, route_ipv6::adapter_index, tuntap::adapter_index, add_route_ipv6_service(), argv_free(), argv_msg(), argv_new(), argv_printf(), argv_printf_cat(), D_ROUTE, DEV_TYPE_TAP, DEV_TYPE_TUN, es, route_ipv6::flags, route_ipv6::gateway, gc_free(), gc_malloc(), gc_new(), M_FATAL, M_WARN, route_ipv6::metric, msg, tuntap_options::msg_channel, net_ctx_reset(), route_ipv6::netbits, route_ipv6::network, openvpn_execve_check(), tuntap::options, PACKAGE_NAME, print_in6_addr(), route_ipv6_clear_host_bits(), route_ipv6_ipapi(), ROUTE_PATH, RT_ADDED, RT_DEFINED, RT_METRIC_DEFINED, RTA_EEXIST, RTA_ERROR, RTA_SUCCESS, status, and tuntap::type.
Referenced by add_route_connected_v6_net(), and add_routes().
void add_route_ipv6_to_option_list | ( | struct route_ipv6_option_list * | l, |
const char * | prefix, | ||
const char * | gateway, | ||
const char * | metric | ||
) |
Definition at line 528 of file route.c.
References ALLOC_OBJ_GC, route_ipv6_option::gateway, route_ipv6_option_list::gc, route_ipv6_option::metric, route_ipv6_option::next, route_ipv6_option::prefix, and route_ipv6_option_list::routes_ipv6.
Referenced by add_option(), and do_init_route_ipv6_list().
void add_route_to_option_list | ( | struct route_option_list * | l, |
const char * | network, | ||
const char * | netmask, | ||
const char * | gateway, | ||
const char * | metric | ||
) |
Definition at line 510 of file route.c.
References ALLOC_OBJ_GC, route_option::gateway, route_option_list::gc, route_option::metric, route_option::netmask, route_option::network, route_option::next, and route_option_list::routes.
Referenced by add_option(), and helper_add_route().
bool add_routes | ( | struct route_list * | rl, |
struct route_ipv6_list * | rl6, | ||
const struct tuntap * | tt, | ||
unsigned int | flags, | ||
const struct env_set * | es, | ||
openvpn_net_ctx_t * | ctx | ||
) |
Definition at line 1186 of file route.c.
References tuntap::actual_name, add_route(), add_route_ipv6(), check_subnet_conflict(), delete_route(), delete_route_ipv6(), tuntap::did_ifconfig_ipv6_setup, tuntap::did_ifconfig_setup, es, route_ipv4::flags, route_ipv6::flags, route_list::iflags, route_ipv6_list::iflags, M_INFO, management_set_state(), msg, route_ipv4::netmask, route_ipv4::network, route_ipv4::next, route_ipv6::next, OPENVPN_STATE_ADD_ROUTES, redirect_default_route_to_vpn(), route_list::rgi, RL_ROUTES_ADDED, ROUTE_DELETE_FIRST, route_list::routes, and route_ipv6_list::routes_ipv6.
Referenced by do_route().
bool block_local_needed | ( | const struct route_list * | rl | ) |
Get the decision whether to block traffic to local networks while the VPN is connected.
This definitely returns false when not redirecting the gateway or when the 'block-local' flag is not set. Also checks for other prerequisites to redirect local networks into the tunnel.
rl | const pointer to the struct route_list to base the decision on. |
Definition at line 621 of file route.c.
References route_special_addr::flags, route_gateway_info::flags, route_list::flags, route_special_addr::remote_host_local, RG_BLOCK_LOCAL, route_list::rgi, RGI_ADDR_DEFINED, RGI_NETMASK_DEFINED, RTSA_REMOTE_ENDPOINT, route_list::spec, and TLA_LOCAL.
Referenced by add_wfp_block(), del_wfp_block(), and init_route_list().
struct route_ipv6_option_list* clone_route_ipv6_option_list | ( | const struct route_ipv6_option_list * | src, |
struct gc_arena * | a | ||
) |
struct route_option_list* clone_route_option_list | ( | const struct route_option_list * | src, |
struct gc_arena * | a | ||
) |
void copy_route_ipv6_option_list | ( | struct route_ipv6_option_list * | dest, |
const struct route_ipv6_option_list * | src, | ||
struct gc_arena * | a | ||
) |
Definition at line 180 of file route.c.
References route_ipv6_option_list::gc.
Referenced by pre_connect_restore().
void copy_route_option_list | ( | struct route_option_list * | dest, |
const struct route_option_list * | src, | ||
struct gc_arena * | a | ||
) |
Definition at line 173 of file route.c.
References route_option_list::gc.
Referenced by pre_connect_restore().
void delete_route_ipv6 | ( | const struct route_ipv6 * | r, |
const struct tuntap * | tt, | ||
unsigned int | flags, | ||
const struct env_set * | es, | ||
openvpn_net_ctx_t * | ctx | ||
) |
Definition at line 2342 of file route.c.
References tuntap::actual_name, argv_free(), argv_msg(), argv_new(), argv_printf(), argv_printf_cat(), D_ROUTE, D_ROUTE_DEBUG, del_route_ipv6_service(), DEV_TYPE_TAP, es, route_ipv6::flags, route_ipv6::gateway, argv::gc, gc_free(), gc_malloc(), gc_new(), M_FATAL, M_WARN, route_ipv6::metric, msg, tuntap_options::msg_channel, net_ctx_reset(), route_ipv6::netbits, route_ipv6::network, openvpn_execve_check(), tuntap::options, print_in6_addr(), route_ipv6_ipapi(), ROUTE_PATH, RT_ADDED, RT_DEFINED, RT_METRIC_DEFINED, and tuntap::type.
Referenced by add_routes(), delete_route_connected_v6_net(), and delete_routes().
void delete_routes | ( | struct route_list * | rl, |
struct route_ipv6_list * | rl6, | ||
const struct tuntap * | tt, | ||
unsigned int | flags, | ||
const struct env_set * | es, | ||
openvpn_net_ctx_t * | ctx | ||
) |
Definition at line 1254 of file route.c.
References clear_route_ipv6_list(), clear_route_list(), delete_route(), delete_route_ipv6(), es, route_ipv4::flags, route_ipv6::flags, route_list::iflags, route_ipv6_list::iflags, route_ipv4::next, route_ipv6::next, route_list::rgi, RL_ROUTES_ADDED, route_list::routes, route_ipv6_list::routes_ipv6, and undo_redirect_default_route_to_vpn().
Referenced by do_close_tun().
void get_default_gateway | ( | struct route_gateway_info * | rgi, |
openvpn_net_ctx_t * | ctx | ||
) |
Definition at line 2680 of file route.c.
References route_gateway_info::adapter_index, adapter_index_of_ip(), route_gateway_address::addr, CLEAR, route_gateway_info::flags, route_gateway_info::gateway, gc_free(), gc_new(), get_adapter(), get_adapter_info_list(), get_default_gateway_row(), get_windows_routing_table(), route_gateway_info::hwaddr, route_gateway_address::netmask, RGI_ADDR_DEFINED, RGI_HWADDR_DEFINED, RGI_IFACE_DEFINED, RGI_NETMASK_DEFINED, and TUN_ADAPTER_INDEX_INVALID.
Referenced by add_option(), check_subnet_conflict(), init_route_list(), push_peer_info(), and warn_on_use_of_common_subnets().
void get_default_gateway_ipv6 | ( | struct route_ipv6_gateway_info * | rgi, |
const struct in6_addr * | dest, | ||
openvpn_net_ctx_t * | ctx | ||
) |
Definition at line 2766 of file route.c.
References route_ipv6_gateway_info::adapter_index, route_ipv6_gateway_address::addr_ipv6, CLEAR, D_ROUTE, route_ipv6_gateway_info::flags, route_ipv6_gateway_info::gateway, gc_free(), gc_new(), InterfaceLuid(), msg, print_in6_addr(), RGI_ADDR_DEFINED, RGI_IFACE_DEFINED, RGI_ON_LINK, status, and strerror_win32().
Referenced by add_option(), and init_route_ipv6_list().
bool init_route_ipv6_list | ( | struct route_ipv6_list * | rl6, |
const struct route_ipv6_option_list * | opt6, | ||
const char * | remote_endpoint, | ||
int | default_metric, | ||
const struct in6_addr * | remote_host, | ||
struct env_set * | es, | ||
openvpn_net_ctx_t * | ctx | ||
) |
Definition at line 790 of file route.c.
References route_ipv6::adapter_index, route_ipv6_gateway_info::adapter_index, route_ipv6_gateway_address::addr_ipv6, ALLOC_OBJ_CLEAR_GC, ALLOC_OBJ_GC, clear_route_ipv6_list(), D_ROUTE, route_ipv6_list::default_metric, dmsg, es, route_ipv6_option_list::flags, route_ipv6::flags, route_ipv6_gateway_info::flags, route_ipv6_list::flags, route_ipv6::gateway, route_ipv6_gateway_info::gateway, route_ipv6_list::gc, gc_free(), gc_new(), get_default_gateway_ipv6(), init_route_ipv6(), is_route_parm_defined(), M_WARN, route_ipv6::metric, msg, route_ipv6::netbits, route_ipv6::network, route_ipv6_option::next, route_ipv6::next, PACKAGE_NAME, print_default_gateway(), print_in6_addr(), route_ipv6_list::remote_endpoint_ipv6, route_ipv6_list::remote_host_ipv6, route_ipv6_list::rgi6, RGI_ADDR_DEFINED, RGI_IFACE_DEFINED, RGI_ON_LINK, route_ipv6_match_host(), route_ipv6_option_list::routes_ipv6, route_ipv6_list::routes_ipv6, RT_DEFINED, RT_METRIC_DEFINED, RTSA_DEFAULT_METRIC, RTSA_REMOTE_ENDPOINT, RTSA_REMOTE_HOST, setenv_str(), and route_ipv6_list::spec_flags.
Referenced by do_init_route_ipv6_list().
bool init_route_list | ( | struct route_list * | rl, |
const struct route_option_list * | opt, | ||
const char * | remote_endpoint, | ||
int | default_metric, | ||
in_addr_t | remote_host, | ||
struct env_set * | es, | ||
openvpn_net_ctx_t * | ctx | ||
) |
Definition at line 631 of file route.c.
References add_block_local_routes(), route_gateway_address::addr, ALLOC_OBJ_GC, block_local_needed(), route_special_addr::bypass, clear_route_list(), D_ROUTE, route_special_addr::default_metric, dmsg, es, route_special_addr::flags, route_option_list::flags, route_gateway_info::flags, route_list::flags, route_gateway_info::gateway, route_list::gc, gc_addspecial(), gc_free(), gc_freeaddrinfo_callback(), gc_new(), get_bypass_addresses(), get_default_gateway(), getaddr(), GETADDR_HOST_ORDER, GETADDR_RESOLVE, GETADDR_WARN_ON_SIGNAL, init_route(), IPV4_INVALID_ADDR, is_route_parm_defined(), M_WARN, msg, route_ipv4::network, route_option::next, PACKAGE_NAME, print_default_gateway(), route_special_addr::remote_endpoint, route_special_addr::remote_host, route_special_addr::remote_host_local, RG_ENABLE, route_list::rgi, RGI_ADDR_DEFINED, route_option_list::routes, route_list::routes, RTSA_DEFAULT_METRIC, RTSA_REMOTE_ENDPOINT, RTSA_REMOTE_HOST, setenv_route_addr(), route_list::spec, and test_local_addr().
Referenced by do_init_route_list().
bool is_special_addr | ( | const char * | addr_str | ) |
|
inlinestatic |
Definition at line 379 of file route.h.
References IPV4_NETMASK_HOST.
Referenced by mroute_addr_mask_host_bits(), mroute_addr_print_ex(), netmask_to_netbits(), netmask_to_netbits2(), print_netmask(), and remove_iroutes_from_push_route_list().
bool netmask_to_netbits | ( | const in_addr_t | network, |
const in_addr_t | netmask, | ||
int * | netbits | ||
) |
Definition at line 3928 of file route.c.
References netbits_to_netmask().
Referenced by do_route_ipv4_service(), and helper_client_server().
int netmask_to_netbits2 | ( | in_addr_t | netmask | ) |
Definition at line 3959 of file route.c.
References netbits_to_netmask().
Referenced by add_route(), delete_route(), do_address_service(), do_ifconfig_ipv4(), option_iroute(), and undo_ifconfig_ipv4().
struct route_ipv6_option_list* new_route_ipv6_option_list | ( | struct gc_arena * | a | ) |
Definition at line 139 of file route.c.
References ALLOC_OBJ_CLEAR_GC, and route_ipv6_option_list::gc.
Referenced by rol6_check_alloc().
struct route_option_list* new_route_option_list | ( | struct gc_arena * | a | ) |
Definition at line 130 of file route.c.
References ALLOC_OBJ_CLEAR_GC, and route_option_list::gc.
Referenced by rol_check_alloc().
void print_default_gateway | ( | const int | msglevel, |
const struct route_gateway_info * | rgi, | ||
const struct route_ipv6_gateway_info * | rgi6 | ||
) |
Definition at line 1333 of file route.c.
References route_gateway_info::adapter_index, route_ipv6_gateway_info::adapter_index, route_gateway_address::addr, route_ipv6_gateway_address::addr_ipv6, alloc_buf_gc(), BSTR, buf_printf(), route_gateway_info::flags, route_ipv6_gateway_info::flags, format_hex_ex(), route_gateway_info::gateway, route_ipv6_gateway_info::gateway, gc_free(), gc_new(), route_gateway_info::hwaddr, route_ipv6_gateway_info::hwaddr, msg, route_ipv6_gateway_address::netbits_ipv6, route_gateway_address::netmask, print_in6_addr(), print_in_addr_t(), RGI_ADDR_DEFINED, RGI_HWADDR_DEFINED, RGI_IFACE_DEFINED, RGI_NETMASK_DEFINED, and RGI_ON_LINK.
Referenced by add_option(), init_route_ipv6_list(), and init_route_list().
void print_route_options | ( | const struct route_option_list * | rol, |
int | level | ||
) |
Definition at line 1317 of file route.c.
References route_option_list::flags, msg, route_option::next, print_route_option(), RG_ENABLE, RG_LOCAL, and route_option_list::routes.
Referenced by show_settings().
void print_routes | ( | const struct route_list * | rl, |
int | level | ||
) |
Definition at line 1419 of file route.c.
References route_ipv4::next, print_route(), and route_list::routes.
|
inlinestatic |
Definition at line 404 of file route.h.
References BOOL_CAST, route_list::iflags, and RL_DID_REDIRECT_DEFAULT_GATEWAY.
Referenced by do_route().
void route_ipv6_clear_host_bits | ( | struct route_ipv6 * | r6 | ) |
Definition at line 1876 of file route.c.
References route_ipv6::netbits, and route_ipv6::network.
Referenced by add_route_ipv6(), and delete_route_connected_v6_net().
void route_list_add_vpn_gateway | ( | struct route_list * | rl, |
struct env_set * | es, | ||
const in_addr_t | addr | ||
) |
Definition at line 557 of file route.c.
References ASSERT, es, route_special_addr::flags, route_special_addr::remote_endpoint, RTSA_REMOTE_ENDPOINT, setenv_route_addr(), and route_list::spec.
Referenced by process_ip_header().
|
inlinestatic |
Definition at line 391 of file route.h.
References route_special_addr::flags, RTSA_REMOTE_ENDPOINT, and route_list::spec.
void setenv_routes | ( | struct env_set * | es, |
const struct route_list * | rl | ||
) |
Definition at line 1449 of file route.c.
References es, route_ipv4::next, route_list::routes, and setenv_route().
Referenced by do_init_route_list().
void setenv_routes_ipv6 | ( | struct env_set * | es, |
const struct route_ipv6_list * | rl6 | ||
) |
Definition at line 1487 of file route.c.
References es, route_ipv6::next, route_ipv6_list::routes_ipv6, and setenv_route_ipv6().
Referenced by do_init_route_ipv6_list().
void show_routes | ( | int | msglev | ) |
Definition at line 3209 of file route.c.
References format_route_entry(), gc_free(), gc_new(), get_windows_routing_table(), and msg.
Referenced by add_option(), check_add_routes(), do_route(), initialization_sequence_completed(), and management_show_net_callback().
int test_local_addr | ( | const in_addr_t | addr, |
const struct route_gateway_info * | rgi | ||
) |
Definition at line 4065 of file route.c.
References gc_free(), gc_new(), get_windows_routing_table(), TLA_LOCAL, and TLA_NONLOCAL.
Referenced by add_host_route_if_nonlocal(), and init_route_list().
bool test_routes | ( | const struct route_list * | rl, |
const struct tuntap * | tt | ||
) |
Definition at line 2592 of file route.c.
References D_ROUTE, tuntap::did_ifconfig_setup, route_special_addr::flags, route_list::flags, route_ipv4::gateway, gc_free(), gc_new(), get_adapter_info_list(), is_adapter_up(), msg, route_ipv4::next, route_special_addr::remote_endpoint, RG_ENABLE, route_list::routes, RTSA_REMOTE_ENDPOINT, route_list::spec, and test_route_helper().
Referenced by check_add_routes().