Tomato 1.28
[tomato.git] / release / src / router / zebra / bgpd / ChangeLog
blob1ad514ed43da42ae0a6ddf031bc35aed8a508b6b
1 2001-08-19  Kunihiro Ishiguro  <kunihiro@ipinfusion.com>
3         * zebra-0.92a released.
5 2001-08-19  Akihiro Mizutani <mizutani@dml.com>
7         * bgpd.c: AF specific soft-reconfiguration inbound commands are
8         added.
10 2001-08-17  Kunihiro Ishiguro  <kunihiro@ipinfusion.com>
12         * bgp_route.c (bgp_show_callback): Do not do community NULL check.
14         * bgp_community.c (community_cmp): Add check for commnunity NULL
15         check.
17         * bgp_routemap.c (route_match_community): Do not check comunity is
18         NULL.  It may match to community-list "^$".
20         * bgp_community.c (community_match): Add check for community is
21         NULL case.
23 2001-08-17  Akihiro Mizutani <mizutani@dml.com>
25         * bgpd.c: AF specific route-reflector-client and
26         route-server-client configuration are added.
28 2001-08-17  Rick Payne <rickp@ayrnetworks.com>
30         * bgp_clist.c (community_match_regexp): Check special ^$ case.
32 2001-08-17  Akihiro Mizutani <mizutani@dml.com>
34         * bgp_clist.c (community_list_match): Fix bug of community list
35         permit and deny check.
37 2001-08-16  Akihiro Mizutani <mizutani@dml.com>
39         * bgp_mplsvpn.c (bgp_mplsvpn_init): Add AF specific "nexthop-self"
40         command.
42 2001-08-15  Akihiro Mizutani <mizutani@dml.com>
44         * bgpd.h (PEER_FLAG_SEND_COMMUNITY): Per AF based configuration
45         flag is introduced.
47         * bgp_mplsvpn.c (bgp_mplsvpn_init): VPNv4 filtering is added.
49 2001-08-15  Kunihiro Ishiguro  <kunihiro@ipinfusion.com>
51         * zebra-0.92 released.
53 2001-08-13  Kunihiro Ishiguro  <kunihiro@ipinfusion.com>
55         * bgpd.c (bgp_delete): "no router bgp" free static, aggregate, rib
56         table properly.
58 2001-08-12  Kunihiro Ishiguro  <kunihiro@ipinfusion.com>
60         * bgp_route.c (bgp_node_safi): Return SAFI of current node.
61         (bgp_config_write_network_vpnv4): VPNv4 static configuration
62         display.
64 2001-08-11  Kunihiro Ishiguro  <kunihiro@ipinfusion.com>
66         * bgpd.c (no_bgp_ipv4_multicast_route_map): Add IPv4 multicast
67         node filter commands.
69 2001-08-11  Kunihiro Ishiguro  <kunihiro@zebra.org>
71         * bgpd.h (PEER_FLAG_IGNORE_LINK_LOCAL_NEXTHOP): Add
72         "ignore-link-local-nexthop" flag for ignore link-local nexthop for
73         IPv6.
75 2001-08-07  Kunihiro Ishiguro  <kunihiro@ipinfusion.com>
77         * bgpd.c (address_family_ipv4_multicast): "address-family ipv4
78         multicast" is added.
79         (address_family_ipv6_unicast): "address-family ipv6 unicast" is
80         added.
81         
82 2001-08-07  Akihiro Mizutani <mizutani@dml.com>
84         * bgp_route.c (bgp_process): Use flag instead of as_selected
85         memeber in struct bgp_info.
87         * bgp_route.h (struct bgp_info): Remove as_selected memeber from
88         struct bgp_info.
90 2001-07-31  Kunihiro Ishiguro  <kunihiro@ipinfusion.com>
92         * bgp_route.c (bgp_announce_check): Enclose sending time AS loop
93         check code with #ifdef BGP_SEND_ASPATH_CHECK.
95 2001-07-29  Kunihiro Ishiguro  <kunihiro@ipinfusion.com>
97         * bgp_packet.c (bgp_withdraw_send): Simplify address family check.
99         * bgpd.h (BGP_INFO_HOLDDOWN): Introduce new macro to check BGP
100         information is alive or not.
102         * bgp_community.c: Use community_val_get() on all OS.
104 2001-07-24  Kunihiro Ishiguro  <kunihiro@ipinfusion.com>
106         * bgp_route.c (bgp_announce_check): Simplify set next-hop self
107         check.
109 2001-07-24  Akihiro Mizutani <mizutani@dml.com>
111         * bgp_route.c (bgp_announce_check): To route server clients, we
112         announce AS path, MED and nexthop transparently.
114 2001-06-21  Kunihiro Ishiguro  <kunihiro@zebra.org>
116         * bgp_routemap.c (route_set_atomic_aggregate_free): Do not call
117         XFREE.  No memory is allocated in
118         route_set_atomic_aggregate_compile().
120 2001-06-21  Kunihiro Ishiguro  <kunihiro@zebra.org>
122         * bgp_routemap.c (bgp_route_map_init): `match nlri` and `set nlri`
123         are replaced by `address-family ipv4` and `address-family vpnvr'.
125 2001-06-19  Kunihiro Ishiguro  <kunihiro@zebra.org>
127         * bgp_route.c (bgp_withdraw): Add check for BGP_PEER_CONFED.
128         Reported by Rick Payne <rickp@rossfell.co.uk>.
130 2001-06-17  Kunihiro Ishiguro  <kunihiro@zebra.org>
132         * bgp_zebra.c (bgp_zebra_announce): When global IPv6 nexthop is
133         empty, use socket's remote address for the nexthop.
135 2001-06-04  Kunihiro Ishiguro  <kunihiro@ipinfusion.com>
137         * bgpd.c (peer_delete): Fix memory leak.  Reported by Yosi Yarchi
138         <Yosi_Yarchi@KereniX.com>
140 2001-06-01  Kunihiro Ishiguro  <kunihiro@ipinfusion.com>
142         * bgpd.c (bgp_delete): Fix memory leak.  Reported by Yosi Yarchi
143         <Yosi_Yarchi@KereniX.com>
145 2001-05-27  Kunihiro Ishiguro  <kunihiro@ipinfusion.com>
147         * bgp_route.c (bgp_route_clear_with_afi_vpnv4): Use next instead
148         of ri->next.
150         * bgp_packet.c (bgp_withdraw_send): MPLS/VPN withdraw takes effect
151         when HAVE_IPV6 is not defined.
153 2001-03-07  "Akihiro Mizutani" <mizutani@dml.com>
155         * bgpd.c (peer_timers_set): Adjust keepalive timer to fit less
156         than holdtime / 3.
157         (bgp_confederation_peers_unset): Only set peer->local_as when
158         confederation is enabled.
159         (bgp_timers): Add "timers bgp <0-65535> <0-65535>" command.
161         * bgp_route.c (bgp_announce_check): Set med of redistributed route
162         when it is announced to EBGP peer.
164 2001-03-06  "Akihiro Mizutani" <mizutani@dml.com>
166         * bgp_nexthop.c (bgp_scan_ipv4): bgp_scan() call bgp_process() for
167         all prefixes.
169 2001-03-06  Kunihiro Ishiguro  <kunihiro@zebra.org>
171         * bgp_attr.c (bgp_attr_origin): When bgpd send NOTIFICATION with
172         erroneous attribute (type, length and value), it does include
173         attribute flags field.
175 2001-02-21  "Akihiro Mizutani" <mizutani@dml.com>
177         * bgp_route.c (bgp_announce_check): The route reflector is not
178         allowed to modify the attributes of the reflected IBGP routes.
180 2001-02-20  "Akihiro Mizutani" <mizutani@dml.com>
182         * bgp_route.c (bgp_info_cmp): During path seleciton, BGP
183         confederation peer is treated as same as IBGP peer.
185 2001-02-19  Kunihiro Ishiguro  <kunihiro@zebra.org>
187         * bgp_route.c (bgp_redistribute_add): Initialize attr_new with
188         attr.  Call aspath_unintern when return from this function.
190 2001-02-19  "Akihiro Mizutani" <mizutani@dml.com>
192         * bgpd.c (bgp_router_id_set): Reset BGP peer when router-id is
193         changed.
195 2001-02-18  "Akihiro Mizutani" <mizutani@dml.com>
197         * bgp_packet.c (bgp_open_receive): When user configure holdtimer,
198         do not refrect the value to current session.
200 2001-02-16  Kunihiro Ishiguro  <kunihiro@zebra.org>
202         * bgp_route.c (bgp_aggregate_delete): Set BGP_INFO_ATTR_CHANGE to
203         suppress route withdraw.
205         * bgp_damp.c (bgp_damp_init): Fix bug of flap dampening.
207 2001-02-16  "Akihiro Mizutani" <mizutani@dml.com>
209         * bgp_aspath.c (aspath_make_str_count): Use ',' for separator for
210         AS_SET and AS_CONFED_SET.
212 2001-02-15  Kunihiro Ishiguro  <kunihiro@zebra.org>
214         * bgp_route.c (bgp_process): Do not consider suppress route.
216         * bgp_aspath.c (aspath_aggregate_as_set_add): Reset asset when
217         aspath->data is realloced.
219 2001-02-15  "Akihiro Mizutani" <mizutani@dml.com>
221         * bgp_attr.c (bgp_attr_aggregate_intern): Do not set atomic
222         aggregate when using as-set.
224 2001-02-14  "Akihiro Mizutani" <mizutani@dml.com>
226         * bgpd.c (bgp_confederation_peers_unset): Set peer's local-as
227         correctly.
229         * bgp_route.c (bgp_update): Just ignore AS path loop for
230         confederation peer.
232 2001-02-10  Kunihiro Ishiguro  <kunihiro@zebra.org>
234         * bgp_route.c (bgp_aggregate_set): Add as_set argument.
235         (bgp_aggregate_unset): Remove summary_only argument.
236         (aggregate_address_as_set): New commands.
237         "aggregate-address A.B.C.D/M as-set"
238         "no aggregate-address A.B.C.D/M as-set"
240 2001-02-08  "Akihiro Mizutani" <mizutani@dml.com>
242         * bgp_route.c (bgp_announce_check): Do not modify nexthop when the
243         route is passed by route reflector.
245 2001-02-08  Kunihiro Ishiguro  <kunihiro@zebra.org>
247         * bgp_route.c: "no bgp dampening" with argument.
248         (bgp_announce_check): Do not modify nexthop when the route is
249         passed by route reflector.
251 2001-02-07  "Akihiro Mizutani" <mizutani@dml.com>
253         * bgpd.c (neighbor_passive): Change "neighbor NEIGHBOR remote-as
254         ASN passive" to "neighbor NEIGHBOR passive".
255         (bgp_announce_check): Check well-known community attribute even
256         when "no neighbor send-community" is set.
258 2001-02-03  Kunihiro Ishiguro  <kunihiro@zebra.org>
260         * bgp_fsm.c (bgp_establish): Do not send keepalive at established
261         time when keepalive timer is configured as zero.
263 2001-02-01  Kunihiro Ishiguro  <kunihiro@zebra.org>
265         * bgp_attr.c (bgp_attr_check): When peer is IBGP peer, local
266         preference is well-known attribute.
268 2001-01-30  Kunihiro Ishiguro  <kunihiro@zebra.org>
270         * zebra-0.91 is released.
272         * bgp_attr.h (struct attr): Comment out DPA value.
273         (struct attr): Change refcnt type from int to unsinged long.
275         * bgp_attr.c (attrhash_key_make): Likewise.
276         (attrhash_cmp): Likewise.
277         (bgp_attr_dpa): Likewise.
279 2001-01-30  "Akihiro Mizutani" <mizutani@dml.com>
281         * bgp_route.c (bgp_info_cmp): Make route selection completely same
282         as Cisco's.
284 2001-01-30  Kunihiro Ishiguro  <kunihiro@zebra.org>
286         * bgp_attr.h (BGP_ATTR_FLAG_OPTIONAL): Rename old ATTR_FLAG_* to
287         BGP_ATTR_FLAG_* to clarify meenings.
289 2001-01-30  "Akihiro Mizutani" <mizutani@dml.com>
291         * bgp_route.c (route_vty_out): Display argument to suppress same
292         prefix information display.
293         (route_vty_out_route): Don't display mask information for
294         classfull network.
296 2001-01-30  Kunihiro Ishiguro  <kunihiro@zebra.org>
298         * bgp_attr.h (SET_BITMAP): Simple bitmapping macros.
300         * bgp_attr.c (bgp_attr_parse): Use bitmap for attribute type
301         check.
303 2001-01-29  Kunihiro Ishiguro  <kunihiro@zebra.org>
305         * bgp_attr.c (bgp_mp_reach_parse): Enclose loggin with BGP_DEBUG.
306         (bgp_attr_parse): Comment out well-known attribute check.
308 2001-01-28  Kunihiro Ishiguro  <kunihiro@zebra.org>
310         * bgp_route.c (bgp_static_unset): Link-local IPv6 address can't be
311         used for network advertisement.
312         (nlri_parse): When link-local IPv6 address NLRI comes from
313         remote-peer, log the information then simply ignore it.
315         * bgp_zebra.c (zebra_read_ipv6): Link-local IPv6 address is not
316         redistributed.
318         * bgp_route.c (bgp_update): Check IPv6 global nexthop
319         reachability.
321 2001-01-26  Kunihiro Ishiguro  <kunihiro@zebra.org>
323         * bgp_route.c (bgp_update): Check nexthop points local address or
324         not.
325         (bgp_static_update_vpnv4): Set valid flag.
327         * bgp_attr.c (bgp_attr_parse): Duplicate attribute check.
328         (bgp_attr_parse): Well-known attribute check.
330         * bgp_open.c (bgp_auth_parse): Authentication is not yet supported.
332         * bgp_packet.c (bgp_valid_marker): Check marker is synchronized.
334         * bgpd.c (clear_bgp): Send NOTIFICATION Cease when SEND_CEASE is
335         defined.
337         * bgp_snmp.c (bgp4PathAttrTable): Fix compile error.
339 2001-01-24  Kunihiro Ishiguro  <kunihiro@zebra.org>
341         * bgpd.c (bgp_network_import_check): New command for IGP network
342         check.
344 2001-01-23  Kunihiro Ishiguro  <kunihiro@zebra.org>
346         * bgp_nexthop.c (bgp_scan): Run bgp_process when IGP metric is
347         changed.  Call bgp_process once for each node.
349 2001-01-23  "Akihiro Mizutani" <mizutani@dml.com>
351         * bgp_route.c (bgp_info_cmp): Add IGP metric comparison.
353 2001-01-23  Kunihiro Ishiguro  <kunihiro@zebra.org>
355         * bgp_route.c (bgp_info_cmp): Add IGP metric comparison.
357         * bgp_nexthop.c (bgp_nexthop_lookup): Set IGP metric for valid
358         IBGP route.
360 2001-01-23  "Akihiro Mizutani" <mizutani@dml.com>
362         * bgp_route.c (show_ip_bgp_prefix_longer): Add new commands.
363         "show ip bgp A.B.C.D/M longer-prefixes"
364         "show ip bgp ipv4 (unicast|multicast) A.B.C.D/M longer-prefixes"
365         "show ipv6 bgp X:X::X:X/M longer-prefixes"
366         "show ipv6 mbgp X:X::X:X/M longer-prefixes"
367         
368 2001-01-20  "Akihiro Mizutani" <mizutani@dml.com>
370         * bgp_route.c (show_ip_bgp_cidr_only): Add new commands.
371         "show ip bgp cidr-only"
372         "show ip bgp ipv4 (unicast|multicast) cidr-only"
373         
374 2001-01-18  "Akihiro Mizutani" <mizutani@dml.com>
376         * bgp_route.c (bgp_update): AS path lookup check is done in
377         bgp_update() not in attr_parse().
379 2001-01-18  Kunihiro Ishiguro  <kunihiro@zebra.org>
381         * bgp_route.c (bgp_update): Call bgp_aggregate_decrement() just
382         before bgp_attr_unintern().
384 2001-01-17  Kunihiro Ishiguro  <kunihiro@zebra.org>
386         * bgp_route.c (bgp_update): Now intern is performed very last part
387         of the BGP packet update procedure.
389 2001-01-17  "Akihiro Mizutani" <mizutani@dml.com>
391         * bgp_route.c (bgp_update): When implicit withdraw occur, reuse
392         existing bgp_info structure.
394 2001-01-17  Kunihiro Ishiguro  <kunihiro@zebra.org>
396         * bgp_route.c (bgp_aggregate_decrement): Fix bug of aggregate
397         address matching method.
398         (bgp_update): 
400         * bgp_nexthop.c (bgp_nexthop_onlink): Separate EBGP nexthop onlink
401         check and IBGP nexthop route check.
403 2001-01-16  "Akihiro Mizutani" <mizutani@dml.com>
405         * bgp_route.h (BGP_INFO_ATRR_CHANGED): Added for track attribute
406         change.
408 2001-01-16  Kunihiro Ishiguro  <kunihiro@zebra.org>
410         * bgp_route.h (struct bgp_info): Remove selected flag.  Use
411         BGP_INFO_SELECTED for flags instead.
412         (struct bgp_info): Remove valid flag.  Use BGP_INFO_VALID for
413         flags instead.
414         (struct bgp_info): Add igpmetric for IBGP route nexthop IGP
415         metric.
416         (struct bgp_info_tab): Struct bgp_info_tag is integrated into
417         struct bgp_info.
418         (BGP_INFO_ATRR_CHANGED): Added for track attribute change.
420         * bgp_community.c (community_val_get): gcc-2.95 on
421         sparc-sun-solaris cause crush.  This function is for avoid the
422         crush.
424 2001-01-15  Kunihiro Ishiguro  <kunihiro@zebra.org>
426         * bgp_packet.c (bgp_open_receive): Translated peer's packet_size
427         clear bug is fixed.
429 2001-01-14  "Akihiro Mizutani" <mizutani@dml.com>
431         * bgp_packet.c (bgp_open_receive): Return notification with
432         supported version number.
434 2001-01-13  Kunihiro Ishiguro  <kunihiro@zebra.org>
436         * bgpd.c (bgp_show_summary): Display AS path and community
437         entries.  Suggested by: "Matt Ranney" <mjr@ranney.com>.
439         * bgp_packet.c (bgp_read_packet): Fix bug of unblocking BGP socket
440         read.  When BGP packet read is partial, we must get size and type
441         from packet again.
443 2001-01-12  "Akihiro Mizutani" <mizutani@dml.com>
445         * bgp_route.c (bgp_update): Do not unset BGP_INFO_HISTORY flag.
446         (bgp_update): When there is a history entry increment route count.
447         (bgp_damp_set): Check BGP_CONFIG_DAMPENING flag.
449         * bgp_damp.c (bgp_damp_withdraw): Set status to
450         BGP_DAMP_DISCONTINUE.
452 2001-01-11  Kunihiro Ishiguro  <kunihiro@zebra.org>
454         * bgp_attr.c (bgp_mp_reach_parse): Fix warning code when second
455         IPv6 nexthop is not link-local addresss.
457 2001-01-11  "Akihiro Mizutani" <mizutani@dml.com>
459         * bgp_damp.c (bgp_config_write_damp): Smart flap dampening
460         configuration display.
461         (bgp_damp_info_print): Display elapsed time from flap started.
463         * bgp_damp.h (struct bgp_damp_info): Add flap start time.
465         * bgpd.c (peer_create): Set last read time.
466         (bgp_show_peer): Display last read time.
467         (bgp_show_summary): Use BGP_CONFIG_DAMPENING flag to check
468         configuration.
469         
470         * bgpd.h (BGP_CONFIG_DAMPENING): Add new configuration option.
471         (struct peer): Add last read time member.
472         (BGP_VERSION_MP_4): Remove obsolete definition.
474 2001-01-10  Kunihiro Ishiguro  <kunihiro@zebra.org>
476         * bgp_nexthop.c: Remove OLD_RIB codes.
478         * bgp_route.c (bgp_process): Likewise.
480         * zebra-0.90 is released.
482         * bgp_route.h (BGP_INFO_HISTORY): Remove damped member from struct
483         bgp_info.  Instead of that use BGP_INFO_DAMPED flag.
484         (struct bgp_info): Remove invalid member from struct bgp_info.
485         Instead of that use BGP_INFO_HISTORY flag.
487 2001-01-10  "Akihiro Mizutani" <mizutani@dml.com>
489         * bgp_damp.c (bgp_damp_info_print): New function to display
490         dampening status.
491         (DEFAULT_HARF_LIFE): Define default value.
492         (DEFAULT_REUSE): Likewise.
493         (DEFAULT_SUPPRESS): Likewise.
494         (bgp_config_write_damp): When config value is same as default
495         value, simply display "bgp dampening" to configuration.
497         * bgp_damp.h (struct bgp_damp_info): Add flap member.
499         * bgp_route.h (struct bgp_info): Added for BGP flap dampening
500         history status.
502 2001-01-10  Kunihiro Ishiguro  <kunihiro@zebra.org>
504         * bgp_nexthop.c (bgp_connected_add): Point-to-point connected
505         address is properly handled.
506         (bgp_connected_delete): Likewise.
508         * bgp_route.c (bgp_route_init): Turn off BGP Flap dampening code
509         until it works fine.
511 2001-01-09  Kunihiro Ishiguro  <kunihiro@zebra.org>
513         * bgpd.c (bgp_show_summary): Add BGP_VERSION_MP_4 case.
515         * bgp_route.c (bgp_update): When this is not damped route, clear
516         ri pointer.
518 2001-01-09  Kunihiro Ishiguro  <kunihiro@zebra.org>
520         * bgp_main.c: Add "-n" no_kernel option to not install route to
521         kernel.  Suggested by: "Matt Ranney" <mjr@ranney.com>
523 2001-01-09  Kunihiro Ishiguro  <kunihiro@zebra.org>
525         * bgp_nexthop.c (bgp_connected_add): Revert point-to-point
526         connected route patch.  Reported by ruud@ruud.org (Ruud de Rooij)
528         * bgp_damp.c (bgp_config_write_damp): Add configuration display
529         function.
531         * bgp_route.c (bgp_info_free): Set NULL to BGP dampening
532         information when BGP info structure is freed.
533         (bgp_info_cmp): Check damped flag.
534         (bgp_announce_check): Damped route is not announced.
536 2001-01-09  "Akihiro Mizutani" <mizutani@dml.com>
538         * bgpd.c (neighbor_capability_route_refresh): Change "neighbor
539         route-refresh" command to "neighbor capability route-refresh".
540         (clear_bgp_soft_in): Change soft-reconfig method.
542         clear ip bgp <neighbor> soft in
543         --------------------------------------
544         Try stored cache first then route-refresh
546         clear ip bgp <neighbor> in
547         ---------------------------------
548         Try route-refresh first then try to use stored cache
550 2001-01-09  Kunihiro Ishiguro  <kunihiro@zebra.org>
552         * bgp_nexthop.c (bgp_connected_add): Check point-to-point
553         connected route.  Reported by ruud@ruud.org (Ruud de Rooij)
555 2001-01-08  Kunihiro Ishiguro  <kunihiro@zebra.org>
557         * bgp_nexthop.c (bgp_nexthop_lookup): When IBGP nexthop is
558         changed, refresh it.
560 2001-01-04  Kunihiro Ishiguro  <kunihiro@zebra.org>
562         * bgp_route.h (struct bgp_info_tag): Add as_selected to
563         bgp_info_tag.
565 2001-01-03  Kunihiro Ishiguro  <kunihiro@zebra.org>
567         * bgp_route.h (struct bgp_info_tag): Add damped and bgp_damp_info
568         member for BGP flap dampening.
570         * bgp_damp.c: New file is added.
572         * bgp_damp.h: Likewise.
574 2001-01-01  Kunihiro Ishiguro  <kunihiro@zebra.org>
576         * bgpd.h (BGP_VTYSH_PATH): Change "/tmp/bgpd" to "/tmp/.bgpd".
578 2000-12-29  Kunihiro Ishiguro  <kunihiro@zebra.org>
580         * bgp_nexthop.c (zlookup_connect): Change to use UNIX domain
581         socket for zebra communication.
583 2000-12-29  Akihiro Mizutani <mizutani@dml.com>
585         * bgp_route.c (bgp_process): Fix "bgp deterministic-med" process.
587 2000-12-27  Akihiro Mizutani <mizutani@dml.com>
589         * bgp_route.c (bgp_process): Add "bgp deterministic-med" process.
591 2000-12-25  Akihiro Mizutani <mizutani@dml.com>
593         * bgp_route.c (bgp_info_cmp): Use ntohl comparing router ID.
595 2000-12-18  Akihiro Mizutani <mizutani@dml.com>
597         * bgp_route.c (bgp_info_cmp): When over three same prefix exit,
598         withdrawing best prefix perform router ID comparison.
600 2000-12-15  Akihiro Mizutani  <mizutani@dml.com>
602         * bgp_route.c (bgp_info_cmp): Do not compare router ID when the
603         routes comes from EBGP peer.  When originator ID is same, take
604         shorter cluster-list route.  If cluster-list is same take smaller
605         IP address neighbor's route.
607         * bgpd.c (bgp_bestpath_aspath_ignore): Add "bgp bestpath as-path
608         ignore" command.  When this option is set, do not concider AS path
609         length when route selection.
610         (bgp_bestpath_compare_router_id): Add "bgp bestpath
611         compare-routerid".  When this option is set, compare router ID
612         when the routes comes from EBGP peer.
613         
614 2000-12-15  Akihiro Mizutani  <mizutani@dml.com>
616         * bgp_route.c (bgp_info_cmp): Compare originator ID when it is
617         available.
619 2000-12-14  Akihiro Mizutani  <mizutani@dml.com>
621         * bgp_packet.c (bgp_notify_receive): Disply received Notify data
622         information.
624 2000-12-14  Kunihiro Ishiguro  <kunihiro@zebra.org>
626         * bgp_filter.c (as_filter_free): Use MTYPE_AS_FILTER_STR to make
627         it sure the memory is freed.
629         * bgp_route.c (route_vty_out_detail): Do not use AF_INET6 outside
630         HAVE_IPV6.
632 2000-12-08  Akihiro Mizutani  <mizutani@dml.com>
634         * bgp_packet.c (bgp_notify_send_with_data): Store BGP notification
635         data part.
637         * bgp_network.c (bgp_accept): When BGP connection comes from
638         unconfigured IP address, close socket immediately.
640         * bgpd.c: Fix some display format.
642 2000-11-29  Kunihiro Ishiguro  <kunihiro@zebra.org>
644         * bgp_packet.c (bgp_keepalive_send): Delete duplicate
645         bgp_packet_set_size () call.
647 2000-11-28  Kunihiro Ishiguro  <kunihiro@zebra.org>
649         * bgp_packet.c (bgp_read_packet): Remove debug codes.
651 2000-11-27  Kunihiro Ishiguro  <kunihiro@zebra.org>
653         * bgp_snmp.c (write_bgpPeerTable): Add SNMP set method routine.
655         * bgp_fsm.c (bgp_stop): Use fsm_change_status to change peer's
656         status.
657         (bgp_establish): Likewise.
659 2000-11-26  Akihiro Mizutani  <mizutani@dml.com>
661         * bgp_open.c: Fix error messages.
663 2000-11-25  Kunihiro Ishiguro  <kunihiro@zebra.org>
665         * bgp_fsm.c (bgp_establish): Call BGP trap when the peer is
666         established.
667         (bgp_stop): Call BGP trap when the peer is dropped.
669 2000-11-24  Kunihiro Ishiguro  <kunihiro@zebra.org>
671         * bgp_snmp.c (bgp4PathAttrTable): Return BGP path attribute table.
673         * bgpd.h (struct peer): Add update_time for track last update
674         received time.
676         * bgp_packet.c (bgp_notify_receive): Preserv notify code and sub
677         code in any case.
679         * bgp_snmp.c (bgpPeerTable): Return remote router ID instead of
680         peering IP address.
681         (bgpPeerTable): Return actual BGP version number.
683 2000-11-22  Akihiro Mizutani <mizutani@dml.com>
685         * bgp_debug.c (bgp_notify_print): Notify data length display bug
686         is fixed.
688 2000-11-16  Kunihiro Ishiguro  <kunihiro@zebra.org>
690         * bgp_nexthop.c (zlookup_connect): When UNIX domain connection to
691         zebra is enabled, use the method.
693 2000-11-16  Akihiro Mizutani <mizutani@dml.com>
695         * bgpd.c: Revise debug message output.
697 2000-11-15  Akihiro Mizutani <mizutani@dml.com>
699         * bgp_clist.c (ip_community_list): Fix bug of string comparison.
701 2000-11-14  Akihiro Mizutani <mizutani@dml.com>
703         * bgp_community.c (community_match): Fix bug of memcmp return
704         value check.
706 2000-11-07  Kunihiro Ishiguro  <kunihiro@zebra.org>
708         * bgp_clist.c (community_list_match_exact): Add check for
709         entry->style is COMMUNITY_LIST.
710         (community_match_regexp): Apply new com_nthval macro.
712 2000-11-07  Rick Payne <rickp@rossfell.co.uk>
714         * bgp_routemap.c (route_set_community_delete): "set
715         community-delete COMMUNITY-LIST" is added.
717         * bgp_community.c (community_del_val): Delete one community.
718         (community_delete): Delete all community included in list.
719         (community_match): Fix bug of matching community value.
721         * bgp_clist.c (community_entry_free): Free community regular
722         expression.
723         (community_entry_make): Default style is COMMUNITY_LIST.
724         (community_entry_lookup): Make it sure style is COMMUNITY_LIST.
725         (community_entry_regexp_lookup): New function for community
726         regular expression lookup.
727         (community_match_regexp): New function.
728         (community_delete_regexp): New function.
729         (community_list_delete_entries): New function.
730         (community_list_match): Add COMMUNITY_REGEXP treatment.
731         (community_list_match_exact): Likewise.
732         (config_write_community): Write community list according to
733         entry->style.
735 2000-11-07  Rick Payne <rickp@rossfell.co.uk>
737         * bgp_attr.c (bgp_attr_aspath): AS path first AS check.
739         * bgp_clist.c (struct community_entry): Add style, regexp, reg to
740         community_entry.
742 2000-11-06  Rick Payne <rickp@rossfell.co.uk>
744         * bgp_aspath.c (aspath_firstas_check): AS path first AS check.
746         * bgpd.c (bgp_enforce_first_as): New command "bgp
747         enforce-first-as".
749         * bgpd.h (BGP_CONFIG_ENFORCE_FIRST_AS): Add new flag.
751 2000-11-06  Kunihiro Ishiguro  <kunihiro@zebra.org>
753         * bgp_community.c (community_compare): Copy byte stream data to
754         actual value instead of using type casting hack.
755         (community_add_val): Likewise.
756         (community_uniq_sort): Likewise.
757         (community_print): Likewise.
758         (community_print_vty): Likewise.
759         (community_include): Use memcmp to compare community value.
761         * bgp_community.h (com_lastval): com_lastval and com_nthval macro
762         return pointer.
764 2000-11-06  Akihiro Mizutani <mizutani@dml.com>
766         * bgpd.h (struct peer): Add established and dropped member for
767         count peering up/down statistics.
769         * bgpd.c (bgp_show_peer): Display peering up/down statistics.
771         * bgp_fsm.c (bgp_establish): Increment established count.
772         (bgp_stop): Increment dropped count.
774         * bgp_packet.c (bgp_notify_receive): Increament notify count.
776 2000-11-1  Akihiro Mizutani <mizutani@dml.com>
778         * bgp_fsm.c: Fix bug of holdtimer is not reset when bgp cleared. 
780 2000-10-31  Kunihiro Ishiguro  <kunihiro@zebra.org>
782         * bgpd.h: Static bit flag is set by (1 << DIGIT).
784 2000-10-24  Akihiro Mizutani <mizutani@dml.com>
786         * bgp_ecommunity.c (ecommunity_dup): Extended community display
787         format fix.
789 2000-10-24  Arkadiusz Miskiewicz <misiek@pld.org.pl>
791         * bgp_network.c (bgp_serv_sock_addrinfo): Use gai_strerror.
792         (bgp_serv_sock_addrinfo): Check address family.
794 2000-10-23  Jochen Friedrich <jochen@scram.de>
796         * bgp_snmp.c: bgp_oid and bgpd_oid are used in smux_open after it
797         is registered.  So those variables must be static.
799 2000-10-23  Akihiro Mizutani <mizutani@dml.com>
801         * bgp_routemap.c (route_match_ip_next_hop): Change "match ip
802         next-hop" argument from IP address to access-list name.
803         Remove zebra-0.88 compatibility commands.
804         "match ip prefix-list WORD"
805         "match ipv6 prefix-list WORD"
806         
807 2000-10-23  Kunihiro Ishiguro  <kunihiro@zebra.org>
809         * bgp_routemap.c (route_match_ipv6_next_hop_compile): Fix bug of
810         passing the pointer to the pointer of struct in6_addr instead of
811         the pointer of struct in6_addr in "match ipv6 next-hop" command.
813         * bgp_route.c (bgp_announce_check): Enclose IPv6 part with
814         HAVE_IPV6.
816 2000-10-20  Jasper Wallace <jasper@ivision.co.uk>
818         * bgp_snmp.c (bgpPeerTable): ntohs missing bug is fixed.  Change
819         to use linklist.c.  Define COUNTER32 as ASN_COUNTER.
821 2000-10-18  Kunihiro Ishiguro  <kunihiro@zebra.org>
823         * bgp_route.c (bgp_announce_check): attr->nexthop empty check
824         should be done by attr->nexthop.s_addr instead of strcmp.
826 2000-10-18  Akihiro Mizutani <mizutani@dml.com>
828         * bgp_zebra.c (zebra_read_ipv4): Pass nexthop value to
829         bgp_redistribute_add().
831         * bgp_nexthop.c (bgp_multiaccess_check_v4): New function for
832         checking IPv4 multiaccess nexthop.
834         * bgp_route.c (bgp_announce_check): In case of the nexthop is
835         reachable on multiaccess media, do not change nexthop.
836         (bgp_redistribute_add): Set nexthop when the value is passed.
838 2000-10-17  Kunihiro Ishiguro  <kunihiro@zebra.org>
840         * bgp_fsm.c (bgp_timer_set): If peer is passive mode, do not set
841         connect timer.
842         (bgp_start): If the peer is passive mode, force to move to Active
843         mode.
845 2000-10-17  Horms <horms@vergenet.net>
847         * bgp_debug.c (debug_bgp_fsm): Fix typo.
849 2000-10-17  Akihiro Mizutani <mizutani@dml.com>
851         * bgp_route.c: "show ipv6 bgp" route display improvement.
853 2000-10-03  Kunihiro Ishiguro  <kunihiro@zebra.org>
855         * bgp_route.c (neighbor_routes): Allocate sockunion for callback
856         function.
857         (bgp_show_neighbor_route): Remove static declaration for union
858         sockunion.
860         * bgpd.c (peer_update_source_set): Clean previously allocated
861         memory before allocate new one.
863 2000-10-03  Akihiro Mizutani <mizutani@dml.com>
865         * bgp_route.c (neighbor_routes): Add show neighbor's routes
866         command.
867         "show ip bgp neighbors (A.B.C.D|X:X::X:X) routes"
868         "show ip bgp ipv4 (unicast|multicast) neighbors (A.B.C.D|X:X::X:X) routes"
869         "show ipv6 bgp neighbors (A.B.C.D|X:X::X:X) routes"
870         "show ipv6 mbgp neighbors (A.B.C.D|X:X::X:X) routes"
872 2000-10-02  Kunihiro Ishiguro  <kunihiro@zebra.org>
874         * zebra-0.89 is released.
876 2000-10-02  Akihiro Mizutani <mizutani@dml.com>
878         * bgpd.c: "bgp deterministic-med" command is added.
880 2000-10-02  Kunihiro Ishiguro  <kunihiro@zebra.org>
882         * bgp_nexthop.c (bgp_connected_add): Apply mask for connected
883         route addition and deletion.
885 2000-09-29  Kunihiro Ishiguro  <kunihiro@zebra.org>
887         * bgp_aspath.c (aspath_cmp_left): Skip confederation AS segment
888         when comparing leftmost AS number.
890 2000-09-29  Akihiro Mizutani <mizutani@dml.com>
892         * bgpd.c (peer_route_reflector): Route reflector can be set for
893         IBGP peer.
894         (bgp_distribute_set): Fix bug of string check for (in|out).
895         (bgp_show_summary): Display total neighbor count.
897 2000-09-28  Akihiro Mizutani <mizutani@dml.com>
899         * bgp_attr.c (bgp_packet_attribute): Only add cluster_list and
900         originator for clinet to client routes.
901         (bgp_packet_attribute): Add new cluster_list to the beginning of
902         existing cluster_list.
903         (bgp_packet_attribute): Fix bug of originator is rewritten even
904         when originator is already set.
906 2000-09-27  Kunihiro Ishiguro  <kunihiro@zebra.org>
908         * bgpd.c (bgp_client_to_client_reflection): Add new command.
909         "no bgp client-to-client reflection"
910         "bgp client-to-client reflection"
912         * bgpd.h (BGP_CONFIG_NO_CLIENT_TO_CLIENT): Add new definition.
914 2000-09-26  Kunihiro Ishiguro  <kunihiro@zebra.org>
916         * bgp_packet.c (bgp_read): Make BGP packet read to non-blocking
917         read.
918         (bgp_read_packet): Likewise.
919         (bgp_read_packet): When errono is EAGAIN, try to read it again.
921         * bgp_fsm.c (bgp_stop): Clear packet size and read buffer.
923 2000-09-26  Akihiro Mizutani <mizutani@dml.com>
925         * bgp_routemap.c: Configuration of prefix-list match is shown as
926         "match ip address prefix-list <WORD>".  Old configuration "match
927         ip prefix-list <WORD>" is left for compatibilitty.
929 2000-09-25  Akihiro Mizutani <mizutani@dml.com>
931         * bgpd.h (BGP_CONFIG_MED_MISSING_AS_WORST): Changed from
932         BGP_CONFIG_MISSING_AS_WORST.
934         * bgpd.c (bgp_bestpath_med): Change missing-as-worst syntax.
935         Old "bgp bestpath missing-as-worst"
936         New "bgp bestpath med missing-as-worst"
938 2000-09-24  Akihiro Mizutani <mizutani@dml.com>
940         * bgp_route.c: Compare MED properly in case of CONFED-IBGP.
942 2000-09-21  steve@Watt.COM (Steve Watt)
944         * bgp_debug.h: Do not declare debug variables conf_bgp_debug_* and
945         term_bgp_debug_*.
947         * bgp_debug.c: Declare variables here.
949 2000-09-21  Akihiro Mizutani <mizutani@dml.com>
951         * bgpd.c: MBGP soft-reconfiguration command is added.
952         clear ip bgp x.x.x.x ipv4 (unicast|multicast) in
953         clear ip bgp x.x.x.x ipv4 (unicast|multicast) out
954         clear ip bgp x.x.x.x ipv4 (unicast|multicast) soft
955         clear ip bgp <1-65535> ipv4 (unicast|multicast) in
956         clear ip bgp <1-65535> ipv4 (unicast|multicast) out
957         clear ip bgp <1-65535> ipv4 (unicast|multicast) soft
958         clear ip bgp * ipv4 (unicast|multicast) in
959         clear ip bgp * ipv4 (unicast|multicast) out
960         clear ip bgp * ipv4 (unicast|multicast) soft
962         Change "clear ip bgp vpnv4 x.x.x.x soft" command to
963         "clear ip bgp x.x.x.x vpnv4 unicast soft".
965         "bgp bestpath med confed" command is added.
966         
967         * bgpd.h (BGP_CONFIG_MED_CONFED): Add New definition.
969 2000-09-18  Rick Payne <rickp@rossfell.co.uk>
971         * bgpd.c (bgp_show_peer): Fix misplaced #endif.
973 2000-09-12  Akihiro Mizutani <mizutani@dml.com>
975         * bgpd.c (bgp_default_local_preference): Add "bgp default
976         local-preference" command.
978         * bgp_nexthop.c (no_bgp_scan_time): Add "no bgp scan-time"
979         command.
981 2000-09-10  Kunihiro Ishiguro  <kunihiro@zebra.org>
983         * bgp_zebra.c (bgp_zebra_announce): BGP confederation peer's routes
984         are passed to zebra like IBGP route.
986 2000-09-10  Akihiro Mizutani <mizutani@dml.com>
988         * bgpd.c (bgp_config_write_peer): Make it consistent passive
989         configuration.
991         * bgp_route.c: Community match command is added.
992         "show ip bgp community <val>"
993         "show ip bgp community <val> exact-match"
995 2000-09-08  Kunihiro Ishiguro  <kunihiro@zebra.org>
997         * bgp_nexthop.c (bgp_nexthop_lookup): ebgp-multihop routes are
998         treated as IBGP routes.
1000 2000-09-08  Akihiro Mizutani <mizutani@dml.com>
1002         * bgp_route.c (bgp_show_route): When local-AS community route is
1003         selected, display "not advertised outside local AS" to "show ip
1004         route A.B.C.D" output.
1005         (show_ip_bgp_ipv4_filter_list): Add below four commands.
1006         "show ip bgp ipv4 (unicast|multicast) filter-list WORD"
1007         "show ip bgp ipv4 (unicast|multicast) community"
1008         "show ip bgp ipv4 (unicast|multicast) community-list WORD"
1009         "show ip bgp ipv4 (unicast|multicast) community-list WORD exact-match"
1010         
1011         * bgp_clist.c (community_list_match_exact): Community exact match
1012         function.
1014 2000-09-07  Kunihiro Ishiguro  <kunihiro@zebra.org>
1016         * bgp_route.c (bgp_update): Add peer's ttl check.
1018         * bgpd.h (struct peer): Structure member refresh is renamed to
1019         refresh_adv.
1021         * bgpd.c (clear_bgp_soft_in): Check PEER_FLAG_ROUTE_REFRESH flag
1022         when soft reconfiguration is performed.
1024         * bgp_zebra.c (bgp_zebra_announce): When the peer is EBGP and
1025         ebgp-multiphop is set, set ZEBRA_FLAG_INTERNAL for nexthop lookup.
1027         * bgp_route.h (struct bgp_info_tag): Add valid flag.
1029 2000-08-25  Akihiro Mizutani <mizutani@dml.com>
1031         * bgpd.c: Add AS base BGP soft reconfiguration.
1033         * bgp_route.c: When no-advertise or no-export route is selected,
1034         "show ip bgp" display "not advertised to EBGP peer" or "not
1035         advertised to any peer" message.
1036         
1037 2000-08-17  Kunihiro Ishiguro  <kunihiro@zebra.org>
1039         * zebra-0.88 is released.
1041         * bgp_dump.c (dump_bgp_routes): Change "dump bgp routes" to "dump
1042         bgp route-mrt" to support MRT specific dump format.
1044         * bgpd.c (bgp_init): "clear ip bgp vpnv4 soft {in,out}" command is
1045         added.
1047         * bgp_route.c (bgp_update): Currently nexthop check is only works
1048         for IPv4.
1050 2000-08-17  Akihiro Mizutani <mizutani@dml.com>
1052         * bgpd. (clear_ip_bgp_all_soft): Add "clear ip bgp * soft" for
1053         both inbound and outbound soft reconfiguration.
1055 2000-08-17  Kunihiro Ishiguro  <kunihiro@zebra.org>
1057         * bgpd.c (clear_ip_bgp_peer_soft_out): Add soft-reconfiguration
1058         outbound.
1059         (peer_new): Set route-refresh flag.
1061 2000-08-16  Akihiro Mizutani <mizutani@dml.com>
1063         * bgpd.c: "no bgp router-id A.B.C.D" alias is added.  "no bgp
1064         cluster-id A.B.C.D" alias is added.  " bgp cluster-id
1065         <1-4294967295>" alias is added.  "clear ip bgp * soft in" command
1066         is added.  "clear ip bgp A.B.C.D in" alias is added.  "clear ip
1067         bgp * in" alias is added.
1069 2000-08-16  Kunihiro Ishiguro  <kunihiro@zebra.org>
1071         * bgp_route.c (bgp_update): Add soft_reconfig flag.  When the flag
1072         is set do not install the route into Adj-RIBs-In.
1073         (bgp_update): Perform implicit withdraw before filtering of the
1074         route.
1076         * bgp_packet.c (bgp_read): draft-ietf-idr-bgp-route-refresh-01.txt
1077         capability code and BGP message can be accepted.
1079         * bgp_open.c (bgp_capability_parse): Likewise.
1081         * bgp_route.c (bgp_refresh_table): New function for route refresh.
1082         (bgp_refresh_rib): Likewise.
1084         * bgpd.c (bgp_show_peer): Display route refresh status.
1086         * bgp_route.c (bgp_aggregate_add): Add check for the route
1087         validness.
1088         (bgp_aggregate_delete): Likewise.
1090 2000-08-15  Kunihiro Ishiguro  <kunihiro@zebra.org>
1092         * bgp_nexthop.c (bgp_scan): Care for aggregate route when the
1093         route become inaccessible.
1095 2000-08-15  Akihiro Mizutani <mizutani@dml.com>
1097         * bgp_route.c (show_ip_bgp_prefix): "show ip bgp A.B.C.D/M"
1098         command is added.
1100 2000-08-15  Kunihiro Ishiguro  <kunihiro@zebra.org>
1102         * bgp_zebra.c (bgp_interface_up): Register connected route.
1103         (bgp_interface_down): Unregister connected route.
1105 2000-08-14  Kunihiro Ishiguro  <kunihiro@zebra.org>
1107         * bgp_route.h (struct bgp_info): Add distance to the structure.
1109         * bgp_route.c (bgp_aggregate_increment): Aggregate route only
1110         match to smaller prefixlen route not match same prefixlen route.
1111         (bgp_aggregate_decrement): Likewise.
1112         (bgp_aggregate_add): Likewise.
1113         (bgp_aggregate_delete): Likewise.
1114         (bgp_network_backdoor): Add backdoor network configuration.
1116         * bgpd.h (struct bgp ): Add distance_{ebgp,ibgp,local} for store
1117         configuration distance value.
1119         * bgp_route.c (bgp_update): Filter EBGP route which has non
1120         connected nexthop.
1122         * bgp_attr.c (bgp_attr_aggregate_intern): New function for
1123         aggregate route.  Set origin to IGP.  Set atomic aggregate flag.
1124         Set aggregator AS and address.
1125         (bgp_attr_aggregate_intern): Check BGP_CONFIG_CONFEDERATION when
1126         filling aggregator_as.
1128         * bgp_route.c (bgp_process): Delete suppress check for install
1129         suppressed route into local routing table.
1130         (bgp_aggregate_increment): Use bgp_attr_aggregate_intern() instead
1131         of bgp_attr_default_intern ().
1132         (bgp_aggregate_add): Likewise.
1134         * bgpd.c (bgp_get): Call bgp_if_update_all() after BGP instance is
1135         created.  This is for avoid 0.0.0.0 router-id.
1137 2000-08-13  Akihiro Mizutani <mizutani@dml.com>
1139         * bgp_route.c (route_vty_out_detail): Display "valid" when the
1140         route is valied.  Display "aggregated" when the route is
1141         aggregated.  "Advertisements suppressed by an aggregate" is
1142         displayed when the route is suppressed.
1143         (bgp_info_cmp): Prefer EBGP than Confed-EBGP.
1145 2000-08-10  Akihiro Mizutani <mizutani@dml.com>
1147         * bgp_route.c (route_vty_out_detail): Display format change.
1149 2000-08-06  Kunihiro Ishiguro  <kunihiro@zebra.org>
1151         * bgp_route.c (bgp_update): Only AFI_IP nexthop check is enabled.
1153         * bgpd.c (bgp_delete): Delete static route before delete peer
1154         configuration.
1156 2000-08-02  Kunihiro Ishiguro  <kunihiro@zebra.org>
1158         * bgpd.c: Include bgpd/bgp_nexthop.h.
1160 2000-07-31  Akihiro Mizutani <mizutani@dml.com>
1162         * bgpd.c (bgp_show_summary): "show ip bgp summary" shows own BGP
1163         identifier.  And status is changed like below.
1165         State/Pref   -> State/PfxRcd
1166         Shutdown     -> Idle (Admin)
1167         PrefixOvflw  -> Idle (PfxCt)
1169         * bgp_route.c (route_vty_out): Show internal route as "i".
1171 2000-07-13  Jim Bowen <jimb@zereau.net>
1173         * bgp_snmp.c: Add BGP peer MIB implementation.
1175 2000-07-12  Akihiro Mizutani <mizutani@dml.com>
1177         * bgpd.c (bgp_show_peer): Fix typo.
1179 2000-07-11  Akihiro Mizutani <mizutani@dml.com>
1181         * bgp_routemap.c: Add commands for deleting set without argument.
1183 2000-07-03  Akihiro Mizutani <mizutani@dml.com>
1185         * bgp_zebra.c: Fix redistribute help strings.
1187 2000-07-01  Kunihiro Ishiguro  <kunihiro@zebra.org>
1189         * bgp_route.c (bgp_show): When bgpd works as vtysh server send all
1190         output to vty at once.
1192 2000-06-13  Kunihiro Ishiguro  <kunihiro@zebra.org>
1194         * bgp_mplsvpn.c (no_vpnv4_network): "no network A.B.C.D/M rd WORD
1195         tag WORD" command is added.
1197         * bgp_ecommunity.c (ecommunity_vty_out): New function added.
1199 2000-06-12  Kunihiro Ishiguro  <kunihiro@zebra.org>
1201         * bgp_route.c (bgp_show): Fix total number of prefix count bug.
1203         * bgpd.c (bgp_show_peer): Display VPNv4 unicast configuration and
1204         negotiation result in "show ip bgp neighbors".
1206 2000-06-12  Akihiro Mizutani <mizutani@dml.com>
1208         * bgpd.c: Fix help strings.
1209         
1210         * bgpd.h: Likewise.
1211         
1212 2000-06-11  Kunihiro Ishiguro  <kunihiro@zebra.org>
1214         * bgp_route.c (bgp_aggregate_unset): Fix bug of checking rn->info
1215         instead of rn.  Reported by Akihiro Mizutani <mizutani@dml.com>.
1217         * bgp_mplsvpn.c (vpnv4_network): For testing purpose, "network
1218         A.B.C.D rd RD" is added to address-family vpnv4 unicast node.
1220         * bgp_route.c (bgp_static_set): Set safi to p.safi.
1222 2000-06-10  Kunihiro Ishiguro  <kunihiro@zebra.org>
1224         * bgp_route.c (bgp_show_prefix_list): Change to use bgp_show().
1225         (bgp_show_regexp): Change to use bgp_show().
1226         (show_adj_route): Change to display header.
1228         * bgpd.c (clear_bgp): Set peer->v_start to default value when peer
1229         is cleared manually.
1231         * bgp_route.c (bgp_show_route): New function which display
1232         specific BGP route.  Divided from bgp_show().
1233         (bgp_static_delete): Delete all static route.
1235 2000-06-09  NOGUCHI Kay <kay@v6.access.co.jp>
1237         * bgp_route.c (show_ipv6_bgp): "show ipv6 bgp" is broken with
1238         invalid privious fix.  Now show_ipv6_bgp and show_ipv6_bgp_route
1239         take care of "show ipv6 bgp [X:X::X:X]".  Same change for "show ip
1240         mbgp" and "show ipv6 mbgp".
1242 2000-06-07  Akihiro Mizutani <mizutani@dml.com>
1244         * bgp_route.c: Fix help strings and command arguments.
1246 2000-06-06  Kunihiro Ishiguro  <kunihiro@zebra.org>
1248         * bgp_ecommunity.c: Include prefix.h
1250 2000-06-05  Kunihiro Ishiguro  <kunihiro@zebra.org>
1252         * bgp_route.h (struct bgp_info_tag): New structure to hold tag
1253         value.
1255         * bgp_route.c (bgp_adj_set): table NULL check is added.
1256         (bgp_adj_unset): Likewise.
1257         (bgp_adj_lookup): Likewise.
1258         (bgp_adj_clear): Likewise.
1259         (route_vty_out): Add SAFI check for nexthop display.
1260         (bgp_withdraw): Add SAFI check for withdraw route.
1262         * Remove all #ifdef MPLS_VPN then include it as default.
1264         * bgpd.c: Temporary disable peer-group command until the
1265         implementation is completed.
1267         * bgp_routemap.c (bgp_route_map_init): Install
1268         route_metric_match_cmd.
1269         (route_match_metric_compile): MED value compile using strtoul.
1271 2000-06-05  Akihiro Mizutani <mizutani@dml.com>
1273         * bgp_filter.c: Fix help strings.  Change REGEXP to LINE.  Change
1274         NAME to WORD.
1276         * Change command argument to more comprehensive.
1278         METRIC         -> <0-4294967295>
1279         WEIGHT         -> <0-4294967295>
1280         LOCAL_PREF     -> <0-4294967295>
1281         IP_ADDR        -> A.B.C.D
1282         AS             -> <1-65535>
1283         AS-PATH-NAME   -> WORD
1284         ACCESS_LIST    -> WORD
1285         PREFIX_LIST    -> WORD
1286         COMMUNITY      -> AA:NN
1287         EXT_COMMUNITY  -> ASN:nn_or_IP-address:nn
1288         IPv6_ADDR      -> X:X::X:X
1290         * bgp_clist.c: Fix help strings.
1292 2000-06-03  Kunihiro Ishiguro  <kunihiro@zebra.org>
1294         * bgpd.c (peer_active): Add new function for check the peer is
1295         active or not.
1296         (neighbor_activate): New command "neighbor PEER activate" and "no
1297         neighbor PEER activate" are added.
1299         * bgp_packet.c: Include bgpd/bgp_mplsvpn.h.
1301 2000-06-02  Akihiro Mizutani <mizutani@dml.com>
1303         * bgp_clist.c: Fix commuity-list help strings.
1305         * bgp_routemap.c: Fix "set community" help strings.  Add #define
1306         SET_STR.  Use (unicast|multicast) argument for "set nlri" command.
1307         
1308 2000-06-01  Kunihiro Ishiguro  <kunihiro@zebra.org>
1310         * bgp_routemap.c (route_set_community_none_cmd): "set community
1311         none" command is added to route-map.
1313 2000-06-01  Akihiro Mizutani <mizutani@dml.com>
1315         * bgp_debug.c: Change "show debug" to "show debugging".  Now "show
1316         debugging" is not used in VIEW_NODE.
1318 2000-05-30  Kunihiro Ishiguro  <kunihiro@zebra.org>
1320         * bgp_fsm.c (bgp_timer_set): Add check for shutdown flag.  This
1321         fix unconditional BGP connection.
1323         * bgpd.c (peer_shutdown): Replace peer_shutdown() with
1324         peer_change_flag_with_reset().
1326 2000-05-26  Kunihiro Ishiguro  <kunihiro@zebra.org>
1328         * bgpd.c (no_bgp_default_ipv4_unicast): Add "no bgp default
1329         ipv4-unicast" command.
1331         * bgpd.h (BGP_CONFIG_NO_DEFAULT_IPV4): Add new definition.
1333         * bgp_filter.c (as_list_delete): Free all AS filter.
1335         * bgp_clist.c (community_list_delete): Free all community entry.
1337         * bgp_filter.c (no_ip_as_path_all): New DEFUN for "no ip as-path
1338         access-list NAME".
1340         * bgp_clist.c (no_ip_community_list_all): New DEFUN for "no ip
1341         community-list NAME".
1343 2000-05-19  Kunihiro Ishiguro  <kunihiro@zebra.org>
1345         * bgp_route.c (ipv6_mbgp_neighbor_routes): Change "show ip bgp PEER
1346         routes" to "show ip bgp PEER received-routes"
1348 2000-05-14  Kunihiro Ishiguro  <kunihiro@zebra.org>
1350         * bgp_ecommunity.c (ecommunity_parse): New file for Extended
1351         Communities attribute.
1352         * bgp_ecommunity.h: Likewise.
1354 2000-05-11  Kunihiro Ishiguro  <kunihiro@zebra.org>
1356         * bgp_mplsvpn.h: New file for MPLS-VPN.
1357         * bgp_mplsvpn.c: Likewise.
1359         * bgpd.c (bgp_delete): Fix bug of "no router bgp" crush.
1361 2000-05-10  Kunihiro Ishiguro  <kunihiro@zebra.org>
1363         * bgpd.c (bgp_bestpath_missing_as_worst): Add "bgp bestpath
1364         missing-as-worst".
1366 2000-05-08  Kunihiro Ishiguro  <kunihiro@zebra.org>
1368         * bgp_routemap.c (match_community): Clarify help of "match
1369         community".
1371 2000-05-02  Kunihiro Ishiguro  <kunihiro@zebra.org>
1373         * bgp_aspath.c (aspath_cmp_left): Remove debug code.
1375 2000-04-27  Kunihiro Ishiguro  <kunihiro@zebra.org>
1377         * bgp_route.c (bgp_info_cmp): Compare MED only both routes comes
1378         from same neighboring AS.
1380         * bgp_aspath.c (aspath_cmp_left): Compare leftmost AS value.
1382         * bgp_route.c (bgp_info_cmp): Fix misused htonl() to ntohl().
1384 2000-04-26  Kunihiro Ishiguro  <kunihiro@zebra.org>
1386         * bgp_route.c (bgp_output_filter): When distribute-list's
1387         corresponding access-list does not exist, filter all routes.
1388         (bgp_input_filter): Likewise.
1390 2000-04-19  Kunihiro Ishiguro  <kunihiro@zebra.org>
1392         * bgp_attr.c (bgp_packet_attribute): Propagate MED to IBGP peer.
1394         * bgp_route.c (bgp_info_cmp): Add evaluation of local preference.
1396 2000-04-18  Kunihiro Ishiguro  <kunihiro@zebra.org>
1398         * bgpd.c (bgp_distribute_update): Add struct access_list *
1399         argument.
1401 2000-04-17  Kunihiro Ishiguro  <kunihiro@zebra.org>
1403         * bgp_clist.c (community_list_dup_check): Add duplicate insertion
1404         check.
1406         * bgp_filter.c (as_list_dup_check): Add duplicate insertion check.
1408         * bgp_route.c (bgp_show): Fix undeclared write variable.
1410 2000-04-13  Kunihiro Ishiguro  <kunihiro@zebra.org>
1412         * bgp_routemap.c: Add "match ip address prefix-list".
1414 2000-03-29  Rick Payne <rickp@rossfell.co.uk>
1416         * bgp_aspath.c (aspath_strip_confed): Fix realloc problem.
1418 2000-03-16  Kunihiro Ishiguro  <kunihiro@zebra.org>
1420         * bgp_fsm.c (bgp_reconnect): Connect retry timer is expired when
1421         the peer status is Connect.
1423 2000-03-03  Kunihiro Ishiguro  <kunihiro@zebra.org>
1425         * Fix bug of rewritten originator-id.
1427 2000-01-27  Rick Payne <rickp@rossfell.co.uk>
1429         * bgp_aspath.c (aspath_delimiter_char): New function.  Instead of
1430         directly referencing array, search proper AS path delimiter.
1431         (aspath_strip_confed): Strip the confederation stuff from the
1432         front of an AS path.
1433         (aspath_add_left_confed): New function for adding specified AS to
1434         the leftmost AS_CONFED_SEQUENCE.
1436         * bgp_aspath.h: Change AS_CONFED_SEQUENCE and AS_CONFED_SET value
1437         to Cisco compatible.
1439         * bgpd.c (bgp_confederation_id_set): Confederation configuration.
1440         (bgp_confederation_id_unset): Likewise.
1441         (bgp_confederation_peers_check): Likewise.
1442         (bgp_confederation_peers_add): Likewise.
1443         (bgp_confederation_peers_remove): Likewise.
1444         (bgp_confederation_peers_set): Likewise.
1445         (bgp_confederation_peers_unset): Likewise.
1446         (bgp_confederation_peers_print): Likewise.
1447         
1448 2000-01-16  Kunihiro Ishiguro  <kunihiro@zebra.org>
1450         * bgpd.c: Introduce peer_change_flag_with_reset() fucntion.
1452 2000-01-17  Kunihiro Ishiguro  <kunihiro@zebra.org>
1454         * bgp_open.c (bgp_open_option_parse): When there is no common
1455         capability send Unsupported Capability error to the peer.
1457 2000-01-14  Kunihiro Ishiguro  <kunihiro@zebra.org>
1459         * bgp_open.c (bgp_capability_mp): Fix bug of mis-negotiation about
1460         IPv6 unicast.
1462         * bgpd.c (bgp_init): Add "soft-reconfiguration inbound" command.
1463         
1464 2000-01-12  Kunihiro Ishiguro  <kunihiro@zebra.org>
1466         * bgpd.c (neighbor_strict_capability): Add
1467         "strict-capability-match" command.
1469         * bgp_zebra.c (bgp_if_update): Ignore NET127 determining
1470         router-id.
1472         * bgpd.c (peer_override_capability): Add "override-capability"
1473         command.
1475 1999-12-16  Kunihiro Ishiguro  <kunihiro@zebra.org>
1477         * bgp_packet.c (bgp_write): Change status to Idle and set timer
1478         after write failed.
1480 1999-12-14  Kunihiro Ishiguro  <kunihiro@zebra.org>
1482         * bgp_zebra.c (bgp_zebra_announce): Add info->selected check.
1484 1999-12-12  Kunihiro Ishiguro  <kunihiro@zebra.org>
1486         * bgp_route.c (nlri_unfeasible): nlri_unfeasible() is merged with
1487         nlri_parse().
1489 1999-12-10  Kunihiro Ishiguro  <kunihiro@zebra.org>
1491         * bgp_fsm.h (BGP_EVENT_DELETE): Macro added.
1493         * bgp_fsm.c (bgp_stop): Clear all event threads of the peer when
1494         the peer is cleared.
1496         * bgp_zebra.c (bgp_nexthop_set): Clear interface index of
1497         link-local address.  This is KAME specific problem.
1499 1999-12-06  Kunihiro Ishiguro  <kunihiro@zebra.org>
1501         * bgp_attr.c (bgp_mp_reach_parse): Comment out previous code for a
1502         while.  We don't completely detect the link is shared or not at
1503         this moment.
1505         * bgp_packet.c (bgp_notify_send): Make shortcut call of
1506         bgp_write() and bgp_stop().
1508         * bgp_attr.c (bgp_mp_reach_parse): Fix serious bug when getting
1509         global and link-local address.
1511 1999-12-05  Kunihiro Ishiguro  <kunihiro@zebra.org>
1513         * bgpd.c (no_neighbor_port): New command added.
1514         (peer_new): Set send_community.
1516 1999-12-04  Kunihiro Ishiguro  <kunihiro@zebra.org>
1518         * bgpd.c (show_ip_bgp_summary): Changed to use bgp_show_summary().
1519         (show_ip_mbgp_summary): Likewise.
1520         (show_ipv6_bgp_summary): Likewise.
1521         (show_ipv6_mbgp_summary): Add new command.
1522         (peer_free): Free peer->host.
1523         (peer_lookup_by_su): Delete function.
1524         (ipv6_bgp_neighbor): Changed to use peer_remote_as().
1525         (sockunion_vty_out): Function deleted.
1526         (vty_clear_bgp): Use afi instead of family.
1527         Delete old list bgp_list.  Use struct newlist *bgplist.
1528         (peer_lookup_by_host): Function deleted.
1530 1999-12-03  Kunihiro Ishiguro  <kunihiro@zebra.org>
1532         * bgpd.h (struct peer_group): New structure added.
1533         (struct peer_conf): New structure added.
1534         (struct peer): Change all prefix_count to unsigned long.
1535         
1536         * bgpd.c: Reconstruct all of VTY commands reflect internal
1537         structure change.
1538         Use bgplist instead of bgp_list.
1539         Use peerlist intstead of peer_list.
1541         * bgp_attr.c (bgp_mp_reach_parse): If nlri_parse return -1, stop
1542         parsing then return immediately.
1544         * bgp_route.c (nlri_parse): When NLRI parse error occured, return
1545         -1.
1546         (nlri_process): Use pcount_v4_{unicast,multicast}.
1547         (nlri_delete): Likewise.
1549 1999-11-25  Robert Olsson <Robert.Olsson@data.slu.se>
1551         * bgp_routemap.c (route_match_nlri): `match nlri
1552         unicast|multicast' and `set nlri unicast|multicast' command are
1553         added.
1555 1999-11-22  Robert Olsson <Robert.Olsson@data.slu.se>
1557         * bgpd.c: Add translate-update support.
1559         * bgpd.h (TRANSLATE_UPDATE_OFF): Add translate-update definition.
1561 1999-11-19  Robert.Olsson@data.slu.se
1563         * bgp_route.c (bgp_peer_delete): Add MBGP peer clear codes.
1565 1999-11-14  Kunihiro Ishiguro  <kunihiro@zebra.org>
1567         * bgp_open.c (bgp_capability_mp): Temporary comment out
1568         SAFI_UNICAST_MULTICAST handling until we know the meanings.
1570 1999-11-13  Kunihiro Ishiguro  <kunihiro@zebra.org>
1572         * bgp_btoa.c: New file added.
1574 1999-11-12  Kunihiro Ishiguro  <kunihiro@zebra.org>
1576         * bgpd.h (struct peer): Add dont_capability flag.
1577         (struct peer): Add override_capability flag.
1579         * bgpd.c (neighbor_dont_capability_negotiation): `neighbor PEER
1580         dont-capability-negotiation' added.
1582 1999-11-12  Bill Sommerfeld <sommerfeld@orchard.arlington.ma.us>
1584         * bgp_attr.c (bgp_mp_reach_parse): Ignore link-local addresses
1585         attribute from non-shared-network peers.
1587 1999-11-10  Kunihiro Ishiguro  <kunihiro@zebra.org>
1589         * bgp_snmp.c: New file added.
1591         * BGP4-MIB.txt: Updated to the latest Internet-Draft
1592         draft-ietf-idr-bgp4-mib-04.txt.
1594 1999-11-09  Kunihiro Ishiguro  <kunihiro@zebra.org>
1596         * bgp_route.c (bgp_route_init): Add `show ipv6 bgp prefix-list'.
1598         * bgp_attr.c (bgp_mp_unreach_parse): Enclose safi setup with
1599         #ifdef HAVE_MBGPV4.
1601 1999-11-08  Kunihiro Ishiguro  <kunihiro@zebra.org>
1603         * bgp_dump.c (no_dump_bgp_all): Add [PATH] and [INTERVAL] to no
1604         dump bgp commands.
1605         (config_write_bgp_dump): Write interval value to the
1606         configuration.
1608 1999-11-07  Kunihiro Ishiguro  <kunihiro@zebra.org>
1610         * bgp_zebra.c: Redistribute route-map support is added.
1612         * bgp_zebra.h: New file added.
1614 1999-11-04  Kunihiro Ishiguro  <kunihiro@zebra.org>
1616         * bgp_dump.c: BGP packet dump routine compatible with MRT.
1617         * bgp_dump.h: BGP packet dump routine compatible with MRT.
1619         * bgp_debug.c: Renamed from bgp_dump.c
1620         * bgp_debug.h: Renamed from bgp_dump.h
1622 1999-10-27  Kunihiro Ishiguro  <kunihiro@zebra.org>
1624         * BGP4-MIB.txt: New file added.  Edited version of RFC1657.
1626 1999-10-25  Bill Sommerfeld <sommerfeld@orchard.arlington.ma.us>
1628         * bgp_route.c (bgp_announce): If we're not on a shared network
1629         with the peer and we don't have a link-local next hop, but the
1630         inbound next-hop has a link-local address, don't readvertise it to
1631         our peer.
1633 1999-10-25  Marc Boucher <marc@mbsi.ca>
1635         * bgp_zebra.c: Add redistribute kernel command.
1637 1999-10-25  Kunihiro Ishiguro  <kunihiro@zebra.org>
1639         * bgp_route.c (bgp_reset): New function added.
1641         * bgpd.conf.sample2: Add IPv6 configuration sample.
1643 1999-10-24  Bill Sommerfeld <sommerfeld@orchard.arlington.ma.us>
1645         * bgp_route.c (ipv6_aggregate_address): Function added.
1647 1999-10-21  Kunihiro Ishiguro  <kunihiro@zebra.org>
1649         * bgp_packet.c (bgp_update): Unintern aspath, community, cluster
1650         list after parsing BGP update packet.
1652         * bgp_attr.c (bgp_attr_aspath): Intern parsed aspath.
1653         (bgp_attr_community): Intern parsed community.
1654         (bgp_attr_cluster_list): Intern parsed cluster list.
1656         * bgp_routemap.c: Add `set community-additive' command.
1658 1999-10-21  Alexandr D. Kanevskiy <kad@blackcatlinux.com>
1660         * bgp_routemap.c (route_set_local_pref): Fix bug of setting
1661         attribute flag.
1663 1999-10-21  Bill Sommerfeld <sommerfeld@orchard.arlington.ma.us>
1665         * bgp_route.c (bgp_announce): Add check of IPv6 default route
1666         announcement.
1668         * bgp_packet.c (bgp_update_send): Add BGP announcement logging.
1670 1999-10-15  Kunihiro Ishiguro  <kunihiro@zebra.org>
1672         * `show ip[v6] bgp PREFIX' show uptime of the route.
1674 1999-10-04  Kunihiro Ishiguro  <kunihiro@zebra.org>
1676         * bgpd.c (bgp_filter_set): Delete PEER_FAMILY_{IPV4,IPV6}. instead
1677         of that use AF_INET and AF_INET6 directly.
1678         (vty_clear_bgp): Add new function to support various clear ip bgp
1679         method.
1681 1999-10-04  Lars Fenneberg <lf@elemental.net>
1683         * bgpd.c (clear_ip_bgp): Add `clear ip bgp ASN'.
1685 1999-10-03  Kunihiro Ishiguro  <kunihiro@zebra.org>
1687         * bgp_routemap.c: Add `match ip prefix-list' and `match ipv6
1688         prefix-list'.
1690 1999-09-28  Kunihiro Ishiguro  <kunihiro@zebra.org>
1692         * bgpd.c (bgp_collision_detect): Add BGP collision detection
1693         function.
1695 1999-09-26  Blake Meike <bmeike@adero.com>
1697         * bgpd.c (neighbor_port): New command `neighbor PEER port PORT' is
1698         added.
1700 1999-08-24  Kunihiro Ishiguro  <kunihiro@zebra.org>
1702         * bgpd.c (no_neighbor_timers_keepalive): Change MIN to min.  Add
1703         min() macro.
1705 1999-08-19  Rick Payne <rickp@rossfell.co.uk>
1707         * bgp_packet.c (bgp_open): BGP holdtimer bug is fixed.  Make BGP
1708         keepalive timer configurable.
1710 1999-08-15  Kunihiro Ishiguro  <kunihiro@zebra.org>
1712         * bgp_zebra.c (bgp_redistribute_set): Fix redistribute bug.
1714 1999-08-13  Kunihiro Ishiguro  <kunihiro@zebra.org>
1716         * bgpd.c (bgp_peer_display): show ip bgp neighbors PEER only list
1717         the peer not all of them.
1719 1999-08-11  Rick Payne <rickp@rossfell.co.uk>
1721         * bgp_route.c (bgp_announce): Remove MED if its an EBGP peer -
1722         will get overwritten by route-maps.
1724 1999-08-08  Rick Payne <rickp@rossfell.co.uk>
1726         * bgp_routemap.c: Multi protocol route-map modification.
1728 1999-08-01  Kunihiro Ishiguro  <kunihiro@zebra.org>
1730         * bgp_route.c: Set network statement route's origin attribute as
1731         igp.
1733         * bgp_zebra.c: Set redistribute route's origin attribute as
1734         incomplete.
1736         * bgp_route.c (bgp_info_cmp): Add attribute existance check,
1737         origin attribute check, BGP peer type check.
1739 1999-07-30  Kunihiro Ishiguro  <kunihiro@zebra.org>
1741         * bgp_route.c (bgp_peer_delete): Reselect of IPv6 route.
1743 1999-07-29  Rick Payne <rickp@rossfell.co.uk>
1745         * Changed route-maps to behave in a more cisco-like fashion
1747 1999-07-27  Kunihiro Ishiguro  <kunihiro@zebra.org>
1749         * bgp_fsm.c (bgp_stop): Very serious bug of bgp_stop () is fixed.
1750         When multiple route to the same destination exist, bgpd try to
1751         announce the information to stopped peer.  Then add orphan write
1752         thread is added.  This cause many strange behavior of bgpd.
1753         Reported by Georg Hitsch <georg@atnet.at>.
1755 1999-07-23  Kunihiro Ishiguro  <kunihiro@zebra.org>
1757         * bgpd.c: Change peer's A.B.C.D to PEER.
1759 1999-07-22  Kunihiro Ishiguro  <kunihiro@zebra.org>
1761         * bgp_route.c (bgp_announce): Add hack for link-local nexthop.
1763         * bgp_zebra.c (bgp_zebra_announce): Fill in nexthop address from
1764         local address.
1766 1999-07-21  Kunihiro Ishiguro  <kunihiro@zebra.org>
1768         * bgp_packet.c (bgp_open): Holdtime fetch bug is fixed.  Reported
1769         by Yuji SEKIYA <sekiya@sfc.wide.ad.jp>.
1771 1999-07-15  Kunihiro Ishiguro  <kunihiro@zebra.org>
1773         * bgp_fsm.c (fsm_holdtime): Don't close file descriptor in
1774         fsm_holdtime ().
1776 1999-07-11  Kunihiro Ishiguro  <kunihiro@zebra.org>
1778         * bgp_routemap.c: Add `set atomic-aggregate' command.
1780 1999-07-06  Kunihiro Ishiguro  <kunihiro@zebra.org>
1782         * bgp_routemap.c (route_set_ip_nexthop_cmd): Change "ip nexthop"
1783         to "ip next-hop".
1784         
1785 1999-07-02  Kunihiro Ishiguro  <kunihiro@zebra.org>
1787         * bgp_route.c (show_ipv6_bgp_regexp): `show ipv6 bgp regexp'
1788         added.
1790 1999-07-01  Rick Payne <rickp@rossfell.co.uk>
1792         * bgp_zebra.c (zebra_init): Install standard commands to
1793         ZEBRA_NODE.
1795 1999-06-28  Rick Payne <rickp@rossfell.co.uk>
1797         * bgpd.c (bgp_delete): bgp peer deletion bug is fixed.
1799 1999-06-25  Kunihiro Ishiguro  <kunihiro@zebra.org>
1801         * bgpd.c: Add neighbor update-source command as ALIAS to
1802         neighbor_interface.
1804 1999-06-19  Kunihiro Ishiguro  <kunihiro@zebra.org>
1806         * bgp_attr.c (bgp_packet_attribute): Send community attribute when
1807         send_community flag is set.
1809         * bgpd.h (struct peer): Add send_community flag.
1811 1999-06-12  Kunihiro Ishiguro  <kunihiro@zebra.org>
1813         * bgpd.c (router_bgp): router bgp's argument changed from AS_NO to
1814         <1-65535>.
1816 1999-06-08  Kunihiro Ishiguro  <kunihiro@zebra.org>
1818         * bgp_route.h (struct bgp_info): Add subtype for BGP route type.
1820 1999-06-07  Kunihiro Ishiguro  <kunihiro@zebra.org>
1822         * bgp_community.c (community_merge): Function added.
1824 1999-06-04  Kunihiro Ishiguro  <kunihiro@zebra.org>
1826         * bgp_clist.c: New file.
1827         * bgp_clist.h: New file.
1829         * bgp_community.h (COMMUNITY_LOCAL_AS): Added for Cisco
1830         compatibility.
1831         (COMMUNITY_NO_ADVERTISE): Fix typo.
1833 1999-05-30  Kunihiro Ishiguro  <kunihiro@zebra.org>
1835         * bgp_routemap.c: Add `set weight WEIGHT' command.
1837         * bgpd.c: Remove all_digit_check function.  Instead of that use
1838         all_digit function in lib/prefix.c.
1840         * bgp_routemap.c (bgp_route_map_init): Install
1841         no_set_ipv6_nexthop_global_cmd and no_set_ipv6_nexthop_local_cmd
1842         element to the RMAP_NODE.
1844 1999-05-28  Kunihiro Ishiguro  <kunihiro@zebra.org>
1846         * bgp_aspath.c (aspath_make_str): Declare aspath_delimiter_char
1847         inside aspath_make_str function.
1848         (aspath_prepend): New function is added for AS path prepend.
1849         (aspath_make_str_count): Renamed from aspath_make_str.  AS path
1850         count is set to the structure.
1851         (aspath_merge): New function.
1853 1999-05-22  Kunihiro Ishiguro  <kunihiro@zebra.org>
1855         * bgp_zebra.c (redistribute_bgp): Add new DEFUN.
1856         (no_redistribute_bgp): Likewise.
1857         (router_zebra): Semantics changed.  Now 'router zebra' is default
1858         behavior of bgpd.
1860 1999-05-14  Kunihiro Ishiguro  <kunihiro@zebra.org>
1862         * bgp_routemap.c: Add some commands to bgp route-map.
1863         match ip next-hop: New command.
1864         match metric: New command.
1865         set metric: Doc fix.
1866         set local-preference: Add DEFUN.
1868 1999-05-14  Stephen R. van den Berg <srb@cuci.nl>
1870         * bgp_main.c (signal_init): SIGTERM call sigint.
1871         (sigint): Loggging more better message.
1873 1999-05-12  Kunihiro Ishiguro  <kunihiro@zebra.org>
1875         * bgp_attr.c (bgp_packet_attribute): AS path attribute extended
1876         length bit check is added.
1878 1999-05-11  Kunihiro Ishiguro  <kunihiro@zebra.org>
1880         * bgp_routemap.c (bgp_route_map_init): Call route_map_install_set
1881         function with route_set_local_pref_cmd argument.
1882         (no_match_aspath): Function added.
1883         (route_set_metric): Set attribute flag bit.
1885         * bgp_attr.c (bgp_packet_attribute): MULTI_EXIT_DISC is now in BGP
1886         packet.
1888 1999-05-07  Kunihiro Ishiguro  <kunihiro@zebra.org>
1890         * bgpd.c (no_neighbor_timers_holdtime): `no neighbor PEER timers
1891         holdtime' command is added.
1893         * bgpd.h (BGP_DEFAULT_HOLDTIME_BIG): Delete define.
1895         * bgpd.c (bgp_prefix_list_set): New function added.
1896         (bgp_prefix_list_unset): Likewise.
1897         (bgp_prefix_list_update): Likewise.
1898         (show_ip_bgp_neighbors): prefix-list information display.
1900 1999-05-06  Kunihiro Ishiguro  <kunihiro@zebra.org>
1902         * bgpd.c (bgp_delete): Function added for `no router bgp'.
1904 1999-05-05  Kunihiro Ishiguro  <kunihiro@zebra.org>
1906         * bgp_dump.c (bgp_dump_attr): Add originator_id display.
1908         * bgpd.c (bgp_router_id): Even when address is malformed set the
1909         value to configuration bug fixed.
1910         (no_bgp_router_id): New function.
1911         (no_bgp_cluster_id): New function.
1913 1999-05-04  Kunihiro Ishiguro  <kunihiro@zebra.org>
1915         * bgpd.h (BGP_ATTR_ORIGINATOR_ID): Changed from BGP_ATTR_ORIGINATOR.
1917 1999-05-02  Kunihiro Ishiguro  <kunihiro@zebra.org>
1919         * bgp_route.c (bgp_announce): Add route reflector check.
1921 1999-05-01  Kunihiro Ishiguro  <kunihiro@zebra.org>
1923         * bgpd.c (bgp_cluster_id): Add function for route reflector.
1924         (neighbor_route_reflector_client): Likewise.
1925         (no_neighbor_route_reflector_client): Likewise.
1927         * bgpd.h (struct bgp ): Add cluster for route reflector.
1929         * bgp_route.c (show_ip_bgp_prefix_list): New command is added.
1931 1999-04-24  Kunihiro Ishiguro  <kunihiro@zebra.org>
1933         * Makefile.am (noinst_HEADERS): Add bgp_filter.h
1935         * bgp_aspath.c (aspath_undup): Function deleted.  aspath_free ()
1936         has same functionality.
1938         * bgp_filter.h: New file.
1940         * bgp_aspath.c (aspath_unintern): Rename aspath_free () to
1941         aspath_unintern ()
1942         (aspath_free): New function.
1944 1999-04-23  Kunihiro Ishiguro  <kunihiro@zebra.org>
1946         * bgp_aspath.c (aspath_aggregate): Function added.
1948         * bgp_aspath.h (aspath_aggregate): Prototype added.
1950         * bgp_aspath.c (aspath_empty_aspath): New argument
1951         gated_dont_eat_flag is added.
1953 1999-04-18  Kunihiro Ishiguro  <kunihiro@zebra.org>
1955         * bgp_route.c: Add bgp_aggregate_ipv4 and bgp_aggregate_ipv6.
1957 1999-04-17  Kunihiro Ishiguro  <kunihiro@zebra.org>
1959         * bgp_route.c (aggregate_address): Function added.
1961         * bgp_zebra.c (zebra_read): Change log to zlog.
1963 1999-04-15  Kunihiro Ishiguro  <kunihiro@zebra.org>
1965         * Makefile.am (noninst_HEADERS): Added for make dist.
1967 1999-04-09  Kunihiro Ishiguro  <kunihiro@zebra.org>
1969         * aspath_regex.c: Removed from distribution.
1971 1999-04-07  Kunihiro Ishiguro  <kunihiro@zebra.org>
1973         * bgp_attr.c (bgp_packet_attribute): Old draft-00 packet treatment
1974         bug fixed.
1976 1999-04-06  Kunihiro Ishiguro  <kunihiro@zebra.org>
1978         * bgp_aspath.c (aspath_add_left): Fix empty aspath bug.  Reported
1979         by kad@gibson.skif.net.
1981         * bgp_regex.[ch]: New file added.
1983         
1984 1999-04-05  Kunihiro Ishiguro  <kunihiro@zebra.org>
1986         * bgp_filter.c: New file added.
1988 1999-04-01  Kunihiro Ishiguro  <kunihiro@zebra.org>
1990         * bgp_aspath.c (aspath_empty_aspath): Change for peering with
1991         gated.
1993 1999-03-24  Kunihiro Ishiguro  <kunihiro@zebra.org>
1995         * bgp_main.c (main): Default loggin method changed from syslog to
1996         stdout.
1998 1999-03-05  Kunihiro Ishiguro  <kunihiro@zebra.org>
2000         * bgp_route.c: Delete obsolete default attribute DEFUN.
2002 1999-03-04  Kunihiro Ishiguro  <kunihiro@zebra.org>
2004         * bgp_attr.c: Make attribute structure put into attribute hash.
2006 1999-03-02  Kunihiro Ishiguro  <kunihiro@zebra.org>
2008         * bgp_view.c : Delete file.
2010 1999-02-25  Kunihiro Ishiguro  <kunihiro@zebra.org>
2012         * bgp_routemap.c (bgp_apply_route_map): Add prefix argument. 
2014         * bgp_route.h (struct bgp_info): Add bgp_info structre.  I'll
2015         replace bgp_route with this.
2017         * bgp_routemap.c (route_match_ip_address): Fix bug of passing non
2018         prefix value to access_list_apply(). 
2020         * bgpd.conf.sample: Add route-map sample.
2021         Delete obsolete default-attr statements.
2023         * bgp_packet.c: Use stream_fifo for packet queueing.
2025 1999-02-24  Kunihiro Ishiguro  <kunihiro@zebra.org>
2027         * bgp_aspath.c (aspath_add_left): add non empty aspath treatment.
2029         * bgp_main.c: include unistd.h for daemon().
2031         * bgp_route.c (nlri_process): add IPv6 table lookup.
2033         * bgp_attr.c (route_parse_ipv6): call nlri_process().
2034         (attr_make): Obsolete function attr_make deleted.
2036 1999-02-22  Kunihiro Ishiguro  <kunihiro@zebra.org>
2038         * bgp_aspath.c (aspath_add_left): change function name from
2039         aspath_add_leftmost_as().
2041 1999-02-21  Kunihiro Ishiguro  <kunihiro@zebra.org>
2043         * bgp_aspath.c: add aspath_add_leftmost_as ().
2045 1999-02-18  Peter Galbavy  <Peter.Galbavy@knowledge.com>
2047         * syslog support added
2049 1999-01-26  Kunihiro Ishiguro  <kunihiro@zebra.org>
2051         * bgpd.c: DEFUN (neighbor_nexthop): deleted.
2052         DEFUN (neighbor_distribute_list): added.
2054 1999-01-19  Kunihiro Ishiguro  <kunihiro@zebra.org>
2056         * bgpd.h (struct peer ): header_buf and read_buf is removed.
2058         * bgp_peer.[ch]: Deleted.  Peer related functions are merged to
2059         bgpd.c
2061         * bgp_network.c: New file.
2062         * bgp_network.h: New file.
2064         * bgp_packet.h: New file.
2065         
2066 1999-01-11  Kunihiro Ishiguro  <kunihiro@zebra.org>
2068         * bgp_packet.c (bgp_keepalive_send): Now BGP keepalive packet is
2069         buffered.
2071 1999-01-08  Kunihiro Ishiguro  <kunihiro@zebra.org>
2073         * bgp_packet.c: New file.
2075 1998-12-22  Kunihiro Ishiguro  <kunihiro@zebra.org>
2077         * bgp_zebra.c (zebra_client): Use zebra_connect() in lib/client.c. 
2079         * `show ip bgp' bug fixed.
2080         * aspath_log (): Remove argument logfp.
2082 1998-12-15  Kunihiro Ishiguro  <kunihiro@zebra.org>
2084         * bgp_fsm.h: New file.
2086 1998-12-15  Magnus Ahltorp <map@stacken.kth.se>
2088         * bgp_attr.c, bgp_community.h, bgp_dump.c, bgp_fsm.c, bgp_open.c
2089         bgp_peer.c, bgp_peer.h, bgp_route.c, bgp_route.h, bgp_view.c
2090         bgpd.c, bgpd.h, bgp_attr.c, bgp_community.h, bgp_dump.c,
2091         bgp_fsm.c, bgp_open.c, bgp_peer.c, bgp_peer.h: Prototype fixes.
2093 1998-12-09  Kunihiro Ishiguro  <kunihiro@zebra.org>
2095         * bgpd.c (bgp_config_write): Delete vector v argument.
2097 1998-12-07  Kunihiro Ishiguro  <kunihiro@zebra.org>
2099         * bgpd.h: Delete annoying ld_[124]byte and st_[124]byte macros.
2101 1998-11-23  Kunihiro Ishiguro  <kunihiro@zebra.org>
2103         * bgp_radix.[ch]: removed.
2105 1998-09-15  HEO SeonMeyong  <seirios@matrix.iri.co.jp>
2107         * bgp_main.c: ifdef HYDRANGEA -> ifdef KAME
2109 1998-08-13  Kunihiro Ishiguro  <kunihiro@zebra.org>
2111         * bgp_dump.c: delete nroute().
2113 1998-05-19  Yamshita TAKAO  <jargon@lares.dti.ne.jp>
2115         * bgp_aspath.c: HAVE_CONFIG_H typo :-)
2116         * bgpd.h: Modify for compile on Solaris.
2117         * bgp_aspath.h: likewize
2118         * bgp_community.h: likewize
2119         * bgp_routemap.c: likewize
2121 1998-05-18  Yamshita TAKAO  <jargon@lares.dti.ne.jp>
2123         * bgpd.h: Modify for compile on Solaris.
2124         * bgp_aspath.h: likewize
2126 1998-05-08  Kunihiro Ishiguro  <kunihiro@zebra.org>
2128         * routemap.[ch]: move to ../lib directory.
2130 1998-05-07  Kunihiro Ishiguro  <kunihiro@zebra.org>
2132         * routemap.c (route_map_apply): add function.
2134 1998-05-06  Kunihiro Ishiguro  <kunihiro@zebra.org>
2136         * routemap.h: add file.
2138         * bgp_peer.h (enum ): change PEER_{IBGP,EBGP} to BGP_PEER_{IBGP,EBGP}
2140 1998-05-03  Kunihiro Ishiguro  <kunihiro@zebra.org>
2142         * Makefile.am: sysconfdir_DATA added.
2144 1998-05-02  Kunihiro Ishiguro  <kunihiro@zebra.org>
2146         * bgp_dump.c: add `debug bgp fsm'
2147                       add `no debug bgp fsm'
2148                       add `show debug bgp'
2149         * bgp_open.c: File added.
2151 1998-05-01  Kunihiro Ishiguro  <kunihiro@zebra.org>
2153         * .cvsignore: File added.
2155 1998-04-30  Kunihiro Ishiguro  <kunihiro@zebra.org>
2157         * bgp_community.[ch]: File added.
2159 1998-03-04  Kunihiro Ishiguro  <kunihiro@zebra.org>
2161         * bgpd now use lib/thread.[ch].
2163 1998-01-06  Kunihiro Ishiguro  <kunihiro@zebra.org>
2165         * bgpd.c (show_ip_bgp_neighbors): add 'show ip bgp neighbors' command.
2167         * bgpd.h (BGP_DEFAULT_START_TIMER): change from 1 to 30.
2169 1997-12-30  Kunihiro Ishiguro  <kunihiro@zebra.org>
2171         * bgp_vty.c: bgp_vty.c deleted.
2173         * bgpd.c (config_write_neighbor): add ebgp-multihop command.
2175 1997-12-29  Kunihiro Ishiguro  <kunihiro@zebra.org>
2177         * bgp_fsm.c: [-p bgp_port] and [-P vty_port] works
2179 1997-12-06  Kunihiro Ishiguro  <kunihiro@zebra.org>
2181         * bgp_vty.c: new file.
2183         * bgp_attr.c: add new logging system.
2185 1997-11-23  Kunihiro Ishiguro  <kunihiro@zebra.org>
2187         * Change all inet_addr call into inet_aton.
2189 1997-11-10  Kunihiro Ishiguro  <kunihiro@zebra.org>
2191         * bgp_radix.c: change radix_peer_delete
2193 1997-10-04  Kunihiro Ishiguro  <kunihiro@zebra.org>
2195         * bgp_aspath.c: move AS_TOKEN_??? definition from header to c source.
2197 1997-09-12  Kunihiro Ishiguro  <kunihiro@zebra.org>
2199         * bgp_dump.c (bgp_log_route): add dump_attr function
2201 1997-09-06  Kunihiro Ishiguro  <kunihiro@zebra.org>
2203         * bgp_aspath.c (aspath_test): change AS_SET brace from '[' to '{'
2204         * bgp_dump.c (bgp_log_route): change logfile format.
2206 1997-08-19  Kunihiro Ishiguro  <kunihiro@zebra.org>
2208         * bgp_open.c (bgp_open): move bgp_open function from bgpd.c
2209         * bgp_attr.c (community_str2com): add community value generation
2210         * bgp_attr.h: add SAFI definition for BGP-4+
2212 1997-08-18  Kunihiro Ishiguro  <kunihiro@zebra.org>
2214         * bgpd.h: add BGP_OPEN_OPT_CAP for Capabilities Optional Parameter
2215         * Makefile.in: add bgp_open.o, delete bgp_loop.o
2216         * bgp_open.c: newfile which manages BGP Open message
2217         * bgp_loop.c: this file is merged with bgp_fsm.c
2218         * bgp_radix.c (radix_add): radix_add() now return route_t instead
2219         of int
2220         (bgp_sim): now we can read update & withdraw from file
2221         * bgp_route.c: add route_free() call into route_parse etc.
2223 1997-08-17  Kunihiro Ishiguro  <kunihiro@zebra.org>
2225         * bgp_radix.c: Radix code is completely rewritten. It has better
2226         memory treatment than old one.
2228 1997-08-14  Kunihiro Ishiguro  <kunihiro@zebra.org>
2230         * bgp_route.c: route_alloc for route struct allocation statistics.
2231         * bgpd.c (bgp_make_update): now we cann announce MED attribute.
2232         * bgp_aspath.c (aspath_print_all): change aspath_print_all output
2233         format.
2235 1997-08-13  Kunihiro Ishiguro  <kunihiro@zebra.org>
2237         * bgp_term.c (term_parse): add command : show asstat, show ashash
2238         * bgp_aspath.c: aspath_cmp bug fix
2239         (aspath_print_all): add aspath_print_all ();
2240         * bgp_peer.h: delete rlist element from struct peer.
2242 1997-08-12  Kunihiro Ishiguro  <kunihiro@zebra.org>
2244         * bgp_aspath.c: completely rewritten.
2245         * bgp_aspath.h: completely rewritten.
2246         add AsPath, AsSegment structure
2247         add AS_SET treatment
2248         change Hash codes
2250 1997-08-09  Kunihiro Ishiguro  <kunihiro@zebra.org>
2252         * bgp_attr.h: add Attribute flags defines
2253         * bgp_route.c: delete rlist related functions
2254         * bgp_aspath.c (as_origin): add as_origin function
2255         (aspath_print): move from bgp_dump.c and add support of AS_SET
2256         change Hash related function names.
2258 1997-08-08  Kunihiro Ishiguro  <kunihiro@zebra.org>
2260         * bgp_aspath.h: add next entry, delete rlist entry from struct aspath
2262 1997-08-04  Kunihiro Ishiguro  <kunihiro@zebra.org>
2264         * bgp_aspath.c (as_sort): add function as_sort
2265         * bgp_aspath.h: add IBGP, EBGP