1 2004-12-07 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
3 * ospf_main.c: (main) The 2nd argument to openzlog has been removed.
5 2004-12-03 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
7 * ospf_packet.c: (ospf_db_desc) Reduce priority on a debug message
8 from LOG_NOTICE to LOG_DEBUG.
10 2004-12-03 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
12 * ospf_main.c: (sigint) Use zlog_notice for termination message.
13 (main) Issue a startup announcement using zlog_notice.
15 2004-11-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
17 * ospf_packet.c: (ospf_db_desc_proc) Fix spelling of packet in warning
18 message and in comment.
19 (ospf_db_desc) Warning message that a packet is being discarded
20 should give the router id of the packet source. Fix spelling
21 of packet in two warning messages.
22 (ospf_ls_req) Warning message that a link state request is being
23 discarded should give the router id of the neighbor that sent it.
25 2004-11-26 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
27 * ospf_main.c: Remove #include "debug.h" (was not being used, and
28 lib/debug.h has now been deleted).
30 2004-11-25 Hasso Tepper <hasso at quagga.net>
32 * ospf_main.c: Make group to run as configurable.
34 2004-11-15 Greg Troxel <gdt@fnord.ir.bbn.com>
36 * ospf_packet.c (ospf_recv_packet): Assume CMSG_SPACE is present
37 and works (lib/zebra.h provides if OS doesn't).
39 2004-11-15 Paul Jakma <paul@dishone.st>
41 * ospf_{apiserver,te}.c: ospf_lsa_free's should be ospf_lsa_unlock.
43 2004-11-12 Paul Jakma <paul@dishone.st>
45 * ospf_ia.c: (process_summary_lsa) Only an ABR has any reason to
46 ignore stub area summary default. Even so it seems a strange
47 check, add a comment to that effect.
49 2004-11-04 Paul Jakma <paul@dishone.st>
51 * ospfd.c: (ospf_network_match_iface) revert to previous network
52 statement match behaviour.
54 2004-11-02 Paul Jakma <paul@dishone.st>
56 * ospf_packet.c: (ospf_write_frags) remove iov arg, msg already points
57 to it. Add convenience pointer to msg->msg_iov[1], and use this,
58 fixing the unfortunate borkenness introduced in moving of this code
60 (ospf_write) remove iovp and fix up call to previous.
61 (ospf_ls_upd_packet_new) cast size to long int - unfortunately
62 glibc's size_t format modifier is not portable.
64 2004-10-31 Paul Jakma <paul@dishone.st>
66 * ospf_packet.c: (ospf_write_frags) Add debug output
67 (ospf_write) set type early, so we can pass it to
69 (ospf_ls_upd_packet_new) print size in debug output when too large
70 packet is encountered.
71 * ospf_zebra.c: (ospf_distribute_list_update_timer) Ugly misuse of
72 THREAD_ARG to store an integer, but it should at least use same
73 same type to retrieve the value. Assert value is sane.
75 2004-10-22 Paul Jakma <paul@dishone.st>
77 * ospf_network.c: (ospf_sock_init) call neutral setsock_ifindex()
79 * ospf_packet.c: (ospf_read) manually look up ifindex
80 if system could not have returned one, eg openbsd, thanks to Rivo
81 Nurges for highlighting problem and fix.
82 Change setsockopt_pktinfo to setsockopt_ifindex.
84 2004-10-19 Andrew J. Schorr <aschorr@telemetry-investments.com>
86 * ospf_snmp.c: (ospf_snmp_if_update) Fix logic to handle PtP links
87 with dedicated subnets properly.
88 * ospf_lsa.c: (lsa_link_ptop_set) ditto.
89 * ospfd.c: (ospf_network_match_iface) ditto.
90 (ospf_network_run) ditto.
91 * ospf_interface.c: (ospf_if_is_configured) ditto.
92 (ospf_if_lookup_by_prefix) ditto.
93 (ospf_if_lookup_recv_if) ditto.
94 * ospf_vty.c: (show_ip_ospf_interface_sub) Display the peer or
95 broadcast address if present.
97 2004-10-13 Hasso Tepper <hasso at quagga.net>
99 * ospf_main.c: Unbreak compilation with ospfapi disabled.
100 * ospf_snmp.c: Remove defaults used to initialize smux connection to
101 snmpd. Connection is initialized only if smux peer is configured.
103 2004-10-12 Hasso Tepper <hasso at quagga.net>
105 * ospf_main.c, ospf_opaque.c: Unbreak ospfclient compilation - move
106 static variable from ospf_main.c into ospf_opaque.c.
108 2004-10-11 Hasso Tepper <hasso at quagga.net>
110 * ospf_main.c, ospf_opaque.c: Disable ospfapi init by default. New
111 command line switch to enable it.
113 2004-10-11 Paul Jakma <paul@dishone.st>
115 * ospf_dump.c: (ospf_ip_header_dump) Assume header is in host order
116 remove ntohs that should have dissappeared. Take struct ip
117 as argument, caller has to know there's an IP header at start of
119 * ospf_dump.h: update declaration of ospf_ip_header_dump.
120 * ospf_packet.c: (ospf_write) correct call to
121 sockopt_iphdrincl_swab_htosys which was munging the header.
122 (ospf_recv_packet) ip_len is needed for old OpenBSD fixup.
123 (ospf_read) sockopt_iphdrincl_swab_systoh ip header as soon as
125 * (global) Const char update and signed/unsigned fixes.
126 * (various headers) size defines should be unsigned.
127 * ospf_interface.h: remove duplicated defines, include the
128 authoritative header - though, these defines should probably
129 be moved to a dedicated header, or ospfd.h.
130 * ospf_lsa.h: (struct lsa) ls_seqnum should be unsigned.
131 * ospf_packet.c: (ospf_write) cast result of shift to unsigned.
133 2004-10-08 Hasso Tepper <hasso at quagga.net>
135 * *.[c|h]: Fix compiler warnings: make some strings const, signed ->
136 unsigned, remove unused variables etc.
138 2004-10-07 Greg Troxel <gdt@claude.ir.bbn.com>
140 * ospf_apiserver.c (ospf_apiserver_unregister_opaque_type): Don't
141 use of variable names 'node' and 'nextnode' to avoid possible
142 conflict with list macros. Move variable declaration inside for
143 loop after a statement to top of function.
145 2004-10-07 Paul Jakma <paul@dishone.st>
147 * ospf_snmp.c: Missed list typedef update
148 * ospf_dump.c: Include sockopt.h for header swab functions.
150 2004-10-05 Paul Jakma <paul@dishone.st>
152 * ospf_packet.c: replace ospf_swap_iph_to... with
153 sockopt_iphdrincl_swab_...
155 2004-10-03 James R. Leu <jleu at mindspring.com>
157 * ospf_zebra.c: Read router id related messages from zebra daemon.
158 Schedule router-id update thread if it's changed.
159 * ospfd.c: Remove own router-id selection function. Use router id from
160 zebra daemon if it isn't manually overriden in configuration.
162 2004-09-27 Paul Jakma <paul@dishone.st>
164 * ospf_dump.c: (ospf_ip_header_dump) Use HAVE_IP_HDRINCL_BSD_ORDER
165 Apply to offset too. Print ip_cksum, lets not worry about
166 possible 2.0.37 compile problems.
167 * ospf_packet.c: (ospf_swap_iph_to{n,h}) Use
168 HAVE_IP_HDRINCL_BSD_ORDER.
169 (ospf_recv_packet) ditto.
170 (ospf_write) Fixup iov argument to ospf_write_frags.
171 (struct msghdr).msg_name is caddr_t on most platforms.
172 (ospf_recv_packet) ditto. And msg_flags is not always there
173 memset struct then set fields we care about rather than
174 initialise all fields individually.
176 2004-09-26 Hasso Tepper <hasso at quagga.net>
178 * ospf_abr.c, ospf_dump.c, ospf_lsa.c, ospf_packet.c, ospf_vty.c,
179 ospf_zebra.c: Fix compiler warnings.
181 2004-09-24 Paul Jakma <paul@dishone.st>
183 * ospf_apiserver.{c,h}: lists typedef removal cleanup.
184 update some list loops to LIST_LOOP. some miscellaneous indent
186 (ospf_apiserver_unregister_opaque_type) fix listnode_delete of
187 referenced node in loop.
188 (ospf_apiserver_term) loops calling ospf_apiserver_free, which
189 deletes referenced nodes from apiserver_list, fixed.
190 * ospf_interface.h: lists typedef removal cleanup.
191 * ospf_opaque.{c,h}: lists typedef removal cleanup. update some list
192 loops to LIST_LOOP. miscellaneous style and indent fixups.
193 * ospf_te.{c,h}: ditto
194 * ospf_packet.c: lists typedef removal cleanup.
195 (ospf_write) ifdef fragmentation support. move actual
196 fragmentation out to a new, similarly ifdefed, function.
197 (ospf_write_frags) fragmented write support, moved from previous.
199 2004-09-23 Hasso Tepper <hasso at quagga.net>
201 * *.[c|h]: list -> struct list *, listnode -> struct listnode *.
203 2004-09-12 Paul Jakma <paul@dishone.st>
205 * ospf_packet.c: Fix bugzilla #107
206 (ospf_packet_max) get rid of the magic 88 constant
207 (ospf_swab_iph_ton) new function. set ip header to network order,
208 taking BSDisms into account.
209 (ospf_swab_iph_toh) the inverse.
210 (ospf_write) Add support for IP fragmentation, will only work on
211 linux though, other kernels make it impossible. get rid of the
213 (ospf_make_ls_upd) Bound check to end of stream, not to
215 (ospf_ls_upd_packet_new) New function, allocate upd packet
216 taking oversized LSAs into account.
217 (ospf_ls_upd_queue_send) use ospf_ls_upd_packet_new to allocate,
218 rather than statically allocating mtu sized packet buffer, which
219 actually was wrong - it didnt take ip header into account, which
220 should not be included in packet buffer.
221 (ospf_ls_upd_send_queue_event) minor tweaks and remove
224 2004-08-31 David Wiggins <dwiggins@bbn.com>
226 * ospf_spf.c (ospf_spf_calculate): Many more comments and debug
227 print statements. New function ospf_vertex_dump used in debugging.
229 2004-08-31 David Wiggins <dwiggins@bbn.com>
231 * ospf_spf.h (struct vertex): Comments for flags and structure members.
233 2004-08-31 David Wiggins <dwiggins@bbn.com>
235 * ospf_route.c: When finding an alternate route, log cost as well.
237 2004-08-31 David Wiggins <dwiggins@bbn.com>
239 * ospf_interface.c (ospf_lookup_if_params): Initialize af in
240 struct prefix allocated on stack.
242 2004-08-31 David Wiggins <dwiggins@bbn.com>
244 * ospf_packet.c (ospf_ls_ack_send_delayed): In p2mp mode, send
245 acks to AllSPFRouters, rather than All-DR.
247 2004-08-27 Hasso Tepper <hasso at quagga.net>
249 * ospf_vty.c: Don't print ospf network type under interface only
250 if interface is in broadcast mode and interface type really is
251 broadcast. Fixes Bugzilla #108.
253 2004-08-27 David Wiggins <dwiggins@bbn.com>
255 * ospf_spf.c (ospf_nexthop_calculation): Initialize address family
256 in on-stack struct prefix_ipv4. Fixes point-to-multipoint SPF
259 2004-08-26 Greg Troxel <gdt@fnord.ir.bbn.com>
261 * ospf_packet.c (ospf_recv_packet): adjust size declaration of
262 buffer used to get interface index so that it compiles on other
263 than Linux and includes the required alignment space. Probably
264 this was only working on sparc/sparc64 because most of
265 sockaddr_dl was not being written.
267 2004-08-19 Paul Jakma <paul@dishone.st>
269 * ospf_packet.c: update to match sockopt renames.
271 2004-08-04 Paul Jakma <paul@dishone.st>
273 * ospf_spf.c: (ospf_spf_consider_nexthop) Add comment about issue.
274 Compare only against list head - all nexthops must be same cost
275 anyway, fixes a reference-listnode-after-delete bug noted by
277 (ospf_nexthop_calculation) Use ospf_spf_consider_nexthop for all
278 candidates attached to root.
280 2004-07-27 Paul Jakma <paul@dishone.st>
282 * ospf_packet.c: (ospf_ls_upd_send_queue_event) fix thinko from
283 last fix for ospfd wedging due to oversize LSAs: dont list loop on
284 ospf_ls_upd_queue_send() - guaranteed segfault.
286 2004-07-27 Paul Jakma <paul@dishone.st>
288 * ospf_opaque.c: (ospf_opaque_lsa_flush_schedule) do not NULL out
289 the LSA as then free_opaque_info_per_id() can never unlock (and
290 free) the LSA. Reported by Gunnar Stigen.
292 2004-07-23 Paul Jakma <paul@dishone.st>
294 * ospf_network.c: Replace PKTINFO/RECVIF with call to
296 * ospf_packet.c: Use getsockopt_pktinfo_ifindex and
297 SOPT_SIZE_CMSG_PKTINFO_IPV4.
299 2004-07-14 Paul Jakma <paul@dishone.st>
301 * ospf_packet.c: (ospf_ls_upd_send_queue_event) Partial fix for
302 problem reported by Peter Frost amongst others, where function
303 will spin indefinitely if update list contains LSAs greater than
304 MTU-headers or other condition leading to update list never being
305 cleared. Problem of what to do with these LSAs remains.
306 (ospf_make_ls_upd) add comment about large LSA problem,
309 2004-07-01 Greg Troxel <gdt@fnord.ir.bbn.com>
311 * Makefile.am (lib_LTLIBRARIES): make libospf shared
313 2004-06-30 Greg Troxel <gdt@poblano.ir.bbn.com>
315 * Makefile.am: Add shlib support.
317 2004-06-10 Hasso Tepper <hasso@estpak.ee>
319 * *: Removed ifdefs HAVE_NSSA.
321 2004-06-06 Paul Jakma <paul@dishone.st>
323 * ospf_dump.c,ospf_lsa.c: Fix typos of merge of previous.
324 ospf_flood.c: (ospf_process_self_originated_lsa) fix zlog format
326 2004-05-31 Sagun Shakya <sagun.shakya@sun.com>
328 * ospf_dump.c: (ospf_lsa_header_dump) LOOKUP can return null if
329 index is out of range.
330 ospf_flood.c: endianness fix
331 ospf_lsa.c: Missing ntohl's on (struct lsa *)->data->ls_seqnum
334 2004-05-10 Hasso Tepper <hasso@estpak.ee>
336 * ospf_zebra.c, ospfd.c: Move ospf_prefix_list_update() function
337 to ospf_zebra.c from ospfd.c and add redistribution updates if
338 route-map is used in redistribution.
339 * ospf_main.c: Remove now useless call to ospf_init().
341 2004-05-08 Paul Jakma <paul@dishone.st>
343 * ospf_zebra.c: Sync with lib/zclient changes
345 2004-05-05 Paul Jakma <paul@dishone.st>
347 * ospf_network.c: (ospf_sock_init) Check whether IP_HDRINCL is
348 defined. Warn at compile and runtime. Use
349 IPTOS_PREC_INTERNETCONTROL otherwise.
350 * ospf_packet.c: (ospf_associate_packet_vl) cleanup, move
351 some of the checks up to ospf_read, return either a
352 virtual link oi, or NULL.
353 (ospf_read) Cleanup, make it responsible for checks. Remove
354 the nbr lookup - moved to ospf_neighbor. Adjust all nbr
355 lookups to use new wrappers exported by ospf_neighbor.
356 * ospf_neighbor.h: Add ospf_neigbour_get and ospf_nbr_lookup.
357 * ospf_neighbor.c: (ospf_neigbour_get) Index ospf_interface
358 neighbour table by router-id for virtual-link ospf_interfaces,
359 not by peer_addr (which breaks for asymmetric vlinks)
360 (ospf_nbr_lookup) add a wrapper for nbr lookups to deal with
362 * ospf_interface.c: (ospf_vl_set_params) Catch changes of interface
363 address for either end of a virtual-link, and hence potential cost
366 2004-04-22 Hasso Tepper <hasso@estpak.ee>
368 * ospf_zebra.c: Don't ignore reject/bh routes, it's the only way
369 to "summarize" routes in ASBR at the moment.
371 2004-04-20 Hasso Tepper <hasso@estpak.ee>
373 * ospfd.c: Unset NP flag if area is going to be normal or stub.
374 Fixes UNH OSPF_NSSA.1.2a comment.
375 * ospf_abr.c: Originate default into stub/nssa area even if
376 summaries are disabled.
377 * ospf_zebra.c: Don't attempt to redistribute 127.0.0.0/8.
379 2004-04-19 Hasso Tepper <hasso@estpak.ee>
381 * ospf_vty.c: Don't warn that export- and import-list can't be
382 configured to backbone area if they are applied and are working
385 2004-02-19 Sowmini Varadhan <sowmini.varadhan@sun.com>
387 * ospf_packet.c: Don't drop packets in Solaris x86.
390 2004-03-18 Amir Guindehi <amir@datacore.ch>
392 * ospf_opaque.c: Attempt to correct the incorrect behavior of
393 Quagga's ospfd in the special situation that a node's opaque
394 capability has changed as "ON -> OFF -> ON". [quagga-dev 843].
396 2004-02-19 Sowmini Varadhan <sowmini.varadhan@sun.com>
398 * ospf_abr.c: (ospf_abr_update_aggregate) UNH 3.12b,c, address range
399 should be configured with the highest cost path within the range,
402 2004-02-17 Paul Jakma <paul@dishone.st>
404 * ospf_zebra.c: (ospf_interface_delete) Do not delete the interface
405 params, nor the interface structure, if an interface delete
406 message is received from zebra.
407 * ospf_interface.c: (ospf_if_delete_hook) Delete the interface
408 params and interface, ie that which was previously removed in
409 (ospf_interface_delete) above.
411 2004-02-11 Hasso Tepper <hasso@estpak.ee>
412 * ospf_interface.c, ospf_zebra.c: Don't attempt to read path->oi->ifp
413 if oi doesn't exist any more.
415 2004-02-11 Vadim Suraev <vadim.suraev@terayon.com>
416 * ospf_packet.c (ospf_ls_upd): Router should flush received network
417 LSA if it was originated with older router-id ([zebra 14710] #6).
419 2003-12-08 Mattias Amnefelt <mattiasa@kth.se>
421 * ospf_packet.c: (ospf_recv_packet) OpenBSD now leaves iph.ip_len
424 2003-12-05 Greg Troxel <gdt@poblano.ir.bbn.com>
426 * ospfd.c (ospf_network_match_iface): Rewrite code for clarity
427 while trying not to change semantics. Add ifdefed-out code to
428 avoid matching ppp interfaces whose destination address does not
429 also match the prefix under consideration, to help out people with
430 problems due to as-yet-unfixed bugs with p2p interfaces coming and
433 2003-07-25 kamatchi soundaram <kamatchi@tdd.sj.nec.com>
435 * ospf_packet.c (ospf_ls_upd_send_queue_event): get next route
436 node in body of the loop to avoid chance that route node
437 is unlocked and deleted before the next iteration tries to
440 2003-05-24 Kenji Yabuuchi
442 * ospf_interface.c(ospf_if_lookup_recv_if): Use the most specific
443 match for interface lookup.
445 2003-05-18 Hasso Tepper <hasso@estpak.ee>
447 * ospf_vty.c: Show NSSA LSA route info in "show ip ospf database"
450 2003-05-16 Hasso Tepper <hasso@estpak.ee>
452 * ospf_lsa.c: Fix handling of NSSA
454 2003-04-23 Hasso Tepper <hasso@estpak.ee>
456 * ospf_vty.c: fix "router xxx" node commands in vtysh
458 2003-04-19 Hasso Tepper <hasso@estpak.ee>
460 * {ospf_abr,ospfd}.c: area id's DECIMAL -> ADDRESS
461 * ospf_routemap.c: sync daemon's route-map commands to have same
464 2003-04-19 Sergey Vyshnevetskiy <serg@vostok.net>
466 * ospf_packet.c: Add missing param to zlog
467 * ospf_flood.c: remove unused vars
469 2003-04-17 Denis Ovsienko <zebra@pilot.org.ua>
471 * ospf_interface.c: fix incorrect memset
473 2003-04-10 Amir Guindehi <amir@datacore.ch>
475 * ospf_lsa.[ch]: opaque LSA fix, use ospf_lookup.
477 2003-04-03 David Watson <dwatson@eecs.umich.edu>
479 * ospf_lsa.c: byte order fix
481 2002-03-17 Amir Guindehi <amir@datacore.ch>
483 * ospf_apiserver.[ch]: Merge Ralph Keller's OSPFAPI support.
484 * ospf_api.[ch]: Merge Ralph Keller's OSPFAPI support.
485 * ospfclient: OSPFAPI demonstration client.
487 2003-01-23 Masahiko Endo <endo@suri.co.jp>
489 * ospf_ism.c: NSM event schedule bug fix.
491 2002-10-30 Greg Troxel <gdt@ir.bbn.com>
493 * ospf_packet.c (ospf_make_md5_digest): MD5 length fix.
495 2002-10-23 endo@suri.co.jp (Masahiko Endo)
497 * ospf_opaque.c: Update Opaque LSA patch.
499 2002-10-23 Ralph Keller <keller@tik.ee.ethz.ch>
501 * ospf_vty.c (show_ip_ospf_database): Fix CLI parse.
503 2002-10-23 Juris Kalnins <juris@mt.lv>
505 * ospf_interface.c (ospf_if_stream_unset): When write queue
506 becomes empty stop write timer.
508 2002-10-10 Greg Troxel <gdt@ir.bbn.com>
510 * ospf_packet.c (ospf_check_md5_digest): Change >= to > to make it
513 2002-07-07 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
515 * zebra-0.93 released.
517 2002-06-19 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
519 * ospf_spf.c (ospf_nexthop_calculation): Add NULL set to oi and
520 check of l2. Reported by: Daniel Drown <dan-zebra@drown.org>
521 (ospf_lsa_has_link): LSA Length calculation fix. Reported by:
522 Paul Jakma <paulj@alphyra.ie>.
524 * ospfd.c (ospf_if_update): Fix nextnode reference bug. Reported
527 2002-01-21 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
529 * ospfd.c: Merge [zebra 11445] Masahiko ENDO's Opaque-LSA support.
531 2001-08-27 Kunihiro Ishiguro <kunihiro@zebra.org>
533 * ospf_interface.c (ospf_add_to_if): Use /32 address to register
534 OSPF interface information.
535 (ospf_delete_from_if): Likewise.
537 * ospf_zebra.c (ospf_interface_address_delete): Likewise.
539 2001-08-23 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
541 * ospf_zebra.c (ospf_redistribute_unset): When redistribute type
542 is OSPF, do not unset redistribute flag.
544 2001-08-19 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
546 * zebra-0.92a released.
548 2001-08-15 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
550 * zebra-0.92 released.
552 2001-08-12 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
554 * ospfd.c (ospf_config_write): auto-cost reference-bandwidth
555 configuration display.
557 2001-07-24 David Watson <dwatson@eecs.umich.edu>
559 * ospf_spf.c (ospf_spf_next): Modify ospf_vertex_add_parent to
560 check for an existing link before connecting the parent and child.
561 ospf_nexthop_calculation is also modified to check for duplicate
562 entries when copying from the parent. Finally, ospf_spf_next
563 removes duplicates when it merges two equal cost candidates.
565 2001-07-23 itojun@iijlab.net
567 * ospfd.c (show_ip_ospf_neighbor): Check ospf_top before use it
570 2001-07-23 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
572 * ospf_packet.c (ospf_write): Remove defined(__OpenBSD__) to make
575 2001-06-26 Kunihiro Ishiguro <kunihiro@zebra.org>
577 * ospf_zebra.c (config_write_ospf_default_metric): Display
578 default-metric configuration.
580 2001-06-18 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
582 * ospf_ia.h (OSPF_EXAMINE_SUMMARIES_ALL): Remove old macros.
584 2001-05-28 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
586 * ospf_snmp.c (ospfIfEntry): Fix interface lookup bug to avoid
588 (ospfIfMetricEntry): Likewise.
590 2001-03-18 Kunihiro Ishiguro <kunihiro@zebra.org>
592 * ospf_packet.c (ospf_read): Fix typo. Reported by: "Jen B
593 Lin'Kova" <jen@stack.net>.
595 2001-03-15 Gleb Natapov <gleb@nbase.co.il>
597 * ospf_interface.c (ip_ospf_network): Set interface parameter.
598 (interface_config_write): Add check for OSPF_IFTYPE_LOOPBACK.
600 * ospf_zebra.c (ospf_interface_add): Set interface parameter.
602 2001-02-21 Kunihiro Ishiguro <kunihiro@zebra.org>
604 * ospf_packet.c (ospf_recv_packet): Solaris also need to add
605 (iph.ip_hl << 2) to iph.ip_len.
607 2001-02-09 Kunihiro Ishiguro <kunihiro@zebra.org>
609 * ospfd.h (OSPF_LS_REFRESH_TIME): Fix OSPF_LS_REFRESH_TIME value.
610 Suggested by: David Watson <dwatson@eecs.umich.edu>.
612 * ospf_zebra.c (zebra_init): Remove zebra node.
614 * ospfd.c (ospf_area_range_set): Function name is changed from
616 (ospf_area_range_unset): New function which separated from DEFUN.
617 New commands are added:
618 "no area A.B.C.D range A.B.C.D/M advertise"
619 "no area <0-4294967295> range A.B.C.D/M advertise"
620 "no area A.B.C.D range A.B.C.D/M not-advertise"
621 "no area <0-4294967295> range A.B.C.D/M not-advertise"
623 * ospf_lsa.c (ospf_lsa_more_recent): Fix previous change.
625 2001-02-08 Matthew Grant <grantma@anathoth.gen.nz>
627 * ospf_network.c (ospf_if_add_allspfrouters): Use
628 setsockopt_multicast_ipv4.
629 (ospf_if_drop_allspfrouters): Likewise.
631 * ospf_lsa.c (ospf_router_lsa_install): Add rt_recalc flag.
632 (ospf_network_lsa_install): Likewise.
633 (ospf_summary_lsa_install): Likewise.
634 (ospf_summary_asbr_lsa_install): Likewise.
635 (ospf_external_lsa_install): Likewise.
636 (ospf_lsa_install): Call ospf_lsa_different to check this LSA is
639 2001-02-08 Kunihiro Ishiguro <kunihiro@zebra.org>
641 * ospf_zebra.c (ospf_interface_delete): Do not free interface
642 structure when ospfd receive interface delete message to support
645 2001-02-01 Dick Glasspool <dick@ipinfusion.com>
647 * ospfd.c (area_range_notadvertise): Change area range "suppress"
648 command to "not-advertise".
650 * ospfd.h (OSPF_LS_REFRESH_TIME): Change OSPF_LS_REFRESH_TIME from
653 * ospf_abr.c (ospf_abr_update_aggregate): When update_aggregate is
654 updating the area-range, the lowest cost is now saved.
656 * ospf_lsa.c (ospf_lsa_more_recent): Routing to compare sequence
657 numbers rather than creating overflow during calculation.
659 2001-02-01 Kunihiro Ishiguro <kunihiro@zebra.org>
661 * zebra-0.91 is released.
663 2001-01-31 Kunihiro Ishiguro <kunihiro@zebra.org>
665 * ospf_packet.c (ospf_db_desc_proc): Do not continue process when
666 NSM_SeqNumberMismatch is scheduled.
667 (ospf_ls_req): Free ls_upd when return from this function.
668 (ospf_ls_upd_timer): When update list is empty do not call
669 ospf_ls_upd_send(). Suggested by: endo@suri.co.jp (Masahiko
672 2001-01-26 Kunihiro Ishiguro <kunihiro@zebra.org>
674 * ospf_lsa.c (ospf_maxage_flood): Flood LSA when it reaches
675 MaxAge. RFC2328 Section 14.
676 (ospf_maxage_lsa_remover): Call above function during removing
679 2001-01-26 Dick Glasspool <dick@ipinfusion.com>
681 * ospf_flood.c (ospf_flood_through_as): Function is updated for
682 NSSA Translations now done at ospf_abr.c with no change in P-bit.
684 * ospf_lsa.c (ospf_get_nssa_ip): Get 1st IP connection for Forward
686 (ospf_install_flood_nssa): Leave Type-7 LSA at Lock Count = 2.
688 * ospf_ase.c (ospf_ase_calculate_route): Add debug codes.
690 * ospf_abr.c (ospf_abr_translate_nssa): Recalculate LSA checksum.
692 * ospf_packet.h (OSPF_SEND_PACKET_LOOP): Added for test packet.
694 * ospf_dump.c (ospf_lsa_type_msg): Add OSPF_GROUP_MEMBER_LSA and
697 * ospfd.c (data_injection): Function to inject LSA. This is
700 2001-01-11 Kunihiro Ishiguro <kunihiro@zebra.org>
702 * ospf_route.c (ospf_route_match_same): Remove function.
703 (ospf_route_match_same_new): Renamed to ospf_route_match_same.
705 * ospf_zebra.c (ospf_interface_address_delete): Add check for
706 oi->address. Suggested by Matthew Grant
707 <grantma@anathoth.gen.nz>.
708 (ospf_zebra_add): Remove function.
709 (ospf_zebra_add_multipath): Rename to ospf_zebra_add.
711 * ospf_interface.c: Remove HAVE_IF_PSEUDO part.
713 * ospf_zebra.c: Likewise.
715 2001-01-10 Kunihiro Ishiguro <kunihiro@zebra.org>
717 * ospf_ase.c: Remove OLD_RIB part.
719 * ospf_route.c: Likewise.
721 * zebra-0.90 is released.
723 * ospf_packet.c (ospf_recv_packet): Use ip_len adjestment code to
726 2001-01-09 Kunihiro Ishiguro <kunihiro@zebra.org>
728 * ospf_route.c (ospf_route_delete): Use
729 ospf_zebra_delete_multipath.
731 2001-01-09 Matthew Grant <grantma@anathoth.gen.nz>
733 * ospf_interface.c (ospf_if_cleanup): Function name is renamed
734 from ospf_if_free(). Rewrite whole procudure to support primary
737 * ospf_zebra.c (ospf_interface_address_delete): Add primary
738 address deletion process.
740 2001-01-09 Kunihiro Ishiguro <kunihiro@zebra.org>
742 * ospf_packet.c (ospf_recv_packet): OpenBSD has same ip_len
743 treatment like FreeBSD.
745 2001-01-09 endo@suri.co.jp (Masahiko Endo)
747 * ospf_packet.c (ospf_recv_packet): FreeBSD kernel network code
748 strips IP header size from receiving IP Packet. So we adjust
749 ip_len to whole IP packet size by adding IP header size.
751 2001-01-08 endo@suri.co.jp (Masahiko Endo)
753 * ospf_network.c (ospf_serv_sock): When socket() is failed return
755 (ospf_serv_sock): Close socket when it is not used.
757 * ospf_packet.c (ospf_write): Set sin_len when HAVE_SIN_LEN is
759 (ospf_write): When bind is fined, close sock.
761 2001-01-07 Gleb Natapov <gleb@nbase.co.il>
763 * ospf_zebra.c (ospf_interface_state_up): Fixes coredump that
764 appears when you try to configure bandwidth on the ppp interface
765 that is not yet configured in ospfd.
767 2001-01-07 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
769 * ospf_route.c (show_ip_ospf_route_external): "show ip ospf route"
770 will print nexthops for AS-external routes.
772 * ospf_ase.c (ospf_ase_route_match_same): New function to compare
773 ASE route under multipath environment.
774 (ospf_ase_compare_tables): Likewise.
776 2001-01-01 Kunihiro Ishiguro <kunihiro@zebra.org>
778 * ospfd.h (OSPF_VTYSH_PATH): Change "/tmp/ospfd" to "/tmp/.ospfd".
780 2000-12-28 Kunihiro Ishiguro <kunihiro@zebra.org>
782 * ospf_route.c (ospf_route_install): Install multipath information
785 * ospf_zebra.c (ospf_zebra_add_multipath): Function for passing
786 multipath information to zebra daemon.
788 2000-12-25 Dick Glasspool <dick@ipinfusion.com>
790 * ospf_packet.c (ospf_write): Call ospf_packet_delete when sendto
792 (DISCARD_LSA): Add argument N for logging point of DISCARD_LSA is
795 * ospf_lsa.c (ospf_external_lsa_refresh): NSSA install_flood will
796 leave Type-7 LSA at Lock Count = 2.
798 * ospf_flood.c (ospf_flood_through): Flood_though_as updated for
799 NSSA no P-bit off during Area flooding, but P-bit is turned off
800 for mulitple NSSA AS flooding.
802 * ospf_ase.c (ospf_ase_calculate_timer): Added calculations for
805 * ospf_abr.c (ospf_abr_translate_nssa): Removed one unlock call.
806 (ospf_abr_announce_nssa_defaults): Corrected Debug from EVENT to
809 2000-12-25 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
811 * ospf_zebra.c (ospf_zebra_read_ipv4): Checking the age of the
812 found LSA and if the LSA is MAXAGE we should call refresh instead
815 2000-12-18 Dick Glasspool <dick@ipinfusion.com>
817 * ospf_abr.c: Removed redundant "...flood" in
818 announce_network_to_area(). Repaired nssa Unlock by using
821 * ospf_packet.c: Removed old NSSA translate during mk_ls_update.
823 * ospfd.c: Free up all data bases including NSSA.
825 * ospf_lsa.c: Now allow removal of XLATE LSA's Check in
826 discard_callback. Added routine to get ip addr from within the
829 * ospf_flood.c: Now set Forward Address for outgoing Type-7.
831 * ospf_lsa.h: Added prototype for the below. struct in_addr
832 ospf_get_ip_from_ifp (struct interface *ifp).
834 2000-12-14 Gleb Natapov <gleb@nbase.co.il>
836 * ospf_packet.c (ospf_recv_packet): New OSPF pakcet read method.
837 Now maximum packet length may be 65535 bytes (maximum IP packet
840 * ospf_interface.c (ospf_if_stream_set): Don't make input buffer.
842 * ospfd.c (config_write_network_area): Remove unnecessary area
845 2000-12-13 Kunihiro Ishiguro <kunihiro@zebra.org>
847 * ospf_packet.c (ospf_read): Accept packet bigger than MTU value.
849 2000-12-13 Gleb Natapov <gleb@nbase.co.il>
851 * ospfd.c (config_write_network_area): Fix bug in
852 config_write_network_area function.
854 2000-12-12 Gleb Natapov <gleb@nbase.co.il>
856 * ospf_abr.c (ospf_abr_announce_network_to_area): Make Summary
857 LSA's origination and refreshment as same as other type of LSA.
859 * ospf_lsa.c (ospf_summary_lsa_refresh): Return struct ospf_lsa *.
861 * ospf_lsa.c (ospf_summary_asbr_lsa_refresh): Likewise.
863 2000-12-08 Dick Glasspool <dick@ipinfusion.com>
865 The bulk of NSSA changes are contained herein; This version will
866 require manual setting of "always" for NSSA Translator, and will
867 not perform aggregation yet.
869 * ospf_dump.c: "debug ospf nssa" is added.
871 * ospf_dump.h: Likewise.
873 * ospf_packet.c (ospf_hello): Display router ID on Bad NSSA Hello.
875 * ospfd.c: Discard_LSA to stay away from LOCAL_XLT Process NSSA
876 'never, candidate, always'. Change "suppress" to "not-advertise".
878 * ospfd.h: Add TranslatorRole to struct ospf_area. Add anyNSSA to
881 * ospf_ase.c (ospf_ase_calculate_route): External to stay away
884 * ospf_nsm.c (ospf_db_summary_add): External to stay away from
887 * ospf_abr.c: Major logic added for abr_nssa_task(). If ABR, and
888 NSSA translator, then do it. Approve the global list, and flush
891 * ospf_lsa.h: New LSA flag OSPF_LSA_LOCAL_XLT to indicate that the
892 Type-5 resulted from a Local Type-7 translation; not used for
893 flooding, but used for flushing.
895 * ospf_flood.c: New NSSA flooding.
897 2000-12-08 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
899 * ospfd.c (ospf_find_vl_data): New function for looking up virtual
901 (ospf_vl_set_security): Virtual link configuration with
903 (ospf_vl_set_timers): Set timers for virtual link.
905 * New commands are added.
906 "area A.B.C.D virtual-link A.B.C.D"
907 "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>"
908 "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"
909 "area A.B.C.D virtual-link A.B.C.D authentication-key AUTH_KEY"
910 "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"
911 "area A.B.C.D virtual-link A.B.C.D message-digest-key <1-255> md5 KEY"
913 * ospf_packet.c (ospf_check_md5_digest): Add neighbor's
914 cryptographic sequence number treatment.
915 (ospf_check_auth): OSPF input buffer is added to argument.
916 (ospf_read): Save neighbor's cryptographic sequence number.
918 * ospf_nsm.c (nsm_change_status): Clear cryptographic sequence
919 number when neighbor status is changed to NSM down.
921 * ospf_neighbor.c (ospf_nbr_new): Set zero to crypt_seqnum.
923 * ospf_neighbor.h (struct ospf_neighbor): Add cryptographic
924 sequence number to neighbor structure.
926 2000-11-29 Kunihiro Ishiguro <kunihiro@zebra.org>
928 * ospf_snmp.c (ospfIfLookup): OSPF MIB updates.
929 (ospfExtLsdbEntry): Add OspfExtLsdbTable treatment.
931 2000-11-28 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
933 * ospfd.c (ospf_interface_down): Clear a ls_upd_queue queue of the
935 (ospf_ls_upd_queue_empty): New function to empty ls update queue
936 of the OSPF interface.
937 (no_router_ospf): 'no router ospf' unregister redistribution
940 2000-11-28 Kunihiro Ishiguro <kunihiro@zebra.org>
942 * ospf_ism.c (ism_change_status): Increment status change number.
944 * ospf_interface.h (struct ospf_interface): Add new member for
945 status change statistics.
947 * Makefile.am: Update dependencies.
949 * ospf_zebra.c (ospf_interface_add): OSPF SNMP interface update.
950 (ospf_interface_delete): OSPF SNMP interface delete.
952 * ospf_snmp.h: New file is added.
954 2000-11-23 Dick Glasspool <dick@ipinfusion.com>
956 * ospfd.h: Add new ospf_area structure member for
957 NSSATranslatorRole and NSSATranslator state.
959 * ospfd.c: Provided for eventual commands to specify NSSA
960 elections for "translator- ALWAYS/NEVER/CANDIDATE". Provided for
961 decimal integer version of area-suppress.
963 * ospf_flood.c: Flood Type-7's only into NSSA (not AS).
965 * ospf_lsa.c: Undo some previous changes for NSSA. If NSSA
966 translator, advertise Nt bit.
968 * ospf_route.c: 1st version of "sh ip os border-routers".
970 2000-11-23 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
972 * ospfd.c (area_vlink): Virtual link can not configured in stub
975 2000-11-23 Gleb Natapov <gleb@nbase.co.il>
977 * ospf_packet.c (ospf_db_desc): In states Loading and Full the
978 slave must resend its last Database Description packet in response
979 to duplicate Database Description packets received from the
980 master. For this reason the slave must wait RouterDeadInterval
981 seconds before freeing the last Database Description packet.
982 Reception of a Database Description packet from the master after
983 this interval will generate a SeqNumberMismatch neighbor
984 event. RFC2328 Section 10.8
985 (ospf_make_db_desc): DD Master flag treatment.
987 * ospf_nsm.c (nsm_twoway_received): Move DD related procedure to
989 (nsm_bad_ls_req): Likewise.
990 (nsm_adj_ok): Likewise.
991 (nsm_seq_number_mismatch): Likewise.
992 (nsm_oneway_received): Likewise.
994 * ospf_neighbor.h (struct ospf_neighbor): New structure member
995 last_send_ts for timestemp when last Database Description packet
998 * ospf_nsm.c (ospf_db_desc_timer): Make it sure nbr->last_send is
999 there. Call ospf_db_desc_resend() in any case.
1001 2000-11-16 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1003 * ospf_lsa.c (lsa_link_broadcast_set): When there is no DR on
1004 network (suppose you have only one router with interface priority
1005 0). It's router LSA does not contain the link information about
1008 * ospf_nsm.c (nsm_timer_set): When you change a priority of
1009 interface from/to 0 ISM_NeighborChange event should be scheduled
1010 in order to elect new DR/BDR on the network.
1012 * ospf_interface.c (ip_ospf_priority): Likewise.
1014 * ospf_flood.c (ospf_ls_retransmit_add): When we add some LSA into
1015 retransmit list we need to check whether the present old LSA in
1016 retransmit list is not more recent than the new
1019 2000-11-09 Dick Glasspool <dick@ipinfusion.com>
1021 * ospf_packet.c: Allows for NSSA Type-7 LSA's throughout the NSSA
1022 area. Any that exit the NSSA area are translated to type-5 LSA's.
1023 The instantiated image is restored after translation.
1024 (ospf_ls_upd_send_list): Renamed to ospf_ls_upd_queu_send().
1025 (ospf_ls_upd_send): Old function which enclosed by #ifdef 0 is
1027 (ospf_ls_ack_send): Likewise.
1029 * ospf_flood.c: NSSA-LSA's without P-bit will be restricted to
1030 local area. Otherwise they are allowed out the area to be
1031 translated by ospf_packet.c.
1033 * ospf_lsa.c: Undo some previous changes for NSSA.
1035 * ospf_lsdb.h: New access for type 7.
1037 2000-11-07 Kunihiro Ishiguro <kunihiro@zebra.org>
1039 * ospf_route.c (ospf_path_exist): New function to check nexthop
1040 and interface are in current OSPF path or not.
1041 (ospf_route_copy_nexthops_from_vertex): Add nexthop to OSPF path
1042 when it is not there. Reported by Michael Rozhavsky
1043 <mrozhavsky@opticalaccess.com>
1045 2000-11-06 Kunihiro Ishiguro <kunihiro@zebra.org>
1047 * ospf_dump.c (config_write_debug): Add seventh string "detail" is
1048 added for flag is OSPF_DEBUG_SEND | OSPF_DEBUG_RECV |
1051 2000-11-06 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1053 * ospf_lsa.c (router_lsa_flags): ASBR can't exit in stub area.
1055 2000-11-06 Kunihiro Ishiguro <kunihiro@zebra.org>
1057 * ospf_lsa.c (ospf_router_lsa_originate): Reduce unconditional
1060 2000-11-06 Dick Glasspool <dick@ipinfusion.com>
1062 * ospfd.h: Add ait_ntoa function prototype.
1064 * ospfd.c (ait_ntoa): New function for displaying area ID and
1066 (show_ip_ospf_interface_sub): Use ait_ntoa.
1067 (show_ip_ospf_nbr_static_detail_sub): Likewise.
1068 (show_ip_ospf_neighbor_detail_sub): Likewise.
1070 * ospf_route.c (ospf_intra_route_add): Set external routing type
1072 (ospf_intra_add_router): Likewise.
1073 (ospf_intra_add_transit): Likewise.
1074 (ospf_intra_add_stub): Likewise.
1075 (ospf_add_discard_route): Likewise.
1076 (show_ip_ospf_route_network): Use ait_ntoa.
1077 (show_ip_ospf_route_network): Likewise.
1078 (show_ip_ospf_route_router): Likewise.
1080 * ospf_lsa.c (show_lsa_detail): Use ait_ntoa.
1081 (show_lsa_detail_adv_router): Likewise.
1082 (show_ip_ospf_database_summary): Likewise.
1084 * ospf_route.h (struct route_standard): Add new member
1087 * ospf_ia.c (process_summary_lsa): Set external routing tyep to ospf
1089 (ospf_update_network_route): Likewise.
1090 (ospf_update_router_route): Likewise.
1092 2000-11-04 Kunihiro Ishiguro <kunihiro@zebra.org>
1094 * ospf_flood.c (ospf_process_self_originated_lsa): Enclose
1095 OSPF_AS_NSSA_LSA treatment with #ifdef HAVE_NSSA.
1097 2000-11-03 Kunihiro Ishiguro <kunihiro@zebra.org>
1099 * Unconditional logging is enclosed with if (IS_DEBUG_OSPF_EVENT).
1100 Please specify "debug ospf event" for enable logging.
1102 * ospf_ism.c: Do not extern debug flag varible. It is done by
1104 * ospf_asbr.c: Likewise.
1105 * ospf_lsa.c: Likewise.
1106 * ospf_nsm.c: Likewise.
1107 * ospf_zebra.c: Likewise.
1109 * ospf_dump.c (debug_ospf_event): New command "debug ospf event"
1112 * ospfd.c (router_ospf): Change logging from vty_out() to
1114 (ospf_area_stub_cmd): Likewise.
1116 * ospf_dump.h: Extern term_debug flags.
1117 (OSPF_DEBUG_EVENT): Add new flag.
1118 (IS_DEBUG_OSPF_EVENT): Add new macro.
1120 2000-11-03 Dick Glasspool <dick@ipinfusion.com>
1122 * ospf_flood.c (ospf_process_self_originated_lsa):
1123 OSPF_AS_NSSA_LSA is treated as same as OSPF_AS_EXTERNAL_LSA.
1124 (ospf_flood): Type-5's have no change. Type-7's can be received,
1125 and will Flood the AS as Type-5's They will also flood the local
1126 NSSA Area as Type-7's. The LSDB will be updated as Type-5's, and
1127 during re-fresh will be converted back to Type-7's (if within an
1129 (ospf_flood_through): Incoming Type-7's were allowed here if our
1130 neighbor was an NSSA. So Flood our area with the Type-7 and also
1131 if we are an ABR, flood thru AS as Type-5.
1133 * ospf_lsa.c (ospf_external_lsa_refresh): Flood NSSA both NSSA
1134 area and other area.
1136 * ospf_packet.c (ospf_db_desc_proc): When AS External LSA is
1137 exists in DD packet, make it sure that this area is not stub.
1138 (ospf_ls_upd_list_lsa): When LSA type is NSSA then set lsa's area
1140 (ospf_ls_upd): If the LSA is AS External LSA and the area is stub
1141 then discard the lsa. If the LSA is NSSA LSA and the area is not
1142 NSSA then discard the lsa.
1144 2000-11-03 Kunihiro Ishiguro <kunihiro@zebra.org>
1146 * ospfd.c (ospf_interface_run): Fix bug of Hello packet's option
1147 is not properly set when interface comes up.
1149 2000-11-02 Kunihiro Ishiguro <kunihiro@zebra.org>
1151 * ospfd.h (OSPF_OPTION_O): Add new hello header option.
1153 2000-11-01 Dick Glasspool <dick@ipinfusion.com>
1155 * ospf_lsa.h: Define OSPF_MAX_LSA to 8 when HAVE_NSSA is enabled.
1156 (OSPF_GROUP_MEMBER_LSA): Define OSPF_GROUP_MEMBER_LSA.
1158 * ospf_lsa.c (show_database_desc): Add "Group Membership LSA"
1161 2000-10-31 Dick Glasspool <dick@ipinfusion.com>
1163 * ospf_lsa.h (OSPF_AS_NSSA_LSA): Define OSPF_AS_NSSA_LSA.
1165 * ospf_lsa.c (show_ip_ospf_database): NSSA database display
1166 function is added. ALIASES which have "show ip ospf database
1167 nssa-external" is added.
1168 (show_ip_ospf_border_routers): New command "show ip ospf
1169 border-routers" is added.
1171 2000-10-30 Dick Glasspool <dick@ipinfusion.com>
1173 * ospfd.c (router_ospf): NSSA Enabled message is added for
1175 (ospf_area_type_set): Are type set for NSSA area.
1176 (ospf_area_stub_cmd): Special translation of no_summary into NSSA
1177 and summary information. If NSSA is enabled pass the information
1178 to ospf_area_type_set().
1179 (area_nssa): New commands are added:
1181 "area <0-4294967295> nssa"
1182 "area A.B.C.D nssa no-summary"
1183 "area <0-4294967295> nssa no-summary"
1184 (ospf_no_area_stub_cmd): Special translation of no_summary into
1185 NSSA and summary information. If external_routing is
1186 OSPF_AREA_NSSA unset area with ospf_area_type_set (area,
1188 (show_ip_ospf_area): Display NSSA status.
1189 (config_write_ospf_area): Show NSSA configuration.
1191 * ospf_packet.c (ospf_hello): For NSSA support, ensure that NP is
1194 2000-10-26 Gleb Natapov <gleb@nbase.co.il>
1196 * ospf_lsa.c (ospf_network_lsa_body_set): The network-LSA lists
1197 those routers that are fully adjacent to the Designated Router;
1198 each fully adjacent router is identified by its OSPF Router ID.
1199 The Designated Router includes itself in this list. RFC2328,
1202 2000-10-23 Jochen Friedrich <jochen@scram.de>
1204 * ospf_snmp.c: ospf_oid and ospfd_oid are used in smux_open after
1205 it is registered. So those variables must be static.
1207 2000-10-18 K N Sridhar <sridhar@euler.ece.iisc.ernet.in>
1209 * ospfd.c: Add area_default_cost_decimal_cmd and
1210 no_area_default_cost_decimal_cmd alias.
1212 2000-10-05 Gleb Natapov <gleb@nbase.co.il>
1214 * ospfd.c (ospf_network_new): Fix setting area format.
1215 (no_router_ospf): Check area existance when calling
1216 ospf_interface_down().
1218 * ospf_flood.c (ospf_external_info_check): Fix bug of refreshing
1221 2000-10-02 Kunihiro Ishiguro <kunihiro@zebra.org>
1223 * zebra-0.89 is released.
1225 2000-09-29 Kunihiro Ishiguro <kunihiro@zebra.org>
1227 * ospf_snmp.c (ospfHostEntry): OSPF Host MIB is implemented.
1229 * ospfd.c (ospf_nbr_static_cmp): OSPF neighbor is sorted by it's
1232 2000-09-28 Michael Rozhavsky <mike@nbase.co.il>
1234 * ospf_interface.c (ospf_if_free): Fix deleting self neighbor twice.
1236 2000-09-27 Kunihiro Ishiguro <kunihiro@zebra.org>
1238 * ospf_packet.c (ospf_read): Solaris on x86 has ip_len with host
1241 2000-09-25 Toshiaki Takada <takada@zebra.org>
1243 * ospfd.c (ospf_compatible_rfc1583), (no_ospf_compatible_rfc1583):
1244 Add CISCO compatible command.
1246 2000-09-25 Kunihiro Ishiguro <kunihiro@zebra.org>
1248 * ospf_abr.c (ospf_area_range_lookup): New function is added for
1249 area range lookup in OSPF-MIB.
1250 (ospf_area_range_lookup_next): Likewise.
1252 2000-09-22 Kunihiro Ishiguro <kunihiro@zebra.org>
1254 * ospfd.c (no_router_ospf): Delete virtual link before deleting
1257 * ospf_lsa.c (ospf_external_lsa_refresh_type): Check
1258 EXTERNAL_INFO(type).
1260 * ospfd.c (no_router_ospf): Call ospf_vl_delete() instead of
1261 ospf_vl_data_free().
1263 * ospf_interface.c (ospf_vl_shutdown): Execute ISM_InterfaceDown
1264 when ospf_vl_shutdown is called.
1265 (ospf_vl_delete): Call ospf_vl_shutdown() to delete virtual link
1268 2000-09-21 Gleb Natapov <gleb@nbase.co.il>
1270 * ospf_lsa.c: New implementation of OSPF refresh.
1272 2000-09-20 Kunihiro Ishiguro <kunihiro@zebra.org>
1274 * ospf_snmp.c (ospfLsdbLookup): Add LSDB MIB implementation.
1276 2000-09-18 Kunihiro Ishiguro <kunihiro@zebra.org>
1278 * ospf_snmp.c (ospfStubAreaEntry): Add OSPF stub area MIB.
1280 2000-09-18 Gleb Natapov <gleb@nbase.co.il>
1282 * ospf_route.h (route_standard): Change member from `struct area'
1285 * ospf_abr.c (ospf_abr_announce_network), (ospf_abr_should_announce),
1286 (ospf_abr_process_network_rt), (ospf_abr_announce_rtr),
1287 (ospf_abr_process_router_rt):
1288 * ospf_ase.c (ospf_find_asbr_route),
1289 (ospf_find_asbr_router_through_area),
1290 * ospf_ia.c (ospf_find_abr_route), (ospf_ia_router_route),
1291 (process_summary_lsa), (ospf_update_network_route),
1292 (ospf_update_router_route):
1293 * ospf_route.c (ospf_intra_route_add), (ospf_intra_add_router),
1294 (ospf_intra_add_transit), (ospf_intra_add_stub),
1295 (ospf_route_table_dump), (show_ip_ospf_route_network),
1296 (show_ip_ospf_route_router), (ospf_asbr_route_cmp),
1297 (ospf_prune_unreachable_routers):
1298 * ospf_spf.c (ospf_rtrs_print):
1299 * ospfd.c (ospf_rtrs_free): Fix the struct change above.
1301 2000-09-14 Kunihiro Ishiguro <kunihiro@zebra.org>
1303 * ospf_network.c (ospf_serv_sock_init): Enclose SO_BINDTODEVICE
1306 2000-09-13 Gleb Natapov <gleb@nbase.co.il>
1308 * ospf_ism.c (ospf_elect_dr), (ospf_elect_bdr): Fix DR election.
1310 * ospf_network.c (ospf_serv_sock_init): Add socket option
1311 SO_BINDTODEVICE on read socket.
1313 * ospf_packet.c (ospf_hello): Ignore Hello packet if E-bit does
1316 * ospfd.c (ospf_area_check_free), (ospf_area_get),
1317 (ospf_area_add_if): New function added.
1319 2000-09-13 Kunihiro Ishiguro <kunihiro@zebra.org>
1321 * ospf_route.c (ospf_intra_add_router): Update ABR and ASBR router
1324 * ospf_spf.c (ospf_spf_init): Rest ABR and ASBR router count
1325 starting SPF calculation.
1327 * ospfd.h (struct ospf_area): Add ABR and ASBR router count.
1329 2000-09-12 Kunihiro Ishiguro <kunihiro@zebra.org>
1331 * ospfd.c (ospf_area_id_cmp): New area structure is sorted by area
1334 * ospf_lsa.c (ospf_router_lsa_originate): For OSPF MIB update
1335 lsa_originate_count.
1336 (ospf_network_lsa_originate): Likewise.
1337 (ospf_summary_lsa_originate): Likewise.
1338 (ospf_summary_asbr_lsa_originate): Likewise.
1339 (ospf_external_lsa_originate): Likewise.
1341 2000-09-11 Kunihiro Ishiguro <kunihiro@zebra.org>
1343 * ospf_snmp.c (ospf_variables): ospfRouterID's type RouterID
1344 syntax is IpAddress.
1345 (ospf_admin_stat): New function for OSPF administrative status
1348 2000-09-10 Jochen Friedrich <jochen@scram.de>
1350 * ospf_snmp.c: Implement OSPF MIB skeleton.
1352 2000-09-08 Kunihiro Ishiguro <kunihiro@zebra.org>
1354 * ospf_snmp.c: New file is added.
1356 2000-09-07 David Lipovkov <davidl@nbase.co.il>
1358 * ospf_zebra.c (ospf_interface_delete): Add pseudo interface
1361 * ospf_interface.c (interface_config_write): Likewise.
1363 2000-08-17 Kunihiro Ishiguro <kunihiro@zebra.org>
1365 * zebra-0.88 is released.
1367 2000-08-17 Michael Rozhavsky <mike@nbase.co.il>
1369 * ospfd.c (ospf_area_free): Remove virtual link configuration only
1370 when Area is removed.
1372 2000-08-17 Kunihiro Ishiguro <kunihiro@zebra.org>
1374 * ospfd.c (network_area): Revert check for EXTERNAL_INFO
1375 (ZEBRA_ROUTE_CONNECT).
1376 (no_network_area): Likewise.
1378 2000-08-16 Kunihiro Ishiguro <kunihiro@zebra.org>
1380 * ospfd.h (struct ospf): Add distance_table and
1381 distance_{all,intra,inter,external}.
1383 * ospf_zebra.c: Add OSPF distance related functions.
1385 2000-08-15 Gleb Natapov <gleb@nbase.co.il>
1387 * ospf_asbr.c (ospf_external_info_find_lsa): New function added.
1389 * ospf_lsa.c (ospf_default_external_info),
1390 (ospf_default_originate_timer), (ospf_external_lsa_refresh_default):
1394 (ospf_default_information_originate_metric_type_routemap),
1395 (ospf_default_information_originate_always_metric_type_routemap):
1396 Change name and add route-map function.
1397 (ospf_default_information_originate_metric_routemap),
1398 (ospf_default_information_originate_routemap),
1399 (ospf_default_information_originate_type_metric_routemap):
1402 2000-08-14 Kunihiro Ishiguro <kunihiro@zebra.org>
1404 * ospf_zebra.c (zebra_interface_if_set_value): Change ifindex
1405 restore size from two octet to four.
1407 2000-08-14 Michael Rozhavsky <mike@nbase.co.il>
1409 * ospf_ase.c (ospf_ase_incremental_update): Implement incremental
1410 AS-external-LSA in 16.6 of RFC2328.
1412 2000-08-14 Matthew Grant <grantma@anathoth.gen.nz>
1414 * ospf_interface.c (ospf_if_get_output_cost): Change cost
1415 calculation algorithm.
1417 * ospf_packet (ospf_ls_upd): Fix problem of LSA retransmitting.
1419 2000-08-11 Michael Rozhavsky <mike@nbase.co.il>
1421 * ospf_lsa.c (ospf_maxage_lsa_remover): Fix maxage remover for
1424 2000-08-10 Toshiaki Takada <takada@zebra.org>
1426 * ospfd.c (auto_cost_reference_bandwidth): New DEFUN added.
1427 `auto-cost reference-bandwidth' OSPF router command added.
1429 2000-08-08 Gleb Natapov <gleb@nbase.co.il>
1431 * ospf_routemap.c (ospf_route_map_update): New function added.
1432 Add route-map event hook.
1434 2000-08-08 Toshiaki Takada <takada@zebra.org>
1436 * ospf_zebra.c (ospf_distribute_check_connected): If redistribute
1437 prefix is connected route on OSPF enabled interface, suppress to
1440 2000-08-08 Matthew Grant <grantma@anathoth.gen.nz>
1442 * ospf_interface.c (ospf_if_get_output_cost):
1443 New function added. Handle bandwidth parameter for cost
1446 2000-08-08 Michael Rozhavsky <mike@nbase.co.il>
1448 * ospf_interface.c (interface_config_write): Show interface
1449 configuration regardless interface is down.
1451 * ospf_ase.c (ospf_ase_caocluate_route): Whole rewritten external
1452 route calculate function.
1454 2000-08-08 Gleb Natapov <gleb@nbase.co.il>
1456 * ospf_routemap.c: New file added.
1458 * ospf_asbr.c (ospf_reset_route_map_set_values),
1459 (ospf_route_map_set_compare): New function added.
1461 * ospf_lsa.c (ospf_external_lsa_body_set): Set routemap metric
1462 with AS-external-LSA.
1464 2000-08-05 Kunihiro Ishiguro <kunihiro@zebra.org>
1466 * ospf_ase.c (ospf_ase_calculate_route_add): Pass new->cost to
1467 ospf_zebra_add as metric.
1468 (ospf_ase_calculate_route_add): Likewise.
1470 * ospf_route.c (ospf_route_install): Pass or->cost to
1471 ospf_zebra_add as metric.
1473 * ospf_zebra.c (ospf_zebra_add): Add metric arguemnt.
1474 (ospf_zebra_delete): Likewise.
1476 2000-08-03 Matthew Grant <grantma@anathoth.gen.nz>
1478 * ospf_flood.c (ospf_flood_delayed_lsa_ack): New function added.
1479 Dispatch delayed-ACK with flooding AS-external-LSA across virtual
1482 2000-07-31 Matthew Grant <grantma@anathoth.gen.nz>
1484 * ospfd.c (show_ip_ospf_area): Fix lack of VTY_NEWLINE when
1487 * ospf_interface.c (ospf_if_free): Fix bug of crash with
1488 Point-to-Point interface.
1490 2000-07-27 Michael Rozhavsky <mike@nbase.co.il>
1492 * ospf_flood.c (ospf_process_self_originated_lsa):
1493 Make sure to clear LSA->param (redistributed external information)
1496 2000-07-27 Gleb Natapov <gleb@nbase.co.il>
1498 * ospfd.c (refresh_group_limit), (refresh_per_slice),
1499 (refresh_age_diff): New defun added. Refresher related parameter
1500 can be configurable.
1502 2000-07-27 Akihiro Mizutani <mizutani@dml.com>
1504 * ospf_interface.c (interface_config_write): Print `description'
1505 config directive to work.
1507 2000-07-24 Akihiro Mizutani <mizutani@dml.com>
1509 * ospf_interface.c (ospf_if_init): Use install_default for
1512 2000-07-24 Gleb Natapov <gleb@nbase.co.il>
1514 * ospf_packet.c (ospf_ls_upd_send_list), (ospf_ls_upd_send_event),
1515 (ospf_ls_ack_send_list), (ospf_ls_ack_send_event): New function added.
1516 This make sending always as many LS update/Ack combined in one ospf
1519 2000-07-24 Gleb Natapov <gleb@nbase.co.il>
1521 * ospf_packet.c (ospf_ls_upd_list_lsa): Set NULL to lsa->area if
1522 LSA is AS-external-LSA.
1524 * ospf_nsm.c (nsm_reset_nbr): Do not cancel Inactivity timer.
1526 2000-07-21 Toshiaki Takada <takada@zebra.org>
1528 * ospf_zebra.c (ospf_default_originate_timer): Set timer for
1529 `default-information originate'. Fix some default originate
1532 2000-07-12 Toshiaki Takada <takada@zebra.org>
1534 * ospf_lsa.c (stream_put_ospf_metric): New function added.
1536 2000-07-12 Toshiaki Takada <takada@zebra.org>
1538 * ospf_lsa.c (show_ip_ospf_database_router),
1539 (show_ip_ospf_database_network), (show_ip_ospf_database_summary),
1540 (show_ip_ospf_database_summary_asbr), (show_ip_ospf_database_externel),
1541 (show_router_lsa), (show_any_lsa), (show_router_lsa_self),
1542 (show_any_lsa_self): Functions removed.
1544 (show_lsa_prefix_set), (show_lsa_detail_proc), (show_lsa_detail),
1545 (show_lsa_detail_adv_router_proc), (show_lsa_detail_adv_router):
1546 New functions added. Replace above functions.
1548 (show_ip_ospf_database_all), (show_ip_ospf_database_self_originated):
1550 (show_ip_ospf_database_summary): New functions added. Replace
1553 (show_ip_ospf_database_cmd): DEFUN rearranged.
1554 (show_ip_ospf_database_type_id_cmd),
1555 (show_ip_ospf_database_type_id_adv_router_cmd),
1556 (show_ip_ospf_database_type_is_self_cmd): New ALIASes added.
1557 (show_ip_ospf_database_type_adv_rotuer_cmd): New DEFUN added.
1558 (show_ip_ospf_database_type_self_cmd): New ALIAS added.
1560 2000-07-11 Toshiaki Takada <takada@zebra.org>
1562 * ospf_asbr.c (ospf_external_info_new),
1563 (ospf_external_info_free): New functions added.
1565 * ospf_lsa.h (ospf_lsa): Add new member `void *param' to set
1566 origination parameter for external-LSA.
1567 Remove member `redistribute'.
1569 * ospf_zebra.c (ospf_redistirbute_set): When `redistribute'
1570 command executed, metric and metric-type values are overridden.
1571 If one of those is changed refresh AS-external-LSAs for appropriate
1574 2000-07-11 Michael Rozhavsky <mike@nbase.co.il>
1576 * ospf_lsa.c (ospf_summary_lsa_refresh),
1577 (ospf_summary_asbr_lsa_refresh): Make sure to refresh summary-LSAs.
1579 * ospf_abr.c (set_metric): New function added.
1581 2000-07-07 Toshiaki Takada <takada@zebra.org>
1583 * ospf_zebra.c (ospf_default_information_originate_metric_type),
1584 (ospf_default_information_originate_type_metric): New defun added.
1585 Metic and Metric type can be set to default route.
1586 (ospf_default_information_originate_always_metric_type):
1587 (ospf_default_information_originate_always_type_metric):
1588 New defun added. Metric and Metric type can be set to default
1591 * ospf_zebra.c (ospf_default_metric), (no_ospf_default_metric):
1594 2000-07-06 Gleb Natapov <gleb@nbase.co.il>
1596 * ospf_flood.c (ospf_flood_through_area): Fix bug of considering
1597 on the same interface the LSA was received from.
1599 2000-07-06 Michael Rozhavsky <mike@nbase.co.il>
1601 * ospfd.c (ospf_config_write): Fix bug of printing `area stub'
1602 command with `write mem'.
1604 * ospfd.c (no_router_ospf): Remove installed routes from zebra.
1606 * ospf_zebra.c (ospf_interface_delete): Fix function to handle
1607 zebra interface delete event.
1609 2000-07-06 Toshiaki Takada <takada@zebra.org>
1611 * ospf_zebra.c (ospf_default_information_originate),
1612 (ospf_default_information_originate_always): New DEFUN added.
1614 2000-07-05 Michael Rozhavsky <mike@nbase.co.il>
1616 * ospf_route.c (ospf_terminate): Make sure to remove external route
1617 when SIGINT received.
1619 2000-07-03 Gleb Natapov <gleb@nbase.co.il>
1621 * ospf_flood.c, ospf_ism.c, ospf_lsa,c, ospfd.c: Make sure to free
1622 many structure with `no router ospf'.
1624 2000-06-30 Gleb Natapov <gleb@nbase.co.il>
1626 * ospf_neighbor.c (ospf_nbr_new),
1627 ospf_nsm.c (nsm_timer_set): Start LS update timer only
1628 when neighbor enters Exchange state.
1630 2000-06-29 Gleb Natapov <gleb@nbase.co.il>
1632 * ospf_nsm.c (nsm_timer_set), (nsm_exchange_done),
1633 ospf_packet.c (ospf_db_desc_proc):
1634 Do not cancel DD retransmit timer when Master.
1636 2000-06-29 Gleb Natapov <gleb@nbase.co.il>
1638 * ospf_abr.c (ospf_abr_announce_network_to_area),
1639 (ospf_abr_announce_rtr_to_area)
1640 ospf_ase.c (ospf_ase_rtrs_register_lsa),
1641 ospf_flood.c (ospf_process_self_originated_lsa),
1642 (ospf_flood_through_area), (ospf_ls_request_delete),
1643 ospf_interface.c (ospf_if_free),
1644 ospf_ism.c (ism_change_status),
1645 ospf_lsa.c (ospf_router_lsa_update_timer),
1646 (ospf_router_lsa_install), (ospf_network_lsa_install),
1647 (ospf_lsa_maxage_delete), (ospf_lsa_action),
1648 (ospf_schedule_lsa_flood_area),
1649 ospf_nsm.c (nsm_change_status),
1650 ospf_packet.c (ospf_make_ls_req_func), (ospf_make_ls_ack):
1651 Use ospf_lsa_{lock,unlock} for all looking-up of LSA.
1653 * ospf_flood.c (ospf_ls_request_free): Function deleted.
1655 * ospf_lsa.c (ospf_discard_from_db): New function added.
1657 2000-06-26 Toshiaki Takada <takada@zebra.org>
1659 * ospfd.h (ospf): struct member `external_lsa' name changed to
1662 2000-06-26 Toshiaki Takada <takada@zebra.org>
1664 * ospf_lsa.c (ospf_lsa_install), (ospf_router_lsa_install),
1665 (ospf_network_lsa_install), (ospf_summary_lsa_install),
1666 (ospf_summary_asbr_lsa_install), (ospf_external_lsa_install):
1667 Functions re-arranged.
1669 * ospf_lsa.c (IS_LSA_MAXAGE), (IS_LSA_SELF): Macro added.
1671 2000-06-20 Michael Rozhavsky <mike@nbase.co.il>
1673 * ospf_packet.c (ospf_ls_req), (ospf_ls_upd), (ospf_ls_ack): Add
1674 verification of LS type.
1676 2000-06-20 Gleb Natapov <gleb@nbase.co.il>
1678 * ospf_ase.c (ospf_ase_calculate_timer): Add more sanity check
1679 whether rn->info is NULL.
1681 2000-06-20 Toshiaki Takada <takada@zebra.org>
1683 * ospfd.c (show_ip_ospf_interface_sub): Show Router-ID of both
1684 DR and Backup correctly with `show ip ospf interface' command.
1686 2000-06-20 Toshiaki Takada <takada@zebra.org>
1688 * ospf_lsa.c (ospf_lsa_lock), (ospf_lsa_unlock),
1689 (ospf_lsa_discard): These functions are used for avoiding
1690 unexpected reference to freed LSAs.
1692 2000-06-13 Kunihiro Ishiguro <kunihiro@zebra.org>
1694 * ospf_packet.c (ospf_ls_upd): Initialize lsa by NULL to avoid
1697 2000-06-12 Kunihiro Ishiguro <kunihiro@zebra.org>
1699 * ospf_ase.h (ospf_ase_rtrs_register_lsa): Add prototype.
1701 2000-06-12 Toshiaki Takada <takada@zebra.org>
1703 * ospf_lsa.c (ospf_external_lsa_install): Make sure to register
1704 LSA to rtrs_external when replacing AS-external-LSAs in LSDB.
1707 2000-06-10 Toshiaki Takada <takada@zebra.org>
1709 * ospf_lsdb.c (id_to_prefix), (ospf_lsdb_hash_key),
1710 (ospf_lsdb_hash_cmp), (ospf_lsdb_new), (ospf_lsdb_iterator),
1711 (lsdb_free), (ospf_lsdb_free), (ospf_lsdb_add), (ospf_lsdb_delete),
1712 (find_lsa), (ospf_lsdb_lookup), (find_by_id),
1713 (ospf_lsdb_lookup_by_id), (ospf_lsdb_lookup_by_header): Functinos
1714 removed for migration to new_lsdb.
1716 * ospf_lsa.c (ospf_summary_lsa_install),
1717 (ospf_summary_asbr_lsa_install), (ospf_maxage_lsa_remover),
1718 (ospf_lsa_maxage_walker), (ospf_lsa_lookup),
1719 (ospf_lsa_lookup_by_id): Use new_lsdb instead of ospf_lsdb.
1720 (count_lsa), (ospf_lsa_count_table), (ospf_lsa_count),
1721 (ospf_get_free_id_for_prefix): Funcitions removed.
1723 2000-06-09 Gleb Natapov <gleb@nbase.co.il>
1725 * ospf_ism.c (ism_interface_down): Prevent some unneeded DR changes.
1727 * ospf_packet.c (ospf_db_desc_proc): Fix memory leak.
1728 (ospf_hello): Always copy router-ID when hello is received.
1730 2000-06-08 Gleb Natapov <gleb@nbase.co.il>
1732 * ospf_lsa.h (struct ospf_lsa): Add member of pointer to struct
1735 2000-06-08 Michael Rozhavsky <mike@nbase.co.il>
1737 * ospf_ase.c (ospf_asbr_route_same): New function added.
1738 This function makes sure external route calculation more
1741 2000-06-07 Michael Rozhavsky <mike@nbase.co.il>
1743 * ospf_ism.c (ism_change_status): Use ospf_lsa_flush_area for
1744 network-LSA deletion instead of using ospf_lsdb_delete.
1745 Also cancel network-LSA origination timer.
1747 2000-06-07 Levi Harper <lharper@kennedytech.com>
1749 * ospf_interface.c (ospf_if_down): Close read fd when an interface
1752 2000-06-05 Kunihiro Ishiguro <kunihiro@zebra.org>
1754 * ospf_asbr.c (ospf_external_info_lookup): Add explicit brace for
1755 avoid ambiguous else.
1757 * ospf_flood.c (ospf_external_info_check): Likewise.
1759 2000-06-05 Toshiaki Takada <takada@zebra.org>
1761 * ospf_nsm.c (nsm_adj_ok): Fix bug of DR election.
1763 2000-06-04 Toshiaki Takada <takada@zebra.org>
1765 * ospf_zebra.c (ospf_default_information_originate),
1766 (no_ospf_default_information_originate): New DEFUN added.
1768 2000-06-03 Toshiaki Takada <takada@zebra.org>
1770 * ospf_lsa.h, ospf_asbr.h (external_info): Struct moved from
1771 ospf_lsa.h to ospf_asbr.h.
1773 * ospf_lsa.c, ospf_asbr.c (ospf_external_info_add),
1774 (ospf_external_info_delete): Function moved from ospf_lsa.c
1777 2000-06-03 Toshiaki Takada <takada@zebra.org>
1779 * ospf_flood.c (ospf_external_info_check): New function added.
1780 (ospf_process_self_orignated_lsa): Make sure to flush
1781 self-originated AS-external-LSA, when router reboot and no longer
1782 originate those AS-external-LSA.
1784 2000-06-02 Toshiaki Takada <takada@zebra.org>
1786 * ospf_network.c (ospf_serv_sock): Remove SO_DONTROUTE
1789 * ospf_packet.c (ospf_write): Set MSG_DONTROUTE flag for
1790 unicast destination packets.
1792 2000-06-02 Toshiaki Takada <takada@zebra.org>
1794 * ospf_lsdb.c (new_lsdb_delete): Delete entry from LSDB only when
1795 specified LSA matches.
1797 2000-06-02 Gleb Natapov <gleb@nbase.co.il>
1799 * ospf_network.c (ospf_serv_sock): Set SO_DONTROUTE
1802 2000-06-01 Akihiro Mizutani <mizutani@dml.com>
1804 * ospf_dump.c: Replace string `Debugging functions\n' with DEBUG_STR.
1805 Replace string `OSPF information\n' with OSPF_STR.
1807 2000-06-01 Toshiaki Takada <takada@zebra.org>
1809 * ospf_lsdb.[ch]: Use new_lsdb struct for network-LSA instead of
1812 2000-06-01 Toshiaki Takada <takada@zebra.org>
1814 * ospf_dump.c (config_debug_ospf_packet), (config_debug_ospf_event),
1815 (config_debug_ospf_ism), (config_debug_ospf_nsm),
1816 (config_debug_ospf_lsa), (config_debug_ospf_zebra),
1817 (term_debug_ospf_packet), (term_debug_ospf_event),
1818 (term_debug_ospf_ism), (term_debug_ospf_nsm),
1819 (term_debug_ospf_lsa), (term_debug_ospf_zebra): Repalce debug_ospf_*
1820 variable to use for debug option flags.
1822 (debug_ospf_packet), (debug_ospf_ism), (debug_ospf_nsm),
1823 (debug_ospf_lsa), (debug_ospf_zebra): Set {config,term}_debug_*
1824 flags when vty->node is CONFIG_NODE, otherwise set only term_debug_*
1827 * ospf_dump.h (CONF_DEBUG_PACKET_ON), (CONF_DEBUG_PACKET_OFF),
1828 (TERM_DEBUG_PACKET_ON), (TERM_DEBUG_PACKET_OFF),
1829 (CONF_DEBUG_ON), (CONF_DEBUG_OFF), (IS_CONF_DEBUG_OSPF_PACKET),
1830 (IS_CONF_DEBUG_OSPF): New Macro added.
1832 2000-05-31 Toshiaki Takada <takada@zebra.org>
1834 * ospfd.c (clear_ip_ospf_neighbor): New DEFUN added.
1835 Currently this command is used for only debugging.
1837 * ospf_nsm.c (nsm_change_status): Make sure thread cancellation
1838 for network-LSA when DR has no full neighbors.
1840 * ospf_nsm.c (ospf_db_summary_clear): New function added.
1842 2000-05-30 Toshiaki Takada <takada@zebra.org>
1844 * ospf_lsdb.c (new_lsdb_insert): LSAs are always freed by
1845 maxage_lsa_remover when LSA is replaced.
1847 2000-05-25 Gleb Natapov <gleb@nbase.co.il>
1849 * ospf_flood.c (ospf_ls_retransmit_delete_nbr_all): Add argument
1850 `struct ospf_area' to remove LSA from Link State retransmission list
1851 of neighbor from only one Area.
1853 2000-05-24 Michael Rozhavsky <mike@nbase.co.il>
1855 * ospf_lsdb.c (ospf_lsdb_add): Preserve flags field when
1856 overriting old LSA with new LSA.
1858 2000-05-24 Gleb Natapov <gleb@nbase.co.il>
1860 * ospf_lsa.c (ospf_router_lsa_body_set): Fix bug of router-LSA
1863 2000-05-22 Michael Rozhavsky <mike@nbase.co.il>
1865 * ospf_route.c (ospf_intra_add_stub):
1866 * ospf_spf.h (struct vertex): Use u_int32_t for distance (cost)
1867 value instead of u_int16_t.
1869 2000-05-22 Axel Gerlach <agerlach@datus.datus.com>
1871 * ospf_ia.c (ospf_ia_network_route): Fix bug of Inter-area route
1872 equal cost path calculation.
1874 2000-05-21 Toshiaki Takada <takada@zebra.org>
1876 * ospf_ase.c (ospf_ase_calculate_route_delete): New function added.
1877 Make sure, when rotuer route is deleted, related external routes
1880 2000-05-20 Toshiaki Takada <takada@zebra.org>
1882 * ospfd.c (ospf_interface_down): Make sure interface flag is disable
1885 2000-05-16 Toshiaki Takada <takada@zebra.org>
1887 * ospf_asbr.c (ospf_asbr_should_announce), (ospf_asbr_route_remove):
1890 * ospfd.h (EXTERNAL_INFO): Macro added.
1891 Substitute `ospf_top->external_info[type]' with it.
1893 2000-05-16 Toshiaki Takada <takada@zebra.org>
1895 * ospf_lsa.c (ospf_rtrs_external_remove): New function added.
1897 2000-05-14 Gleb Natapov <gleb@nbase.co.il>
1899 * ospf_flood.c (ospf_ls_retransmit_delete_nbr_all)
1900 * ospf_lsdb.c (new_lsdb_insert)
1901 * ospf_packet.c (ospf_ls_ack): Fix database synchonization problem.
1903 2000-05-14 Gleb Natapov <gleb@nbase.co.il>
1905 * ospf_lsa.h (tv_adjust), (tv_ceil), (tv_floor), (int2tv),
1906 (tv_add), (tv_sub), (tv_cmp): Prototype definition added.
1908 * ospf_nsm.h (ospf_db_summary_delete_all): Prototype definition added.
1910 2000-05-13 Toshiaki Takada <takada@zebra.org>
1912 * ospf_lsa.[ch] (ospf_lsa): struct timestamp type is changed from
1913 time_t to struct timeval.
1914 (tv_adjust), (tv_ceil), (tv_floor), (int2tv), (tv_add),
1915 (tv_sub), (tv_cmp): timeval utillity functions added.
1917 2000-05-12 Toshiaki Takada <takada@zebra.org>
1919 * ospf_lsa.[ch] (ospf_schedule_update_router_lsas): Delete function.
1920 Change to use macro OSPF_LSA_UPDATE_TIMER instead of using
1922 router-LSA refresh timer related stuff is re-organized.
1924 2000-05-10 Gleb Natapov <gleb@nbase.co.il>
1926 * ospf_interface.c (ospf_vl_set_params):
1927 * ospf_packet.c (ospf_check_network_mask):
1928 * ospf_spf.[ch] (ospf_spf_next):
1929 Remove field address from `struct vertex', and search for peer
1930 address of virtual link in function `ospf_vl_set_params' instead.
1932 2000-05-10 Gleb Natapov <gleb@nbase.co.il>
1934 * ospf_packet.c (ospf_ls_upd): Fix some memory leak related LSA.
1936 2000-05-08 Thomas Molkenbur <tmo@datus.com>
1938 * ospf_packet.c (ospf_packet_dup): Replace ospf_steram_copy()
1939 with ospf_stream_dup() to fix memory leak.
1941 2000-05-08 Michael Rozhavsky <mike@nbase.co.il>
1943 * ospf_flood.c (ospf_flood_through_area): Fix the problem of
1944 LSA update without DROther.
1946 2000-05-04 Gleb Natapov <gleb@nbase.co.il>
1948 * ospf_spf.c (ospf_vertex_free): Fix memory leak of SPF calculation.
1950 2000-05-03 Toshiaki Takada <takada@zebra.org>
1952 * ospf_neighbor.c (ospf_db_summary_add): Use new_lsdb struct
1953 instead linked-list.
1954 (ospf_db_summary_count), (ospf_db_summary_isempty):
1957 * ospf_lsa.c (ospf_rotuer_lsa): Re-arrange and divide functions.
1959 2000-05-02 Gleb Natapov <gleb@nbase.co.il>
1961 * ospf_lsdb.c (new_lsdb_cleanup): Fix memory leak. When LSDB are
1962 not needed any more, then free them.
1964 2000-05-02 Toshiaki Takada <takada@zebra.org>
1966 * ospfd.c (timers_spf), (no_timers_spf): New defun added.
1967 SPF calculation timers related stuff is rearranged.
1969 * ospf_spf.c (ospf_spf_calculate_timer_add): Function removed.
1970 SPF timer is scheduled by SPF calculation delay and holdtime
1971 configuration variable.
1973 * ospf_lsa.c (ospf_external_lsa_nexthop_get): Set AS-external-LSA's
1974 forwarding address when nexthop learned by other protocols is
1977 * ospf_zebra.c (ospf_redistribute_source_metric_type),
1978 (ospf_redistribute_source_type_metric): Re-arrange DEFUNs and
1981 2000-05-01 Toshiaki Takada <takada@zebra.org>
1983 * ospf_flood.c (ospf_ls_retransmit_count),
1984 (ospf_ls_retransmit_isempty): New function added.
1986 (ospf_ls_retransmit_add), (ospf_ls_retransmit_delete),
1987 (ospf_ls_retransmit_clear), (ospf_ls_retransmit_lookup),
1988 (ospf_ls_retransmit_delete_all), (ospf_ls_retransmit_delete_nbr_all),
1989 (ospf_ls_retransmit_add_nbr_all): Replace these functions to use
1992 2000-04-29 Toshiaki Takada <takada@zebra.org>
1994 * ospfd.c (no_network_area): Add check Area-ID whether specified
1995 Area-ID with prefix matches config.
1997 2000-04-27 Toshiaki Takada <takada@zebra.org>
1999 * ospf_lsa.c (ospf_maxage_lsa_remover): Fix problem of
2000 remaining withdrawn routes on zebra.
2002 2000-04-25 Michael Rozhavsky <mike@nbase.co.il>
2004 * ospf_nsm.c (nsm_kill_nbr), (nsm_ll_down), (nsm_change_status),
2005 (ospf_nsm_event): Fix network-LSA re-origination problem.
2007 2000-04-24 Toshiaki Takada <takada@zebra.org>
2009 * ospf_nsm.c (ospf_db_desc_timer): Fix bug of segmentation fault
2010 with DD retransmission.
2012 * ospf_nsm.c (nsm_kill_nbr): Fix bug of re-origination when
2013 a neighbor disappears.
2015 2000-04-23 Michael Rozhavsky <mike@nbase.co.il>
2017 * ospf_abr.c (ospf_abr_announce_network_to_area): Fix bug of
2018 summary-LSAs reorigination. Correctly copy OSPF_LSA_APPROVED
2019 flag to new LSA. when summary-LSA is reoriginatd.
2021 * ospf_flood.c (ospf_flood_through_area): Fix bug of flooding
2022 procedure. Change the condition of interface selection.
2024 2000-04-21 Toshiaki Takada <takada@zebra.org>
2026 * ospf_lsa.c (ospf_refresher_register_lsa): Fix bug of refresh never
2029 * ospfd.c (show_ip_ospf_neighbor_id): New defun added.
2030 `show ip ospf neighbor' related commands are re-arranged.
2032 2000-04-20 Toshiaki Takada <takada@zebra.org>
2034 * ospf_dump.c (debug_ospf_zebra): New defun added.
2035 Suppress zebra related debug information.
2037 2000-04-19 Toshiaki Takada <takada@zebra.org>
2039 * ospf_zebra.c (ospf_distribute_list_update_timer),
2040 (ospf_distribute_list_update), (ospf_filter_update):
2041 New function added. Re-organize `distribute-list' router ospf
2044 2000-04-13 Michael Rozhavsky <mike@nbase.co.il>
2046 * ospf_packet.c (ospf_make_ls_upd): Add check for MAX_AGE.
2048 2000-04-14 Michael Rozhavsky <mike@nbase.co.il>
2050 * ospf_packet.c (ospf_make_ls_upd): Increment LS age by configured
2051 interface transmit_delay.
2053 2000-04-14 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2055 * ospf_interface.c (ip_ospf_cost), (no_ip_ospf_cost):
2056 Add to schedule router_lsa origination when the interface cost changes.
2058 2000-04-12 Toshiaki Takada <takada@zebra.org>
2060 * ospf_lsa.c (ospf_refresher_register_lsa),
2061 (ospf_refresher_unregister_lsa): Fix bug of core dumped.
2063 * ospfd.c (no_router_ospf): Fix bug of core dumped.
2065 2000-03-29 Toshiaki Takada <takada@zebra.org>
2067 * ospf_nsm.c (nsm_oneway_received): Fix bug of MS flag unset.
2069 2000-03-29 Michael Rozhavsky <mike@nbase.co.il>
2071 * ospf_lsa.c (ospf_network_lsa):
2072 * ospf_nsm.c (ospf_nsm_event): Fix bug of Network-LSA originated
2075 2000-03-28 Toshiaki Takada <takada@zebra.org>
2077 * ospf_nsm.c (nsm_bad_ls_req), (nsm_seq_number_mismatch),
2078 (nsm_oneway_received): Fix bug of NSM state flapping between
2079 ExStart and Exchange.
2081 2000-03-28 Toshiaki Takada <takada@zebra.org>
2083 * ospf_packet.h (strcut ospf_header): Fix the size of ospf_header,
2084 change u_int8_t to u_char.
2086 2000-03-27 Toshiaki Takada <takada@zebra.org>
2088 * ospf_lsa.c (ospf_lsa_checksum): Take care of BIGENDIAN architecture.
2090 2000-03-27 Toshiaki Takada <takada@zebra.org>
2092 * ospfd.c (ospf_interface_run): Make sure Address family matches.
2094 2000-03-26 Love <lha@s3.kth.se>
2096 * ospf_packet.c (ospf_write): Chack result of sendto().
2098 2000-03-26 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2100 * ospf_nsm.c (nsm_oneway_received): Fix bug of 1-WayReceived in NSM.
2102 2000-03-23 Libor Pechacek <farco@clnet.cz>
2104 * ospf_lsa.c (ospf_network_lsa)
2105 * ospf_lsdb.c (new_lsdb_insert): Fix bug of accessing to
2108 2000-03-23 Toshiaki Takada <takada@zebra.org>
2110 * ospfd.c (ospf_config_write): Fix bug of duplicate line for
2111 `area A.B.C.D authentication'.
2113 2000-03-22 Toshiaki Takada <takada@zebra.org>
2115 * ospf_debug.c (debug_ospf_lsa), (no_debug_ospf_lsa): Defun added.
2116 Suppress all zlog related to LSAs with this config option.
2118 2000-03-21 Kunihiro Ishiguro <kunihiro@zebra.org>
2120 * ospf_nsm.c (ospf_nsm_event): Add check for NSM_InactivityTimer.
2122 2000-03-21 Toshiaki Takada <takada@zebra.org>
2124 * ospf_packet.c (ospf_ls_upd_timer), (ospf_ls_req):
2125 Fix bug of memory leak about linklist.
2127 * ospf_flood.c (ospf_flood_through_area): Likewise.
2129 2000-03-18 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2131 * ospf_flood.c (ospf_ls_retransmit_lookup): Add checksum comparison
2132 to identify LSA uniquely. This fix routes lost.
2134 2000-03-18 Toshiaki Takada <takada@zebra.org>
2136 * ospf_ase.c (ospf_find_asbr_route): Add sanity check with router
2139 2000-03-17 Alex Zinin <zinin@amt.ru>
2141 * ospf_spf.[ch]: Bug fix.
2142 The 2nd stage of Dijkstra could consider one vertex
2143 more than once if there is more than one link
2144 between the routers, thus adding extra CPU overhead
2145 and extra next-hops.
2148 2000-03-15 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2150 * ospf_nsm.c (nsm_inactivity_timer): Changed to call nsm_kill_nbr().
2152 2000-03-14 Toshiaki Takada <takada@zebra.org>
2154 * ospf_route.c (ospf_route_copy_nexthops): Fix bug of memory leak of
2155 ospf_path. Actually ignore merging ospf_route with completely same
2158 2000-03-12 Toshiaki Takada <takada@zebra.org>
2160 * ospf_lsa.c (show_as_external_lsa_detail): fix bug of
2161 external route tag byte order.
2163 2000-03-11 Toshiaki Takada <takada@zebra.org>
2165 * ospf_lsdb.c (ospf_lsdb_insert): New function added.
2167 2000-03-09 Toshiaki Takada <takada@zebra.org>
2169 * ospf_lsa.c (ospf_external_lsa_install),
2170 (ospf_lsa_lookup), (show_ip_ospf_database_all),
2171 (show_ip_ospf_database_self_originate): Use struct new_lsdb for
2172 LSDB of AS-external-LSAs instead of ospf_lsdb.
2174 * ospf_lsa.c (ospf_lsa_unique_id): New function added.
2175 Use for assigning Unique Link State ID instead of
2176 ospf_get_free_id_for_prefix().
2178 2000-03-09 Toshiaki Takada <takada@zebra.org>
2180 * ospf_ase.c (ospf_ase_calculate_timer): Fix bug of segmentation
2181 fault reported by George Bonser <george@siteROCK.com>.
2183 2000-03-07 Libor Pechacek <farco@clnet.cz>
2185 * ospfd.c (ospf_interface_down): Fix bug of segmentation fault.
2187 2000-03-06 Toshiaki Takada <takada@zebra.org>
2189 * ospf_route.c (ospf_route_cmp): Change meaning of return values.
2191 2000-03-02 Alex Zinin <zinin@amt.ru>
2192 * ospfd.h, ospf_ia.h
2193 New Shortcut ABR code. Now area's flag can be configured
2194 with Default, Enable, and Disable values.
2195 More info will be in the new ver of I-D soon (see IETF web).
2197 2000-02-25 Toshiaki Takada <takada@zebra.org>
2199 * ospf_lsa.c (ospf_lsa_header_set), (ospf_external_lsa_body_set),
2200 (osfp_external_lsa_originate), (ospf_external_lsa_queue),
2201 (ospf_external_lsa_originate_from_queue): New function added.
2202 (ospf_external_lsa): Function removed.
2204 * ospf_zebra.c (ospf_zebra_read_ipv4): Originate AS-external-LSA
2205 when listen a route from Zebra, instead creating external route.
2207 * ospf_asbr.c (ospf_asbr_route_add_flood_lsa),
2208 (ospf_asbr_route_add_queue_lsa),
2209 (ospf_asbr_route_install_lsa), (ospf_asbr_route_add):
2212 * ospf_ase.c (process_ase_lsa): Function will not be used.
2213 (ospf_ase_calculate), (ospf_ase_calculate_route_add),
2214 (ospf_ase_calculate_new_route), (ospf_ase_caluculate_asbr_route):
2215 process_ase_lsa () is separated to these functions.
2217 OSPF AS-external-LSA origination is whole re-organized.
2219 2000-02-18 Toshiaki Takada <takada@zebra.org>
2221 * ospf_packet.c (ospf_ls_upd): Fix bug of OSPF LSA memory leak.
2223 * ospf_asbr.c (ospf_asbr_route_add_flood_lsa),
2224 (ospf_asbr_route_add_queue_lsa): Fix bug of OSPF external route
2227 2000-02-12 Kunihiro Ishiguro <kunihiro@zebra.org>
2229 * ospf_asbr.c (ospf_asbr_route_install_lsa): Re-calculate LSA
2230 checksum after change Advertised Router field.
2232 2000-02-09 Toshiaki Takada <takada@zebra.org>
2234 * ospf_asbr.c (ospf_external_route_lookup): Add new function.
2236 2000-02-08 Toshiaki Takada <takada@zebra.org>
2238 * ospfd.c (ospf_router_id_get), (ospf_router_id_update),
2239 (ospf_router_id_update_timer): Router ID decision algorithm is changed.
2240 Router ID is chosen from all of eligible interface addresses even if
2241 it is not enable to OSPF.
2243 2000-02-08 Toshiaki Takada <takada@zebra.org>
2245 * ospf_asbr.c (ospf_asbr_route_add): Function divided to
2246 ospf_asbr_route_add_flood_lsa, ospf_asbr_route_add_queue_lsa and
2247 ospf_asbr_route_install_lsa. If Router-ID is not set, then LSA is
2248 waited to install to LSDB.
2249 `0.0.0.0 adv_router' AS-external-LSA origination bug was fixed.
2251 2000-02-01 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2253 * ospf_flood.c (ospf_ls_retransmit_lookup): Compare LS seqnum
2254 in the ACK before deleting.
2256 * ospf_packet.c (ospf_hello): Reset the flags after a shutdown
2257 and no shutdown of the interface.
2259 2000-01-31 Toshiaki Takada <takada@zebra.org>
2261 * ospf_packet.c (ospf_ls_req): Send multiple Link State Update
2262 packets respond to a Link State Request packet.
2264 * ospfd.c (show_ip_ospf_neighbor_detail_sub): Show thread state.
2266 * ospf_interface.c (ospf_vl_new): Crash when backbone area
2267 is not configured and set virtual-link to no-backbone area,
2270 2000-01-30 Kunihiro Ishiguro <kunihiro@zebra.org>
2272 * ospf_neighbor.h (struct ospf_neighbor): Add pointer to last send
2275 * ospf_packet.c (ospf_ls_upd): Comment out LS request list
2276 treatment. That should be done in OSPF flooding procedure.
2278 * ospf_flood.c (ospf_flood_through_area): Enclose
2279 ospf_check_nbr_loding inside if-else close.
2281 2000-01-31 Toshiaki Takada <takada@zebra.org>
2283 * ospf_packet.c (ospf_make_ls_upd): Fix bug of #LSAs counting.
2285 2000-01-29 Toshiaki Takada <takada@zebra.org>
2287 * ospf_packet.c (ospf_make_md5_digest): Fix bug of md5 authentication.
2289 2000-01-28 Toshiaki Takada <takada@zebra.org>
2291 * ospfd.c (show_ip_ospf): Show Number of ASE-LSAs.
2293 2000-01-27 Kunihiro Ishiguro <kunihiro@zebra.org>
2295 * ospf_packet.c (ospf_make_db_desc): Don't use rm_list for
2296 removing LSA from nbr->db_summary.
2298 2000-01-27 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2300 * ospf_packet.c (ospf_ls_upd_send): Set AllSPFRouters to
2301 destination when the link is point-to-point.
2302 (ospf_ls_ack_send_delayed): Likewise.
2304 2000-01-27 Kunihiro Ishiguro <kunihiro@zebra.org>
2306 * ospf_flood.c (ospf_ls_request_delete_all): Fix bug of next
2307 pointer lookup after the node is freed.
2309 2000-01-26 Kunihiro Ishiguro <kunihiro@zebra.org>
2311 * ospf_asbr.c (ospf_asbr_route_add): Instead of scanning all AS
2312 external route, use ospf_top->external_self.
2314 2000-01-27 Toshiaki Takada <takada@zebra.org>
2316 * ospf_lsa.c (ospf_forward_address_get): New function added.
2318 * ospf_asbr.c (ospf_asbr_check_lsas): Originate AS-external-LSA
2319 only when it should be replaced.
2321 2000-01-25 Kunihiro Ishiguro <kunihiro@zebra.org>
2323 * ospf_flood.c (ospf_ls_retransmit_clear): Delete list node.
2325 * ospf_lsa.c (ospf_lsa_free): Reduce logging message using
2328 * ospf_ism.c (ism_change_status): Fix bug of DR -> non DR status
2329 change. Self originated LSA is freed but not deleted from lsdb.
2331 2000-01-24 Kunihiro Ishiguro <kunihiro@zebra.org>
2333 * ospf_ism.c (ism_interface_down): Don't use router_id for
2334 detecting self neighbor structure. Instead of that compare
2337 * ospf_neighbor.c (ospf_nbr_free): Cancel all timer when neighbor
2339 (ospf_nbr_free): Free last send packet.
2341 * ospf_neighbor.h (struct ospf_neighbor): Remove host strucutre.
2342 Instead of that src is introduced.
2344 * ospf_nsm.h: Enclose macro defenition with do {} while (0).
2346 2000-01-17 Kunihiro Ishiguro <kunihiro@zebra.org>
2348 * ospfd.c: Change part of passive interface implementation. For
2349 passive interface just disabling sending/receiving Hello on the
2352 2000-01-16 Kai Bankett <kai.bankett@vew-telnet.net>
2354 * ospf_interface.h (OSPF_IF_PASSIVE): Add passive flag.
2355 * ospf_interface.c (ospf_if_lookup_by_name): Add new function.
2356 * ospf_lsa.c (ospf_router_lsa): Skip passive interface.
2357 * ospfd.c (passive_interface): New command passive-interface is
2359 (ospf_config_write): Print passive interface.
2361 2000-01-15 Toshiaki Takada <takada@zebra.org>
2363 * ospf_interface.h (crypt_key): New struct added to store
2364 multiple cryptographic autheitication keys.
2365 (ospf_interface): struct changed.
2367 * ospf_interface.c: ospf_crypt_key_new, ospf_crypt_key_add,
2368 ospf_crypt_key_lookup, ospf_crypt_key_delete: new functions added.
2370 * ospf_packet.c (ip_ospf_message_digest_key): Changed to store
2371 multiple cryptographic authentication keys.
2373 2000-01-14 Toshiaki Takada <takada@zebra.org>
2375 * ospf_interface.c: DEFUN (if_ospf_*) commands changed name to
2377 Old notation `ospf *' still remains backward compatibility.
2379 1999-12-29 Alex Zinin <zinin@amt.ru>
2380 * ospf_lsa.c: ospf_lsa_more_recent() bug fix
2381 * ospf_nsm.c, ospf_packet.c: remove nbr data struct when
2382 int goes down, also check DD flags correctly (bug fix)
2384 1999-12-28 Alex Zinin <zinin@amt.ru>
2385 * "redistribute <source> metric-type (1|2) metric <XXX>" added
2387 1999-12-23 Alex Zinin <zinin@amt.ru>
2388 * added RFC1583Compatibility flag
2389 * added dynamic interface up/down functionality
2391 1999-11-19 Toshiaki Takada <takada@zebra.org>
2393 * ospf_neighbor.h (struct ospf_neighbor): Add member state_change
2394 for NSM state change statistics.
2396 1999-11-19 Toshiaki Takada <takada@zebra.org>
2398 * ospfd.c (show_ip_ospf_neighbor_detail),
2399 (show_ip_ospf_neighbor_int_detail): DEFUN Added.
2401 1999-11-14 Kunihiro Ishiguro <kunihiro@zebra.org>
2403 * ospf_asbr.c (ospf_asbr_check_lsas): Add check of
2406 1999-11-11 Toshiaki Takada <takada@zebra.org>
2408 * ospf_ia.[ch] (OSPF_EXAMINE_SUMMARIES_ALL): Macro added.
2409 This macro is expanded to ospf_examine_summaries ()
2410 for SUMMARY_LSA and SUMMARY_LSA_ASBR.
2411 (OSPF_EXAMINE_TRANSIT_SUMMARIES_ALL): Macro added.
2412 This macro is expanded to ospf_examine_transit_summaries ()
2413 for SUMMARY_LSA and SUMMARY_LSA_ASBR.
2415 1999-11-11 Toshiaki Takada <takada@zebra.org>
2417 * ospf_lsa.[ch] (ospf_find_self_summary_lsa_by_prefix): Changed to
2418 macro OSPF_SUMMARY_LSA_SELF_FIND_BY_PREFIX.
2419 (ospf_find_self_summary_asbr_lsa_by_prefix): Changed to
2420 macro OSPF_SUMMARY_ASBR_LSA_SELF_FIND_BY_PREFIX.
2421 (ospf_find_self_external_lsa_by_prefix): Changed to
2422 macro OSPF_EXTERNAL_LSA_SELF_FIND_BY_PREFIX.
2424 1999-11-11 Toshiaki Takada <takada@zebra.org>
2426 * ospfd.c (ospf_abr_type): ospf_abr_type_cisco, ospf_abr_type_ibm,
2427 ospf_abr_type_shortcut and ospf_abr_type_standard DEFUNs are
2429 * ospfd.c (no_ospf_abr_type): no_ospf_abr_type_cisco,
2430 no_ospf_abr_type_ibm and no_ospf_abr_type_shortcut DEFUNS are
2433 1999-11-10 Toshiaki Takada <takada@zebra.org>
2435 * ospf_route.c (ospf_lookup_int_by_prefix): Move function to
2436 ospf_interface.c and change name to ospf_if_lookup_by_prefix ().
2438 1999-11-01 Alex Zinin <zinin@amt.ru>
2440 some correction to LSU processing
2442 * ospf_lsa.c ospfd.h
2443 randomize initial LSA refreshment interval
2444 and limit the size of LSA-group to 10
2445 to let randomization work more effectively.
2447 1999-10-31 Alex Zinin <zinin@amt.ru>
2449 cancel t_network_lsa_self
2450 when freeing int structure
2452 * ospf_abr.c ospf_asbr.c ospf_flood.c ospf_lsa.c
2453 ospf_lsa.h ospf_lsdb.h ospfd.c ospfd.h
2455 Summary and ASE LSA refreshment functions
2456 added---LSA refreshment is paced to 70 LSAs
2457 per sec to avoid link overflow. Refreshment events
2458 are further randomized within a 10 sec interval
2461 Also the sigfault of memcmp() in ospf_lsa_is_different()
2464 1999-10-30 Alex Zinin <zinin@amt.ru>
2466 Fix the bug where MAX_AGE LSAs
2467 are included into the DB summary.
2470 allocate 2*MTU input buffer instead of just MTU
2471 for the cases when the other router mistakenly
2472 sends larger packets thus causing fragmentation, etc.
2475 in nsm_reset_nbr() lists should be freed
2476 not when they are empty.
2478 1999-10-29 Kunihiro Ishiguro <kunihiro@zebra.org>
2480 * ospf_zebra.c (ospf_acl_hook): Move OSPF_IS_ASBR and OSPF_IS_ABR
2481 check inside of if (ospf_top).
2483 1999-10-29 Alex Zinin <zinin@amt.ru>
2484 * ospf_lsa.c ospf_lsdb.c :
2485 add assertion in lsa and lsa->data alloc functions,
2486 as well as in lsdb_add for new->data
2488 * ospf_lsdb.c: free hash table correctly
2490 1999-10-28 John Capo <jc@irbs.com>
2492 * ospf_packet.h (OSPF_PACKET_MAX): Correct MAX packet length
2495 1999-10-27 Kunihiro Ishiguro <kunihiro@zebra.org>
2497 * OSPF-TRAP-MIB.txt: New file added. Edited version of RFC1850.
2499 * OSPF-MIB.txt: New file added. Edited version of RFC1850.
2501 1999-10-27 Alex Zinin <zinin@amt.ru>
2502 * ospfd, ospf_zebra, ospf_abr
2503 "area import-list" command is added.
2504 This command allows to filter the inter-area routes
2505 injected into an area. Access list hook function
2506 extended to invalidate area exp/imp lists.
2508 1999-10-25 Yoshinobu Inoue <shin@nd.net.fujitsu.co.jp>
2510 * ospfd.c (ospf_interface_run): Enable to detect P2P network
2511 on an OSPF interface.
2513 1999-10-19 Jordan Mendelson <jordy@wserv.com>
2515 * ospf_lsdb.c (ospf_lsdb_add): Fix bug of crash
2516 in ospf_ls_retransmit_lookup ().
2518 1999-10-19 Vladimir B. Grebenschikov <vova@express.ru>
2520 * ospf_route.c: Workaround about installation of OSPF routes into
2521 the zebra daemon. Add checking of existance routes. Free
2522 ospf_top->old_table if it exists.
2524 1999-10-15 Jordan Mendelson <jordy@wserv.com>
2526 * Add support for MD5 authentication.
2528 1999-10-12 Alex Zinin <zinin@amt.ru>
2529 * ospfd.c, ospfd.h, ospf_abr.c:
2530 a new command "area export-list" was added, it allows
2531 the admin. to control which intra-area routes are
2532 announced to other areas by the ABR
2534 1999-10-12 Alex Zinin <zinin@amt.ru>
2535 * ospf_asbr.c (ospf_asbr_check_lsas): Fix bug of coredump
2536 when "no redistribute" is used after a distribute list
2537 denying some networks was used
2539 1999-10-05 Toshiaki Takada <takada@zebra.org>
2541 * ospf_route.c (ospf_path_dup): New function added.
2543 1999-10-05 Toshiaki Takada <takada@zebra.org>
2545 * ospf_interface.[ch]: Some of VL related funciton name changed.
2547 1999-09-27 Alex Zinin <zinin@amt.ru>
2549 * ospf_zebra.c: Distribute-list functionality added
2551 1999-09-27 Toshiaki Takada <takada@zebra.org>
2553 * ospfd.c (show_ip_ospf): Fix bug of segmentation fault when no ospf
2556 1999-09-25 Kunihiro Ishiguro <kunihiro@zebra.org>
2558 * ospfd.c (ospf_interface_down): Fix bug of misusing nextnode()
2559 instead of node->next. Reported by Hiroki Ishibashi
2560 <ishibasi@dcd.abk.nec.co.jp>.
2562 * ospf_route.c (show_ip_ospf_route): Add check for ospf is enabled
2565 1999-09-23 Alex Zinin <zinin@amt.ru>
2567 * stub area support added
2569 1999-09-23 Alex Zinin <zinin@amt.ru>
2571 * fwd_addr in ASE-LSAs is now set correctly
2572 * ASE routing changed to check the fwd_addr
2573 and skip the route if the addr points to one
2574 of our interfaces to avoid loops.
2576 1999-09-22 Alex Zinin <zinin@amt.ru>
2579 ospf_vls_in_area() added, it returns
2580 the number of VLs configured through the area
2582 * ospf_interface.c ospf_lsa.c ospf_lsdb.c ospfd.c
2583 honor correct mem alloc
2585 1999-09-22 Alex Zinin <zinin@amt.ru>
2588 Some OSPF mem types added,
2589 plus more info in "show mem"
2591 1999-09-21 Alex Zinin <zinin@amt.ru>
2594 "area range substitute" added.
2595 It can be used on NAT-enabled (IP-masquarade)
2596 routers to announce private networks
2597 from an area as public ones into the outside
2598 world (not in the RFC, btw :)
2600 1999-09-21 Alex Zinin <zinin@amt.ru>
2603 "area range suppress" added.
2604 This command allows to instruct the router
2605 to be silent about specific ranges, i.e.,
2606 it is a method of route filtering on area
2609 1999-09-21 Alex Zinin <zinin@amt.ru>
2611 * ospfd.c VLs removed when "no network area" executed
2613 1999-09-20 Alex Zinin <zinin@amt.ru>
2615 * ospf_ase.c bug fix for not-zero fwd_addr
2616 and directly connected routes.
2618 1999-09-20 Yon Uriarte <yon@plannet.de>
2620 * ospf_packet.c (ospf_make_ls_req): Introduce delta value for
2621 checking the length of OSPF packet exceeds MTU or not.
2623 * ospf_lsa.c (ospf_lsa_different): Apply ntohs for checking
2626 1999-09-18 Alex Zinin <zinin@amt.ru>
2628 * ospf_lsa.c bug fix for ospf_network_lsa() to
2629 include itself into the RID list
2631 1999-09-10 Alex Zinin <zinin@amt.ru>
2633 * Alternative ABR behaviors IBM/Cisco/Shortcut
2636 1999-09-10 Alex Zinin <zinin@amt.ru>
2638 * router and network-LSA origination
2639 changed to honor MinLSInterval
2641 1999-09-08 Alex Zinin <zinin@amt.ru>
2643 * modified ABR behavior to honor VLs and transit
2646 1999-09-07 Alex Zinin <zinin@amt.ru>
2648 * completed VL functionality
2650 1999-09-06 Kunihiro Ishiguro <kunihiro@zebra.org>
2652 * ospf_asbr.c: New file.
2653 ospf_asbr.h: New file.
2655 * ospf_zebra.c (ospf_redistribute_connected): Add redistribute
2658 1999-09-05 Kunihiro Ishiguro <kunihiro@zebra.org>
2660 * ospfd.h (OSPF_FLAG_VIRTUAL_LINK): Change OSPF_FLAG_VEND to
2661 OSPF_FLAG_VIRTUAL_LINK for comprehensiveness.
2663 1999-09-03 Kunihiro Ishiguro <kunihiro@zebra.org>
2665 * ospf_spf.c (ospf_spf_register): Change name from
2666 ospf_spf_route_add() to ospf_spf_register().
2667 Include "ospfd/ospf_abr.h" for ospf_abr_task() prototype.
2669 1999-09-02 Kunihiro Ishiguro <kunihiro@zebra.org>
2671 * ospf_lsa.c (ospf_external_lsa_install): Change to update
2672 lsa->data rather than install new one, when same id lsa is already
2675 1999-09-01 Kunihiro Ishiguro <kunihiro@zebra.org>
2677 * ospf_lsa.c (ospf_router_lsa_install): Return lsa value.
2678 (ospf_network_lsa_install): Likewise.
2679 (ospf_summary_lsa_install): Likewise.
2680 (ospf_summary_asbr_lsa_install): Likewise.
2681 (ospf_external_lsa_install): Likewise.
2683 * ospf_spf.c (ospf_spf_calculate): Comment out debug function
2686 1999-08-31 Kunihiro Ishiguro <kunihiro@zebra.org>
2688 * ospf_spf.c (ospf_rtrs_free): Add ospf_spf_calculate() for
2691 1999-08-31 Toshiaki Takada <takada@zebra.org>
2693 * ospf_lsa.c (show_ip_ospf_database_summary),
2694 (show_ip_ospf_database_summary_asbr),
2695 (show_ip_ospf_database_external): New function added.
2696 `show ip ospf database summary',
2697 `show ip ospf database asbr-summary'
2698 `show ip ospf database external' command can be used.
2700 * ospf_lsa.c (ospf_lsa_count_table): New function added.
2701 (show_ip_ospf_database_all): show nothing if a type of LSA
2704 1999-08-31 Kunihiro Ishiguro <kunihiro@zebra.org>
2706 * ospf_lsa.c (ospf_maxage_lsa_remover): Preserve next pointer when
2707 the node is deleted.
2709 1999-08-31 Toshiaki Takada <takada@zebra.org>
2711 * ospf_flood.c (ospf_ls_retransmit_lookup): change to return
2713 (ospf_ls_request_new), (ospf_ls_request_free),
2714 (ospf_ls_request_add), (ospf_ls_request_delete),
2715 (ospf_ls_request_delete_all), (ospf_ls_request_lookup):
2718 * ospf_packet.c (ospf_ls_upd_send_lsa): New function added.
2720 * ospf_lsa.h (LS_AGE): Slightly change macro definition.
2722 * ospf_lsa.c (ospf_lsa_more_recent), (ospf_lsa_diffrent):
2725 1999-08-30 Alex Zinin <zinin@amt.ru>
2728 fix a bug with area range config write
2729 added "show ip ospf" command, it will be enhanced later on
2731 1999-08-30 Alex Zinin <zinin@amt.ru>
2734 updated ospf_router_lsa() to honor flags (B-bit)
2736 1999-08-30 Alex Zinin <zinin@amt.ru>
2739 wrote major functions implementing ABR activity
2741 1999-08-30 Alex Zinin <zinin@amt.ru>
2743 * ospf_ia.c ospf_route.c ospf_route.h
2744 fixed the bug with ospf_route.origin field.
2745 Now it holds pointer to lsa_header
2747 1999-08-30 Alex Zinin <zinin@amt.ru>
2749 * ospf_flood.c ospf_flood.h:
2750 transformed ospf_flood_if_select into ospf_flood_through_area()
2751 added new ospf_flood_if_select() and ospf_flood_through_as()
2753 1999-08-30 Toshiaki Takada <takada@zebra.org>
2755 * ospf_flood.[ch]: New file added.
2757 * ospf_packet.c (ospf_lsa_flooding),
2758 (ospf_lsa_flooding_select_if): functions move to ospf_flood.c
2760 * ospf_neighbor.c (ospf_put_lsa_on_retransm_list),
2761 (ospf_remove_lsa_from_retransm_list),
2762 (ospf_nbr_remove_all_lsas_from_retransm_list),
2763 (ospf_lsa_remove_from_ls_retransmit):
2764 (ospf_lsa_retransmit): functions move to
2765 ospf_flood.c, and change function's name:
2767 ospf_put_lsa_on_retransm_list ()
2768 -> ospf_ls_retransmit_add ()
2769 ospf_remove_lsa_from_retransm_list ()
2770 -> ospf_ls_retransmit_delete ()
2771 ospf_nbr_remove_all_lsas_from_retransm_list ()
2772 -> ospf_ls_retransmit_clear ()
2773 ospf_lsa_remove_from_ls_retransmit ()
2774 -> ospf_ls_retransmit_delete_nbr_all ()
2775 ospf_lsa_retransmit ()
2776 -> ospf_ls_retransmit_add_nbr_all ()
2778 * ospf_lsa.c (ospf_lsa_lookup_from_list): function move to
2779 ospf_flood.c, and change name to ospf_ls_retransmit_lookup ().
2781 1999-08-30 Kunihiro Ishiguro <kunihiro@zebra.org>
2783 * ospf_neighbor.c (ospf_nbr_lookup_by_addr): Use
2784 route_node_lookup() instead of route_node_get().
2786 * ospf_packet.c (ospf_ls_upd): Temporary comment out (6) check.
2788 1999-08-30 Kunihiro Ishiguro <kunihiro@zebra.org>
2790 * ospf_route.c (ospf_lookup_int_by_prefix): Add check of
2793 1999-08-29 Alex Zinin <zinin@amt.ru>
2795 MaxAge LSA deletion functions added.
2797 1999-08-29 Alex Zinin <zinin@amt.ru>
2799 ospf_nbr_lookup_by_addr(): added route_unlock_node()
2800 when function returns NULL if (rn->info == NULL)
2802 1999-08-29 Alex Zinin <zinin@amt.ru>
2804 added a hack for area range deletion
2806 1999-08-29 Alex Zinin <zinin@amt.ru>
2808 included lsdb field into struct ospf_lsa, to find
2809 LSDB easier when removing MaxAge LSAs.
2811 1999-08-29 Alex Zinin <zinin@amt.ru>
2812 * ospf_lsa.c ospf_neighbor.c ospf_nsm.c
2813 ospf_packet.c changed to honor new retransmit list
2814 management functions
2816 1999-08-29 Alex Zinin <zinin@amt.ru>
2817 * ospf_neighbor.c , .h added new retransmit list functions.
2819 1999-08-29 Alex Zinin <zinin@amt.ru>
2821 added ospf_ase, ospf_abr, ospf_ia
2823 1999-08-29 Alex Zinin <zinin@amt.ru>
2825 - changed ospf_next_hop_calculation() to include interface
2826 and nexthop addr for directly connected routers---more informative
2827 and solves problem with route installation into the kernel
2828 - changed ospf_nexthop_out_if_addr() to support routers, not only
2830 - added ospf_process_stubs();
2832 1999-08-29 Alex Zinin <zinin@amt.ru>
2834 - changed ospf_router_lsa() to provide correct links
2835 for p-t-p interfaces;
2836 - changed ospf_summary_lsa_install() to support table
2837 of self-originated summary-LSAs;
2838 - added ospf_summary_asbr_lsa_install() and ospf_external_lsa_install()
2839 - changed ospf_lsa_install() accordingly
2840 - changed show_ip_ospf_database_router_links() to support p-t-p
2842 1999-08-29 Kunihiro Ishiguro <kunihiro@zebra.org>
2844 * ospf_packet.c (ospf_make_db_desc): Only master can clear more
2847 1999-08-29 Kunihiro Ishiguro <kunihiro@zebra.org>
2849 * ospf_packet.c (ospf_read): Add check of IP src address.
2851 1999-08-28 Alex Zinin <zinin@amt.ru>
2853 added ospf_nbr_lookup_by_routerid()
2855 1999-08-28 Alex Zinin <zinin@amt.ru>
2857 added ABR/ASBR flag definitions and fields;
2858 added iflist field to area structure;
2859 summary_lsa_self and summary_lsa_asbr_self are changed
2861 added ranges field---configured area ranges;
2862 A separate Routers RT added;
2863 area range config commands and config write added
2866 1999-08-28 Alex Zinin <zinin@amt.ru>
2868 ospf_route_free()--added code to free the list of paths;
2869 The following functions added:
2870 ospf_intra_add_router();
2871 ospf_intra_add_transit();
2872 ospf_intra_add_stub();
2873 the last function uses new ospf_int_lookup_by_prefix();
2874 show_ip_ospf_route_cmd()--changed to support new RT structure;
2875 added ospf_cmp_routes()--general route comparision function;
2876 added ospf_route_copy_nexthops() and ospf_route_copy_nexthops_from_vertex()
2877 they are used in ASE and IA routing;
2878 added ospf_subst_route() and ospf_add_route();
2880 1999-08-28 Alex Zinin <zinin@amt.ru>
2882 changed struct ospf_path to include output interface,
2883 changed struct ospf_route to support IA and ASE routing.
2884 added prototypes of the function used in IA and ASE modules.
2886 1999-08-28 Alex Zinin <zinin@amt.ru>
2887 * ospf_lsa.h ospf_lsa.c :
2888 added ospf_my_lsa(), an interface independent version of
2889 ospf_lsa_is_self_originated(), it will be used in ASE and IA-routing.
2891 1999-08-27 Kunihiro Ishiguro <kunihiro@zebra.org>
2893 * ospf_interface.c (interface_config_write): Add check for
2896 1999-08-25 Toshiaki Takada <takada@zebra.org>
2898 * ospf_lsa.c (ospf_lsa_dup): New function added.
2900 * ospf_packet.c (ospf_write), (ospf_read): Print send/recv
2901 interface in debug message.
2903 1999-08-25 Toshiaki Takada <takada@zebra.org>
2905 * ospf_packet.c (ospf_ls_ack_send): The name is changed from
2907 (ospf_ls_ack_send_delayed) (ospf_ls_ack_timer): New function added.
2908 Delayed Link State Acknowledgment is scheduled by timer.
2910 1999-08-25 Alex Zinin <zinin@amt.ru>
2912 * ospf_lsa.c (ospf_router_lsa): Incorrectly included link to
2913 a stub network instead of link to a transit network into
2914 originated router-LSA, bug fixed.
2916 1999-08-24 Toshiaki Takada <takada@zebra.org>
2918 * ospfd.c (ospf_update_router_id): New function added.
2920 * ospf_network.c (ospf_write): Create new socket per transmission.
2921 And select outgoing interface whether dst is unicast or multicast.
2923 * ospf_packet.c: LSA flooding will work.
2925 1999-08-24 VOP <vop@unity.net>
2927 * ospf_route.c: Include "sockunion.h"
2929 1999-08-24 Kunihiro Ishiguro <kunihiro@zebra.org>
2931 * ospf_network.c (ospf_serv_sock_init): Enclose
2932 IPTOS_PREC_INTERNETCONTROL setting with #ifdef for OS which does
2933 not have the definition.
2935 1999-08-23 Toshiaki Takada <takada@zebra.org>
2937 * ospf_packet.c: Fix bug of DD processing.
2939 1999-08-18 Toshiaki Takada <takada@zebra.org>
2941 * ospf_lsa.c (show_ip_ospf_database): Show actual `LS age'.
2943 1999-08-17 Toshiaki Takada <takada@zebra.org>
2945 * ospf_lsa.h (OSPF_MAX_LSA): The value of OSPF_MAX_LSA is
2946 corrected. The bug of `mes_lookup' is fixed.
2947 This had been reported by Poul-Henning Kamp <phk@freebsd.org>.
2949 * ospf_lsa.c (ospf_router_lsa_install): The name is changed from
2950 `ospf_add_router_lsa'.
2951 (ospf_network_lsa_install): The name is changed from
2952 `ospf_add_network_lsa'.
2954 * ospf_interface.h (ospf_interface): Add member `nbr_self'.
2956 * ospf_interface.c (ospf_if_is_enable): New function added.
2958 1999-08-16 Toshiaki Takada <takada@zebra.org>
2960 * ospf_lsa.h (struct lsa_header): The name is changed from
2962 (struct ospf_lsa): New struct added to control each LSA's aging
2965 * ospf_lsa.c (ospf_lsa_data_free): The name is change from
2967 (ospf_lsa_data_new), (ospf_lsa_new), (ospf_lsa_free),
2968 (ospf_lsa_different), (ospf_lsa_install): New function added.
2970 * ospf_packet.c (ospf_ls_upd_list_lsa): New function added.
2972 1999-08-12 Toshiaki Takada <takada@zebra.org>
2974 * ospf_nsm.c (nsm_reset_nbr): New function added.
2975 KillNbr and LLDown neighbor event call this function.
2977 1999-08-10 Toshiaki Takada <takada@zebra.org>
2979 * ospf_packet.c (ospf_ls_retransmit)
2980 (ospf_ls_upd_timer): New function added.
2981 Set retransmission timer for Link State Update.
2983 1999-07-29 Toshiaki Takada <takada@zebra.org>
2985 * ospf_ism.c (ospf_dr_election): Fix bug of DR election.
2987 1999-07-28 Toshiaki Takada <takada@zebra.org>
2989 * ospf_network.c (ospf_serv_sock_init): Set IP precedence field
2990 with IPTOS_PREC_INTERNET_CONTROL.
2992 * ospf_nsm.c (nsm_change_status): Schedule NeighborChange event
2993 if NSM status change.
2995 * ospf_packet.c (ospf_make_hello): Never include a neighbor in
2996 Hello packet, when the neighbor goes down.
2998 1999-07-26 Kunihiro Ishiguro <kunihiro@zebra.org>
3000 * Makefile.am (noinst_HEADERS): Add ospf_route.h.
3002 * ospf_route.c (show_ip_ospf_route): Add `show ip ospf route'
3005 1999-07-25 Toshiaki Takada <takada@zebra.org>
3007 * ospf_lsa.c (ospf_router_lsa): Fix bug of LS sequence number
3010 1999-07-25 Kunihiro Ishiguro <kunihiro@zebra.org>
3012 * ospf_route.c (ospf_route_table_free): New function added.
3014 * ospf_spf.c (ospf_spf_next): Free vertex w when cw's and w's
3017 * ospfd.h (struct ospf): Add old_table.
3019 * ospf_main.c (sighup): Call of log_rotate () removed.
3021 * ospf_lsa.c (ospf_lsa_is_self_originated): Fix bug of checking
3022 area->lsa as self LSA. This should be area->lsa_self.
3024 1999-07-24 Kunihiro Ishiguro <kunihiro@zebra.org>
3026 * ospf_zebra.c (ospf_zebra_add): ospf_zebra_add
3027 (),ospf_zebra_delete () added.
3029 * ospf_spf.c (ospf_spf_calculate): Call ospf_intra_route_add ().
3031 1999-07-24 Toshiaki Takada <takada@zebra.org>
3033 * ospf_lsa.c: Change LS sequence number treatment.
3034 (ospf_lsa_is_self_originated): New function added.
3035 (show_ip_ospf_database_self_originated): New DEFUN added.
3037 1999-07-23 Kunihiro Ishiguro <kunihiro@zebra.org>
3039 * ospf_interface.c (ospf_if_lookup_by_addr): Add loopback check.
3041 1999-07-22 Toshiaki Takada <takada@zebra.org>
3043 * ospf_spf.c (ospf_nexthop_new), (ospf_nexthop_free),
3044 (ospf_nexthop_dup): function added.
3045 (ospf_nexthop_calculation): function changed.
3047 * ospf_interface.c (ospf_if_lookup_by_addr): function added.
3049 1999-07-21 Toshiaki Takada <takada@zebra.org>
3051 * ospf_spf.c (ospf_spf_closest_vertex): function removed.
3053 1999-07-21 Kunihiro Ishiguro <kunihiro@zebra.org>
3055 * ospf_spf.c (ospf_spf_next): Apply ntohs for fetching metric.
3057 1999-07-21 Toshiaki Takada <takada@zebra.org>
3059 * ospf_neighbor.c (ospf_nbr_lookup_by_router_id): fundtion removed.
3061 * ospf_lsa.c (show_ip_ospf_database_router): describe each
3064 1999-07-21 Kunihiro Ishiguro <kunihiro@zebra.org>
3066 * ospf_spf.c (ospf_spf_next): V is router LSA or network LSA so
3067 change behavior according to LSA type.
3068 (ospf_lsa_has_link): Link check function is added.
3070 1999-07-20 Kunihiro Ishiguro <kunihiro@zebra.org>
3072 * ospf_spf.c (ospf_spf_calculate_schedule): Add new function for
3073 SPF calcultion schedule addtition.
3074 (ospf_spf_calculate_timer_add): Rough 30 sec interval SPF calc
3076 (ospf_spf_next_router): Delete ospf_spf_next_network ().
3078 * ospf_lsa.c (show_ip_ospf_database_all): Network-LSA display
3079 header typo correction. Display of router LSA's #link added.
3081 1999-07-19 Toshiaki Takada <takada@zebra.org>
3083 * ospf_packet.c (ospf_check_network_mask): Added new function for
3084 receiving Raw IP packet on an appropriate interface.
3086 1999-07-16 Toshiaki Takada <takada@zebra.org>
3088 * ospfd.c (ospf_router_id): new DEFUN added.
3090 1999-07-15 Toshiaki Takada <takada@zebra.org>
3092 * ospf_spf.c (ospf_spf_init), (ospf_spf_free),
3093 (ospf_spf_has_vertex), (ospf_vertex_lookup),
3094 (ospf_spf_next_router), (ospf_spf_next_network),
3095 (ospf_spf_closest_vertex), (ospf_spf_calculate):
3098 1999-07-13 Toshiaki Takada <takada@zebra.org>
3100 * ospf_ism.c: fix bug of DR Election.
3102 * ospf_nsm.c: fix bug of adjacency forming.
3104 1999-07-05 Kunihiro Ishiguro <kunihiro@zebra.org>
3106 * ospfd.c (ospf_init): Change to use install_default.
3108 1999-07-01 Rick Payne <rickp@rossfell.co.uk>
3110 * ospf_zebra.c (zebra_init): Install standard commands to
3113 1999-06-30 Toshiaki Takada <takada@zebra.org>
3115 * ospf_dump.c: Whole debug command is improved.
3116 (ISM|NSM) (events|status|timers) debug option added.
3117 (show_debugging_ospf): new DEFUN added.
3119 1999-06-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3121 * ospf_lsa.c (ospf_lsa_lookup_from_list): Change !IPV4_ADDR_CMP to
3124 1999-06-29 Toshiaki Takada <takada@zebra.org>
3126 * ospf_dump.c (ospf_summary_lsa_dump): Add summary-LSA dump routine.
3127 (ospf_as_external_lsa_dump): Add AS-external-LSA dump routine.
3129 * ospf_nsm.c (nsm_twoway_received): fix condtion of adjacnet.
3131 * ospf_ism.c (ospf_dr_election): fix DR Election.
3133 * ospf_dump.c (ospf_nbr_state_message): fix `show ip ospf neighbor'
3136 1999-06-29 Kunihiro Ishiguro <kunihiro@zebra.org>
3138 * ospf_dump.c (ospf_router_lsa_dump): Add router-LSA dump routine.
3140 1999-06-28 Toshiaki Takada <takada@zebra.org>
3142 * ospf_lsa.c (show_ip_ospf_database_network): fix bug of
3143 `show ip ospf database network' command output.
3145 * ospf_nsm.c (nsm_inactivity_timer): Clear list of Link State
3146 Retransmission, Database Summary and Link State Request.
3148 * ospf_packet.c (ospf_ls_req_timer): New function added.
3149 Set Link State Request retransmission timer.
3151 1999-06-27 Kunihiro Ishiguro <kunihiro@zebra.org>
3153 * ospf_main.c (main): Change default output from ZLOG_SYSLOG to
3156 * ospfd.c (ospf_init): Register show_ip_ospf_interface_cmd and
3157 show_ip_ospf_neighbor_cmd to VIEW_NODE.
3159 * ospf_lsa.c (ospf_lsa_init): Register show_ip_ospf_database_cmd
3160 and show_ip_ospf_database_type_cmd to VIEW_NODE.
3162 1999-06-25 Toshiaki Takada <takada@zebra.org>
3164 * ospf_packet.c: fix bug of DD making.
3165 fix bug of LS-Update reading.
3167 1999-06-23 Toshiaki Takada <takada@zebra.org>
3169 * ospf_packet.c: All type of packets are changed to use
3170 fifo queue structure.
3171 (ospf_fill_header) function added.
3173 1999-06-22 Toshiaki Takada <takada@zebra.org>
3175 * ospf_packet.c (ospf_packet_new): New function added to handle
3176 sending ospf packet by fifo queue structure.
3177 (ospf_packet_free), (ospf_fifo_new), (ospf_fifo_push),
3178 (ospf_fifo_pop), (ospf_fifo_head), (ospf_fifo_flush),
3179 (ospf_fifo_free): Likewise.
3181 1999-06-21 Toshiaki Takada <takada@zebra.org>
3183 * ospf_nsm.c (ospf_db_desc_timer): function added.
3184 (nsm_timer_set) function added.
3185 * ospf_dump.c (ospf_option_dump): function added.
3186 * ospf_packet.c (ospf_ls_req) (ospf_make_ls_req): function added.
3188 1999-06-20 Toshiaki Takada <takada@zebra.org>
3190 * ospf_lsa.c (ospf_lsa_more_recent): function added.
3191 * ospf_neighbor.h (struct ospf_neighbor): Change member ms_flag
3194 1999-06-19 Toshiaki Takada <takada@zebra.org>
3196 * ospf_lsa.c: DEFUN (show_ip_ospf_database) Added.
3197 * ospf_interface.c (if_ospf_cost), (if_ospf_dead_interval),
3198 (if_ospf_hello_interval), (if_ospf_priority),
3199 (if_ospf_retransmit_interval), (if_ospf_transmit_delay)
3200 argument changed from NUMBER to <range>.
3201 DEFUN (if_ospf_network_broadcast),
3202 DEFUN (if_ospf_network_non_broadcast),
3203 DEFUN (if_ospf_network_point_to_multipoint),
3204 DEFUN (if_ospf_network_point_to_point) functions are combined to
3205 DEFUN (if_ospf_network).
3207 1999-06-18 Toshiaki Takada <takada@zebra.org>
3209 * ospf_lsa.c: ospf_add_router_lsa (), ospf_add_network_lsa (),
3210 ospf_lsa_lookup (), ospf_lsa_count () Added.
3212 1999-06-15 Toshiaki Takada <takada@zebra.org>
3214 * DEFUN (ospf_debug_ism), DEFUN (ospf_debug_nsm),
3215 DEFUN (no_ospf_debug_ism), DEFUN (no_ospf_debug_nsm) Added.
3216 `debug ospf ism' command shows debug message.
3217 `debuf ospf nsm' command shows debug message.
3219 1999-06-14 Toshiaki Takada <takada@zebra.org>
3221 * ospf_lsa.c: ospf_network_lsa () Added.
3222 ospf_lsa_checksum () Added.
3223 * DEFUN (ospf_debug_packet), DEFUN (no_ospf_debug_packet) Added.
3224 `debug ospf packet' command shows debug message.
3226 1999-06-13 Toshiaki Takada <takada@zebra.org>
3228 * ospf_packet.h: Remove struct ospf_ls_req {}, ospf_ls_upd {},
3231 1999-06-11 Toshiaki Takada <takada@zebra.org>
3233 * ospf_dump.c: fix IP packet length treatment.
3235 1999-06-10 Toshiaki Takada <takada@zebra.org>
3237 * ospf_ism.h: Add OSPF_ISM_EVENT_EXECUTE() Macro Added.
3238 * ospf_nsm.h: Add OSPF_NSM_EVENT_EXECUTE() Macro Added.
3240 * ospf_packet.c: ospf_db_desc (), ospf_db_desc_send () Added.
3241 ospf_make_hello (), ospf_make_db_desc () Added.
3242 ospf_db_desc_proc () Added.n
3244 * Database Description packet can be processed.
3246 1999-06-08 Toshiaki Takada <takada@zebra.org>
3248 * ospf_lsa.c: New file.
3250 1999-06-07 Toshiaki Takada <takada@zebra.org>
3252 * ospf_neighbor.c: ospf_fully_adjacent_count () Added.
3254 1999-06-07 Kunihiro Ishiguro <kunihiro@zebra.org>
3256 * ospf_spf.[ch]: New file.
3258 1999-05-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3260 * ospf_zebra.c: Changed to use lib/zclient.c routines.
3262 * ospf_zebra.h (zebra_start): Remove struct zebra.
3264 1999-05-29 Kunihiro Ishiguro <kunihiro@zebra.org>
3266 * ospfd.c (ospf_config_write): Add cast (unsigned long int) to
3267 ntohl for sprintf warning.
3269 1999-05-19 Toshiaki Takada <takada@zebra.org>
3271 * ospf_ism.c (ospf_dr_election): Join AllDRouters Multicast group
3272 if interface state changes to DR or BDR.
3274 1999-05-14 Stephen R. van den Berg <srb@cuci.nl>
3276 * ospf_main.c (signal_init): SIGTERM call sigint.
3277 (sigint): Logging more better message.
3279 1999-05-12 Toshiaki Takada <takada@zebra.org>
3281 * ospfd.c: Fix bug of `no router ospf' statement, it will work.
3283 1999-05-11 Toshiaki Takada <takada@zebra.org>
3285 * ospf_neighbor.c: ospf_nbr_free () Added.
3287 1999-05-10 Toshiaki Takada <takada@zebra.org>
3289 * ospfd.h: struct ospf_area { }, struct ospf_network { } Changed.
3290 * Fix bug of `no network' statement, it will work.
3292 1999-05-07 Toshiaki Takada <takada@zebra.org>
3294 * ospf_interface.c, ospf_zebra.c: Fix bug of last interface is not
3295 updated by ospf_if_update ().
3297 1999-04-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3299 * Makefile.am (noinst_HEADERS): Add ospf_lsa.h for distribution.
3301 1999-04-25 Toshiaki Takada <takada@zebra.org>
3303 * ospf_interface.c: DEFUN (no_if_ospf_cost),
3304 DEFUN (no_if_ospf_dead_interval),
3305 DEFUN (no_if_ospf_hello_interval),
3306 DEFUN (no_if_ospf_priority),
3307 DEFUN (no_if_ospf_retransmit_interval),
3308 DEFUN (no_if_ospf_transmit_delay) Added.
3310 interface_config_write () suppress showing interface
3313 1999-04-25 Kunihiro Ishiguro <kunihiro@zebra.org>
3315 * ospf_dump.c (ospf_timer_dump): If thread is NULL return "inactive".
3317 * ospfd.c (ospf_if_update): Fix bug of using ospf_area { } instead
3318 of ospf_network { }. So `router ospf' statement in ospfd.conf
3320 (ospf_if_update): Call ospf_get_router_id for updating router ID.
3322 1999-04-25 Toshiaki Takada <takada@zebra.org>
3324 * ospf_interface.c: DEFUN (if_ospf_network) deleted.
3325 DEFUN (if_ospf_network_broadcast),
3326 DEFUN (if_ospf_network_non_broadcast),
3327 DEFUN (if_ospf_network_point_to_multipoint),
3328 DEFUN (if_ospf_network_point_to_point),
3329 DEFUN (no_if_ospf_network) Added.
3331 1999-04-23 Toshiaki Takada <takada@zebra.org>
3333 * ospfd.h: struct area { } changed to struct ospf_network { }.
3334 Add struct ospf_area { }.
3335 * ospfd.c: Add ospf_area_lookup_by_area_id (), ospf_network_new (),
3336 and ospf_network_free ().
3337 DEFUN (area_authentication), DEFUN (no_area_authentication) Added.
3339 1999-04-22 Toshiaki Takada <takada@zebra.org>
3341 * ospf_lsa.h: New file.
3342 * ospf_packet.h: LSA related struct definition are moved to
3344 * ospf_packet.c: ospf_verify_header () Added.
3346 1999-04-21 Toshiaki Takada <takada@zebra.org>
3348 * ospf_ism.c: ospf_elect_dr () and related function is changed.
3349 DR Election bug fixed.
3350 * ospf_dump.c: ospf_nbr_state_message (), ospf_timer_dump () Added.
3351 * ospfd.c: DEFUN (show_ip_ospf_neighbor) Added.
3353 1999-04-19 Kunihiro Ishiguro <kunihiro@zebra.org>
3355 * ospf_main.c (main): access_list_init () is added for vty
3356 connection filtering.
3358 1999-04-16 Toshiaki Takada <takada@zebra.org>
3360 * ospfd.c: DEFUN (show_ip_ospf_interface) Added.
3361 * ospf_neighbor.c: ospf_nbr_count () Added.
3363 1999-04-15 Toshiaki Takada <takada@zebra.org>
3365 * ospfd.h: struct ospf { } Changed.
3366 * ospfd.c: ospf_lookup_by_process_id () Deleted.
3367 * ospf_ism.c: ospf_wait_timer () Added. WaitTimer will work.
3369 1999-04-14 Toshiaki Takada <takada@zebra.org>
3371 * ospf_ism.c: ospf_elect_dr () Added.
3372 * ospf_network.c: ospf_if_ipmulticast () Added.
3374 1999-04-11 Toshiaki Takada <takada@zebra.org>
3376 * ospf_interface.c: interface_config_write (),
3377 DEFUN (if_ip_ospf_cost),
3378 DEFUN (if_ip_ospf_dead_interval),
3379 DEFUN (if_ip_ospf_hello_interval),
3380 DEFUN (if_ip_ospf_priority),
3381 DEFUN (if_ip_ospf_retransmit_interval) and
3382 DEFUN (if_ip_ospf_transmit_delay) Added.
3384 1999-04-08 Toshiaki Takada <takada@zebra.org>
3386 * ospf_dump.c: ospf_packet_db_desc_dump () Added.
3387 * ospf_neighbor.c: ospf_nbr_bidirectional () Added.
3388 * ospf_nsm.c: nsm_twoway_received () Added.
3390 1999-04-02 Toshiaki Takada <takada@zebra.org>
3392 * ospf_neighbor.c: New file.
3393 * ospf_neighbor.h: New file.
3394 * ospf_nsm.c: New file.
3395 * ospf_nsm.h: New file.
3396 * ospf_packet.c: Add ospf_make_header (), ospf_hello () and
3397 ospf_hello_send (). Now OSPFd can receive Hello and send Hello.
3399 1999-03-27 Kunihiro Ishiguro <kunihiro@zebra.org>
3401 * ospf_packet.c: Add ospf_recv_packet (). Now OSPF Hello can receive.
3403 1999-03-19 Toshiaki Takada <takada@zebra.org>
3405 * ospf_packet.c: New file.
3406 * ospf_packet.h: New file.
3407 * ospf_network.c: New file.
3408 * ospf_network.h: New file.
3409 * ospfd.h: move OSPF message structure has moved to ospf_packet.h.
3411 1999-03-17 Kunihiro Ishiguro <kunihiro@zebra.org>
3413 * ospf_zebra.c (ospf_zebra_get_interface): Fix for IPv6 interface
3416 * Makefile.am (install-sysconfDATA): Overwrite install-sysconfDATA
3417 for install ospfd.conf.sample as owner read only file.
3419 * ospf_main.c (usage): Change to use ZEBRA_BUG_ADDRESS.
3421 1999-03-15 Toshiaki Takada <takada@zebra.org>
3423 * ospf_ism.c: New file.
3424 * ospf_ism.h: New file.
3425 * ospf_dump.c: New file.
3426 * ospf_dump.h: New file.
3428 * ospfd.h: Add (struct ospf), (struct config_network),
3429 (struct message) structure.
3431 * ospf_interface.c: Add ospf_if_match_network ().
3432 * ospf_interface.h (struct ospf_interface): Change struct members.
3434 * ospfd.c: ospf_lookup_by_process_id (), ospf_network_new (),
3435 DEFUN (network_area): Added.
3437 * ospfd.conf.sample: Change sample configuration.
3439 1999-03-05 Toshiaki Takada <takada@zebra.org>
3441 * ospf_interface.c: New file.
3442 * ospf_interface.h: New file.
3443 * ospf_zebra.h: New file.
3444 * ospf_zebra.c: Add interface function for zebra daemon.
3445 * ospfd.c: New file.
3447 1999-02-23 Kunihiro Ishiguro <kunihiro@zebra.org>
3449 * Move IPv6 codes and files to ospf6d directory.
3451 1999-02-18 Peter Galbavy <Peter.Galbavy@knowledge.com>
3453 * syslog support added
3455 1998-12-22 Toshiaki Takada <takada@zebra.org>
3457 * ospfd.h: New file.
3458 * ospf_lsa.h: New file.
3460 1998-12-15 Kunihiro Ishiguro <kunihiro@zebra.org>
3462 * Makefile.am: New file.
3463 * ospf_main.c: New file.