1 2004-12-03 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
3 * ospf_packet.c: (ospf_db_desc) Reduce priority on a debug message
4 from LOG_NOTICE to LOG_DEBUG.
6 2004-12-03 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
8 * ospf_main.c: (sigint) Use zlog_notice for termination message.
9 (main) Issue a startup announcement using zlog_notice.
11 2004-11-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
13 * ospf_packet.c: (ospf_db_desc_proc) Fix spelling of packet in warning
14 message and in comment.
15 (ospf_db_desc) Warning message that a packet is being discarded
16 should give the router id of the packet source. Fix spelling
17 of packet in two warning messages.
18 (ospf_ls_req) Warning message that a link state request is being
19 discarded should give the router id of the neighbor that sent it.
21 2004-11-26 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
23 * ospf_main.c: Remove #include "debug.h" (was not being used, and
24 lib/debug.h has now been deleted).
26 2004-11-25 Hasso Tepper <hasso at quagga.net>
28 * ospf_main.c: Make group to run as configurable.
30 2004-11-15 Greg Troxel <gdt@fnord.ir.bbn.com>
32 * ospf_packet.c (ospf_recv_packet): Assume CMSG_SPACE is present
33 and works (lib/zebra.h provides if OS doesn't).
35 2004-11-15 Paul Jakma <paul@dishone.st>
37 * ospf_{apiserver,te}.c: ospf_lsa_free's should be ospf_lsa_unlock.
39 2004-11-12 Paul Jakma <paul@dishone.st>
41 * ospf_ia.c: (process_summary_lsa) Only an ABR has any reason to
42 ignore stub area summary default. Even so it seems a strange
43 check, add a comment to that effect.
45 2004-11-04 Paul Jakma <paul@dishone.st>
47 * ospfd.c: (ospf_network_match_iface) revert to previous network
48 statement match behaviour.
50 2004-11-02 Paul Jakma <paul@dishone.st>
52 * ospf_packet.c: (ospf_write_frags) remove iov arg, msg already points
53 to it. Add convenience pointer to msg->msg_iov[1], and use this,
54 fixing the unfortunate borkenness introduced in moving of this code
56 (ospf_write) remove iovp and fix up call to previous.
57 (ospf_ls_upd_packet_new) cast size to long int - unfortunately
58 glibc's size_t format modifier is not portable.
60 2004-10-31 Paul Jakma <paul@dishone.st>
62 * ospf_packet.c: (ospf_write_frags) Add debug output
63 (ospf_write) set type early, so we can pass it to
65 (ospf_ls_upd_packet_new) print size in debug output when too large
66 packet is encountered.
67 * ospf_zebra.c: (ospf_distribute_list_update_timer) Ugly misuse of
68 THREAD_ARG to store an integer, but it should at least use same
69 same type to retrieve the value. Assert value is sane.
71 2004-10-22 Paul Jakma <paul@dishone.st>
73 * ospf_network.c: (ospf_sock_init) call neutral setsock_ifindex()
75 * ospf_packet.c: (ospf_read) manually look up ifindex
76 if system could not have returned one, eg openbsd, thanks to Rivo
77 Nurges for highlighting problem and fix.
78 Change setsockopt_pktinfo to setsockopt_ifindex.
80 2004-10-19 Andrew J. Schorr <aschorr@telemetry-investments.com>
82 * ospf_snmp.c: (ospf_snmp_if_update) Fix logic to handle PtP links
83 with dedicated subnets properly.
84 * ospf_lsa.c: (lsa_link_ptop_set) ditto.
85 * ospfd.c: (ospf_network_match_iface) ditto.
86 (ospf_network_run) ditto.
87 * ospf_interface.c: (ospf_if_is_configured) ditto.
88 (ospf_if_lookup_by_prefix) ditto.
89 (ospf_if_lookup_recv_if) ditto.
90 * ospf_vty.c: (show_ip_ospf_interface_sub) Display the peer or
91 broadcast address if present.
93 2004-10-13 Hasso Tepper <hasso at quagga.net>
95 * ospf_main.c: Unbreak compilation with ospfapi disabled.
96 * ospf_snmp.c: Remove defaults used to initialize smux connection to
97 snmpd. Connection is initialized only if smux peer is configured.
99 2004-10-12 Hasso Tepper <hasso at quagga.net>
101 * ospf_main.c, ospf_opaque.c: Unbreak ospfclient compilation - move
102 static variable from ospf_main.c into ospf_opaque.c.
104 2004-10-11 Hasso Tepper <hasso at quagga.net>
106 * ospf_main.c, ospf_opaque.c: Disable ospfapi init by default. New
107 command line switch to enable it.
109 2004-10-11 Paul Jakma <paul@dishone.st>
111 * ospf_dump.c: (ospf_ip_header_dump) Assume header is in host order
112 remove ntohs that should have dissappeared. Take struct ip
113 as argument, caller has to know there's an IP header at start of
115 * ospf_dump.h: update declaration of ospf_ip_header_dump.
116 * ospf_packet.c: (ospf_write) correct call to
117 sockopt_iphdrincl_swab_htosys which was munging the header.
118 (ospf_recv_packet) ip_len is needed for old OpenBSD fixup.
119 (ospf_read) sockopt_iphdrincl_swab_systoh ip header as soon as
121 * (global) Const char update and signed/unsigned fixes.
122 * (various headers) size defines should be unsigned.
123 * ospf_interface.h: remove duplicated defines, include the
124 authoritative header - though, these defines should probably
125 be moved to a dedicated header, or ospfd.h.
126 * ospf_lsa.h: (struct lsa) ls_seqnum should be unsigned.
127 * ospf_packet.c: (ospf_write) cast result of shift to unsigned.
129 2004-10-08 Hasso Tepper <hasso at quagga.net>
131 * *.[c|h]: Fix compiler warnings: make some strings const, signed ->
132 unsigned, remove unused variables etc.
134 2004-10-07 Greg Troxel <gdt@claude.ir.bbn.com>
136 * ospf_apiserver.c (ospf_apiserver_unregister_opaque_type): Don't
137 use of variable names 'node' and 'nextnode' to avoid possible
138 conflict with list macros. Move variable declaration inside for
139 loop after a statement to top of function.
141 2004-10-07 Paul Jakma <paul@dishone.st>
143 * ospf_snmp.c: Missed list typedef update
144 * ospf_dump.c: Include sockopt.h for header swab functions.
146 2004-10-05 Paul Jakma <paul@dishone.st>
148 * ospf_packet.c: replace ospf_swap_iph_to... with
149 sockopt_iphdrincl_swab_...
151 2004-10-03 James R. Leu <jleu at mindspring.com>
153 * ospf_zebra.c: Read router id related messages from zebra daemon.
154 Schedule router-id update thread if it's changed.
155 * ospfd.c: Remove own router-id selection function. Use router id from
156 zebra daemon if it isn't manually overriden in configuration.
158 2004-09-27 Paul Jakma <paul@dishone.st>
160 * ospf_dump.c: (ospf_ip_header_dump) Use HAVE_IP_HDRINCL_BSD_ORDER
161 Apply to offset too. Print ip_cksum, lets not worry about
162 possible 2.0.37 compile problems.
163 * ospf_packet.c: (ospf_swap_iph_to{n,h}) Use
164 HAVE_IP_HDRINCL_BSD_ORDER.
165 (ospf_recv_packet) ditto.
166 (ospf_write) Fixup iov argument to ospf_write_frags.
167 (struct msghdr).msg_name is caddr_t on most platforms.
168 (ospf_recv_packet) ditto. And msg_flags is not always there
169 memset struct then set fields we care about rather than
170 initialise all fields individually.
172 2004-09-26 Hasso Tepper <hasso at quagga.net>
174 * ospf_abr.c, ospf_dump.c, ospf_lsa.c, ospf_packet.c, ospf_vty.c,
175 ospf_zebra.c: Fix compiler warnings.
177 2004-09-24 Paul Jakma <paul@dishone.st>
179 * ospf_apiserver.{c,h}: lists typedef removal cleanup.
180 update some list loops to LIST_LOOP. some miscellaneous indent
182 (ospf_apiserver_unregister_opaque_type) fix listnode_delete of
183 referenced node in loop.
184 (ospf_apiserver_term) loops calling ospf_apiserver_free, which
185 deletes referenced nodes from apiserver_list, fixed.
186 * ospf_interface.h: lists typedef removal cleanup.
187 * ospf_opaque.{c,h}: lists typedef removal cleanup. update some list
188 loops to LIST_LOOP. miscellaneous style and indent fixups.
189 * ospf_te.{c,h}: ditto
190 * ospf_packet.c: lists typedef removal cleanup.
191 (ospf_write) ifdef fragmentation support. move actual
192 fragmentation out to a new, similarly ifdefed, function.
193 (ospf_write_frags) fragmented write support, moved from previous.
195 2004-09-23 Hasso Tepper <hasso at quagga.net>
197 * *.[c|h]: list -> struct list *, listnode -> struct listnode *.
199 2004-09-12 Paul Jakma <paul@dishone.st>
201 * ospf_packet.c: Fix bugzilla #107
202 (ospf_packet_max) get rid of the magic 88 constant
203 (ospf_swab_iph_ton) new function. set ip header to network order,
204 taking BSDisms into account.
205 (ospf_swab_iph_toh) the inverse.
206 (ospf_write) Add support for IP fragmentation, will only work on
207 linux though, other kernels make it impossible. get rid of the
209 (ospf_make_ls_upd) Bound check to end of stream, not to
211 (ospf_ls_upd_packet_new) New function, allocate upd packet
212 taking oversized LSAs into account.
213 (ospf_ls_upd_queue_send) use ospf_ls_upd_packet_new to allocate,
214 rather than statically allocating mtu sized packet buffer, which
215 actually was wrong - it didnt take ip header into account, which
216 should not be included in packet buffer.
217 (ospf_ls_upd_send_queue_event) minor tweaks and remove
220 2004-08-31 David Wiggins <dwiggins@bbn.com>
222 * ospf_spf.c (ospf_spf_calculate): Many more comments and debug
223 print statements. New function ospf_vertex_dump used in debugging.
225 2004-08-31 David Wiggins <dwiggins@bbn.com>
227 * ospf_spf.h (struct vertex): Comments for flags and structure members.
229 2004-08-31 David Wiggins <dwiggins@bbn.com>
231 * ospf_route.c: When finding an alternate route, log cost as well.
233 2004-08-31 David Wiggins <dwiggins@bbn.com>
235 * ospf_interface.c (ospf_lookup_if_params): Initialize af in
236 struct prefix allocated on stack.
238 2004-08-31 David Wiggins <dwiggins@bbn.com>
240 * ospf_packet.c (ospf_ls_ack_send_delayed): In p2mp mode, send
241 acks to AllSPFRouters, rather than All-DR.
243 2004-08-27 Hasso Tepper <hasso at quagga.net>
245 * ospf_vty.c: Don't print ospf network type under interface only
246 if interface is in broadcast mode and interface type really is
247 broadcast. Fixes Bugzilla #108.
249 2004-08-27 David Wiggins <dwiggins@bbn.com>
251 * ospf_spf.c (ospf_nexthop_calculation): Initialize address family
252 in on-stack struct prefix_ipv4. Fixes point-to-multipoint SPF
255 2004-08-26 Greg Troxel <gdt@fnord.ir.bbn.com>
257 * ospf_packet.c (ospf_recv_packet): adjust size declaration of
258 buffer used to get interface index so that it compiles on other
259 than Linux and includes the required alignment space. Probably
260 this was only working on sparc/sparc64 because most of
261 sockaddr_dl was not being written.
263 2004-08-19 Paul Jakma <paul@dishone.st>
265 * ospf_packet.c: update to match sockopt renames.
267 2004-08-04 Paul Jakma <paul@dishone.st>
269 * ospf_spf.c: (ospf_spf_consider_nexthop) Add comment about issue.
270 Compare only against list head - all nexthops must be same cost
271 anyway, fixes a reference-listnode-after-delete bug noted by
273 (ospf_nexthop_calculation) Use ospf_spf_consider_nexthop for all
274 candidates attached to root.
276 2004-07-27 Paul Jakma <paul@dishone.st>
278 * ospf_packet.c: (ospf_ls_upd_send_queue_event) fix thinko from
279 last fix for ospfd wedging due to oversize LSAs: dont list loop on
280 ospf_ls_upd_queue_send() - guaranteed segfault.
282 2004-07-27 Paul Jakma <paul@dishone.st>
284 * ospf_opaque.c: (ospf_opaque_lsa_flush_schedule) do not NULL out
285 the LSA as then free_opaque_info_per_id() can never unlock (and
286 free) the LSA. Reported by Gunnar Stigen.
288 2004-07-23 Paul Jakma <paul@dishone.st>
290 * ospf_network.c: Replace PKTINFO/RECVIF with call to
292 * ospf_packet.c: Use getsockopt_pktinfo_ifindex and
293 SOPT_SIZE_CMSG_PKTINFO_IPV4.
295 2004-07-14 Paul Jakma <paul@dishone.st>
297 * ospf_packet.c: (ospf_ls_upd_send_queue_event) Partial fix for
298 problem reported by Peter Frost amongst others, where function
299 will spin indefinitely if update list contains LSAs greater than
300 MTU-headers or other condition leading to update list never being
301 cleared. Problem of what to do with these LSAs remains.
302 (ospf_make_ls_upd) add comment about large LSA problem,
305 2004-07-01 Greg Troxel <gdt@fnord.ir.bbn.com>
307 * Makefile.am (lib_LTLIBRARIES): make libospf shared
309 2004-06-30 Greg Troxel <gdt@poblano.ir.bbn.com>
311 * Makefile.am: Add shlib support.
313 2004-06-10 Hasso Tepper <hasso@estpak.ee>
315 * *: Removed ifdefs HAVE_NSSA.
317 2004-06-06 Paul Jakma <paul@dishone.st>
319 * ospf_dump.c,ospf_lsa.c: Fix typos of merge of previous.
320 ospf_flood.c: (ospf_process_self_originated_lsa) fix zlog format
322 2004-05-31 Sagun Shakya <sagun.shakya@sun.com>
324 * ospf_dump.c: (ospf_lsa_header_dump) LOOKUP can return null if
325 index is out of range.
326 ospf_flood.c: endianness fix
327 ospf_lsa.c: Missing ntohl's on (struct lsa *)->data->ls_seqnum
330 2004-05-10 Hasso Tepper <hasso@estpak.ee>
332 * ospf_zebra.c, ospfd.c: Move ospf_prefix_list_update() function
333 to ospf_zebra.c from ospfd.c and add redistribution updates if
334 route-map is used in redistribution.
335 * ospf_main.c: Remove now useless call to ospf_init().
337 2004-05-08 Paul Jakma <paul@dishone.st>
339 * ospf_zebra.c: Sync with lib/zclient changes
341 2004-05-05 Paul Jakma <paul@dishone.st>
343 * ospf_network.c: (ospf_sock_init) Check whether IP_HDRINCL is
344 defined. Warn at compile and runtime. Use
345 IPTOS_PREC_INTERNETCONTROL otherwise.
346 * ospf_packet.c: (ospf_associate_packet_vl) cleanup, move
347 some of the checks up to ospf_read, return either a
348 virtual link oi, or NULL.
349 (ospf_read) Cleanup, make it responsible for checks. Remove
350 the nbr lookup - moved to ospf_neighbor. Adjust all nbr
351 lookups to use new wrappers exported by ospf_neighbor.
352 * ospf_neighbor.h: Add ospf_neigbour_get and ospf_nbr_lookup.
353 * ospf_neighbor.c: (ospf_neigbour_get) Index ospf_interface
354 neighbour table by router-id for virtual-link ospf_interfaces,
355 not by peer_addr (which breaks for asymmetric vlinks)
356 (ospf_nbr_lookup) add a wrapper for nbr lookups to deal with
358 * ospf_interface.c: (ospf_vl_set_params) Catch changes of interface
359 address for either end of a virtual-link, and hence potential cost
362 2004-04-22 Hasso Tepper <hasso@estpak.ee>
364 * ospf_zebra.c: Don't ignore reject/bh routes, it's the only way
365 to "summarize" routes in ASBR at the moment.
367 2004-04-20 Hasso Tepper <hasso@estpak.ee>
369 * ospfd.c: Unset NP flag if area is going to be normal or stub.
370 Fixes UNH OSPF_NSSA.1.2a comment.
371 * ospf_abr.c: Originate default into stub/nssa area even if
372 summaries are disabled.
373 * ospf_zebra.c: Don't attempt to redistribute 127.0.0.0/8.
375 2004-04-19 Hasso Tepper <hasso@estpak.ee>
377 * ospf_vty.c: Don't warn that export- and import-list can't be
378 configured to backbone area if they are applied and are working
381 2004-02-19 Sowmini Varadhan <sowmini.varadhan@sun.com>
383 * ospf_packet.c: Don't drop packets in Solaris x86.
386 2004-03-18 Amir Guindehi <amir@datacore.ch>
388 * ospf_opaque.c: Attempt to correct the incorrect behavior of
389 Quagga's ospfd in the special situation that a node's opaque
390 capability has changed as "ON -> OFF -> ON". [quagga-dev 843].
392 2004-02-19 Sowmini Varadhan <sowmini.varadhan@sun.com>
394 * ospf_abr.c: (ospf_abr_update_aggregate) UNH 3.12b,c, address range
395 should be configured with the highest cost path within the range,
398 2004-02-17 Paul Jakma <paul@dishone.st>
400 * ospf_zebra.c: (ospf_interface_delete) Do not delete the interface
401 params, nor the interface structure, if an interface delete
402 message is received from zebra.
403 * ospf_interface.c: (ospf_if_delete_hook) Delete the interface
404 params and interface, ie that which was previously removed in
405 (ospf_interface_delete) above.
407 2004-02-11 Hasso Tepper <hasso@estpak.ee>
408 * ospf_interface.c, ospf_zebra.c: Don't attempt to read path->oi->ifp
409 if oi doesn't exist any more.
411 2004-02-11 Vadim Suraev <vadim.suraev@terayon.com>
412 * ospf_packet.c (ospf_ls_upd): Router should flush received network
413 LSA if it was originated with older router-id ([zebra 14710] #6).
415 2003-12-08 Mattias Amnefelt <mattiasa@kth.se>
417 * ospf_packet.c: (ospf_recv_packet) OpenBSD now leaves iph.ip_len
420 2003-12-05 Greg Troxel <gdt@poblano.ir.bbn.com>
422 * ospfd.c (ospf_network_match_iface): Rewrite code for clarity
423 while trying not to change semantics. Add ifdefed-out code to
424 avoid matching ppp interfaces whose destination address does not
425 also match the prefix under consideration, to help out people with
426 problems due to as-yet-unfixed bugs with p2p interfaces coming and
429 2003-07-25 kamatchi soundaram <kamatchi@tdd.sj.nec.com>
431 * ospf_packet.c (ospf_ls_upd_send_queue_event): get next route
432 node in body of the loop to avoid chance that route node
433 is unlocked and deleted before the next iteration tries to
436 2003-05-24 Kenji Yabuuchi
438 * ospf_interface.c(ospf_if_lookup_recv_if): Use the most specific
439 match for interface lookup.
441 2003-05-18 Hasso Tepper <hasso@estpak.ee>
443 * ospf_vty.c: Show NSSA LSA route info in "show ip ospf database"
446 2003-05-16 Hasso Tepper <hasso@estpak.ee>
448 * ospf_lsa.c: Fix handling of NSSA
450 2003-04-23 Hasso Tepper <hasso@estpak.ee>
452 * ospf_vty.c: fix "router xxx" node commands in vtysh
454 2003-04-19 Hasso Tepper <hasso@estpak.ee>
456 * {ospf_abr,ospfd}.c: area id's DECIMAL -> ADDRESS
457 * ospf_routemap.c: sync daemon's route-map commands to have same
460 2003-04-19 Sergey Vyshnevetskiy <serg@vostok.net>
462 * ospf_packet.c: Add missing param to zlog
463 * ospf_flood.c: remove unused vars
465 2003-04-17 Denis Ovsienko <zebra@pilot.org.ua>
467 * ospf_interface.c: fix incorrect memset
469 2003-04-10 Amir Guindehi <amir@datacore.ch>
471 * ospf_lsa.[ch]: opaque LSA fix, use ospf_lookup.
473 2003-04-03 David Watson <dwatson@eecs.umich.edu>
475 * ospf_lsa.c: byte order fix
477 2002-03-17 Amir Guindehi <amir@datacore.ch>
479 * ospf_apiserver.[ch]: Merge Ralph Keller's OSPFAPI support.
480 * ospf_api.[ch]: Merge Ralph Keller's OSPFAPI support.
481 * ospfclient: OSPFAPI demonstration client.
483 2003-01-23 Masahiko Endo <endo@suri.co.jp>
485 * ospf_ism.c: NSM event schedule bug fix.
487 2002-10-30 Greg Troxel <gdt@ir.bbn.com>
489 * ospf_packet.c (ospf_make_md5_digest): MD5 length fix.
491 2002-10-23 endo@suri.co.jp (Masahiko Endo)
493 * ospf_opaque.c: Update Opaque LSA patch.
495 2002-10-23 Ralph Keller <keller@tik.ee.ethz.ch>
497 * ospf_vty.c (show_ip_ospf_database): Fix CLI parse.
499 2002-10-23 Juris Kalnins <juris@mt.lv>
501 * ospf_interface.c (ospf_if_stream_unset): When write queue
502 becomes empty stop write timer.
504 2002-10-10 Greg Troxel <gdt@ir.bbn.com>
506 * ospf_packet.c (ospf_check_md5_digest): Change >= to > to make it
509 2002-07-07 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
511 * zebra-0.93 released.
513 2002-06-19 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
515 * ospf_spf.c (ospf_nexthop_calculation): Add NULL set to oi and
516 check of l2. Reported by: Daniel Drown <dan-zebra@drown.org>
517 (ospf_lsa_has_link): LSA Length calculation fix. Reported by:
518 Paul Jakma <paulj@alphyra.ie>.
520 * ospfd.c (ospf_if_update): Fix nextnode reference bug. Reported
523 2002-01-21 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
525 * ospfd.c: Merge [zebra 11445] Masahiko ENDO's Opaque-LSA support.
527 2001-08-27 Kunihiro Ishiguro <kunihiro@zebra.org>
529 * ospf_interface.c (ospf_add_to_if): Use /32 address to register
530 OSPF interface information.
531 (ospf_delete_from_if): Likewise.
533 * ospf_zebra.c (ospf_interface_address_delete): Likewise.
535 2001-08-23 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
537 * ospf_zebra.c (ospf_redistribute_unset): When redistribute type
538 is OSPF, do not unset redistribute flag.
540 2001-08-19 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
542 * zebra-0.92a released.
544 2001-08-15 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
546 * zebra-0.92 released.
548 2001-08-12 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
550 * ospfd.c (ospf_config_write): auto-cost reference-bandwidth
551 configuration display.
553 2001-07-24 David Watson <dwatson@eecs.umich.edu>
555 * ospf_spf.c (ospf_spf_next): Modify ospf_vertex_add_parent to
556 check for an existing link before connecting the parent and child.
557 ospf_nexthop_calculation is also modified to check for duplicate
558 entries when copying from the parent. Finally, ospf_spf_next
559 removes duplicates when it merges two equal cost candidates.
561 2001-07-23 itojun@iijlab.net
563 * ospfd.c (show_ip_ospf_neighbor): Check ospf_top before use it
566 2001-07-23 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
568 * ospf_packet.c (ospf_write): Remove defined(__OpenBSD__) to make
571 2001-06-26 Kunihiro Ishiguro <kunihiro@zebra.org>
573 * ospf_zebra.c (config_write_ospf_default_metric): Display
574 default-metric configuration.
576 2001-06-18 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
578 * ospf_ia.h (OSPF_EXAMINE_SUMMARIES_ALL): Remove old macros.
580 2001-05-28 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
582 * ospf_snmp.c (ospfIfEntry): Fix interface lookup bug to avoid
584 (ospfIfMetricEntry): Likewise.
586 2001-03-18 Kunihiro Ishiguro <kunihiro@zebra.org>
588 * ospf_packet.c (ospf_read): Fix typo. Reported by: "Jen B
589 Lin'Kova" <jen@stack.net>.
591 2001-03-15 Gleb Natapov <gleb@nbase.co.il>
593 * ospf_interface.c (ip_ospf_network): Set interface parameter.
594 (interface_config_write): Add check for OSPF_IFTYPE_LOOPBACK.
596 * ospf_zebra.c (ospf_interface_add): Set interface parameter.
598 2001-02-21 Kunihiro Ishiguro <kunihiro@zebra.org>
600 * ospf_packet.c (ospf_recv_packet): Solaris also need to add
601 (iph.ip_hl << 2) to iph.ip_len.
603 2001-02-09 Kunihiro Ishiguro <kunihiro@zebra.org>
605 * ospfd.h (OSPF_LS_REFRESH_TIME): Fix OSPF_LS_REFRESH_TIME value.
606 Suggested by: David Watson <dwatson@eecs.umich.edu>.
608 * ospf_zebra.c (zebra_init): Remove zebra node.
610 * ospfd.c (ospf_area_range_set): Function name is changed from
612 (ospf_area_range_unset): New function which separated from DEFUN.
613 New commands are added:
614 "no area A.B.C.D range A.B.C.D/M advertise"
615 "no area <0-4294967295> range A.B.C.D/M advertise"
616 "no area A.B.C.D range A.B.C.D/M not-advertise"
617 "no area <0-4294967295> range A.B.C.D/M not-advertise"
619 * ospf_lsa.c (ospf_lsa_more_recent): Fix previous change.
621 2001-02-08 Matthew Grant <grantma@anathoth.gen.nz>
623 * ospf_network.c (ospf_if_add_allspfrouters): Use
624 setsockopt_multicast_ipv4.
625 (ospf_if_drop_allspfrouters): Likewise.
627 * ospf_lsa.c (ospf_router_lsa_install): Add rt_recalc flag.
628 (ospf_network_lsa_install): Likewise.
629 (ospf_summary_lsa_install): Likewise.
630 (ospf_summary_asbr_lsa_install): Likewise.
631 (ospf_external_lsa_install): Likewise.
632 (ospf_lsa_install): Call ospf_lsa_different to check this LSA is
635 2001-02-08 Kunihiro Ishiguro <kunihiro@zebra.org>
637 * ospf_zebra.c (ospf_interface_delete): Do not free interface
638 structure when ospfd receive interface delete message to support
641 2001-02-01 Dick Glasspool <dick@ipinfusion.com>
643 * ospfd.c (area_range_notadvertise): Change area range "suppress"
644 command to "not-advertise".
646 * ospfd.h (OSPF_LS_REFRESH_TIME): Change OSPF_LS_REFRESH_TIME from
649 * ospf_abr.c (ospf_abr_update_aggregate): When update_aggregate is
650 updating the area-range, the lowest cost is now saved.
652 * ospf_lsa.c (ospf_lsa_more_recent): Routing to compare sequence
653 numbers rather than creating overflow during calculation.
655 2001-02-01 Kunihiro Ishiguro <kunihiro@zebra.org>
657 * zebra-0.91 is released.
659 2001-01-31 Kunihiro Ishiguro <kunihiro@zebra.org>
661 * ospf_packet.c (ospf_db_desc_proc): Do not continue process when
662 NSM_SeqNumberMismatch is scheduled.
663 (ospf_ls_req): Free ls_upd when return from this function.
664 (ospf_ls_upd_timer): When update list is empty do not call
665 ospf_ls_upd_send(). Suggested by: endo@suri.co.jp (Masahiko
668 2001-01-26 Kunihiro Ishiguro <kunihiro@zebra.org>
670 * ospf_lsa.c (ospf_maxage_flood): Flood LSA when it reaches
671 MaxAge. RFC2328 Section 14.
672 (ospf_maxage_lsa_remover): Call above function during removing
675 2001-01-26 Dick Glasspool <dick@ipinfusion.com>
677 * ospf_flood.c (ospf_flood_through_as): Function is updated for
678 NSSA Translations now done at ospf_abr.c with no change in P-bit.
680 * ospf_lsa.c (ospf_get_nssa_ip): Get 1st IP connection for Forward
682 (ospf_install_flood_nssa): Leave Type-7 LSA at Lock Count = 2.
684 * ospf_ase.c (ospf_ase_calculate_route): Add debug codes.
686 * ospf_abr.c (ospf_abr_translate_nssa): Recalculate LSA checksum.
688 * ospf_packet.h (OSPF_SEND_PACKET_LOOP): Added for test packet.
690 * ospf_dump.c (ospf_lsa_type_msg): Add OSPF_GROUP_MEMBER_LSA and
693 * ospfd.c (data_injection): Function to inject LSA. This is
696 2001-01-11 Kunihiro Ishiguro <kunihiro@zebra.org>
698 * ospf_route.c (ospf_route_match_same): Remove function.
699 (ospf_route_match_same_new): Renamed to ospf_route_match_same.
701 * ospf_zebra.c (ospf_interface_address_delete): Add check for
702 oi->address. Suggested by Matthew Grant
703 <grantma@anathoth.gen.nz>.
704 (ospf_zebra_add): Remove function.
705 (ospf_zebra_add_multipath): Rename to ospf_zebra_add.
707 * ospf_interface.c: Remove HAVE_IF_PSEUDO part.
709 * ospf_zebra.c: Likewise.
711 2001-01-10 Kunihiro Ishiguro <kunihiro@zebra.org>
713 * ospf_ase.c: Remove OLD_RIB part.
715 * ospf_route.c: Likewise.
717 * zebra-0.90 is released.
719 * ospf_packet.c (ospf_recv_packet): Use ip_len adjestment code to
722 2001-01-09 Kunihiro Ishiguro <kunihiro@zebra.org>
724 * ospf_route.c (ospf_route_delete): Use
725 ospf_zebra_delete_multipath.
727 2001-01-09 Matthew Grant <grantma@anathoth.gen.nz>
729 * ospf_interface.c (ospf_if_cleanup): Function name is renamed
730 from ospf_if_free(). Rewrite whole procudure to support primary
733 * ospf_zebra.c (ospf_interface_address_delete): Add primary
734 address deletion process.
736 2001-01-09 Kunihiro Ishiguro <kunihiro@zebra.org>
738 * ospf_packet.c (ospf_recv_packet): OpenBSD has same ip_len
739 treatment like FreeBSD.
741 2001-01-09 endo@suri.co.jp (Masahiko Endo)
743 * ospf_packet.c (ospf_recv_packet): FreeBSD kernel network code
744 strips IP header size from receiving IP Packet. So we adjust
745 ip_len to whole IP packet size by adding IP header size.
747 2001-01-08 endo@suri.co.jp (Masahiko Endo)
749 * ospf_network.c (ospf_serv_sock): When socket() is failed return
751 (ospf_serv_sock): Close socket when it is not used.
753 * ospf_packet.c (ospf_write): Set sin_len when HAVE_SIN_LEN is
755 (ospf_write): When bind is fined, close sock.
757 2001-01-07 Gleb Natapov <gleb@nbase.co.il>
759 * ospf_zebra.c (ospf_interface_state_up): Fixes coredump that
760 appears when you try to configure bandwidth on the ppp interface
761 that is not yet configured in ospfd.
763 2001-01-07 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
765 * ospf_route.c (show_ip_ospf_route_external): "show ip ospf route"
766 will print nexthops for AS-external routes.
768 * ospf_ase.c (ospf_ase_route_match_same): New function to compare
769 ASE route under multipath environment.
770 (ospf_ase_compare_tables): Likewise.
772 2001-01-01 Kunihiro Ishiguro <kunihiro@zebra.org>
774 * ospfd.h (OSPF_VTYSH_PATH): Change "/tmp/ospfd" to "/tmp/.ospfd".
776 2000-12-28 Kunihiro Ishiguro <kunihiro@zebra.org>
778 * ospf_route.c (ospf_route_install): Install multipath information
781 * ospf_zebra.c (ospf_zebra_add_multipath): Function for passing
782 multipath information to zebra daemon.
784 2000-12-25 Dick Glasspool <dick@ipinfusion.com>
786 * ospf_packet.c (ospf_write): Call ospf_packet_delete when sendto
788 (DISCARD_LSA): Add argument N for logging point of DISCARD_LSA is
791 * ospf_lsa.c (ospf_external_lsa_refresh): NSSA install_flood will
792 leave Type-7 LSA at Lock Count = 2.
794 * ospf_flood.c (ospf_flood_through): Flood_though_as updated for
795 NSSA no P-bit off during Area flooding, but P-bit is turned off
796 for mulitple NSSA AS flooding.
798 * ospf_ase.c (ospf_ase_calculate_timer): Added calculations for
801 * ospf_abr.c (ospf_abr_translate_nssa): Removed one unlock call.
802 (ospf_abr_announce_nssa_defaults): Corrected Debug from EVENT to
805 2000-12-25 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
807 * ospf_zebra.c (ospf_zebra_read_ipv4): Checking the age of the
808 found LSA and if the LSA is MAXAGE we should call refresh instead
811 2000-12-18 Dick Glasspool <dick@ipinfusion.com>
813 * ospf_abr.c: Removed redundant "...flood" in
814 announce_network_to_area(). Repaired nssa Unlock by using
817 * ospf_packet.c: Removed old NSSA translate during mk_ls_update.
819 * ospfd.c: Free up all data bases including NSSA.
821 * ospf_lsa.c: Now allow removal of XLATE LSA's Check in
822 discard_callback. Added routine to get ip addr from within the
825 * ospf_flood.c: Now set Forward Address for outgoing Type-7.
827 * ospf_lsa.h: Added prototype for the below. struct in_addr
828 ospf_get_ip_from_ifp (struct interface *ifp).
830 2000-12-14 Gleb Natapov <gleb@nbase.co.il>
832 * ospf_packet.c (ospf_recv_packet): New OSPF pakcet read method.
833 Now maximum packet length may be 65535 bytes (maximum IP packet
836 * ospf_interface.c (ospf_if_stream_set): Don't make input buffer.
838 * ospfd.c (config_write_network_area): Remove unnecessary area
841 2000-12-13 Kunihiro Ishiguro <kunihiro@zebra.org>
843 * ospf_packet.c (ospf_read): Accept packet bigger than MTU value.
845 2000-12-13 Gleb Natapov <gleb@nbase.co.il>
847 * ospfd.c (config_write_network_area): Fix bug in
848 config_write_network_area function.
850 2000-12-12 Gleb Natapov <gleb@nbase.co.il>
852 * ospf_abr.c (ospf_abr_announce_network_to_area): Make Summary
853 LSA's origination and refreshment as same as other type of LSA.
855 * ospf_lsa.c (ospf_summary_lsa_refresh): Return struct ospf_lsa *.
857 * ospf_lsa.c (ospf_summary_asbr_lsa_refresh): Likewise.
859 2000-12-08 Dick Glasspool <dick@ipinfusion.com>
861 The bulk of NSSA changes are contained herein; This version will
862 require manual setting of "always" for NSSA Translator, and will
863 not perform aggregation yet.
865 * ospf_dump.c: "debug ospf nssa" is added.
867 * ospf_dump.h: Likewise.
869 * ospf_packet.c (ospf_hello): Display router ID on Bad NSSA Hello.
871 * ospfd.c: Discard_LSA to stay away from LOCAL_XLT Process NSSA
872 'never, candidate, always'. Change "suppress" to "not-advertise".
874 * ospfd.h: Add TranslatorRole to struct ospf_area. Add anyNSSA to
877 * ospf_ase.c (ospf_ase_calculate_route): External to stay away
880 * ospf_nsm.c (ospf_db_summary_add): External to stay away from
883 * ospf_abr.c: Major logic added for abr_nssa_task(). If ABR, and
884 NSSA translator, then do it. Approve the global list, and flush
887 * ospf_lsa.h: New LSA flag OSPF_LSA_LOCAL_XLT to indicate that the
888 Type-5 resulted from a Local Type-7 translation; not used for
889 flooding, but used for flushing.
891 * ospf_flood.c: New NSSA flooding.
893 2000-12-08 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
895 * ospfd.c (ospf_find_vl_data): New function for looking up virtual
897 (ospf_vl_set_security): Virtual link configuration with
899 (ospf_vl_set_timers): Set timers for virtual link.
901 * New commands are added.
902 "area A.B.C.D virtual-link A.B.C.D"
903 "area A.B.C.D virtual-link A.B.C.D hello-interval <1-65535> retransmit-interval <3-65535> transmit-delay <1-65535> dead-interval <1-65535>"
904 "area A.B.C.D virtual-link A.B.C.D hello-interval <1-65535> retransmit-interval <3-65535> transmit-delay <1-65535> dead-interval <1-65535> authentication-key AUTH_KEY"
905 "area A.B.C.D virtual-link A.B.C.D authentication-key AUTH_KEY"
906 "area A.B.C.D virtual-link A.B.C.D hello-interval <1-65535> retransmit-interval <3-65535> transmit-delay <1-65535> dead-interval <1-65535> message-digest-key <1-255> md5 KEY"
907 "area A.B.C.D virtual-link A.B.C.D message-digest-key <1-255> md5 KEY"
909 * ospf_packet.c (ospf_check_md5_digest): Add neighbor's
910 cryptographic sequence number treatment.
911 (ospf_check_auth): OSPF input buffer is added to argument.
912 (ospf_read): Save neighbor's cryptographic sequence number.
914 * ospf_nsm.c (nsm_change_status): Clear cryptographic sequence
915 number when neighbor status is changed to NSM down.
917 * ospf_neighbor.c (ospf_nbr_new): Set zero to crypt_seqnum.
919 * ospf_neighbor.h (struct ospf_neighbor): Add cryptographic
920 sequence number to neighbor structure.
922 2000-11-29 Kunihiro Ishiguro <kunihiro@zebra.org>
924 * ospf_snmp.c (ospfIfLookup): OSPF MIB updates.
925 (ospfExtLsdbEntry): Add OspfExtLsdbTable treatment.
927 2000-11-28 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
929 * ospfd.c (ospf_interface_down): Clear a ls_upd_queue queue of the
931 (ospf_ls_upd_queue_empty): New function to empty ls update queue
932 of the OSPF interface.
933 (no_router_ospf): 'no router ospf' unregister redistribution
936 2000-11-28 Kunihiro Ishiguro <kunihiro@zebra.org>
938 * ospf_ism.c (ism_change_status): Increment status change number.
940 * ospf_interface.h (struct ospf_interface): Add new member for
941 status change statistics.
943 * Makefile.am: Update dependencies.
945 * ospf_zebra.c (ospf_interface_add): OSPF SNMP interface update.
946 (ospf_interface_delete): OSPF SNMP interface delete.
948 * ospf_snmp.h: New file is added.
950 2000-11-23 Dick Glasspool <dick@ipinfusion.com>
952 * ospfd.h: Add new ospf_area structure member for
953 NSSATranslatorRole and NSSATranslator state.
955 * ospfd.c: Provided for eventual commands to specify NSSA
956 elections for "translator- ALWAYS/NEVER/CANDIDATE". Provided for
957 decimal integer version of area-suppress.
959 * ospf_flood.c: Flood Type-7's only into NSSA (not AS).
961 * ospf_lsa.c: Undo some previous changes for NSSA. If NSSA
962 translator, advertise Nt bit.
964 * ospf_route.c: 1st version of "sh ip os border-routers".
966 2000-11-23 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
968 * ospfd.c (area_vlink): Virtual link can not configured in stub
971 2000-11-23 Gleb Natapov <gleb@nbase.co.il>
973 * ospf_packet.c (ospf_db_desc): In states Loading and Full the
974 slave must resend its last Database Description packet in response
975 to duplicate Database Description packets received from the
976 master. For this reason the slave must wait RouterDeadInterval
977 seconds before freeing the last Database Description packet.
978 Reception of a Database Description packet from the master after
979 this interval will generate a SeqNumberMismatch neighbor
980 event. RFC2328 Section 10.8
981 (ospf_make_db_desc): DD Master flag treatment.
983 * ospf_nsm.c (nsm_twoway_received): Move DD related procedure to
985 (nsm_bad_ls_req): Likewise.
986 (nsm_adj_ok): Likewise.
987 (nsm_seq_number_mismatch): Likewise.
988 (nsm_oneway_received): Likewise.
990 * ospf_neighbor.h (struct ospf_neighbor): New structure member
991 last_send_ts for timestemp when last Database Description packet
994 * ospf_nsm.c (ospf_db_desc_timer): Make it sure nbr->last_send is
995 there. Call ospf_db_desc_resend() in any case.
997 2000-11-16 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
999 * ospf_lsa.c (lsa_link_broadcast_set): When there is no DR on
1000 network (suppose you have only one router with interface priority
1001 0). It's router LSA does not contain the link information about
1004 * ospf_nsm.c (nsm_timer_set): When you change a priority of
1005 interface from/to 0 ISM_NeighborChange event should be scheduled
1006 in order to elect new DR/BDR on the network.
1008 * ospf_interface.c (ip_ospf_priority): Likewise.
1010 * ospf_flood.c (ospf_ls_retransmit_add): When we add some LSA into
1011 retransmit list we need to check whether the present old LSA in
1012 retransmit list is not more recent than the new
1015 2000-11-09 Dick Glasspool <dick@ipinfusion.com>
1017 * ospf_packet.c: Allows for NSSA Type-7 LSA's throughout the NSSA
1018 area. Any that exit the NSSA area are translated to type-5 LSA's.
1019 The instantiated image is restored after translation.
1020 (ospf_ls_upd_send_list): Renamed to ospf_ls_upd_queu_send().
1021 (ospf_ls_upd_send): Old function which enclosed by #ifdef 0 is
1023 (ospf_ls_ack_send): Likewise.
1025 * ospf_flood.c: NSSA-LSA's without P-bit will be restricted to
1026 local area. Otherwise they are allowed out the area to be
1027 translated by ospf_packet.c.
1029 * ospf_lsa.c: Undo some previous changes for NSSA.
1031 * ospf_lsdb.h: New access for type 7.
1033 2000-11-07 Kunihiro Ishiguro <kunihiro@zebra.org>
1035 * ospf_route.c (ospf_path_exist): New function to check nexthop
1036 and interface are in current OSPF path or not.
1037 (ospf_route_copy_nexthops_from_vertex): Add nexthop to OSPF path
1038 when it is not there. Reported by Michael Rozhavsky
1039 <mrozhavsky@opticalaccess.com>
1041 2000-11-06 Kunihiro Ishiguro <kunihiro@zebra.org>
1043 * ospf_dump.c (config_write_debug): Add seventh string "detail" is
1044 added for flag is OSPF_DEBUG_SEND | OSPF_DEBUG_RECV |
1047 2000-11-06 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1049 * ospf_lsa.c (router_lsa_flags): ASBR can't exit in stub area.
1051 2000-11-06 Kunihiro Ishiguro <kunihiro@zebra.org>
1053 * ospf_lsa.c (ospf_router_lsa_originate): Reduce unconditional
1056 2000-11-06 Dick Glasspool <dick@ipinfusion.com>
1058 * ospfd.h: Add ait_ntoa function prototype.
1060 * ospfd.c (ait_ntoa): New function for displaying area ID and
1062 (show_ip_ospf_interface_sub): Use ait_ntoa.
1063 (show_ip_ospf_nbr_static_detail_sub): Likewise.
1064 (show_ip_ospf_neighbor_detail_sub): Likewise.
1066 * ospf_route.c (ospf_intra_route_add): Set external routing type
1068 (ospf_intra_add_router): Likewise.
1069 (ospf_intra_add_transit): Likewise.
1070 (ospf_intra_add_stub): Likewise.
1071 (ospf_add_discard_route): Likewise.
1072 (show_ip_ospf_route_network): Use ait_ntoa.
1073 (show_ip_ospf_route_network): Likewise.
1074 (show_ip_ospf_route_router): Likewise.
1076 * ospf_lsa.c (show_lsa_detail): Use ait_ntoa.
1077 (show_lsa_detail_adv_router): Likewise.
1078 (show_ip_ospf_database_summary): Likewise.
1080 * ospf_route.h (struct route_standard): Add new member
1083 * ospf_ia.c (process_summary_lsa): Set external routing tyep to ospf
1085 (ospf_update_network_route): Likewise.
1086 (ospf_update_router_route): Likewise.
1088 2000-11-04 Kunihiro Ishiguro <kunihiro@zebra.org>
1090 * ospf_flood.c (ospf_process_self_originated_lsa): Enclose
1091 OSPF_AS_NSSA_LSA treatment with #ifdef HAVE_NSSA.
1093 2000-11-03 Kunihiro Ishiguro <kunihiro@zebra.org>
1095 * Unconditional logging is enclosed with if (IS_DEBUG_OSPF_EVENT).
1096 Please specify "debug ospf event" for enable logging.
1098 * ospf_ism.c: Do not extern debug flag varible. It is done by
1100 * ospf_asbr.c: Likewise.
1101 * ospf_lsa.c: Likewise.
1102 * ospf_nsm.c: Likewise.
1103 * ospf_zebra.c: Likewise.
1105 * ospf_dump.c (debug_ospf_event): New command "debug ospf event"
1108 * ospfd.c (router_ospf): Change logging from vty_out() to
1110 (ospf_area_stub_cmd): Likewise.
1112 * ospf_dump.h: Extern term_debug flags.
1113 (OSPF_DEBUG_EVENT): Add new flag.
1114 (IS_DEBUG_OSPF_EVENT): Add new macro.
1116 2000-11-03 Dick Glasspool <dick@ipinfusion.com>
1118 * ospf_flood.c (ospf_process_self_originated_lsa):
1119 OSPF_AS_NSSA_LSA is treated as same as OSPF_AS_EXTERNAL_LSA.
1120 (ospf_flood): Type-5's have no change. Type-7's can be received,
1121 and will Flood the AS as Type-5's They will also flood the local
1122 NSSA Area as Type-7's. The LSDB will be updated as Type-5's, and
1123 during re-fresh will be converted back to Type-7's (if within an
1125 (ospf_flood_through): Incoming Type-7's were allowed here if our
1126 neighbor was an NSSA. So Flood our area with the Type-7 and also
1127 if we are an ABR, flood thru AS as Type-5.
1129 * ospf_lsa.c (ospf_external_lsa_refresh): Flood NSSA both NSSA
1130 area and other area.
1132 * ospf_packet.c (ospf_db_desc_proc): When AS External LSA is
1133 exists in DD packet, make it sure that this area is not stub.
1134 (ospf_ls_upd_list_lsa): When LSA type is NSSA then set lsa's area
1136 (ospf_ls_upd): If the LSA is AS External LSA and the area is stub
1137 then discard the lsa. If the LSA is NSSA LSA and the area is not
1138 NSSA then discard the lsa.
1140 2000-11-03 Kunihiro Ishiguro <kunihiro@zebra.org>
1142 * ospfd.c (ospf_interface_run): Fix bug of Hello packet's option
1143 is not properly set when interface comes up.
1145 2000-11-02 Kunihiro Ishiguro <kunihiro@zebra.org>
1147 * ospfd.h (OSPF_OPTION_O): Add new hello header option.
1149 2000-11-01 Dick Glasspool <dick@ipinfusion.com>
1151 * ospf_lsa.h: Define OSPF_MAX_LSA to 8 when HAVE_NSSA is enabled.
1152 (OSPF_GROUP_MEMBER_LSA): Define OSPF_GROUP_MEMBER_LSA.
1154 * ospf_lsa.c (show_database_desc): Add "Group Membership LSA"
1157 2000-10-31 Dick Glasspool <dick@ipinfusion.com>
1159 * ospf_lsa.h (OSPF_AS_NSSA_LSA): Define OSPF_AS_NSSA_LSA.
1161 * ospf_lsa.c (show_ip_ospf_database): NSSA database display
1162 function is added. ALIASES which have "show ip ospf database
1163 nssa-external" is added.
1164 (show_ip_ospf_border_routers): New command "show ip ospf
1165 border-routers" is added.
1167 2000-10-30 Dick Glasspool <dick@ipinfusion.com>
1169 * ospfd.c (router_ospf): NSSA Enabled message is added for
1171 (ospf_area_type_set): Are type set for NSSA area.
1172 (ospf_area_stub_cmd): Special translation of no_summary into NSSA
1173 and summary information. If NSSA is enabled pass the information
1174 to ospf_area_type_set().
1175 (area_nssa): New commands are added:
1177 "area <0-4294967295> nssa"
1178 "area A.B.C.D nssa no-summary"
1179 "area <0-4294967295> nssa no-summary"
1180 (ospf_no_area_stub_cmd): Special translation of no_summary into
1181 NSSA and summary information. If external_routing is
1182 OSPF_AREA_NSSA unset area with ospf_area_type_set (area,
1184 (show_ip_ospf_area): Display NSSA status.
1185 (config_write_ospf_area): Show NSSA configuration.
1187 * ospf_packet.c (ospf_hello): For NSSA support, ensure that NP is
1190 2000-10-26 Gleb Natapov <gleb@nbase.co.il>
1192 * ospf_lsa.c (ospf_network_lsa_body_set): The network-LSA lists
1193 those routers that are fully adjacent to the Designated Router;
1194 each fully adjacent router is identified by its OSPF Router ID.
1195 The Designated Router includes itself in this list. RFC2328,
1198 2000-10-23 Jochen Friedrich <jochen@scram.de>
1200 * ospf_snmp.c: ospf_oid and ospfd_oid are used in smux_open after
1201 it is registered. So those variables must be static.
1203 2000-10-18 K N Sridhar <sridhar@euler.ece.iisc.ernet.in>
1205 * ospfd.c: Add area_default_cost_decimal_cmd and
1206 no_area_default_cost_decimal_cmd alias.
1208 2000-10-05 Gleb Natapov <gleb@nbase.co.il>
1210 * ospfd.c (ospf_network_new): Fix setting area format.
1211 (no_router_ospf): Check area existance when calling
1212 ospf_interface_down().
1214 * ospf_flood.c (ospf_external_info_check): Fix bug of refreshing
1217 2000-10-02 Kunihiro Ishiguro <kunihiro@zebra.org>
1219 * zebra-0.89 is released.
1221 2000-09-29 Kunihiro Ishiguro <kunihiro@zebra.org>
1223 * ospf_snmp.c (ospfHostEntry): OSPF Host MIB is implemented.
1225 * ospfd.c (ospf_nbr_static_cmp): OSPF neighbor is sorted by it's
1228 2000-09-28 Michael Rozhavsky <mike@nbase.co.il>
1230 * ospf_interface.c (ospf_if_free): Fix deleting self neighbor twice.
1232 2000-09-27 Kunihiro Ishiguro <kunihiro@zebra.org>
1234 * ospf_packet.c (ospf_read): Solaris on x86 has ip_len with host
1237 2000-09-25 Toshiaki Takada <takada@zebra.org>
1239 * ospfd.c (ospf_compatible_rfc1583), (no_ospf_compatible_rfc1583):
1240 Add CISCO compatible command.
1242 2000-09-25 Kunihiro Ishiguro <kunihiro@zebra.org>
1244 * ospf_abr.c (ospf_area_range_lookup): New function is added for
1245 area range lookup in OSPF-MIB.
1246 (ospf_area_range_lookup_next): Likewise.
1248 2000-09-22 Kunihiro Ishiguro <kunihiro@zebra.org>
1250 * ospfd.c (no_router_ospf): Delete virtual link before deleting
1253 * ospf_lsa.c (ospf_external_lsa_refresh_type): Check
1254 EXTERNAL_INFO(type).
1256 * ospfd.c (no_router_ospf): Call ospf_vl_delete() instead of
1257 ospf_vl_data_free().
1259 * ospf_interface.c (ospf_vl_shutdown): Execute ISM_InterfaceDown
1260 when ospf_vl_shutdown is called.
1261 (ospf_vl_delete): Call ospf_vl_shutdown() to delete virtual link
1264 2000-09-21 Gleb Natapov <gleb@nbase.co.il>
1266 * ospf_lsa.c: New implementation of OSPF refresh.
1268 2000-09-20 Kunihiro Ishiguro <kunihiro@zebra.org>
1270 * ospf_snmp.c (ospfLsdbLookup): Add LSDB MIB implementation.
1272 2000-09-18 Kunihiro Ishiguro <kunihiro@zebra.org>
1274 * ospf_snmp.c (ospfStubAreaEntry): Add OSPF stub area MIB.
1276 2000-09-18 Gleb Natapov <gleb@nbase.co.il>
1278 * ospf_route.h (route_standard): Change member from `struct area'
1281 * ospf_abr.c (ospf_abr_announce_network), (ospf_abr_should_announce),
1282 (ospf_abr_process_network_rt), (ospf_abr_announce_rtr),
1283 (ospf_abr_process_router_rt):
1284 * ospf_ase.c (ospf_find_asbr_route),
1285 (ospf_find_asbr_router_through_area),
1286 * ospf_ia.c (ospf_find_abr_route), (ospf_ia_router_route),
1287 (process_summary_lsa), (ospf_update_network_route),
1288 (ospf_update_router_route):
1289 * ospf_route.c (ospf_intra_route_add), (ospf_intra_add_router),
1290 (ospf_intra_add_transit), (ospf_intra_add_stub),
1291 (ospf_route_table_dump), (show_ip_ospf_route_network),
1292 (show_ip_ospf_route_router), (ospf_asbr_route_cmp),
1293 (ospf_prune_unreachable_routers):
1294 * ospf_spf.c (ospf_rtrs_print):
1295 * ospfd.c (ospf_rtrs_free): Fix the struct change above.
1297 2000-09-14 Kunihiro Ishiguro <kunihiro@zebra.org>
1299 * ospf_network.c (ospf_serv_sock_init): Enclose SO_BINDTODEVICE
1302 2000-09-13 Gleb Natapov <gleb@nbase.co.il>
1304 * ospf_ism.c (ospf_elect_dr), (ospf_elect_bdr): Fix DR election.
1306 * ospf_network.c (ospf_serv_sock_init): Add socket option
1307 SO_BINDTODEVICE on read socket.
1309 * ospf_packet.c (ospf_hello): Ignore Hello packet if E-bit does
1312 * ospfd.c (ospf_area_check_free), (ospf_area_get),
1313 (ospf_area_add_if): New function added.
1315 2000-09-13 Kunihiro Ishiguro <kunihiro@zebra.org>
1317 * ospf_route.c (ospf_intra_add_router): Update ABR and ASBR router
1320 * ospf_spf.c (ospf_spf_init): Rest ABR and ASBR router count
1321 starting SPF calculation.
1323 * ospfd.h (struct ospf_area): Add ABR and ASBR router count.
1325 2000-09-12 Kunihiro Ishiguro <kunihiro@zebra.org>
1327 * ospfd.c (ospf_area_id_cmp): New area structure is sorted by area
1330 * ospf_lsa.c (ospf_router_lsa_originate): For OSPF MIB update
1331 lsa_originate_count.
1332 (ospf_network_lsa_originate): Likewise.
1333 (ospf_summary_lsa_originate): Likewise.
1334 (ospf_summary_asbr_lsa_originate): Likewise.
1335 (ospf_external_lsa_originate): Likewise.
1337 2000-09-11 Kunihiro Ishiguro <kunihiro@zebra.org>
1339 * ospf_snmp.c (ospf_variables): ospfRouterID's type RouterID
1340 syntax is IpAddress.
1341 (ospf_admin_stat): New function for OSPF administrative status
1344 2000-09-10 Jochen Friedrich <jochen@scram.de>
1346 * ospf_snmp.c: Implement OSPF MIB skeleton.
1348 2000-09-08 Kunihiro Ishiguro <kunihiro@zebra.org>
1350 * ospf_snmp.c: New file is added.
1352 2000-09-07 David Lipovkov <davidl@nbase.co.il>
1354 * ospf_zebra.c (ospf_interface_delete): Add pseudo interface
1357 * ospf_interface.c (interface_config_write): Likewise.
1359 2000-08-17 Kunihiro Ishiguro <kunihiro@zebra.org>
1361 * zebra-0.88 is released.
1363 2000-08-17 Michael Rozhavsky <mike@nbase.co.il>
1365 * ospfd.c (ospf_area_free): Remove virtual link configuration only
1366 when Area is removed.
1368 2000-08-17 Kunihiro Ishiguro <kunihiro@zebra.org>
1370 * ospfd.c (network_area): Revert check for EXTERNAL_INFO
1371 (ZEBRA_ROUTE_CONNECT).
1372 (no_network_area): Likewise.
1374 2000-08-16 Kunihiro Ishiguro <kunihiro@zebra.org>
1376 * ospfd.h (struct ospf): Add distance_table and
1377 distance_{all,intra,inter,external}.
1379 * ospf_zebra.c: Add OSPF distance related functions.
1381 2000-08-15 Gleb Natapov <gleb@nbase.co.il>
1383 * ospf_asbr.c (ospf_external_info_find_lsa): New function added.
1385 * ospf_lsa.c (ospf_default_external_info),
1386 (ospf_default_originate_timer), (ospf_external_lsa_refresh_default):
1390 (ospf_default_information_originate_metric_type_routemap),
1391 (ospf_default_information_originate_always_metric_type_routemap):
1392 Change name and add route-map function.
1393 (ospf_default_information_originate_metric_routemap),
1394 (ospf_default_information_originate_routemap),
1395 (ospf_default_information_originate_type_metric_routemap):
1398 2000-08-14 Kunihiro Ishiguro <kunihiro@zebra.org>
1400 * ospf_zebra.c (zebra_interface_if_set_value): Change ifindex
1401 restore size from two octet to four.
1403 2000-08-14 Michael Rozhavsky <mike@nbase.co.il>
1405 * ospf_ase.c (ospf_ase_incremental_update): Implement incremental
1406 AS-external-LSA in 16.6 of RFC2328.
1408 2000-08-14 Matthew Grant <grantma@anathoth.gen.nz>
1410 * ospf_interface.c (ospf_if_get_output_cost): Change cost
1411 calculation algorithm.
1413 * ospf_packet (ospf_ls_upd): Fix problem of LSA retransmitting.
1415 2000-08-11 Michael Rozhavsky <mike@nbase.co.il>
1417 * ospf_lsa.c (ospf_maxage_lsa_remover): Fix maxage remover for
1420 2000-08-10 Toshiaki Takada <takada@zebra.org>
1422 * ospfd.c (auto_cost_reference_bandwidth): New DEFUN added.
1423 `auto-cost reference-bandwidth' OSPF router command added.
1425 2000-08-08 Gleb Natapov <gleb@nbase.co.il>
1427 * ospf_routemap.c (ospf_route_map_update): New function added.
1428 Add route-map event hook.
1430 2000-08-08 Toshiaki Takada <takada@zebra.org>
1432 * ospf_zebra.c (ospf_distribute_check_connected): If redistribute
1433 prefix is connected route on OSPF enabled interface, suppress to
1436 2000-08-08 Matthew Grant <grantma@anathoth.gen.nz>
1438 * ospf_interface.c (ospf_if_get_output_cost):
1439 New function added. Handle bandwidth parameter for cost
1442 2000-08-08 Michael Rozhavsky <mike@nbase.co.il>
1444 * ospf_interface.c (interface_config_write): Show interface
1445 configuration regardless interface is down.
1447 * ospf_ase.c (ospf_ase_caocluate_route): Whole rewritten external
1448 route calculate function.
1450 2000-08-08 Gleb Natapov <gleb@nbase.co.il>
1452 * ospf_routemap.c: New file added.
1454 * ospf_asbr.c (ospf_reset_route_map_set_values),
1455 (ospf_route_map_set_compare): New function added.
1457 * ospf_lsa.c (ospf_external_lsa_body_set): Set routemap metric
1458 with AS-external-LSA.
1460 2000-08-05 Kunihiro Ishiguro <kunihiro@zebra.org>
1462 * ospf_ase.c (ospf_ase_calculate_route_add): Pass new->cost to
1463 ospf_zebra_add as metric.
1464 (ospf_ase_calculate_route_add): Likewise.
1466 * ospf_route.c (ospf_route_install): Pass or->cost to
1467 ospf_zebra_add as metric.
1469 * ospf_zebra.c (ospf_zebra_add): Add metric arguemnt.
1470 (ospf_zebra_delete): Likewise.
1472 2000-08-03 Matthew Grant <grantma@anathoth.gen.nz>
1474 * ospf_flood.c (ospf_flood_delayed_lsa_ack): New function added.
1475 Dispatch delayed-ACK with flooding AS-external-LSA across virtual
1478 2000-07-31 Matthew Grant <grantma@anathoth.gen.nz>
1480 * ospfd.c (show_ip_ospf_area): Fix lack of VTY_NEWLINE when
1483 * ospf_interface.c (ospf_if_free): Fix bug of crash with
1484 Point-to-Point interface.
1486 2000-07-27 Michael Rozhavsky <mike@nbase.co.il>
1488 * ospf_flood.c (ospf_process_self_originated_lsa):
1489 Make sure to clear LSA->param (redistributed external information)
1492 2000-07-27 Gleb Natapov <gleb@nbase.co.il>
1494 * ospfd.c (refresh_group_limit), (refresh_per_slice),
1495 (refresh_age_diff): New defun added. Refresher related parameter
1496 can be configurable.
1498 2000-07-27 Akihiro Mizutani <mizutani@dml.com>
1500 * ospf_interface.c (interface_config_write): Print `description'
1501 config directive to work.
1503 2000-07-24 Akihiro Mizutani <mizutani@dml.com>
1505 * ospf_interface.c (ospf_if_init): Use install_default for
1508 2000-07-24 Gleb Natapov <gleb@nbase.co.il>
1510 * ospf_packet.c (ospf_ls_upd_send_list), (ospf_ls_upd_send_event),
1511 (ospf_ls_ack_send_list), (ospf_ls_ack_send_event): New function added.
1512 This make sending always as many LS update/Ack combined in one ospf
1515 2000-07-24 Gleb Natapov <gleb@nbase.co.il>
1517 * ospf_packet.c (ospf_ls_upd_list_lsa): Set NULL to lsa->area if
1518 LSA is AS-external-LSA.
1520 * ospf_nsm.c (nsm_reset_nbr): Do not cancel Inactivity timer.
1522 2000-07-21 Toshiaki Takada <takada@zebra.org>
1524 * ospf_zebra.c (ospf_default_originate_timer): Set timer for
1525 `default-information originate'. Fix some default originate
1528 2000-07-12 Toshiaki Takada <takada@zebra.org>
1530 * ospf_lsa.c (stream_put_ospf_metric): New function added.
1532 2000-07-12 Toshiaki Takada <takada@zebra.org>
1534 * ospf_lsa.c (show_ip_ospf_database_router),
1535 (show_ip_ospf_database_network), (show_ip_ospf_database_summary),
1536 (show_ip_ospf_database_summary_asbr), (show_ip_ospf_database_externel),
1537 (show_router_lsa), (show_any_lsa), (show_router_lsa_self),
1538 (show_any_lsa_self): Functions removed.
1540 (show_lsa_prefix_set), (show_lsa_detail_proc), (show_lsa_detail),
1541 (show_lsa_detail_adv_router_proc), (show_lsa_detail_adv_router):
1542 New functions added. Replace above functions.
1544 (show_ip_ospf_database_all), (show_ip_ospf_database_self_originated):
1546 (show_ip_ospf_database_summary): New functions added. Replace
1549 (show_ip_ospf_database_cmd): DEFUN rearranged.
1550 (show_ip_ospf_database_type_id_cmd),
1551 (show_ip_ospf_database_type_id_adv_router_cmd),
1552 (show_ip_ospf_database_type_is_self_cmd): New ALIASes added.
1553 (show_ip_ospf_database_type_adv_rotuer_cmd): New DEFUN added.
1554 (show_ip_ospf_database_type_self_cmd): New ALIAS added.
1556 2000-07-11 Toshiaki Takada <takada@zebra.org>
1558 * ospf_asbr.c (ospf_external_info_new),
1559 (ospf_external_info_free): New functions added.
1561 * ospf_lsa.h (ospf_lsa): Add new member `void *param' to set
1562 origination parameter for external-LSA.
1563 Remove member `redistribute'.
1565 * ospf_zebra.c (ospf_redistirbute_set): When `redistribute'
1566 command executed, metric and metric-type values are overridden.
1567 If one of those is changed refresh AS-external-LSAs for appropriate
1570 2000-07-11 Michael Rozhavsky <mike@nbase.co.il>
1572 * ospf_lsa.c (ospf_summary_lsa_refresh),
1573 (ospf_summary_asbr_lsa_refresh): Make sure to refresh summary-LSAs.
1575 * ospf_abr.c (set_metric): New function added.
1577 2000-07-07 Toshiaki Takada <takada@zebra.org>
1579 * ospf_zebra.c (ospf_default_information_originate_metric_type),
1580 (ospf_default_information_originate_type_metric): New defun added.
1581 Metic and Metric type can be set to default route.
1582 (ospf_default_information_originate_always_metric_type):
1583 (ospf_default_information_originate_always_type_metric):
1584 New defun added. Metric and Metric type can be set to default
1587 * ospf_zebra.c (ospf_default_metric), (no_ospf_default_metric):
1590 2000-07-06 Gleb Natapov <gleb@nbase.co.il>
1592 * ospf_flood.c (ospf_flood_through_area): Fix bug of considering
1593 on the same interface the LSA was received from.
1595 2000-07-06 Michael Rozhavsky <mike@nbase.co.il>
1597 * ospfd.c (ospf_config_write): Fix bug of printing `area stub'
1598 command with `write mem'.
1600 * ospfd.c (no_router_ospf): Remove installed routes from zebra.
1602 * ospf_zebra.c (ospf_interface_delete): Fix function to handle
1603 zebra interface delete event.
1605 2000-07-06 Toshiaki Takada <takada@zebra.org>
1607 * ospf_zebra.c (ospf_default_information_originate),
1608 (ospf_default_information_originate_always): New DEFUN added.
1610 2000-07-05 Michael Rozhavsky <mike@nbase.co.il>
1612 * ospf_route.c (ospf_terminate): Make sure to remove external route
1613 when SIGINT received.
1615 2000-07-03 Gleb Natapov <gleb@nbase.co.il>
1617 * ospf_flood.c, ospf_ism.c, ospf_lsa,c, ospfd.c: Make sure to free
1618 many structure with `no router ospf'.
1620 2000-06-30 Gleb Natapov <gleb@nbase.co.il>
1622 * ospf_neighbor.c (ospf_nbr_new),
1623 ospf_nsm.c (nsm_timer_set): Start LS update timer only
1624 when neighbor enters Exchange state.
1626 2000-06-29 Gleb Natapov <gleb@nbase.co.il>
1628 * ospf_nsm.c (nsm_timer_set), (nsm_exchange_done),
1629 ospf_packet.c (ospf_db_desc_proc):
1630 Do not cancel DD retransmit timer when Master.
1632 2000-06-29 Gleb Natapov <gleb@nbase.co.il>
1634 * ospf_abr.c (ospf_abr_announce_network_to_area),
1635 (ospf_abr_announce_rtr_to_area)
1636 ospf_ase.c (ospf_ase_rtrs_register_lsa),
1637 ospf_flood.c (ospf_process_self_originated_lsa),
1638 (ospf_flood_through_area), (ospf_ls_request_delete),
1639 ospf_interface.c (ospf_if_free),
1640 ospf_ism.c (ism_change_status),
1641 ospf_lsa.c (ospf_router_lsa_update_timer),
1642 (ospf_router_lsa_install), (ospf_network_lsa_install),
1643 (ospf_lsa_maxage_delete), (ospf_lsa_action),
1644 (ospf_schedule_lsa_flood_area),
1645 ospf_nsm.c (nsm_change_status),
1646 ospf_packet.c (ospf_make_ls_req_func), (ospf_make_ls_ack):
1647 Use ospf_lsa_{lock,unlock} for all looking-up of LSA.
1649 * ospf_flood.c (ospf_ls_request_free): Function deleted.
1651 * ospf_lsa.c (ospf_discard_from_db): New function added.
1653 2000-06-26 Toshiaki Takada <takada@zebra.org>
1655 * ospfd.h (ospf): struct member `external_lsa' name changed to
1658 2000-06-26 Toshiaki Takada <takada@zebra.org>
1660 * ospf_lsa.c (ospf_lsa_install), (ospf_router_lsa_install),
1661 (ospf_network_lsa_install), (ospf_summary_lsa_install),
1662 (ospf_summary_asbr_lsa_install), (ospf_external_lsa_install):
1663 Functions re-arranged.
1665 * ospf_lsa.c (IS_LSA_MAXAGE), (IS_LSA_SELF): Macro added.
1667 2000-06-20 Michael Rozhavsky <mike@nbase.co.il>
1669 * ospf_packet.c (ospf_ls_req), (ospf_ls_upd), (ospf_ls_ack): Add
1670 verification of LS type.
1672 2000-06-20 Gleb Natapov <gleb@nbase.co.il>
1674 * ospf_ase.c (ospf_ase_calculate_timer): Add more sanity check
1675 whether rn->info is NULL.
1677 2000-06-20 Toshiaki Takada <takada@zebra.org>
1679 * ospfd.c (show_ip_ospf_interface_sub): Show Router-ID of both
1680 DR and Backup correctly with `show ip ospf interface' command.
1682 2000-06-20 Toshiaki Takada <takada@zebra.org>
1684 * ospf_lsa.c (ospf_lsa_lock), (ospf_lsa_unlock),
1685 (ospf_lsa_discard): These functions are used for avoiding
1686 unexpected reference to freed LSAs.
1688 2000-06-13 Kunihiro Ishiguro <kunihiro@zebra.org>
1690 * ospf_packet.c (ospf_ls_upd): Initialize lsa by NULL to avoid
1693 2000-06-12 Kunihiro Ishiguro <kunihiro@zebra.org>
1695 * ospf_ase.h (ospf_ase_rtrs_register_lsa): Add prototype.
1697 2000-06-12 Toshiaki Takada <takada@zebra.org>
1699 * ospf_lsa.c (ospf_external_lsa_install): Make sure to register
1700 LSA to rtrs_external when replacing AS-external-LSAs in LSDB.
1703 2000-06-10 Toshiaki Takada <takada@zebra.org>
1705 * ospf_lsdb.c (id_to_prefix), (ospf_lsdb_hash_key),
1706 (ospf_lsdb_hash_cmp), (ospf_lsdb_new), (ospf_lsdb_iterator),
1707 (lsdb_free), (ospf_lsdb_free), (ospf_lsdb_add), (ospf_lsdb_delete),
1708 (find_lsa), (ospf_lsdb_lookup), (find_by_id),
1709 (ospf_lsdb_lookup_by_id), (ospf_lsdb_lookup_by_header): Functinos
1710 removed for migration to new_lsdb.
1712 * ospf_lsa.c (ospf_summary_lsa_install),
1713 (ospf_summary_asbr_lsa_install), (ospf_maxage_lsa_remover),
1714 (ospf_lsa_maxage_walker), (ospf_lsa_lookup),
1715 (ospf_lsa_lookup_by_id): Use new_lsdb instead of ospf_lsdb.
1716 (count_lsa), (ospf_lsa_count_table), (ospf_lsa_count),
1717 (ospf_get_free_id_for_prefix): Funcitions removed.
1719 2000-06-09 Gleb Natapov <gleb@nbase.co.il>
1721 * ospf_ism.c (ism_interface_down): Prevent some unneeded DR changes.
1723 * ospf_packet.c (ospf_db_desc_proc): Fix memory leak.
1724 (ospf_hello): Always copy router-ID when hello is received.
1726 2000-06-08 Gleb Natapov <gleb@nbase.co.il>
1728 * ospf_lsa.h (struct ospf_lsa): Add member of pointer to struct
1731 2000-06-08 Michael Rozhavsky <mike@nbase.co.il>
1733 * ospf_ase.c (ospf_asbr_route_same): New function added.
1734 This function makes sure external route calculation more
1737 2000-06-07 Michael Rozhavsky <mike@nbase.co.il>
1739 * ospf_ism.c (ism_change_status): Use ospf_lsa_flush_area for
1740 network-LSA deletion instead of using ospf_lsdb_delete.
1741 Also cancel network-LSA origination timer.
1743 2000-06-07 Levi Harper <lharper@kennedytech.com>
1745 * ospf_interface.c (ospf_if_down): Close read fd when an interface
1748 2000-06-05 Kunihiro Ishiguro <kunihiro@zebra.org>
1750 * ospf_asbr.c (ospf_external_info_lookup): Add explicit brace for
1751 avoid ambiguous else.
1753 * ospf_flood.c (ospf_external_info_check): Likewise.
1755 2000-06-05 Toshiaki Takada <takada@zebra.org>
1757 * ospf_nsm.c (nsm_adj_ok): Fix bug of DR election.
1759 2000-06-04 Toshiaki Takada <takada@zebra.org>
1761 * ospf_zebra.c (ospf_default_information_originate),
1762 (no_ospf_default_information_originate): New DEFUN added.
1764 2000-06-03 Toshiaki Takada <takada@zebra.org>
1766 * ospf_lsa.h, ospf_asbr.h (external_info): Struct moved from
1767 ospf_lsa.h to ospf_asbr.h.
1769 * ospf_lsa.c, ospf_asbr.c (ospf_external_info_add),
1770 (ospf_external_info_delete): Function moved from ospf_lsa.c
1773 2000-06-03 Toshiaki Takada <takada@zebra.org>
1775 * ospf_flood.c (ospf_external_info_check): New function added.
1776 (ospf_process_self_orignated_lsa): Make sure to flush
1777 self-originated AS-external-LSA, when router reboot and no longer
1778 originate those AS-external-LSA.
1780 2000-06-02 Toshiaki Takada <takada@zebra.org>
1782 * ospf_network.c (ospf_serv_sock): Remove SO_DONTROUTE
1785 * ospf_packet.c (ospf_write): Set MSG_DONTROUTE flag for
1786 unicast destination packets.
1788 2000-06-02 Toshiaki Takada <takada@zebra.org>
1790 * ospf_lsdb.c (new_lsdb_delete): Delete entry from LSDB only when
1791 specified LSA matches.
1793 2000-06-02 Gleb Natapov <gleb@nbase.co.il>
1795 * ospf_network.c (ospf_serv_sock): Set SO_DONTROUTE
1798 2000-06-01 Akihiro Mizutani <mizutani@dml.com>
1800 * ospf_dump.c: Replace string `Debugging functions\n' with DEBUG_STR.
1801 Replace string `OSPF information\n' with OSPF_STR.
1803 2000-06-01 Toshiaki Takada <takada@zebra.org>
1805 * ospf_lsdb.[ch]: Use new_lsdb struct for network-LSA instead of
1808 2000-06-01 Toshiaki Takada <takada@zebra.org>
1810 * ospf_dump.c (config_debug_ospf_packet), (config_debug_ospf_event),
1811 (config_debug_ospf_ism), (config_debug_ospf_nsm),
1812 (config_debug_ospf_lsa), (config_debug_ospf_zebra),
1813 (term_debug_ospf_packet), (term_debug_ospf_event),
1814 (term_debug_ospf_ism), (term_debug_ospf_nsm),
1815 (term_debug_ospf_lsa), (term_debug_ospf_zebra): Repalce debug_ospf_*
1816 variable to use for debug option flags.
1818 (debug_ospf_packet), (debug_ospf_ism), (debug_ospf_nsm),
1819 (debug_ospf_lsa), (debug_ospf_zebra): Set {config,term}_debug_*
1820 flags when vty->node is CONFIG_NODE, otherwise set only term_debug_*
1823 * ospf_dump.h (CONF_DEBUG_PACKET_ON), (CONF_DEBUG_PACKET_OFF),
1824 (TERM_DEBUG_PACKET_ON), (TERM_DEBUG_PACKET_OFF),
1825 (CONF_DEBUG_ON), (CONF_DEBUG_OFF), (IS_CONF_DEBUG_OSPF_PACKET),
1826 (IS_CONF_DEBUG_OSPF): New Macro added.
1828 2000-05-31 Toshiaki Takada <takada@zebra.org>
1830 * ospfd.c (clear_ip_ospf_neighbor): New DEFUN added.
1831 Currently this command is used for only debugging.
1833 * ospf_nsm.c (nsm_change_status): Make sure thread cancellation
1834 for network-LSA when DR has no full neighbors.
1836 * ospf_nsm.c (ospf_db_summary_clear): New function added.
1838 2000-05-30 Toshiaki Takada <takada@zebra.org>
1840 * ospf_lsdb.c (new_lsdb_insert): LSAs are always freed by
1841 maxage_lsa_remover when LSA is replaced.
1843 2000-05-25 Gleb Natapov <gleb@nbase.co.il>
1845 * ospf_flood.c (ospf_ls_retransmit_delete_nbr_all): Add argument
1846 `struct ospf_area' to remove LSA from Link State retransmission list
1847 of neighbor from only one Area.
1849 2000-05-24 Michael Rozhavsky <mike@nbase.co.il>
1851 * ospf_lsdb.c (ospf_lsdb_add): Preserve flags field when
1852 overriting old LSA with new LSA.
1854 2000-05-24 Gleb Natapov <gleb@nbase.co.il>
1856 * ospf_lsa.c (ospf_router_lsa_body_set): Fix bug of router-LSA
1859 2000-05-22 Michael Rozhavsky <mike@nbase.co.il>
1861 * ospf_route.c (ospf_intra_add_stub):
1862 * ospf_spf.h (struct vertex): Use u_int32_t for distance (cost)
1863 value instead of u_int16_t.
1865 2000-05-22 Axel Gerlach <agerlach@datus.datus.com>
1867 * ospf_ia.c (ospf_ia_network_route): Fix bug of Inter-area route
1868 equal cost path calculation.
1870 2000-05-21 Toshiaki Takada <takada@zebra.org>
1872 * ospf_ase.c (ospf_ase_calculate_route_delete): New function added.
1873 Make sure, when rotuer route is deleted, related external routes
1876 2000-05-20 Toshiaki Takada <takada@zebra.org>
1878 * ospfd.c (ospf_interface_down): Make sure interface flag is disable
1881 2000-05-16 Toshiaki Takada <takada@zebra.org>
1883 * ospf_asbr.c (ospf_asbr_should_announce), (ospf_asbr_route_remove):
1886 * ospfd.h (EXTERNAL_INFO): Macro added.
1887 Substitute `ospf_top->external_info[type]' with it.
1889 2000-05-16 Toshiaki Takada <takada@zebra.org>
1891 * ospf_lsa.c (ospf_rtrs_external_remove): New function added.
1893 2000-05-14 Gleb Natapov <gleb@nbase.co.il>
1895 * ospf_flood.c (ospf_ls_retransmit_delete_nbr_all)
1896 * ospf_lsdb.c (new_lsdb_insert)
1897 * ospf_packet.c (ospf_ls_ack): Fix database synchonization problem.
1899 2000-05-14 Gleb Natapov <gleb@nbase.co.il>
1901 * ospf_lsa.h (tv_adjust), (tv_ceil), (tv_floor), (int2tv),
1902 (tv_add), (tv_sub), (tv_cmp): Prototype definition added.
1904 * ospf_nsm.h (ospf_db_summary_delete_all): Prototype definition added.
1906 2000-05-13 Toshiaki Takada <takada@zebra.org>
1908 * ospf_lsa.[ch] (ospf_lsa): struct timestamp type is changed from
1909 time_t to struct timeval.
1910 (tv_adjust), (tv_ceil), (tv_floor), (int2tv), (tv_add),
1911 (tv_sub), (tv_cmp): timeval utillity functions added.
1913 2000-05-12 Toshiaki Takada <takada@zebra.org>
1915 * ospf_lsa.[ch] (ospf_schedule_update_router_lsas): Delete function.
1916 Change to use macro OSPF_LSA_UPDATE_TIMER instead of using
1918 router-LSA refresh timer related stuff is re-organized.
1920 2000-05-10 Gleb Natapov <gleb@nbase.co.il>
1922 * ospf_interface.c (ospf_vl_set_params):
1923 * ospf_packet.c (ospf_check_network_mask):
1924 * ospf_spf.[ch] (ospf_spf_next):
1925 Remove field address from `struct vertex', and search for peer
1926 address of virtual link in function `ospf_vl_set_params' instead.
1928 2000-05-10 Gleb Natapov <gleb@nbase.co.il>
1930 * ospf_packet.c (ospf_ls_upd): Fix some memory leak related LSA.
1932 2000-05-08 Thomas Molkenbur <tmo@datus.com>
1934 * ospf_packet.c (ospf_packet_dup): Replace ospf_steram_copy()
1935 with ospf_stream_dup() to fix memory leak.
1937 2000-05-08 Michael Rozhavsky <mike@nbase.co.il>
1939 * ospf_flood.c (ospf_flood_through_area): Fix the problem of
1940 LSA update without DROther.
1942 2000-05-04 Gleb Natapov <gleb@nbase.co.il>
1944 * ospf_spf.c (ospf_vertex_free): Fix memory leak of SPF calculation.
1946 2000-05-03 Toshiaki Takada <takada@zebra.org>
1948 * ospf_neighbor.c (ospf_db_summary_add): Use new_lsdb struct
1949 instead linked-list.
1950 (ospf_db_summary_count), (ospf_db_summary_isempty):
1953 * ospf_lsa.c (ospf_rotuer_lsa): Re-arrange and divide functions.
1955 2000-05-02 Gleb Natapov <gleb@nbase.co.il>
1957 * ospf_lsdb.c (new_lsdb_cleanup): Fix memory leak. When LSDB are
1958 not needed any more, then free them.
1960 2000-05-02 Toshiaki Takada <takada@zebra.org>
1962 * ospfd.c (timers_spf), (no_timers_spf): New defun added.
1963 SPF calculation timers related stuff is rearranged.
1965 * ospf_spf.c (ospf_spf_calculate_timer_add): Function removed.
1966 SPF timer is scheduled by SPF calculation delay and holdtime
1967 configuration variable.
1969 * ospf_lsa.c (ospf_external_lsa_nexthop_get): Set AS-external-LSA's
1970 forwarding address when nexthop learned by other protocols is
1973 * ospf_zebra.c (ospf_redistribute_source_metric_type),
1974 (ospf_redistribute_source_type_metric): Re-arrange DEFUNs and
1977 2000-05-01 Toshiaki Takada <takada@zebra.org>
1979 * ospf_flood.c (ospf_ls_retransmit_count),
1980 (ospf_ls_retransmit_isempty): New function added.
1982 (ospf_ls_retransmit_add), (ospf_ls_retransmit_delete),
1983 (ospf_ls_retransmit_clear), (ospf_ls_retransmit_lookup),
1984 (ospf_ls_retransmit_delete_all), (ospf_ls_retransmit_delete_nbr_all),
1985 (ospf_ls_retransmit_add_nbr_all): Replace these functions to use
1988 2000-04-29 Toshiaki Takada <takada@zebra.org>
1990 * ospfd.c (no_network_area): Add check Area-ID whether specified
1991 Area-ID with prefix matches config.
1993 2000-04-27 Toshiaki Takada <takada@zebra.org>
1995 * ospf_lsa.c (ospf_maxage_lsa_remover): Fix problem of
1996 remaining withdrawn routes on zebra.
1998 2000-04-25 Michael Rozhavsky <mike@nbase.co.il>
2000 * ospf_nsm.c (nsm_kill_nbr), (nsm_ll_down), (nsm_change_status),
2001 (ospf_nsm_event): Fix network-LSA re-origination problem.
2003 2000-04-24 Toshiaki Takada <takada@zebra.org>
2005 * ospf_nsm.c (ospf_db_desc_timer): Fix bug of segmentation fault
2006 with DD retransmission.
2008 * ospf_nsm.c (nsm_kill_nbr): Fix bug of re-origination when
2009 a neighbor disappears.
2011 2000-04-23 Michael Rozhavsky <mike@nbase.co.il>
2013 * ospf_abr.c (ospf_abr_announce_network_to_area): Fix bug of
2014 summary-LSAs reorigination. Correctly copy OSPF_LSA_APPROVED
2015 flag to new LSA. when summary-LSA is reoriginatd.
2017 * ospf_flood.c (ospf_flood_through_area): Fix bug of flooding
2018 procedure. Change the condition of interface selection.
2020 2000-04-21 Toshiaki Takada <takada@zebra.org>
2022 * ospf_lsa.c (ospf_refresher_register_lsa): Fix bug of refresh never
2025 * ospfd.c (show_ip_ospf_neighbor_id): New defun added.
2026 `show ip ospf neighbor' related commands are re-arranged.
2028 2000-04-20 Toshiaki Takada <takada@zebra.org>
2030 * ospf_dump.c (debug_ospf_zebra): New defun added.
2031 Suppress zebra related debug information.
2033 2000-04-19 Toshiaki Takada <takada@zebra.org>
2035 * ospf_zebra.c (ospf_distribute_list_update_timer),
2036 (ospf_distribute_list_update), (ospf_filter_update):
2037 New function added. Re-organize `distribute-list' router ospf
2040 2000-04-13 Michael Rozhavsky <mike@nbase.co.il>
2042 * ospf_packet.c (ospf_make_ls_upd): Add check for MAX_AGE.
2044 2000-04-14 Michael Rozhavsky <mike@nbase.co.il>
2046 * ospf_packet.c (ospf_make_ls_upd): Increment LS age by configured
2047 interface transmit_delay.
2049 2000-04-14 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2051 * ospf_interface.c (ip_ospf_cost), (no_ip_ospf_cost):
2052 Add to schedule router_lsa origination when the interface cost changes.
2054 2000-04-12 Toshiaki Takada <takada@zebra.org>
2056 * ospf_lsa.c (ospf_refresher_register_lsa),
2057 (ospf_refresher_unregister_lsa): Fix bug of core dumped.
2059 * ospfd.c (no_router_ospf): Fix bug of core dumped.
2061 2000-03-29 Toshiaki Takada <takada@zebra.org>
2063 * ospf_nsm.c (nsm_oneway_received): Fix bug of MS flag unset.
2065 2000-03-29 Michael Rozhavsky <mike@nbase.co.il>
2067 * ospf_lsa.c (ospf_network_lsa):
2068 * ospf_nsm.c (ospf_nsm_event): Fix bug of Network-LSA originated
2071 2000-03-28 Toshiaki Takada <takada@zebra.org>
2073 * ospf_nsm.c (nsm_bad_ls_req), (nsm_seq_number_mismatch),
2074 (nsm_oneway_received): Fix bug of NSM state flapping between
2075 ExStart and Exchange.
2077 2000-03-28 Toshiaki Takada <takada@zebra.org>
2079 * ospf_packet.h (strcut ospf_header): Fix the size of ospf_header,
2080 change u_int8_t to u_char.
2082 2000-03-27 Toshiaki Takada <takada@zebra.org>
2084 * ospf_lsa.c (ospf_lsa_checksum): Take care of BIGENDIAN architecture.
2086 2000-03-27 Toshiaki Takada <takada@zebra.org>
2088 * ospfd.c (ospf_interface_run): Make sure Address family matches.
2090 2000-03-26 Love <lha@s3.kth.se>
2092 * ospf_packet.c (ospf_write): Chack result of sendto().
2094 2000-03-26 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2096 * ospf_nsm.c (nsm_oneway_received): Fix bug of 1-WayReceived in NSM.
2098 2000-03-23 Libor Pechacek <farco@clnet.cz>
2100 * ospf_lsa.c (ospf_network_lsa)
2101 * ospf_lsdb.c (new_lsdb_insert): Fix bug of accessing to
2104 2000-03-23 Toshiaki Takada <takada@zebra.org>
2106 * ospfd.c (ospf_config_write): Fix bug of duplicate line for
2107 `area A.B.C.D authentication'.
2109 2000-03-22 Toshiaki Takada <takada@zebra.org>
2111 * ospf_debug.c (debug_ospf_lsa), (no_debug_ospf_lsa): Defun added.
2112 Suppress all zlog related to LSAs with this config option.
2114 2000-03-21 Kunihiro Ishiguro <kunihiro@zebra.org>
2116 * ospf_nsm.c (ospf_nsm_event): Add check for NSM_InactivityTimer.
2118 2000-03-21 Toshiaki Takada <takada@zebra.org>
2120 * ospf_packet.c (ospf_ls_upd_timer), (ospf_ls_req):
2121 Fix bug of memory leak about linklist.
2123 * ospf_flood.c (ospf_flood_through_area): Likewise.
2125 2000-03-18 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2127 * ospf_flood.c (ospf_ls_retransmit_lookup): Add checksum comparison
2128 to identify LSA uniquely. This fix routes lost.
2130 2000-03-18 Toshiaki Takada <takada@zebra.org>
2132 * ospf_ase.c (ospf_find_asbr_route): Add sanity check with router
2135 2000-03-17 Alex Zinin <zinin@amt.ru>
2137 * ospf_spf.[ch]: Bug fix.
2138 The 2nd stage of Dijkstra could consider one vertex
2139 more than once if there is more than one link
2140 between the routers, thus adding extra CPU overhead
2141 and extra next-hops.
2144 2000-03-15 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2146 * ospf_nsm.c (nsm_inactivity_timer): Changed to call nsm_kill_nbr().
2148 2000-03-14 Toshiaki Takada <takada@zebra.org>
2150 * ospf_route.c (ospf_route_copy_nexthops): Fix bug of memory leak of
2151 ospf_path. Actually ignore merging ospf_route with completely same
2154 2000-03-12 Toshiaki Takada <takada@zebra.org>
2156 * ospf_lsa.c (show_as_external_lsa_detail): fix bug of
2157 external route tag byte order.
2159 2000-03-11 Toshiaki Takada <takada@zebra.org>
2161 * ospf_lsdb.c (ospf_lsdb_insert): New function added.
2163 2000-03-09 Toshiaki Takada <takada@zebra.org>
2165 * ospf_lsa.c (ospf_external_lsa_install),
2166 (ospf_lsa_lookup), (show_ip_ospf_database_all),
2167 (show_ip_ospf_database_self_originate): Use struct new_lsdb for
2168 LSDB of AS-external-LSAs instead of ospf_lsdb.
2170 * ospf_lsa.c (ospf_lsa_unique_id): New function added.
2171 Use for assigning Unique Link State ID instead of
2172 ospf_get_free_id_for_prefix().
2174 2000-03-09 Toshiaki Takada <takada@zebra.org>
2176 * ospf_ase.c (ospf_ase_calculate_timer): Fix bug of segmentation
2177 fault reported by George Bonser <george@siteROCK.com>.
2179 2000-03-07 Libor Pechacek <farco@clnet.cz>
2181 * ospfd.c (ospf_interface_down): Fix bug of segmentation fault.
2183 2000-03-06 Toshiaki Takada <takada@zebra.org>
2185 * ospf_route.c (ospf_route_cmp): Change meaning of return values.
2187 2000-03-02 Alex Zinin <zinin@amt.ru>
2188 * ospfd.h, ospf_ia.h
2189 New Shortcut ABR code. Now area's flag can be configured
2190 with Default, Enable, and Disable values.
2191 More info will be in the new ver of I-D soon (see IETF web).
2193 2000-02-25 Toshiaki Takada <takada@zebra.org>
2195 * ospf_lsa.c (ospf_lsa_header_set), (ospf_external_lsa_body_set),
2196 (osfp_external_lsa_originate), (ospf_external_lsa_queue),
2197 (ospf_external_lsa_originate_from_queue): New function added.
2198 (ospf_external_lsa): Function removed.
2200 * ospf_zebra.c (ospf_zebra_read_ipv4): Originate AS-external-LSA
2201 when listen a route from Zebra, instead creating external route.
2203 * ospf_asbr.c (ospf_asbr_route_add_flood_lsa),
2204 (ospf_asbr_route_add_queue_lsa),
2205 (ospf_asbr_route_install_lsa), (ospf_asbr_route_add):
2208 * ospf_ase.c (process_ase_lsa): Function will not be used.
2209 (ospf_ase_calculate), (ospf_ase_calculate_route_add),
2210 (ospf_ase_calculate_new_route), (ospf_ase_caluculate_asbr_route):
2211 process_ase_lsa () is separated to these functions.
2213 OSPF AS-external-LSA origination is whole re-organized.
2215 2000-02-18 Toshiaki Takada <takada@zebra.org>
2217 * ospf_packet.c (ospf_ls_upd): Fix bug of OSPF LSA memory leak.
2219 * ospf_asbr.c (ospf_asbr_route_add_flood_lsa),
2220 (ospf_asbr_route_add_queue_lsa): Fix bug of OSPF external route
2223 2000-02-12 Kunihiro Ishiguro <kunihiro@zebra.org>
2225 * ospf_asbr.c (ospf_asbr_route_install_lsa): Re-calculate LSA
2226 checksum after change Advertised Router field.
2228 2000-02-09 Toshiaki Takada <takada@zebra.org>
2230 * ospf_asbr.c (ospf_external_route_lookup): Add new function.
2232 2000-02-08 Toshiaki Takada <takada@zebra.org>
2234 * ospfd.c (ospf_router_id_get), (ospf_router_id_update),
2235 (ospf_router_id_update_timer): Router ID decision algorithm is changed.
2236 Router ID is chosen from all of eligible interface addresses even if
2237 it is not enable to OSPF.
2239 2000-02-08 Toshiaki Takada <takada@zebra.org>
2241 * ospf_asbr.c (ospf_asbr_route_add): Function divided to
2242 ospf_asbr_route_add_flood_lsa, ospf_asbr_route_add_queue_lsa and
2243 ospf_asbr_route_install_lsa. If Router-ID is not set, then LSA is
2244 waited to install to LSDB.
2245 `0.0.0.0 adv_router' AS-external-LSA origination bug was fixed.
2247 2000-02-01 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2249 * ospf_flood.c (ospf_ls_retransmit_lookup): Compare LS seqnum
2250 in the ACK before deleting.
2252 * ospf_packet.c (ospf_hello): Reset the flags after a shutdown
2253 and no shutdown of the interface.
2255 2000-01-31 Toshiaki Takada <takada@zebra.org>
2257 * ospf_packet.c (ospf_ls_req): Send multiple Link State Update
2258 packets respond to a Link State Request packet.
2260 * ospfd.c (show_ip_ospf_neighbor_detail_sub): Show thread state.
2262 * ospf_interface.c (ospf_vl_new): Crash when backbone area
2263 is not configured and set virtual-link to no-backbone area,
2266 2000-01-30 Kunihiro Ishiguro <kunihiro@zebra.org>
2268 * ospf_neighbor.h (struct ospf_neighbor): Add pointer to last send
2271 * ospf_packet.c (ospf_ls_upd): Comment out LS request list
2272 treatment. That should be done in OSPF flooding procedure.
2274 * ospf_flood.c (ospf_flood_through_area): Enclose
2275 ospf_check_nbr_loding inside if-else close.
2277 2000-01-31 Toshiaki Takada <takada@zebra.org>
2279 * ospf_packet.c (ospf_make_ls_upd): Fix bug of #LSAs counting.
2281 2000-01-29 Toshiaki Takada <takada@zebra.org>
2283 * ospf_packet.c (ospf_make_md5_digest): Fix bug of md5 authentication.
2285 2000-01-28 Toshiaki Takada <takada@zebra.org>
2287 * ospfd.c (show_ip_ospf): Show Number of ASE-LSAs.
2289 2000-01-27 Kunihiro Ishiguro <kunihiro@zebra.org>
2291 * ospf_packet.c (ospf_make_db_desc): Don't use rm_list for
2292 removing LSA from nbr->db_summary.
2294 2000-01-27 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2296 * ospf_packet.c (ospf_ls_upd_send): Set AllSPFRouters to
2297 destination when the link is point-to-point.
2298 (ospf_ls_ack_send_delayed): Likewise.
2300 2000-01-27 Kunihiro Ishiguro <kunihiro@zebra.org>
2302 * ospf_flood.c (ospf_ls_request_delete_all): Fix bug of next
2303 pointer lookup after the node is freed.
2305 2000-01-26 Kunihiro Ishiguro <kunihiro@zebra.org>
2307 * ospf_asbr.c (ospf_asbr_route_add): Instead of scanning all AS
2308 external route, use ospf_top->external_self.
2310 2000-01-27 Toshiaki Takada <takada@zebra.org>
2312 * ospf_lsa.c (ospf_forward_address_get): New function added.
2314 * ospf_asbr.c (ospf_asbr_check_lsas): Originate AS-external-LSA
2315 only when it should be replaced.
2317 2000-01-25 Kunihiro Ishiguro <kunihiro@zebra.org>
2319 * ospf_flood.c (ospf_ls_retransmit_clear): Delete list node.
2321 * ospf_lsa.c (ospf_lsa_free): Reduce logging message using
2324 * ospf_ism.c (ism_change_status): Fix bug of DR -> non DR status
2325 change. Self originated LSA is freed but not deleted from lsdb.
2327 2000-01-24 Kunihiro Ishiguro <kunihiro@zebra.org>
2329 * ospf_ism.c (ism_interface_down): Don't use router_id for
2330 detecting self neighbor structure. Instead of that compare
2333 * ospf_neighbor.c (ospf_nbr_free): Cancel all timer when neighbor
2335 (ospf_nbr_free): Free last send packet.
2337 * ospf_neighbor.h (struct ospf_neighbor): Remove host strucutre.
2338 Instead of that src is introduced.
2340 * ospf_nsm.h: Enclose macro defenition with do {} while (0).
2342 2000-01-17 Kunihiro Ishiguro <kunihiro@zebra.org>
2344 * ospfd.c: Change part of passive interface implementation. For
2345 passive interface just disabling sending/receiving Hello on the
2348 2000-01-16 Kai Bankett <kai.bankett@vew-telnet.net>
2350 * ospf_interface.h (OSPF_IF_PASSIVE): Add passive flag.
2351 * ospf_interface.c (ospf_if_lookup_by_name): Add new function.
2352 * ospf_lsa.c (ospf_router_lsa): Skip passive interface.
2353 * ospfd.c (passive_interface): New command passive-interface is
2355 (ospf_config_write): Print passive interface.
2357 2000-01-15 Toshiaki Takada <takada@zebra.org>
2359 * ospf_interface.h (crypt_key): New struct added to store
2360 multiple cryptographic autheitication keys.
2361 (ospf_interface): struct changed.
2363 * ospf_interface.c: ospf_crypt_key_new, ospf_crypt_key_add,
2364 ospf_crypt_key_lookup, ospf_crypt_key_delete: new functions added.
2366 * ospf_packet.c (ip_ospf_message_digest_key): Changed to store
2367 multiple cryptographic authentication keys.
2369 2000-01-14 Toshiaki Takada <takada@zebra.org>
2371 * ospf_interface.c: DEFUN (if_ospf_*) commands changed name to
2373 Old notation `ospf *' still remains backward compatibility.
2375 1999-12-29 Alex Zinin <zinin@amt.ru>
2376 * ospf_lsa.c: ospf_lsa_more_recent() bug fix
2377 * ospf_nsm.c, ospf_packet.c: remove nbr data struct when
2378 int goes down, also check DD flags correctly (bug fix)
2380 1999-12-28 Alex Zinin <zinin@amt.ru>
2381 * "redistribute <source> metric-type (1|2) metric <XXX>" added
2383 1999-12-23 Alex Zinin <zinin@amt.ru>
2384 * added RFC1583Compatibility flag
2385 * added dynamic interface up/down functionality
2387 1999-11-19 Toshiaki Takada <takada@zebra.org>
2389 * ospf_neighbor.h (struct ospf_neighbor): Add member state_change
2390 for NSM state change statistics.
2392 1999-11-19 Toshiaki Takada <takada@zebra.org>
2394 * ospfd.c (show_ip_ospf_neighbor_detail),
2395 (show_ip_ospf_neighbor_int_detail): DEFUN Added.
2397 1999-11-14 Kunihiro Ishiguro <kunihiro@zebra.org>
2399 * ospf_asbr.c (ospf_asbr_check_lsas): Add check of
2402 1999-11-11 Toshiaki Takada <takada@zebra.org>
2404 * ospf_ia.[ch] (OSPF_EXAMINE_SUMMARIES_ALL): Macro added.
2405 This macro is expanded to ospf_examine_summaries ()
2406 for SUMMARY_LSA and SUMMARY_LSA_ASBR.
2407 (OSPF_EXAMINE_TRANSIT_SUMMARIES_ALL): Macro added.
2408 This macro is expanded to ospf_examine_transit_summaries ()
2409 for SUMMARY_LSA and SUMMARY_LSA_ASBR.
2411 1999-11-11 Toshiaki Takada <takada@zebra.org>
2413 * ospf_lsa.[ch] (ospf_find_self_summary_lsa_by_prefix): Changed to
2414 macro OSPF_SUMMARY_LSA_SELF_FIND_BY_PREFIX.
2415 (ospf_find_self_summary_asbr_lsa_by_prefix): Changed to
2416 macro OSPF_SUMMARY_ASBR_LSA_SELF_FIND_BY_PREFIX.
2417 (ospf_find_self_external_lsa_by_prefix): Changed to
2418 macro OSPF_EXTERNAL_LSA_SELF_FIND_BY_PREFIX.
2420 1999-11-11 Toshiaki Takada <takada@zebra.org>
2422 * ospfd.c (ospf_abr_type): ospf_abr_type_cisco, ospf_abr_type_ibm,
2423 ospf_abr_type_shortcut and ospf_abr_type_standard DEFUNs are
2425 * ospfd.c (no_ospf_abr_type): no_ospf_abr_type_cisco,
2426 no_ospf_abr_type_ibm and no_ospf_abr_type_shortcut DEFUNS are
2429 1999-11-10 Toshiaki Takada <takada@zebra.org>
2431 * ospf_route.c (ospf_lookup_int_by_prefix): Move function to
2432 ospf_interface.c and change name to ospf_if_lookup_by_prefix ().
2434 1999-11-01 Alex Zinin <zinin@amt.ru>
2436 some correction to LSU processing
2438 * ospf_lsa.c ospfd.h
2439 randomize initial LSA refreshment interval
2440 and limit the size of LSA-group to 10
2441 to let randomization work more effectively.
2443 1999-10-31 Alex Zinin <zinin@amt.ru>
2445 cancel t_network_lsa_self
2446 when freeing int structure
2448 * ospf_abr.c ospf_asbr.c ospf_flood.c ospf_lsa.c
2449 ospf_lsa.h ospf_lsdb.h ospfd.c ospfd.h
2451 Summary and ASE LSA refreshment functions
2452 added---LSA refreshment is paced to 70 LSAs
2453 per sec to avoid link overflow. Refreshment events
2454 are further randomized within a 10 sec interval
2457 Also the sigfault of memcmp() in ospf_lsa_is_different()
2460 1999-10-30 Alex Zinin <zinin@amt.ru>
2462 Fix the bug where MAX_AGE LSAs
2463 are included into the DB summary.
2466 allocate 2*MTU input buffer instead of just MTU
2467 for the cases when the other router mistakenly
2468 sends larger packets thus causing fragmentation, etc.
2471 in nsm_reset_nbr() lists should be freed
2472 not when they are empty.
2474 1999-10-29 Kunihiro Ishiguro <kunihiro@zebra.org>
2476 * ospf_zebra.c (ospf_acl_hook): Move OSPF_IS_ASBR and OSPF_IS_ABR
2477 check inside of if (ospf_top).
2479 1999-10-29 Alex Zinin <zinin@amt.ru>
2480 * ospf_lsa.c ospf_lsdb.c :
2481 add assertion in lsa and lsa->data alloc functions,
2482 as well as in lsdb_add for new->data
2484 * ospf_lsdb.c: free hash table correctly
2486 1999-10-28 John Capo <jc@irbs.com>
2488 * ospf_packet.h (OSPF_PACKET_MAX): Correct MAX packet length
2491 1999-10-27 Kunihiro Ishiguro <kunihiro@zebra.org>
2493 * OSPF-TRAP-MIB.txt: New file added. Edited version of RFC1850.
2495 * OSPF-MIB.txt: New file added. Edited version of RFC1850.
2497 1999-10-27 Alex Zinin <zinin@amt.ru>
2498 * ospfd, ospf_zebra, ospf_abr
2499 "area import-list" command is added.
2500 This command allows to filter the inter-area routes
2501 injected into an area. Access list hook function
2502 extended to invalidate area exp/imp lists.
2504 1999-10-25 Yoshinobu Inoue <shin@nd.net.fujitsu.co.jp>
2506 * ospfd.c (ospf_interface_run): Enable to detect P2P network
2507 on an OSPF interface.
2509 1999-10-19 Jordan Mendelson <jordy@wserv.com>
2511 * ospf_lsdb.c (ospf_lsdb_add): Fix bug of crash
2512 in ospf_ls_retransmit_lookup ().
2514 1999-10-19 Vladimir B. Grebenschikov <vova@express.ru>
2516 * ospf_route.c: Workaround about installation of OSPF routes into
2517 the zebra daemon. Add checking of existance routes. Free
2518 ospf_top->old_table if it exists.
2520 1999-10-15 Jordan Mendelson <jordy@wserv.com>
2522 * Add support for MD5 authentication.
2524 1999-10-12 Alex Zinin <zinin@amt.ru>
2525 * ospfd.c, ospfd.h, ospf_abr.c:
2526 a new command "area export-list" was added, it allows
2527 the admin. to control which intra-area routes are
2528 announced to other areas by the ABR
2530 1999-10-12 Alex Zinin <zinin@amt.ru>
2531 * ospf_asbr.c (ospf_asbr_check_lsas): Fix bug of coredump
2532 when "no redistribute" is used after a distribute list
2533 denying some networks was used
2535 1999-10-05 Toshiaki Takada <takada@zebra.org>
2537 * ospf_route.c (ospf_path_dup): New function added.
2539 1999-10-05 Toshiaki Takada <takada@zebra.org>
2541 * ospf_interface.[ch]: Some of VL related funciton name changed.
2543 1999-09-27 Alex Zinin <zinin@amt.ru>
2545 * ospf_zebra.c: Distribute-list functionality added
2547 1999-09-27 Toshiaki Takada <takada@zebra.org>
2549 * ospfd.c (show_ip_ospf): Fix bug of segmentation fault when no ospf
2552 1999-09-25 Kunihiro Ishiguro <kunihiro@zebra.org>
2554 * ospfd.c (ospf_interface_down): Fix bug of misusing nextnode()
2555 instead of node->next. Reported by Hiroki Ishibashi
2556 <ishibasi@dcd.abk.nec.co.jp>.
2558 * ospf_route.c (show_ip_ospf_route): Add check for ospf is enabled
2561 1999-09-23 Alex Zinin <zinin@amt.ru>
2563 * stub area support added
2565 1999-09-23 Alex Zinin <zinin@amt.ru>
2567 * fwd_addr in ASE-LSAs is now set correctly
2568 * ASE routing changed to check the fwd_addr
2569 and skip the route if the addr points to one
2570 of our interfaces to avoid loops.
2572 1999-09-22 Alex Zinin <zinin@amt.ru>
2575 ospf_vls_in_area() added, it returns
2576 the number of VLs configured through the area
2578 * ospf_interface.c ospf_lsa.c ospf_lsdb.c ospfd.c
2579 honor correct mem alloc
2581 1999-09-22 Alex Zinin <zinin@amt.ru>
2584 Some OSPF mem types added,
2585 plus more info in "show mem"
2587 1999-09-21 Alex Zinin <zinin@amt.ru>
2590 "area range substitute" added.
2591 It can be used on NAT-enabled (IP-masquarade)
2592 routers to announce private networks
2593 from an area as public ones into the outside
2594 world (not in the RFC, btw :)
2596 1999-09-21 Alex Zinin <zinin@amt.ru>
2599 "area range suppress" added.
2600 This command allows to instruct the router
2601 to be silent about specific ranges, i.e.,
2602 it is a method of route filtering on area
2605 1999-09-21 Alex Zinin <zinin@amt.ru>
2607 * ospfd.c VLs removed when "no network area" executed
2609 1999-09-20 Alex Zinin <zinin@amt.ru>
2611 * ospf_ase.c bug fix for not-zero fwd_addr
2612 and directly connected routes.
2614 1999-09-20 Yon Uriarte <yon@plannet.de>
2616 * ospf_packet.c (ospf_make_ls_req): Introduce delta value for
2617 checking the length of OSPF packet exceeds MTU or not.
2619 * ospf_lsa.c (ospf_lsa_different): Apply ntohs for checking
2622 1999-09-18 Alex Zinin <zinin@amt.ru>
2624 * ospf_lsa.c bug fix for ospf_network_lsa() to
2625 include itself into the RID list
2627 1999-09-10 Alex Zinin <zinin@amt.ru>
2629 * Alternative ABR behaviors IBM/Cisco/Shortcut
2632 1999-09-10 Alex Zinin <zinin@amt.ru>
2634 * router and network-LSA origination
2635 changed to honor MinLSInterval
2637 1999-09-08 Alex Zinin <zinin@amt.ru>
2639 * modified ABR behavior to honor VLs and transit
2642 1999-09-07 Alex Zinin <zinin@amt.ru>
2644 * completed VL functionality
2646 1999-09-06 Kunihiro Ishiguro <kunihiro@zebra.org>
2648 * ospf_asbr.c: New file.
2649 ospf_asbr.h: New file.
2651 * ospf_zebra.c (ospf_redistribute_connected): Add redistribute
2654 1999-09-05 Kunihiro Ishiguro <kunihiro@zebra.org>
2656 * ospfd.h (OSPF_FLAG_VIRTUAL_LINK): Change OSPF_FLAG_VEND to
2657 OSPF_FLAG_VIRTUAL_LINK for comprehensiveness.
2659 1999-09-03 Kunihiro Ishiguro <kunihiro@zebra.org>
2661 * ospf_spf.c (ospf_spf_register): Change name from
2662 ospf_spf_route_add() to ospf_spf_register().
2663 Include "ospfd/ospf_abr.h" for ospf_abr_task() prototype.
2665 1999-09-02 Kunihiro Ishiguro <kunihiro@zebra.org>
2667 * ospf_lsa.c (ospf_external_lsa_install): Change to update
2668 lsa->data rather than install new one, when same id lsa is already
2671 1999-09-01 Kunihiro Ishiguro <kunihiro@zebra.org>
2673 * ospf_lsa.c (ospf_router_lsa_install): Return lsa value.
2674 (ospf_network_lsa_install): Likewise.
2675 (ospf_summary_lsa_install): Likewise.
2676 (ospf_summary_asbr_lsa_install): Likewise.
2677 (ospf_external_lsa_install): Likewise.
2679 * ospf_spf.c (ospf_spf_calculate): Comment out debug function
2682 1999-08-31 Kunihiro Ishiguro <kunihiro@zebra.org>
2684 * ospf_spf.c (ospf_rtrs_free): Add ospf_spf_calculate() for
2687 1999-08-31 Toshiaki Takada <takada@zebra.org>
2689 * ospf_lsa.c (show_ip_ospf_database_summary),
2690 (show_ip_ospf_database_summary_asbr),
2691 (show_ip_ospf_database_external): New function added.
2692 `show ip ospf database summary',
2693 `show ip ospf database asbr-summary'
2694 `show ip ospf database external' command can be used.
2696 * ospf_lsa.c (ospf_lsa_count_table): New function added.
2697 (show_ip_ospf_database_all): show nothing if a type of LSA
2700 1999-08-31 Kunihiro Ishiguro <kunihiro@zebra.org>
2702 * ospf_lsa.c (ospf_maxage_lsa_remover): Preserve next pointer when
2703 the node is deleted.
2705 1999-08-31 Toshiaki Takada <takada@zebra.org>
2707 * ospf_flood.c (ospf_ls_retransmit_lookup): change to return
2709 (ospf_ls_request_new), (ospf_ls_request_free),
2710 (ospf_ls_request_add), (ospf_ls_request_delete),
2711 (ospf_ls_request_delete_all), (ospf_ls_request_lookup):
2714 * ospf_packet.c (ospf_ls_upd_send_lsa): New function added.
2716 * ospf_lsa.h (LS_AGE): Slightly change macro definition.
2718 * ospf_lsa.c (ospf_lsa_more_recent), (ospf_lsa_diffrent):
2721 1999-08-30 Alex Zinin <zinin@amt.ru>
2724 fix a bug with area range config write
2725 added "show ip ospf" command, it will be enhanced later on
2727 1999-08-30 Alex Zinin <zinin@amt.ru>
2730 updated ospf_router_lsa() to honor flags (B-bit)
2732 1999-08-30 Alex Zinin <zinin@amt.ru>
2735 wrote major functions implementing ABR activity
2737 1999-08-30 Alex Zinin <zinin@amt.ru>
2739 * ospf_ia.c ospf_route.c ospf_route.h
2740 fixed the bug with ospf_route.origin field.
2741 Now it holds pointer to lsa_header
2743 1999-08-30 Alex Zinin <zinin@amt.ru>
2745 * ospf_flood.c ospf_flood.h:
2746 transformed ospf_flood_if_select into ospf_flood_through_area()
2747 added new ospf_flood_if_select() and ospf_flood_through_as()
2749 1999-08-30 Toshiaki Takada <takada@zebra.org>
2751 * ospf_flood.[ch]: New file added.
2753 * ospf_packet.c (ospf_lsa_flooding),
2754 (ospf_lsa_flooding_select_if): functions move to ospf_flood.c
2756 * ospf_neighbor.c (ospf_put_lsa_on_retransm_list),
2757 (ospf_remove_lsa_from_retransm_list),
2758 (ospf_nbr_remove_all_lsas_from_retransm_list),
2759 (ospf_lsa_remove_from_ls_retransmit):
2760 (ospf_lsa_retransmit): functions move to
2761 ospf_flood.c, and change function's name:
2763 ospf_put_lsa_on_retransm_list ()
2764 -> ospf_ls_retransmit_add ()
2765 ospf_remove_lsa_from_retransm_list ()
2766 -> ospf_ls_retransmit_delete ()
2767 ospf_nbr_remove_all_lsas_from_retransm_list ()
2768 -> ospf_ls_retransmit_clear ()
2769 ospf_lsa_remove_from_ls_retransmit ()
2770 -> ospf_ls_retransmit_delete_nbr_all ()
2771 ospf_lsa_retransmit ()
2772 -> ospf_ls_retransmit_add_nbr_all ()
2774 * ospf_lsa.c (ospf_lsa_lookup_from_list): function move to
2775 ospf_flood.c, and change name to ospf_ls_retransmit_lookup ().
2777 1999-08-30 Kunihiro Ishiguro <kunihiro@zebra.org>
2779 * ospf_neighbor.c (ospf_nbr_lookup_by_addr): Use
2780 route_node_lookup() instead of route_node_get().
2782 * ospf_packet.c (ospf_ls_upd): Temporary comment out (6) check.
2784 1999-08-30 Kunihiro Ishiguro <kunihiro@zebra.org>
2786 * ospf_route.c (ospf_lookup_int_by_prefix): Add check of
2789 1999-08-29 Alex Zinin <zinin@amt.ru>
2791 MaxAge LSA deletion functions added.
2793 1999-08-29 Alex Zinin <zinin@amt.ru>
2795 ospf_nbr_lookup_by_addr(): added route_unlock_node()
2796 when function returns NULL if (rn->info == NULL)
2798 1999-08-29 Alex Zinin <zinin@amt.ru>
2800 added a hack for area range deletion
2802 1999-08-29 Alex Zinin <zinin@amt.ru>
2804 included lsdb field into struct ospf_lsa, to find
2805 LSDB easier when removing MaxAge LSAs.
2807 1999-08-29 Alex Zinin <zinin@amt.ru>
2808 * ospf_lsa.c ospf_neighbor.c ospf_nsm.c
2809 ospf_packet.c changed to honor new retransmit list
2810 management functions
2812 1999-08-29 Alex Zinin <zinin@amt.ru>
2813 * ospf_neighbor.c , .h added new retransmit list functions.
2815 1999-08-29 Alex Zinin <zinin@amt.ru>
2817 added ospf_ase, ospf_abr, ospf_ia
2819 1999-08-29 Alex Zinin <zinin@amt.ru>
2821 - changed ospf_next_hop_calculation() to include interface
2822 and nexthop addr for directly connected routers---more informative
2823 and solves problem with route installation into the kernel
2824 - changed ospf_nexthop_out_if_addr() to support routers, not only
2826 - added ospf_process_stubs();
2828 1999-08-29 Alex Zinin <zinin@amt.ru>
2830 - changed ospf_router_lsa() to provide correct links
2831 for p-t-p interfaces;
2832 - changed ospf_summary_lsa_install() to support table
2833 of self-originated summary-LSAs;
2834 - added ospf_summary_asbr_lsa_install() and ospf_external_lsa_install()
2835 - changed ospf_lsa_install() accordingly
2836 - changed show_ip_ospf_database_router_links() to support p-t-p
2838 1999-08-29 Kunihiro Ishiguro <kunihiro@zebra.org>
2840 * ospf_packet.c (ospf_make_db_desc): Only master can clear more
2843 1999-08-29 Kunihiro Ishiguro <kunihiro@zebra.org>
2845 * ospf_packet.c (ospf_read): Add check of IP src address.
2847 1999-08-28 Alex Zinin <zinin@amt.ru>
2849 added ospf_nbr_lookup_by_routerid()
2851 1999-08-28 Alex Zinin <zinin@amt.ru>
2853 added ABR/ASBR flag definitions and fields;
2854 added iflist field to area structure;
2855 summary_lsa_self and summary_lsa_asbr_self are changed
2857 added ranges field---configured area ranges;
2858 A separate Routers RT added;
2859 area range config commands and config write added
2862 1999-08-28 Alex Zinin <zinin@amt.ru>
2864 ospf_route_free()--added code to free the list of paths;
2865 The following functions added:
2866 ospf_intra_add_router();
2867 ospf_intra_add_transit();
2868 ospf_intra_add_stub();
2869 the last function uses new ospf_int_lookup_by_prefix();
2870 show_ip_ospf_route_cmd()--changed to support new RT structure;
2871 added ospf_cmp_routes()--general route comparision function;
2872 added ospf_route_copy_nexthops() and ospf_route_copy_nexthops_from_vertex()
2873 they are used in ASE and IA routing;
2874 added ospf_subst_route() and ospf_add_route();
2876 1999-08-28 Alex Zinin <zinin@amt.ru>
2878 changed struct ospf_path to include output interface,
2879 changed struct ospf_route to support IA and ASE routing.
2880 added prototypes of the function used in IA and ASE modules.
2882 1999-08-28 Alex Zinin <zinin@amt.ru>
2883 * ospf_lsa.h ospf_lsa.c :
2884 added ospf_my_lsa(), an interface independent version of
2885 ospf_lsa_is_self_originated(), it will be used in ASE and IA-routing.
2887 1999-08-27 Kunihiro Ishiguro <kunihiro@zebra.org>
2889 * ospf_interface.c (interface_config_write): Add check for
2892 1999-08-25 Toshiaki Takada <takada@zebra.org>
2894 * ospf_lsa.c (ospf_lsa_dup): New function added.
2896 * ospf_packet.c (ospf_write), (ospf_read): Print send/recv
2897 interface in debug message.
2899 1999-08-25 Toshiaki Takada <takada@zebra.org>
2901 * ospf_packet.c (ospf_ls_ack_send): The name is changed from
2903 (ospf_ls_ack_send_delayed) (ospf_ls_ack_timer): New function added.
2904 Delayed Link State Acknowledgment is scheduled by timer.
2906 1999-08-25 Alex Zinin <zinin@amt.ru>
2908 * ospf_lsa.c (ospf_router_lsa): Incorrectly included link to
2909 a stub network instead of link to a transit network into
2910 originated router-LSA, bug fixed.
2912 1999-08-24 Toshiaki Takada <takada@zebra.org>
2914 * ospfd.c (ospf_update_router_id): New function added.
2916 * ospf_network.c (ospf_write): Create new socket per transmission.
2917 And select outgoing interface whether dst is unicast or multicast.
2919 * ospf_packet.c: LSA flooding will work.
2921 1999-08-24 VOP <vop@unity.net>
2923 * ospf_route.c: Include "sockunion.h"
2925 1999-08-24 Kunihiro Ishiguro <kunihiro@zebra.org>
2927 * ospf_network.c (ospf_serv_sock_init): Enclose
2928 IPTOS_PREC_INTERNETCONTROL setting with #ifdef for OS which does
2929 not have the definition.
2931 1999-08-23 Toshiaki Takada <takada@zebra.org>
2933 * ospf_packet.c: Fix bug of DD processing.
2935 1999-08-18 Toshiaki Takada <takada@zebra.org>
2937 * ospf_lsa.c (show_ip_ospf_database): Show actual `LS age'.
2939 1999-08-17 Toshiaki Takada <takada@zebra.org>
2941 * ospf_lsa.h (OSPF_MAX_LSA): The value of OSPF_MAX_LSA is
2942 corrected. The bug of `mes_lookup' is fixed.
2943 This had been reported by Poul-Henning Kamp <phk@freebsd.org>.
2945 * ospf_lsa.c (ospf_router_lsa_install): The name is changed from
2946 `ospf_add_router_lsa'.
2947 (ospf_network_lsa_install): The name is changed from
2948 `ospf_add_network_lsa'.
2950 * ospf_interface.h (ospf_interface): Add member `nbr_self'.
2952 * ospf_interface.c (ospf_if_is_enable): New function added.
2954 1999-08-16 Toshiaki Takada <takada@zebra.org>
2956 * ospf_lsa.h (struct lsa_header): The name is changed from
2958 (struct ospf_lsa): New struct added to control each LSA's aging
2961 * ospf_lsa.c (ospf_lsa_data_free): The name is change from
2963 (ospf_lsa_data_new), (ospf_lsa_new), (ospf_lsa_free),
2964 (ospf_lsa_different), (ospf_lsa_install): New function added.
2966 * ospf_packet.c (ospf_ls_upd_list_lsa): New function added.
2968 1999-08-12 Toshiaki Takada <takada@zebra.org>
2970 * ospf_nsm.c (nsm_reset_nbr): New function added.
2971 KillNbr and LLDown neighbor event call this function.
2973 1999-08-10 Toshiaki Takada <takada@zebra.org>
2975 * ospf_packet.c (ospf_ls_retransmit)
2976 (ospf_ls_upd_timer): New function added.
2977 Set retransmission timer for Link State Update.
2979 1999-07-29 Toshiaki Takada <takada@zebra.org>
2981 * ospf_ism.c (ospf_dr_election): Fix bug of DR election.
2983 1999-07-28 Toshiaki Takada <takada@zebra.org>
2985 * ospf_network.c (ospf_serv_sock_init): Set IP precedence field
2986 with IPTOS_PREC_INTERNET_CONTROL.
2988 * ospf_nsm.c (nsm_change_status): Schedule NeighborChange event
2989 if NSM status change.
2991 * ospf_packet.c (ospf_make_hello): Never include a neighbor in
2992 Hello packet, when the neighbor goes down.
2994 1999-07-26 Kunihiro Ishiguro <kunihiro@zebra.org>
2996 * Makefile.am (noinst_HEADERS): Add ospf_route.h.
2998 * ospf_route.c (show_ip_ospf_route): Add `show ip ospf route'
3001 1999-07-25 Toshiaki Takada <takada@zebra.org>
3003 * ospf_lsa.c (ospf_router_lsa): Fix bug of LS sequence number
3006 1999-07-25 Kunihiro Ishiguro <kunihiro@zebra.org>
3008 * ospf_route.c (ospf_route_table_free): New function added.
3010 * ospf_spf.c (ospf_spf_next): Free vertex w when cw's and w's
3013 * ospfd.h (struct ospf): Add old_table.
3015 * ospf_main.c (sighup): Call of log_rotate () removed.
3017 * ospf_lsa.c (ospf_lsa_is_self_originated): Fix bug of checking
3018 area->lsa as self LSA. This should be area->lsa_self.
3020 1999-07-24 Kunihiro Ishiguro <kunihiro@zebra.org>
3022 * ospf_zebra.c (ospf_zebra_add): ospf_zebra_add
3023 (),ospf_zebra_delete () added.
3025 * ospf_spf.c (ospf_spf_calculate): Call ospf_intra_route_add ().
3027 1999-07-24 Toshiaki Takada <takada@zebra.org>
3029 * ospf_lsa.c: Change LS sequence number treatment.
3030 (ospf_lsa_is_self_originated): New function added.
3031 (show_ip_ospf_database_self_originated): New DEFUN added.
3033 1999-07-23 Kunihiro Ishiguro <kunihiro@zebra.org>
3035 * ospf_interface.c (ospf_if_lookup_by_addr): Add loopback check.
3037 1999-07-22 Toshiaki Takada <takada@zebra.org>
3039 * ospf_spf.c (ospf_nexthop_new), (ospf_nexthop_free),
3040 (ospf_nexthop_dup): function added.
3041 (ospf_nexthop_calculation): function changed.
3043 * ospf_interface.c (ospf_if_lookup_by_addr): function added.
3045 1999-07-21 Toshiaki Takada <takada@zebra.org>
3047 * ospf_spf.c (ospf_spf_closest_vertex): function removed.
3049 1999-07-21 Kunihiro Ishiguro <kunihiro@zebra.org>
3051 * ospf_spf.c (ospf_spf_next): Apply ntohs for fetching metric.
3053 1999-07-21 Toshiaki Takada <takada@zebra.org>
3055 * ospf_neighbor.c (ospf_nbr_lookup_by_router_id): fundtion removed.
3057 * ospf_lsa.c (show_ip_ospf_database_router): describe each
3060 1999-07-21 Kunihiro Ishiguro <kunihiro@zebra.org>
3062 * ospf_spf.c (ospf_spf_next): V is router LSA or network LSA so
3063 change behavior according to LSA type.
3064 (ospf_lsa_has_link): Link check function is added.
3066 1999-07-20 Kunihiro Ishiguro <kunihiro@zebra.org>
3068 * ospf_spf.c (ospf_spf_calculate_schedule): Add new function for
3069 SPF calcultion schedule addtition.
3070 (ospf_spf_calculate_timer_add): Rough 30 sec interval SPF calc
3072 (ospf_spf_next_router): Delete ospf_spf_next_network ().
3074 * ospf_lsa.c (show_ip_ospf_database_all): Network-LSA display
3075 header typo correction. Display of router LSA's #link added.
3077 1999-07-19 Toshiaki Takada <takada@zebra.org>
3079 * ospf_packet.c (ospf_check_network_mask): Added new function for
3080 receiving Raw IP packet on an appropriate interface.
3082 1999-07-16 Toshiaki Takada <takada@zebra.org>
3084 * ospfd.c (ospf_router_id): new DEFUN added.
3086 1999-07-15 Toshiaki Takada <takada@zebra.org>
3088 * ospf_spf.c (ospf_spf_init), (ospf_spf_free),
3089 (ospf_spf_has_vertex), (ospf_vertex_lookup),
3090 (ospf_spf_next_router), (ospf_spf_next_network),
3091 (ospf_spf_closest_vertex), (ospf_spf_calculate):
3094 1999-07-13 Toshiaki Takada <takada@zebra.org>
3096 * ospf_ism.c: fix bug of DR Election.
3098 * ospf_nsm.c: fix bug of adjacency forming.
3100 1999-07-05 Kunihiro Ishiguro <kunihiro@zebra.org>
3102 * ospfd.c (ospf_init): Change to use install_default.
3104 1999-07-01 Rick Payne <rickp@rossfell.co.uk>
3106 * ospf_zebra.c (zebra_init): Install standard commands to
3109 1999-06-30 Toshiaki Takada <takada@zebra.org>
3111 * ospf_dump.c: Whole debug command is improved.
3112 (ISM|NSM) (events|status|timers) debug option added.
3113 (show_debugging_ospf): new DEFUN added.
3115 1999-06-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3117 * ospf_lsa.c (ospf_lsa_lookup_from_list): Change !IPV4_ADDR_CMP to
3120 1999-06-29 Toshiaki Takada <takada@zebra.org>
3122 * ospf_dump.c (ospf_summary_lsa_dump): Add summary-LSA dump routine.
3123 (ospf_as_external_lsa_dump): Add AS-external-LSA dump routine.
3125 * ospf_nsm.c (nsm_twoway_received): fix condtion of adjacnet.
3127 * ospf_ism.c (ospf_dr_election): fix DR Election.
3129 * ospf_dump.c (ospf_nbr_state_message): fix `show ip ospf neighbor'
3132 1999-06-29 Kunihiro Ishiguro <kunihiro@zebra.org>
3134 * ospf_dump.c (ospf_router_lsa_dump): Add router-LSA dump routine.
3136 1999-06-28 Toshiaki Takada <takada@zebra.org>
3138 * ospf_lsa.c (show_ip_ospf_database_network): fix bug of
3139 `show ip ospf database network' command output.
3141 * ospf_nsm.c (nsm_inactivity_timer): Clear list of Link State
3142 Retransmission, Database Summary and Link State Request.
3144 * ospf_packet.c (ospf_ls_req_timer): New function added.
3145 Set Link State Request retransmission timer.
3147 1999-06-27 Kunihiro Ishiguro <kunihiro@zebra.org>
3149 * ospf_main.c (main): Change default output from ZLOG_SYSLOG to
3152 * ospfd.c (ospf_init): Register show_ip_ospf_interface_cmd and
3153 show_ip_ospf_neighbor_cmd to VIEW_NODE.
3155 * ospf_lsa.c (ospf_lsa_init): Register show_ip_ospf_database_cmd
3156 and show_ip_ospf_database_type_cmd to VIEW_NODE.
3158 1999-06-25 Toshiaki Takada <takada@zebra.org>
3160 * ospf_packet.c: fix bug of DD making.
3161 fix bug of LS-Update reading.
3163 1999-06-23 Toshiaki Takada <takada@zebra.org>
3165 * ospf_packet.c: All type of packets are changed to use
3166 fifo queue structure.
3167 (ospf_fill_header) function added.
3169 1999-06-22 Toshiaki Takada <takada@zebra.org>
3171 * ospf_packet.c (ospf_packet_new): New function added to handle
3172 sending ospf packet by fifo queue structure.
3173 (ospf_packet_free), (ospf_fifo_new), (ospf_fifo_push),
3174 (ospf_fifo_pop), (ospf_fifo_head), (ospf_fifo_flush),
3175 (ospf_fifo_free): Likewise.
3177 1999-06-21 Toshiaki Takada <takada@zebra.org>
3179 * ospf_nsm.c (ospf_db_desc_timer): function added.
3180 (nsm_timer_set) function added.
3181 * ospf_dump.c (ospf_option_dump): function added.
3182 * ospf_packet.c (ospf_ls_req) (ospf_make_ls_req): function added.
3184 1999-06-20 Toshiaki Takada <takada@zebra.org>
3186 * ospf_lsa.c (ospf_lsa_more_recent): function added.
3187 * ospf_neighbor.h (struct ospf_neighbor): Change member ms_flag
3190 1999-06-19 Toshiaki Takada <takada@zebra.org>
3192 * ospf_lsa.c: DEFUN (show_ip_ospf_database) Added.
3193 * ospf_interface.c (if_ospf_cost), (if_ospf_dead_interval),
3194 (if_ospf_hello_interval), (if_ospf_priority),
3195 (if_ospf_retransmit_interval), (if_ospf_transmit_delay)
3196 argument changed from NUMBER to <range>.
3197 DEFUN (if_ospf_network_broadcast),
3198 DEFUN (if_ospf_network_non_broadcast),
3199 DEFUN (if_ospf_network_point_to_multipoint),
3200 DEFUN (if_ospf_network_point_to_point) functions are combined to
3201 DEFUN (if_ospf_network).
3203 1999-06-18 Toshiaki Takada <takada@zebra.org>
3205 * ospf_lsa.c: ospf_add_router_lsa (), ospf_add_network_lsa (),
3206 ospf_lsa_lookup (), ospf_lsa_count () Added.
3208 1999-06-15 Toshiaki Takada <takada@zebra.org>
3210 * DEFUN (ospf_debug_ism), DEFUN (ospf_debug_nsm),
3211 DEFUN (no_ospf_debug_ism), DEFUN (no_ospf_debug_nsm) Added.
3212 `debug ospf ism' command shows debug message.
3213 `debuf ospf nsm' command shows debug message.
3215 1999-06-14 Toshiaki Takada <takada@zebra.org>
3217 * ospf_lsa.c: ospf_network_lsa () Added.
3218 ospf_lsa_checksum () Added.
3219 * DEFUN (ospf_debug_packet), DEFUN (no_ospf_debug_packet) Added.
3220 `debug ospf packet' command shows debug message.
3222 1999-06-13 Toshiaki Takada <takada@zebra.org>
3224 * ospf_packet.h: Remove struct ospf_ls_req {}, ospf_ls_upd {},
3227 1999-06-11 Toshiaki Takada <takada@zebra.org>
3229 * ospf_dump.c: fix IP packet length treatment.
3231 1999-06-10 Toshiaki Takada <takada@zebra.org>
3233 * ospf_ism.h: Add OSPF_ISM_EVENT_EXECUTE() Macro Added.
3234 * ospf_nsm.h: Add OSPF_NSM_EVENT_EXECUTE() Macro Added.
3236 * ospf_packet.c: ospf_db_desc (), ospf_db_desc_send () Added.
3237 ospf_make_hello (), ospf_make_db_desc () Added.
3238 ospf_db_desc_proc () Added.n
3240 * Database Description packet can be processed.
3242 1999-06-08 Toshiaki Takada <takada@zebra.org>
3244 * ospf_lsa.c: New file.
3246 1999-06-07 Toshiaki Takada <takada@zebra.org>
3248 * ospf_neighbor.c: ospf_fully_adjacent_count () Added.
3250 1999-06-07 Kunihiro Ishiguro <kunihiro@zebra.org>
3252 * ospf_spf.[ch]: New file.
3254 1999-05-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3256 * ospf_zebra.c: Changed to use lib/zclient.c routines.
3258 * ospf_zebra.h (zebra_start): Remove struct zebra.
3260 1999-05-29 Kunihiro Ishiguro <kunihiro@zebra.org>
3262 * ospfd.c (ospf_config_write): Add cast (unsigned long int) to
3263 ntohl for sprintf warning.
3265 1999-05-19 Toshiaki Takada <takada@zebra.org>
3267 * ospf_ism.c (ospf_dr_election): Join AllDRouters Multicast group
3268 if interface state changes to DR or BDR.
3270 1999-05-14 Stephen R. van den Berg <srb@cuci.nl>
3272 * ospf_main.c (signal_init): SIGTERM call sigint.
3273 (sigint): Logging more better message.
3275 1999-05-12 Toshiaki Takada <takada@zebra.org>
3277 * ospfd.c: Fix bug of `no router ospf' statement, it will work.
3279 1999-05-11 Toshiaki Takada <takada@zebra.org>
3281 * ospf_neighbor.c: ospf_nbr_free () Added.
3283 1999-05-10 Toshiaki Takada <takada@zebra.org>
3285 * ospfd.h: struct ospf_area { }, struct ospf_network { } Changed.
3286 * Fix bug of `no network' statement, it will work.
3288 1999-05-07 Toshiaki Takada <takada@zebra.org>
3290 * ospf_interface.c, ospf_zebra.c: Fix bug of last interface is not
3291 updated by ospf_if_update ().
3293 1999-04-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3295 * Makefile.am (noinst_HEADERS): Add ospf_lsa.h for distribution.
3297 1999-04-25 Toshiaki Takada <takada@zebra.org>
3299 * ospf_interface.c: DEFUN (no_if_ospf_cost),
3300 DEFUN (no_if_ospf_dead_interval),
3301 DEFUN (no_if_ospf_hello_interval),
3302 DEFUN (no_if_ospf_priority),
3303 DEFUN (no_if_ospf_retransmit_interval),
3304 DEFUN (no_if_ospf_transmit_delay) Added.
3306 interface_config_write () suppress showing interface
3309 1999-04-25 Kunihiro Ishiguro <kunihiro@zebra.org>
3311 * ospf_dump.c (ospf_timer_dump): If thread is NULL return "inactive".
3313 * ospfd.c (ospf_if_update): Fix bug of using ospf_area { } instead
3314 of ospf_network { }. So `router ospf' statement in ospfd.conf
3316 (ospf_if_update): Call ospf_get_router_id for updating router ID.
3318 1999-04-25 Toshiaki Takada <takada@zebra.org>
3320 * ospf_interface.c: DEFUN (if_ospf_network) deleted.
3321 DEFUN (if_ospf_network_broadcast),
3322 DEFUN (if_ospf_network_non_broadcast),
3323 DEFUN (if_ospf_network_point_to_multipoint),
3324 DEFUN (if_ospf_network_point_to_point),
3325 DEFUN (no_if_ospf_network) Added.
3327 1999-04-23 Toshiaki Takada <takada@zebra.org>
3329 * ospfd.h: struct area { } changed to struct ospf_network { }.
3330 Add struct ospf_area { }.
3331 * ospfd.c: Add ospf_area_lookup_by_area_id (), ospf_network_new (),
3332 and ospf_network_free ().
3333 DEFUN (area_authentication), DEFUN (no_area_authentication) Added.
3335 1999-04-22 Toshiaki Takada <takada@zebra.org>
3337 * ospf_lsa.h: New file.
3338 * ospf_packet.h: LSA related struct definition are moved to
3340 * ospf_packet.c: ospf_verify_header () Added.
3342 1999-04-21 Toshiaki Takada <takada@zebra.org>
3344 * ospf_ism.c: ospf_elect_dr () and related function is changed.
3345 DR Election bug fixed.
3346 * ospf_dump.c: ospf_nbr_state_message (), ospf_timer_dump () Added.
3347 * ospfd.c: DEFUN (show_ip_ospf_neighbor) Added.
3349 1999-04-19 Kunihiro Ishiguro <kunihiro@zebra.org>
3351 * ospf_main.c (main): access_list_init () is added for vty
3352 connection filtering.
3354 1999-04-16 Toshiaki Takada <takada@zebra.org>
3356 * ospfd.c: DEFUN (show_ip_ospf_interface) Added.
3357 * ospf_neighbor.c: ospf_nbr_count () Added.
3359 1999-04-15 Toshiaki Takada <takada@zebra.org>
3361 * ospfd.h: struct ospf { } Changed.
3362 * ospfd.c: ospf_lookup_by_process_id () Deleted.
3363 * ospf_ism.c: ospf_wait_timer () Added. WaitTimer will work.
3365 1999-04-14 Toshiaki Takada <takada@zebra.org>
3367 * ospf_ism.c: ospf_elect_dr () Added.
3368 * ospf_network.c: ospf_if_ipmulticast () Added.
3370 1999-04-11 Toshiaki Takada <takada@zebra.org>
3372 * ospf_interface.c: interface_config_write (),
3373 DEFUN (if_ip_ospf_cost),
3374 DEFUN (if_ip_ospf_dead_interval),
3375 DEFUN (if_ip_ospf_hello_interval),
3376 DEFUN (if_ip_ospf_priority),
3377 DEFUN (if_ip_ospf_retransmit_interval) and
3378 DEFUN (if_ip_ospf_transmit_delay) Added.
3380 1999-04-08 Toshiaki Takada <takada@zebra.org>
3382 * ospf_dump.c: ospf_packet_db_desc_dump () Added.
3383 * ospf_neighbor.c: ospf_nbr_bidirectional () Added.
3384 * ospf_nsm.c: nsm_twoway_received () Added.
3386 1999-04-02 Toshiaki Takada <takada@zebra.org>
3388 * ospf_neighbor.c: New file.
3389 * ospf_neighbor.h: New file.
3390 * ospf_nsm.c: New file.
3391 * ospf_nsm.h: New file.
3392 * ospf_packet.c: Add ospf_make_header (), ospf_hello () and
3393 ospf_hello_send (). Now OSPFd can receive Hello and send Hello.
3395 1999-03-27 Kunihiro Ishiguro <kunihiro@zebra.org>
3397 * ospf_packet.c: Add ospf_recv_packet (). Now OSPF Hello can receive.
3399 1999-03-19 Toshiaki Takada <takada@zebra.org>
3401 * ospf_packet.c: New file.
3402 * ospf_packet.h: New file.
3403 * ospf_network.c: New file.
3404 * ospf_network.h: New file.
3405 * ospfd.h: move OSPF message structure has moved to ospf_packet.h.
3407 1999-03-17 Kunihiro Ishiguro <kunihiro@zebra.org>
3409 * ospf_zebra.c (ospf_zebra_get_interface): Fix for IPv6 interface
3412 * Makefile.am (install-sysconfDATA): Overwrite install-sysconfDATA
3413 for install ospfd.conf.sample as owner read only file.
3415 * ospf_main.c (usage): Change to use ZEBRA_BUG_ADDRESS.
3417 1999-03-15 Toshiaki Takada <takada@zebra.org>
3419 * ospf_ism.c: New file.
3420 * ospf_ism.h: New file.
3421 * ospf_dump.c: New file.
3422 * ospf_dump.h: New file.
3424 * ospfd.h: Add (struct ospf), (struct config_network),
3425 (struct message) structure.
3427 * ospf_interface.c: Add ospf_if_match_network ().
3428 * ospf_interface.h (struct ospf_interface): Change struct members.
3430 * ospfd.c: ospf_lookup_by_process_id (), ospf_network_new (),
3431 DEFUN (network_area): Added.
3433 * ospfd.conf.sample: Change sample configuration.
3435 1999-03-05 Toshiaki Takada <takada@zebra.org>
3437 * ospf_interface.c: New file.
3438 * ospf_interface.h: New file.
3439 * ospf_zebra.h: New file.
3440 * ospf_zebra.c: Add interface function for zebra daemon.
3441 * ospfd.c: New file.
3443 1999-02-23 Kunihiro Ishiguro <kunihiro@zebra.org>
3445 * Move IPv6 codes and files to ospf6d directory.
3447 1999-02-18 Peter Galbavy <Peter.Galbavy@knowledge.com>
3449 * syslog support added
3451 1998-12-22 Toshiaki Takada <takada@zebra.org>
3453 * ospfd.h: New file.
3454 * ospf_lsa.h: New file.
3456 1998-12-15 Kunihiro Ishiguro <kunihiro@zebra.org>
3458 * Makefile.am: New file.
3459 * ospf_main.c: New file.