2004-09-24 Paul Jakma * irdp_interface.c: (no_ip_irdp_address_preference_cmd) add missing listnode declaration. 2004-09-24 Paul Jakma * irdp_{interface,main}.c: lists typedef removal cleanup. update some list loops to LIST_LOOP. some miscellaneous style and indent fixups. (no_ip_irdp_address_preference_cmd) Fix delete of referenced node in loop. * irdp_packet.c: (irdp_recvmsg) Fix buggy assignment of integer to pointer. * if_ioctl{,_solaris}.c: lists typedef removal cleanup. update some list loops to LIST_LOOP. 2004-09-23 Hasso Tepper * *.[c|h]: list -> struct list *, listnode -> struct listnode *. 2004-09-22 Paul Jakma * zserv.c: (zsend_route_multipath) fix nasty bad memset of struct in_addr to sizeof(struct in6_addr), causing odd and hard to debug crash. 2004-08-31 Hasso Tepper * main.c, rt_netlink.c: Added -s command line switch for tuning netlink receive buffer size in Linux to avoid buffer overruns. 2004-08-26 Miles Nordin * ipforward_sysctl.c (mib_ipv6): Use size_t for len, per sysctl(3), rather than int. (Needed on NetBSD/alpha to display forwarding status correctly.) 2004-08-23 Paul Jakma * zserv.c: (zebra_init) remove implicit ip forward enabling 2004-08-19 Paul Jakma * irdp_main.c: update to match sockopt renames. * irdp_packet.c: include sockopt.h and update to match sockopt renames. 2004-08-11 Greg Troxel * rtadv.c (rtadv_send_packet): Allocate space for control messages more carefully; it was wrong on NetBSD/sparc where CMSG alignment is to 8 bytes instead of 4, and overwriting the address. Use the provided macros for determining lengths. 2004-07-23 Sowmini Varadhan * if_ioctl_solaris.c: HAVE_IPV6 ifdef fixups * zserv.c: ditto * ioctl_solaris.c: ditto. * interface.c: cast for LLADDR * interface.h: Add guards, include redistribute.h and remove extraneous definitions of zebra_interface_{up,down}_update * ioctl.h: Add AF_IOCTL define for non SOLARIS_IPV6 * redistribute.h: include dependent header, zserv.h * zserv.h: include dependent header, rib.h 2004-07-23 Paul Jakma * irdp_main.c: use setsockopt_pktinfo_ipv4 * irdp_packet.c: use SOPT_SIZE_CMSG_PKTINFO_IPV4 and getsockopt_pktinfo_ifindex() 2004-07-13 David Wiggins * irdp_main.c: Add privilege change. 2004-07-12 Hasso Tepper * irdp_interface.c: follow common style while naming vty command functions. Avoids confusion in extract.pl. 2004-06-30 Greg Troxel * main.c: define thread_master variable so that linking with libzebra.so doesn't fail. Arguably zclient.o should be in a separate library, but this is far less disruptive. 2004-06-12 Robert Olsson * Added IRDP support. 2004-05-18 Hasso Tepper * rtadv.c: Removed "[no] ipv6 nd send-ra" command. Replaced "ipv6 nd prefix-advertisement" with "ipv6 nd prefix". Rewrite syntax of "ipv6 nd prefix" command to allow various combinations of parameters and flags. No defaults in configuration. Replaced on-link and autoconfig with off-link and no-autoconfig flags in command syntax. Cosmetic fixes in all commands. Documentation to reflect all changes. 2004-05-11 Paul Jakma * Makefile.am: support for IOCTL_METHOD, as per Sowmini's patch. * if_ioctl_solaris.c: Fixup some erroneous privilege changes and add privs.h header. * ioctl_solaris.c: ditto * ioctl.h: Add if_ioctl_ipv6 prototype and AF_IOCTL for SOLARIS_IPV6 * kernel_socket.c: Fix SAROUNDUP, compiler doesnt like do..while RHS in assignments :) * redistribute.c: (zebra_interface_delete_update) only used if RTM_IFANNOUNCE and NETLINK is available. 2004-05-09 Paul Jakma * zserv.c: (zsend_route_multipath) Set the nexthop_num field correctly. Add NEXTHOP_TYPE_IPV6_IFNAME for v6. Conditionally set ZAPI_MESSAGE_METRIC flag - only for adds. (zsend_ipv4_add) cruft, deleted. (zsend_ipv4_delete) ditto. (zsend_ipv6_add) ditto. (zsend_ipv6_delete) ditto. * ioctl.c: (if_get_mtu) set mtu6 to mtu * mtu_kvm.c: (if_kvm_get_mtu) set mtu6 to mtu * rt_netlink.c: (netlink_interface) set mtu6 to mtu (netlink_link_change) ditto * ipforward_solaris.c: fix typo of ND variable. * if_ioctl_solaris.c: Add zprivs support. * ioctl_solaris.c: ditto. 2004-05-09 Sowmini Varadhan * zserv.c: (zsend_ipv{4,6}_{add,delete}_multipath) collapsed into single zsend_route_multipath function. (zsend_interface_{up,down}) collapsed into zsend_interface_update. (zsend_interface_address_{add,delete}) collapsed into zsend_interface_address. (zsend_interface_add) send mtu6. (zsend_interface_delete) ditto. (zebra_write) remove unused function. (various) Apply static qualifier. Add comments. * zserv.h: Definitions changed as per above. * redistribute.c: Changes as per zserv.c. * interface.c: (if_delete_update) only used with HAVE_NETLINK and RTM_IFANNOUNCE. (if_flag_dump_vty) Solaris IFF_IPV4 and IFF_IPV6 if flags (if_dump_vty) print mtu6 if not same as mtu * if_ioctl_solaris.c: New file, Solaris interface ioctl methods. * ioctl_solaris.c: New file, Common solaris ioctl methods. 2004-04-06 Krzysztof Oledzki * rt_netlink.c: Do not ignore metric when reading kernel routing table on Linux with rt_netlink interface. 2004-03-18 Hasso Tepper * interface.c: Temporary fix for handling secondary addresses with label. 2004-02-12 Hasso Tepper * zserv.c: Added "ipv6 forwarding" command. 2004-01-08 Greg Troxel * kernel_socket.c (kernel_read): Use sockaddr_storage in buffer for reading kernel messages to ensure enough space (necessary on Solaris due to sockaddr_dl being large). Thanks to Sowmini Varadhan for help with this change. 2004-01-06 Greg Troxel * rtadv.c (rtadv_send_packet): Change perror to zlog_err. 2004-01-05 Greg Troxel * kernel_socket.c (ifm_read): Major cleanup. Use Sowmini's code to find the sockaddr_dl in all cases, narrowing the Solaris ifdef to just the accomodation of broken kernels. Check sockaddr_dl carefully up front, and later assume any non-NULL sdl pointer is valid. Clean up types and variable declarations, and rename WRAPUP to SAROUNDUP to make the name fit the behavior. 2004-01-05 Greg Troxel * kernel_socket.c (kernel_read): Add a sockaddr_dl to the ifmsg structure, because on Solaris sockaddr_dl is far larger than the base sockaddr structure. (The code had previously been failing to read all the data.) 2004-01-05 Greg Troxel * kernel_socket.c (kernel_read): Look up interfaces by index first, so that state changes which do not include a sockaddr_dl now work. Add many sanity checks. In particular, do not assume that a sockaddr_dl follows a message without checking the ifm_addrs flags, and do not trust the length in a sockaddr_dl. Add/clarify many comments. 2003-12-03 Greg Troxel * rtadv.c: reorder includes to avoid compiler warning (define structs before using them in prototypes) 2003-05-25 Jim Crumpler * zserv.c: Add "ip forwarding" command. 2003-05-16 Gilad Arnold * zebra_rib.c: Fix memory leaks for ifname nexthops 2003-04-19 Israel Keys * rt_netlink.c: BLOCK on netlink while initialising 2003-02-06 Francois Deppierraz * rt_netlink.c (netlink_route_multipath): Set RTM_F_EQUALIZE when it exists. 2002-09-28 Akihiro Mizutani * zebra_rib.c (static_add_ipv4): Null0 static route is added. 2002-09-10 Jochen Friedrich * rt_netlink.c: Add check for EAGAIN. * kernel_socket.c: Likewise 2002-06-12 Israel Keys * rt_netlink.c: Setting the NLM_F_ACK flag on the netlink command message so that we get an ACK for successful netlink commands. Change the netlink socket to BLOCKING while we wait for a response; be it an ACK or an NLMSG_ERROR. Change netlink_parse_info to deal with ACK messages. 2001-11-01 Jun-ichiro itojun Hagino * rtadv.c (rtadv_make_socket): setsockopt(IPV6_CHECKSUM) does not work for ICMPv6 socket. 2001-10-24 Kunihiro Ishiguro * rib.c (rib_process): Select connected route any case. 2001-10-23 Kunihiro Ishiguro * interface.c (no_ip_address_secondary): Add "no" to command. 2001-10-18 NOGUCHI Kay * ioctl.c (if_prefix_add_ipv6): Set the prefered and valid lifetime to infinity as the freebsd4.4 workaroud. 2001-08-26 mihail.balikov@interbgc.com * zebra_snmp.c: Fix snmpwalk problem such as IPv4 address A.B.C.255. 2001-08-22 NOGUCHI Kay * rtadv.c: Do not send RA to loopback interface. 2001-08-20 Kunihiro Ishiguro * ioctl.c (if_set_prefix): Remove Linux 2.0 specific connected route treatment. 2001-08-19 Kunihiro Ishiguro * zebra-0.92a released. 2001-08-17 Kunihiro Ishiguro * rib.c: Kernel route is treated as EGP routes in nexthop active check. 2001-08-15 Kunihiro Ishiguro * zebra-0.92 released. 2001-08-08 "Akihiro Mizutani" * rib.c (show_ip_route_prefix_longer): Add longer-prefix option to show route commands. 2001-07-29 Yon Uriarte * zserv.c (zsend_ipv4_add_multipath): Add NEXTHOP_TYPE_IPV4_IFINDEX check. 2001-07-29 NOGUCHI Kay * rtadv.c: Apply valid lifetime, preferred lifetime, onilnk flag, autonomous address-configuration flag patch. (no_ipv6_nd_suppress_ra): Change "ipv6 nd send-ra" to "no ipv6 nd suppress-ra". 2001-07-24 NOGUCHI Kay * rtadv.c (ipv6_nd_ra_interval): Add "ipv6 nd ra-interval SECONDS" command. 2001-07-24 Jun-ichiro itojun Hagino * rt_socket.c (kernel_rtm_ipv4): Add KAME/NetBSD151 equal cost multicast FIB support both IPv4 and IPv6. 2001-07-24 Hal Snyder * if_ioctl.c (interface_list_ioctl): Fix bug of failing to get the full list of interfaces on some configurations of OpenBSD. 2001-07-23 NOGUCHI Kay * rtadv.c (ipv6_nd_send_ra): Apply [zebra 9320] to fix "ipv6 nd send-ra" bug. (ipv6_nd_ra_lifetime): "ipv6 nd ra-lifetime 0" for default router availability. (ipv6_nd_managed_config_flag): "ipv6 nd managed-config-flag" is added. (ipv6_nd_other_config_flag): "ipv6 nd other-config-flag" is added. 2001-07-23 Jun-ichiro itojun Hagino * ioctl.c (if_ioctl): Change ioctl argument from int to u_long. * rt_ioctl.c: Likewise. 2001-07-23 Jun-ichiro itojun Hagino * kernel_socket.c (rtm_write): Only set RTF_CLONING when the interface is not p2p. 2001-04-23 Kunihiro Ishiguro * ioctl.c (if_prefix_add_ipv6): Fix argument type. 2001-04-06 Toshiaki Takada * zserv.c (zsend_interface_delete): Use client->obuf instead of allocating new stream. 2001-03-10 Kunihiro Ishiguro * rt_netlink.c: Revert RTPROT_BOOT change. 2001-03-08 Kunihiro Ishiguro * rt_netlink.c (netlink_route_change): Skip RTPROT_BOOT route. (netlink_routing_table): Likewise. 2001-03-07 "Akihiro Mizutani" * zserv.c (zsend_ipv4_add_multipath): Send metric value to protocol daemons. 2001-02-18 Kunihiro Ishiguro * rt_netlink.c (netlink_routing_table): Do not return tb[RTA_GATEWAY] is NULL. Reported by: "Michael O'Keefe" . 2001-02-08 Kunihiro Ishiguro * if_ioctl.c (interface_list_ioctl): Call if_add_update(). Suggested by: Chris Dunlop . 2001-02-01 Kunihiro Ishiguro * rib.c (nexthop_active_ipv4): When nexthop type is NEXTHOP_TYPE_IPV4_IFINDEX, propery set the ifindex to rifindex. * zserv.c: Initialize rtm_table_default with 0. * zebra-0.91 is released. 2001-01-31 Kunihiro Ishiguro * kernel_socket.c (rtm_read): Filter cloned route. Suggested by: Jun-ichiro itojun Hagino 2001-01-30 Kunihiro Ishiguro * connected.c (connected_up_ipv6): When point-to-point destination address is ::, use local address for connected network. (connected_down_ipv6): Likewise. 2001-01-25 Kunihiro Ishiguro * zserv.c (zebra_serv): Add missing close() call. Reported by: David Waitzman . 2001-01-24 Kunihiro Ishiguro * rib.c (rib_lookup_ipv4): New function for checking exact match IGP route. 2001-01-23 Kunihiro Ishiguro * rib.c (show_ipv6_route_protocol): Fix bug of "show ip route route-type". 2001-01-22 Kunihiro Ishiguro * interface.c (zebra_interface): Do not call zebra_interface_add_update for inactive interface. * zserv.c (zsend_interface_address_add): Send interface address flag. (zsend_interface_address_delete): Likewise. 2001-01-19 Kunihiro Ishiguro * interface.c (if_addr_add): Add flags. * connected.c (ifa_add_ipv4): Add new function for interface address handling. (ifa_delete_ipv4): Likewise. 2001-01-16 Kunihiro Ishiguro * rib.c (rib_update): Update IPv6 RIB. * kernel_socket.c (ifam_read): Call if_refresh() for update interface flag status. This is for implicit interface up on *BSD. * interface.c (if_refresh): Add interface flag refresh function. * kernel_socket.c (rtm_read): Fetch link-local address interface index. (ifan_read): We need to fetch interface information. Suggested by: Yasuhiro Ohara . * rib.c (static_ipv6_nexthop_same): Add check for NEXTHOP_TYPE_IPV6_IFNAME. 2001-01-15 Kunihiro Ishiguro * rib.h (NEW_RIB): Turn on NEW_RIB flag. IPv6 new RIB code are taken into place. 2001-01-14 Kunihiro Ishiguro * rib.c (static_ipv6_write): Display STATIC_IPV6_GATEWAY_IFNAME configuration. (rib_delete_ipv6): Handle same route conter for IPv6 connected route. (show_ipv6_route_protocol): New command. (show_ipv6_route_addr): Likewise. (show_ipv6_route_prefix): Likewise. (rib_update): Sweep kernel route when it is cleaned up. * rt_socket.c (kernel_add_ipv6): Add NEXTHOP_IPV6_IFNAME treatmenet. * rt_netlink.c (kernel_init): Likewise. * rt_ioctl.c (kernel_ioctl_ipv6_multipath): Likewise. * rib.c (rib_add_ipv4): Cope with same connected route on a interface. Suggested by: Matthew Grant . (nexthop_ipv6_ifname_add): Add NEXTHOP_IPV6_IFNAME treatmenet. * rib.h (struct new_rib): Add refcnt to keep track on the reference of same connected route. * ioctl.c (if_set_prefix): Add check for GNU_LINUX. 2001-01-13 Yasuhiro Ohara * kernel_socket.c (ifan_read, rtm_type_str): Add RTM_OIFINFO check. (rtm_type_str): Add RTM_IFANNOUNCE check. (ifan_read): New function. (kernel_read): Add case for RTM_IFANNOUNCE. 2001-01-13 Kunihiro Ishiguro * rt_ioctl.c (kernel_ioctl_ipv6_multipath): New function. * rt_netlink.c (netlink_route_multipath): IPv6 address ifindex treatment. * connected.c (connected_up_ipv6): Add dest value check. * rib.c (nexthop_active_ipv6): Do not touch IPv6 nexthop's ifindex. (rib_add_ipv4): Import rib_add_ipv6() same route check code. (nexthop_active_check): NEXTHOP_TYPE_IPV6_IFINDEX activity is only checked by ifindex. * rt_socket.c (kernel_rtm_ipv6_multipath): New function. * redistribute.c (redistribute_add): Use zsend_ipv6_add_multipath(). (redistribute_delete_multipath): Use zsend_ipv6_delete_multipath(). * interface.c (ip_address): Check current IP address to avoid duplicate. * rib.c (rib_delete_ipv4): When deleted route is connected route, check ifindex. (rib_add_ipv4): When connected route is added do not perform implicit withdraw. (rib_delete_ipv4): Check ifindex for connected route. * kernel_socket.c (rtm_read): When route has RTF_STATIC, set ZEBRA_FLAG_STATIC for indicate as persistent route. (ifam_read): Unset interface index from link-local address when IPv6 stack is KAME. * rib.c (rib_update): Do not delete persistent kernel route. * rib.h (struct new_rib): Integrate RIB_FLAG_* to ZEBRA_FLAG_*. * rt_socket.c (kernel_add_ipv6_multipath): Add placeholder. (kernel_delete_ipv6_multipath): Likewise. * rt_netlink.c (netlink_talk): Give struct nlsock to netlink_talk. 2001-01-12 Kunihiro Ishiguro * rib.c (rib_update): Revert Matthew Grant's patch zebra_cvs_newribfix.patch. Use struct rib->ifindex for kernel interface index. Introduce NEXTHOP_TYPE_IPV4_IFINDEX to support that. Add support for address deletion situation. 2001-01-11 Kunihiro Ishiguro * interface.c: Remove HAVE_IF_PSEUDO part. * rib.h: Likewise. * rt_netlink.c (netlink_link_change): Likewise. 2001-01-10 Kunihiro Ishiguro * zserv.c: Remove OLD_RIB codes. 2001-01-09 Kunihiro Ishiguro * zebra-0.90 is released. 2001-01-09 Matthew Grant * interface.c (if_new_intern_ifindex): Allocate a new internal interface index. (if_addr_refresh): Fix up ip addresses configured via zebra. (if_add_update): Handle an interface addition. (if_delete_update): Handle an interface delete event. * rib.c (nexthop_ipv4_add): Add kernel route deletion process when interface goes down. 2001-01-08 Kunihiro Ishiguro * interface.c (if_dump_vty): When HAVE_NET_RT_IFLIST is defined, NetBSD also use this function. Suggested by Jasper Wallace . 2001-01-07 Kunihiro Ishiguro * rib.c (nexthop_active_ipv4): Move back to set methodo to old one. 2001-01-05 Kunihiro Ishiguro * rib.c (rib_add_ipv4): EBGP multihop set ZEBRA_FLAG_INTERNAL flag, so treat it. 2001-01-04 Kunihiro Ishiguro * rt_netlink.c (netlink_talk_ipv6): When IPv6 route message is sent from netlink_cmd, the same message comes from netlink. To avoid confusion, temporary netlink_talk_ipv6 use netlink.sock instead of netlink_cmd.sock. 2001-01-01 Kunihiro Ishiguro * zserv.h (ZEBRA_SERV_PATH): Change "/tmp/zebra" to "/tmp/.zebra". Change "/tmp/zserv" to "/tmp/.zserv". 2000-12-29 Frank van Maarseveen * rt_netlink.c (struct nlsock): Divide kernel message into listen socket and command socket. (netlink_talk): Remove socket listen code. Use netlink_parse_info for read kernel response. 2000-12-29 Kunihiro Ishiguro * rib.c (vty_show_ip_route): Show uptime of the RIP,OSPF,BGP routes. 2000-12-27 Kunihiro Ishiguro * rt_netlink.c (netlink_route_multipath): Metric value is reflected to kernel routing table. * rt_ioctl.c (kernel_ioctl_ipv4_multipath): Likewise. * kernel_socket.c (rtm_write): Likewise. * rib.c (nexthop_active_ipv4): Only iBGP route perform recursive nexthop lookup. * rt_ioctl.c (kernel_ioctl_ipv4_multipath): Add ioctl version of new RIB implementation. 2000-12-26 Kunihiro Ishiguro * rib.h: Remove MULTIPATH_NUM. It is defined by configure script. 2000-12-25 Michael Rozhavsky * rib.c (rib_if_up): Call rib_fib_set instead of RIB_FIB_SET for proper redistribution. 2000-12-19 Kunihiro Ishiguro * rib.c (nexthop_active_ipv4): Add self lookup nexthop check. (show_ip_route_protocol): Support new RIB. * rt_netlink.c (netlink_route_change): Do not return when gate is NULL. 2000-12-18 Kunihiro Ishiguro * rib.c (rib_lookup_ipv4_nexthop): IBGP nexthop check function is updated. (rib_add_ipv4): Free implicit withdraw route's RIB. 2000-12-15 Kunihiro Ishiguro * rib.c (nexthop_active_ipv4): Check indirect nexthop. * redistribute.c (redistribute_add_multipath): Redistribution works with new rib code. 2000-12-14 Kunihiro Ishiguro * rt_netlink.c (netlink_route_multipath): Check useful nexthop number. (netlink_route_multipath): Clear rtnh_flags and rtnh_hops. * rib.c (nexthop_active_update): Set flag for the rib's nexthop activity is changed. (nexthop_active_check): Before checking interface is up, make it sure the interface exist. 2000-11-20 Kunihiro Ishiguro * rib.c (ip_route): New RIB prototype. 2000-11-16 Yon Uriarte * zserv.c (zsend_interface_add): Send hardware address when hw_addr_len is greater than 0. 2000-11-07 Kunihiro Ishiguro * connected.c (connected_up_ipv4): Fix ptop bug. The destination network should be installed into routing table. (connected_down_ipv4): Likewise. (connected_add_ipv4): Change to use connected_up_ipv4. (connected_delete_ipv4): Likewise. 2000-11-06 Kunihiro Ishiguro * rt_netlink.c (netlink_interface_addr): Revert Harald Welte 's ptop patch then back to original code to avoid duplicated connected route problem. Suggested by Frank van Maarseveen . * kernel_socket.c (rtm_read): Make behavior consistent even #ifdef DEBUG is defined. Reported by Jun-ichiro itojun Hagino . 2000-10-23 Jochen Friedrich * main.c (main): Call zebra_snmp_init() when it is enabled. 2000-10-23 Kunihiro Ishiguro * zserv.c (zebra_serv_un): UNIX domain socket server of zebra protocol. 2000-10-19 Kunihiro Ishiguro * rib.c (rib_add_ipv4): Same check bug is fixed. 2000-10-03 Kunihiro Ishiguro * rib.c (rib_if_down): Remove kernel route when the interface goes down. * debug.c: New command "debug zebra kernel" is added. 2000-10-02 Kunihiro Ishiguro * zebra-0.89 is released. 2000-09-24 Harald Welte * rt_netlink.c (netlink_interface_addr): Fix point-to-point address treatment in netlink interface. 2000-09-21 David Lipovkov * rib.c (rib_if_down): Pull static route only. Protocol daemon must withdraw routes when interface goes down. (rib_add_ipv4): Check nexthop when replace route. 2000-09-21 Kunihiro Ishiguro * if_ioctl.c (if_getaddrs): New function for looking up interface's address by getifaddrs(). 2000-09-10 Kunihiro Ishiguro * connected.c (connected_delete_ipv4): Add check for connected address is found or not. (connected_add_ipv6): Reflect IPv6 connected address change to protocol daemons. (connected_delete_ipv6): Likewise. 2000-09-07 David Lipovkov * rib.c (rib_delete_ipv4): Reverted the change from pseudo interface patch to original. Because ospfd deletes routes using zero ifindex. 2000-08-17 Kunihiro Ishiguro * zebra-0.88 is released. 2000-08-15 "Akihiro Mizutani" * rib.c (show_ip_route_protocol): Help string correction. (show_ip_route_prefix): Check prefix mask. (show_ip_route_vty_detail): Display distance and metric. 2000-08-14 Kunihiro Ishiguro * zserv.c (zsend_interface_add): Change ifindex store size from two octet to four. (zsend_interface_delete): Likewise. (zsend_interface_address_add): Likewise. (zsend_interface_address_delete): Likewise. (zsend_interface_up): Likewise. (zsend_interface_down): Likewise. 2000-08-13 Kunihiro Ishiguro * rib.c (rib_add_ipv4): Do not install distance 255 route. 2000-08-10 Toshiaki Takada * interface.c (bandwidth_if), (no_bandwidth_if): Call zebra_interface_up_update () instead of using if_up() and if_down(). 2000-08-07 "Akihiro Mizutani" * interface.c (bandwidth_if): Fix help string. 2000-08-07 Matthew Grant * interface.c (if_dump_vty): Display bandwidth value. (bandwidth_if): New command "bandwidth <1-10000000>" is added. When interface is up, force protocol daemons to recalculate routes due to cost change. (no_bandwidth_if): Likewise. (if_config_write): Output bandwidth configuration. * zserv.c (zsend_interface_add): Send bandwidth value. (zsend_interface_up): Likewise. (zsend_interface_down): Likewise. 2000-08-07 Michael Rozhavsky * rib.c (show_ip_route_protocol): "show ip route (bgp|connected|kernel|ospf|rip|static)" is added. 2000-08-07 Kunihiro Ishiguro * rib.c (rib_lookup_ipv4_nexthop): Check parent node until IGP nexthop is found. (rib_add_ipv4_internal): Set fib ifindex to rib ifindex. 2000-08-06 Kunihiro Ishiguro * redistribute.c (redistribute_delete): Fix bug of default route redistribute treatment. 2000-08-05 Kunihiro Ishiguro * rib.c (rib_init): Install ip_node in rib.c instead of zserv.c. Change default distance value. Old New ------------------------------------------ system 10 0 kernel 20 0 connected 30 0 static 40 1 rip 50 120 ripng 50 120 ospf 60 110 ospf6 49 110 bgp 70 200(iBGP) 20(eBGP) ------------------------------------------ * zserv.c (client_lookup): Function removed. (zsend_interface_add): Use client's output buffer. Check ifinfo flag. (zsend_interface_delete): Likewise. Delete ipv4_static_radix and ipv6_static_radix. 2000-08-02 Kunihiro Ishiguro * zserv.h (struct zebra_client): When client request interface information, ifinfo is set. * rib.c: Temporary Revert changes for pseudo interface. * rib.h: Likewise. * zserv.c: Likewise. * interface.c: Likewise. 2000-08-02 David Lipovkov * interface.c (zebra_if_init): Install interface "pseudo" commands. * rib.c (rib_create): ifname argument is added. (rib_add_ipv4_pseudo): New function is added. (rib_delete_ipv4_pseudo): Likewise. * rib.h : Delete INTERFACE_UNKNOWN definition. Add prototype for pseudo interface functions. * rt_netlink.c (netlink_link_change): Check for pseudo interface. * zserv.c (ip_route): When destination is pseudo interface, call rib_add_ipv4_pseudo(). * zserv.c (no_ip_route): Trim "unknown" argument. 2000-07-26 kunitake@dti.ad.jp * if_ioctl.c (if_get_hwaddr): Fix hardware address length from 8 to 6. * rtadv.c (rtadv_send_packet): Fix shift bug for hardware address. 2000-07-24 Akihiro Mizutani * interface.c: Use install_default() for common VTY commands. 2000-07-23 Kunihiro Ishiguro * if_ioctl.c (interface_list_ioctl): A interface list size is calculated from ifreq->if_addr.sa_len. This is for OpenBSD. * ioctl.c (if_get_mtu): Remove codes for SIOCGIFDATA. 2000-07-09 Chris Dunlop * if_ioctl.c (if_get_index): Add check for HAVE_BROKEN_ALIASES. 2000-07-04 Kunihiro Ishiguro * zserv.c (zebra_client_read): Add ZEBRA_REDISTRIBUTE_{ADD,DELETE} message handling. 2000-07-02 David Lipovkov * zserv.c: "ip route A.B.C.D/M unknown" command is added. 2000-06-28 Michael Rozhavsky * rib.c: Remove old kernel route when new route comes in. 2000-06-13 David Lipovkov * rib.c (rib_if_up): Add check for unknown interface. 2000-06-13 Kunihiro Ishiguro * rib.h: Define INTERFACE_UNKNOWN. 2000-06-08 Kunihiro Ishiguro * Makefile.am (EXTRA_DIST): Move irdp.c until implementation is finished. 2000-06-05 David Lipovkov * interface.c (if_zebra_delete_hook): Call rib_if_delete(). * redistribute.c (zebra_interface_delete_update): New function. * redistribute.h (zebra_interface_delete_update): New function prototype. * rib.c (rib_if_delete): New function. Walk down all routes and delete all on the interface. * rib.h: New function prototype. * rt_netlink.c (netlink_link_change): Call zebra_interface_delete_update (). 2000-05-10 Kunihiro Ishiguro * if_ioctl.c (interface_info_ioctl): Check interface's flag before checking interface's address. 2000-04-26 Jochen Friedrich * GNOME-PRODUCT-ZEBRA-MIB: New file. * GNOME-SMI: New file. 2000-04-23 Kunihiro Ishiguro * irdp.c: New file from 1997 development code. * irdp.h: Likewise. 2000-04-19 Kunihiro Ishiguro * rtadv.c (rtadv_send_packet): Enclose router advertisement logging with IS_ZEBRA_DEBUG_PACKET. 2000-04-17 Kunihiro Ishiguro * zserv.c (zebra_client_close): Remove client structure from client_list when connection is terminated. 2000-03-21 David Lipovkov * connected.c (connected_add_ipv4): Allows all necessary structure updates for connected route, but doesn't insert it into rib if it's interface is down. 2000-01-21 Hideto Yamakawa * rtread_getmsg.c: Set some definition for Solaris 2.5 and Solaris 2.5.1. 2000-01-21 Kunihiro Ishiguro * rib.c (no_ipv6_route_ifname): Fix buf of cheking return value from str2prefix_ipv6(). 2000-01-14 Kunihiro Ishiguro * rt_socket.c: Revert to use RTF_HOST for IPv4 with /32 route and IPv6 with /128 routes. (kernel_rtm_ipv4): In case of /32 route's gateway is interface. It should have mask for cloning. 1999-12-26 Jochen.Friedrich@genorz.de * interface.c (if_dump_vty): Fix a bug of missing VTY_NEWLINE. 1999-12-23 Alex Zinin * interface.*: dynamic int up/down support 1999-12-09 Kunihiro Ishiguro * ipforward_proc.c (dropline): Move dropline() from lib/dropline.c * rtread_proc.c (proc_route_read): Don't use dropline(). 1999-12-08 Kunihiro Ishiguro * kernel_socket.c (rtm_read): When message is RTM_GET, it has own process's pid. 1999-12-04 Kunihiro Ishiguro * main.c (main): Change to default log output to ZLOG_STDOUT. * zserv.c (zebra_serv): More detailed error print. 1999-11-30 Kunihiro Ishiguro * kernel_socket.c (rtm_read): Check old pid for static route insertion check. 1999-11-30 Kunihiro Ishiguro * interface.c (if_dump_vty): BSDI/OS uses 64bit for interface statistics counter. * mtu_kvm.c: New file added. 1999-11-27 Vladimir B. Grebenschikov * kernel_socket.c (rtm_write): Set RTF_CLONING flag for route to the directly connected interface. 1999-11-27 Kunihiro Ishiguro * rt_socket.c: Delete USE_HOST_BIT definition. 1999-11-21 Michael Handler * rtread_getmsg.c: Undef some definition to resolve conflict. 1999-11-27 Kunihiro Ishiguro * kernel_socket.c (rtm_write): Change to use pre stored struct_dl value for gateway specification. 1999-11-25 Kunihiro Ishiguro * rt_socket.c (kernel_rtm_ipv4): Even mask is 32 under IPv4 or 128 under IPv6, don't use RTF_HOST. 1999-11-21 Kunihiro Ishiguro * Makefile.am (EXTRA_DIST): Add rtread_getmsg.c. 1999-11-21 Michael Handler * rtread_getmsg.c: Added for Solaris 2.6 support. 1999-11-18 Kunihiro Ishiguro * rtread_sysctl.c (rtm_read_route): RTM_DELETE handling added. * rt_socket.c (kernel_read): Better BSD routing socket support. 1999-10-19 Kunihiro Ishiguro * client_main.c: Disable making obsolete zebra test `client' command. 1999-10-18 Kunihiro Ishiguro * zebra.c: Renamed to zserv.c. * zebra.h: Global definitions are moved to lib/zebra.h. Then renamed to zserv.h. 1999-10-15 Jordan Mendelson * if_ioctl.c: Add Linux 2.2.X's alias support and dynamic interface. Remove ugly MAX_INTERFACE handling codes. 1999-09-17 Satosi KOBAYASI * Fix serious bug of IPv6 route deletion. 1999-09-11 Kunihiro Ishiguro * ioctl.c (if_set_prefix): Properly set broadcast address. 1999-09-04 Yasuhiro Ohara * rib.c (rib_add_ipv6, rib_delete_ipv6): now protocol daemons can install connected route to kernel via zebra 1999-08-24 VOP * rib.c: Include "sockunion.h" 1999-08-22 Kunihiro Ishiguro * ipforward.h: New file. * zebra.h: Obsolete message ZEBRA_GET_ALL_INTERFACE, ZEBRA_GET_ONE_INTERFACE, ZEBRA_GET_HOSTINFO are deleted. 1999-08-18 Kunihiro Ishiguro * zebra.h (ZEBRA_INTERFACE_ADDRESS_ADD): ZEBRA_INTERFACE_{ADD,DELETE} added. 1999-08-15 Kunihiro Ishiguro * rib.c: show ip route A.B.C.D works. * zebra.c (zebra_read_ipv4): Add ifindex to zebra messages. 1999-08-12 Kunihiro Ishiguro * zebra.h: New Zebra message ZEBRA_INTERFACE_{ADD,DELETE} added. 1999-08-09 Kunihiro Ishiguro * interface.h: New file. * Makefile.am: Add interface.h 1999-08-04 Yasuhiro Ohara * redistribute.c (zebra_redistribute): give ifindex to client. 1999-08-02 Kunihiro Ishiguro * main.c (longopts): -k, --keep_kernel option added. 1999-07-18 Yasuhiro Ohara * rt_socket.c (rtm_write): forgot closing socket bug fixed. 1999-07-17 Yasuhiro Ohara * rib.c (show_ipv6_cmd): if rib is link show interface name. 1999-07-17 Yasuhiro Ohara * rt_socket.c (rtm_write): use sockaddr_dl when null gateway. 1999-07-16 Yasuhiro Ohara * rt_socket.c (rtm_write): ipv6 route table bug fixed. 1999-07-15 Yasuhiro Ohara * zebra.c (zebra_read_ipv6): read link prefix from ospf6 support 1999-07-15 Yasuhiro Ohara * rt_socket.c (kernel_rtm_ipv6): gate treatment bug fixed. 1999-07-15 Kunihiro Ishiguro * if_sysctl.c (ifm_read): Clear sockunion argument before fetching data. Suggested by "Chris P. Ross" 1999-07-08 HEO SeonMeyong * interface.c (if_tun_add): Add KAME's gif tunnel setting codes. 1999-06-26 Kunihiro Ishiguro * zebra.c (zebra_serv): Only accept loopback address connection. 1999-06-25 Kunihiro Ishiguro * zebra.h (ZEBRA_ROUTE_EXTERNAL): Add zebra messages flags 1999-06-17 Kunihiro Ishiguro * ipforward_proc.c: ipforward_on () and ipforward_off () added. 1999-06-14 Kunihiro Ishiguro * ipforward_proc.c (ipforward_ipv6): Check for IPv6 forwarding using /proc file system is added. 1999-06-06 Kunihiro Ishiguro * if_ioctl.c (if_get_index): Interface index set bug is fixed by adding #else at the middle of function. Suggested by David Luyer . 1999-05-29 * rt_ioctl.c: Comment out #include . 1999-05-26 Kunihiro Ishiguro * zebra.h (ZEBRA_ROUTE_MAX): Add new define for the max value of the sort of routes. 1999-05-25 Patrick Koppen * rt_netlink.c (netlink_socket): Make netlink socket non-blocking. (netlink_parse_info): If errno is EWOULDBLOCK then continue to parse the message. (netlink_talk): Likewise 1999-05-17 * redistribute.c (zebra_check_addr): Added for loopback address check. 1999-05-15 Kunihiro Ishiguro * rt_netlink.c (netlink_route_change): Tempolary bypass ipv6 route change treatment. * Makefile.am (noinst_HEADERS): redistribute.h added. * redistribute.h: New file. 1999-05-14 Stephen R. van den Berg * zebra.c (show_table): Show all table configuration DEFUN. (config_table): Config table number DEFUN. * rt_netlink.c: Add support for multiple routing table. * rib.c (rib_weed_table): New function added for delete all routes from specified routing table. * main.c (signal_init): SIGTERM call sigint. (sigint): Loggging more better message. 1999-05-09 Kunihiro Ishiguro * rt_netlink.c: Change log () to zlog (). 1999-05-07 * zebra.h (ZEBRA_ROUTE_OSPF6): Added for ospf6d route. 1999-04-20 Kunihiro Ishiguro * interface.c: Add `no ip address' command. 1999-04-10 Kunihiro Ishiguro * rt_netlink.c (kernel_read): Function added for asynchronous zebra between kernel communication. 1999-03-25 Kunihiro Ishiguro * rtread_sysctl.c (rtm_read): Fix address memcopy overrun bug. Reported by Achim Patzner . 1999-03-03 Kunihiro Ishiguro * Makefile.am: Install configuration sample with 600 permission. 1999-03-02 Kunihiro Ishiguro * Makefile.am: Add -I.. to INCLUDES. 1999-02-18 Peter Galbavy * syslog support added 1999-02-17 Peter Galbavy * if_sysctl.c (interface_list): allocated memory free when unknown ifm_type is returned. * ioctl.c (if_get_mtu): added SIOCGIFDATA treatment. 1998-12-15 Magnus Ahltorp * interface.c: Header include added. 1998-12-14 Kunihiro Ishiguro * rt.h (kernel_delete_ipv6): change int index to unsigned int index. 1998-12-13 Kunihiro Ishiguro * if_ioctl.c (interface_list_ioctl): interface flag must be checked before check addresses of the interface. 1998-12-07 Kunihiro Ishiguro * Makefile.am (INCLUDES): add @INCLUDES@ for Linux IPv6. 1998-10-14 Kunihiro Ishiguro * ioctl.c: Linux version before 2.1.0 need interface route setup. 1998-09-15 HEO SeonMeyong * change HYDRANGEA to KAME 1998-09-01 Kunihiro Ishiguro * if_ioctl.c (if_addr_ioctl): set address family for getting interface's address. (if_get_index): silently return when can't get interface's index. 1998-08-17 Kunihiro Ishiguro * main.c (main): batch mode option '-b' added. 1998-08-16 Kunihiro Ishiguro * ioctl.c (if_set_prefix): add `ip address IPV4ADDR' command. * interface.c (shutdown_if): add interface shutdown and no shutdown command. 1998-08-12 Kunihiro Ishiguro * rib.c (rib_add_ipv6): delete rib_add_in6. 1998-07-27 Kunihiro Ishiguro * main.c: retain flag is added. 1998-07-08 Kunihiro Ishiguro * rtable.[ch]: merged with rib.[ch] 1998-07-07 Kunihiro Ishiguro * connected.h: renamed from ifa.h. 1998-06-09 Kunihiro Ishiguro * rename if.c to interface.c * rename ifa.c to connected.c * Porting to Debian GNU/Linux 2.0 (hamm). 1998-06-08 Kunihiro Ishiguro * rt_netlink.c: renamed from krt_netlink.c * fib.c: deleted. * rt_kvm.c: deleted. * rtread_getmsg.c: deleted. 1998-06-07 Kunihiro Ishiguro * if.c (multicast): add multicast flag [un]set fucntion. 1998-05-19 Yamshita TAKAO * rt_socket.c: Modify for compile on Solaris, but dont't work it. rt_socket.c have some undefined function, so add directive "IMPLEMENT" 1998-05-18 Yamshita TAKAO * zebra.c: Modify for compile on Solaris. 1998-05-03 Kunihiro Ishiguro * main.c: change CONFDIR to SYSCONFDIR. 1998-05-01 Kunihiro Ishiguro * .cvsignore: added. 1998-04-02 Kunihiro Ishiguro * client.c: moves to ../lib. 1998-03-30 Kunihiro Ishiguro * if_ioctl.c (if_get_addr): Change address copy from memcopy() to structure assignment. 1998-03-30 URA Hiroshi * if_sysctl.c (ifm_interface_add): sdl->sdl_data copy bug fixed. 1998-02-23 "Hannes R. Boehm" * if.c (if_init): add config_exit_cmd and config_help_cmd. 1998-01-24 Kunihiro Ishiguro * rt_ioctl.c (route_ioctl): EPERM treatment added. 1998-01-05 Kunihiro Ishiguro * rt_socket.c (kernel_read): communication port zebra between kernel is now handled by kernel_read. 1998-01-02 Kunihiro Ishiguro * main.c (main): zebra [-P port] can specify vty port number. 1997-12-25 Kunihiro Ishiguro * zebra.c: change select will be block. 1997-12-04 Kunihiro Ishiguro * add static route treatment. 1997-11-25 Kunihiro Ishiguro * rt_netlink.c: add netlink support over GNU/Linux system. 1997-11-23 Kunihiro Ishiguro * all inet_addr is changed to inet_aton. * zebra.c (ip_route): add ip route command for static routes. 1997-11-20 Kunihiro Ishiguro * if.c (if_flag_dump): Linux port of if_flag_dump and _vty. 1997-11-19 Kunihiro Ishiguro * if.c: add interface command. 1997-11-18 Kunihiro Ishiguro * ipforward_proc.c : Now works on Linux. 1997-10-25 Kunihiro Ishiguro * command.c : add completion feature. 1997-10-18 Kunihiro Ishiguro * vty.c (vty_command): add vty interface. 1997-10-13 Kunihiro Ishiguro * zebra.c: add verbose mode. 1997-10-12 SonMyong Ho * Hydrangea for FreeBSD supported * in.h: add some prototype. 1997-10-11 Kunihiro Ishiguro * rt_socket.c and rtread.c completely rewritten. 1997-10-05 Kunihiro Ishiguro * rt_socket.c: rename kernel_sock to routing_socket 1997-10-04 Kunihiro Ishiguro * if.c (if_new): interface structure change from linklist to vector. 1997-10-03 Kunihiro Ishiguro * vector.c (vector_init): create vector related function 1997-09-25 Kunihiro Ishiguro * Makefile.in: add tags target * start IPv6 support for INRIA FreeBSD.