diff options
Diffstat (limited to 'ripd/ripd.h')
-rw-r--r-- | ripd/ripd.h | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/ripd/ripd.h b/ripd/ripd.h index 2545db04..260ea469 100644 --- a/ripd/ripd.h +++ b/ripd/ripd.h @@ -64,7 +64,6 @@ /* RIP port number. */ #define RIP_PORT_DEFAULT 520 #define RIP_VTY_PORT 2602 -#define RIP_VTYSH_PATH "/tmp/.ripd" /* Default configuration file name. */ #define RIPD_DEFAULT_CONFIG "ripd.conf" @@ -200,6 +199,7 @@ struct rip_info struct in_addr nexthop_out; u_char metric_set; u_int32_t metric_out; + u_short tag_out; unsigned int ifindex_out; struct route_node *rp; @@ -212,6 +212,12 @@ struct rip_info #endif /* NEW_RIP_TABLE */ }; +typedef enum { + RIP_NO_SPLIT_HORIZON = 0, + RIP_SPLIT_HORIZON, + RIP_SPLIT_HORIZON_POISONED_REVERSE +} split_horizon_policy_t; + /* RIP specific interface configuration. */ struct rip_interface { @@ -240,8 +246,8 @@ struct rip_interface char *key_chain; /* Split horizon flag. */ - int split_horizon; - int split_horizon_default; + split_horizon_policy_t split_horizon; + split_horizon_policy_t split_horizon_default; /* For filter type slot. */ #define RIP_FILTER_IN 0 @@ -254,6 +260,9 @@ struct rip_interface /* Prefix-list. */ struct prefix_list *prefix[RIP_FILTER_MAX]; + /* Route-map. */ + struct route_map *routemap[RIP_FILTER_MAX]; + /* Wake up thread. */ struct thread *t_wakeup; @@ -359,8 +368,6 @@ void rip_zclient_init (); void rip_zclient_start (); void rip_zclient_reset (); void rip_offset_init (); -int if_check_address (struct in_addr addr); -int if_valid_neighbor (struct in_addr addr); int rip_request_send (struct sockaddr_in *, struct interface *, u_char); int rip_neighbor_lookup (struct sockaddr_in *); @@ -372,6 +379,7 @@ void rip_zebra_ipv4_add (struct prefix_ipv4 *, struct in_addr *, u_int32_t, u_ch void rip_zebra_ipv4_delete (struct prefix_ipv4 *, struct in_addr *, u_int32_t); void rip_interface_multicast_set (int, struct interface *); void rip_distribute_update_interface (struct interface *); +void rip_if_rmap_update_interface (struct interface *); int config_write_rip_network (struct vty *, int); int config_write_rip_offset_list (struct vty *); |