]> git.proxmox.com Git - mirror_frr.git/blob - ospfd/ChangeLog
2005-04-11 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
[mirror_frr.git] / ospfd / ChangeLog
1 2005-04-11 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
2
3 * ospf_zebra.c (ospf_zebra_add): Call zclient_send_message instead
4 of writen.
5
6 2005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
7
8 * ospf_interface.h: (ospf_if_lookup_by_name) Remove declaration of a
9 function that does not exist.
10
11 2005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
12
13 * ospf_zebra.c: (zebra_interface_if_lookup) Must use
14 if_lookup_by_name_len.
15
16 2005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
17
18 * ospf_interface.c: (ospf_vl_new) Use strnlen to fix call to if_create.
19
20 2005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
21
22 * ospf_vty.c: (show_ip_ospf_interface_sub) Show ifindex and interface
23 flags to help with debugging.
24 * ospf_zebra.c: (ospf_interface_delete) After deleting, set ifp->ifindex
25 to IFINDEX_INTERNAL.
26 (zebra_interface_if_lookup) Make function static. Tighten up code.
27
28 2005-03-31 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
29
30 * ospf_dump.c: (show_debugging_ospf) Show if ospf event debugging
31 is turned on.
32
33 2005-03-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
34
35 * ospf_zebra.c: (ospf_interface_state_up) If the MTU of an operative
36 interface changes, print a debug message and call ospf_if_reset()
37 to simulate down/up on the interface.
38 * ospf_interface.h: Declare new function ospf_if_reset().
39 * ospf_interface.c: (ospf_if_reset) New function to call ospf_if_down
40 and ospf_if_up for all ospf interfaces attached to an interface.
41
42 2005-03-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
43
44 * ospf_packet.c: (ospf_write_frags) Enhance error message to
45 show MTU. Also make function static.
46 (ospf_write) Enhance error message to show interface name and MTU.
47 Also make function static.
48
49 2005-03-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
50
51 * ospf_vty.c: (show_ip_ospf_interface_sub) Display interface MTU and
52 bandwidth; this is useful for debugging problems. Also, the function
53 should be static.
54
55 2005-03-27 Hasso Tepper <hasso at quagga.net>
56
57 * ospf_snmp.c: Don't crash in snmp query if ospf instance doesn't
58 exist at all.
59
60 2005-03-25 Hasso Tepper <hasso at quagga.net>
61
62 * ospfd.h: Include log.h, fixes compile with gcc-4.0.
63
64 2005-03-13 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
65
66 * ospf_lsa.c: (ospf_lsa_refresh_walker) If the system clock jumps
67 backward, then current time may be less than
68 ospf->lsa_refresher_started. This was causing invalid values
69 for ospf->lsa_refresh_queue.index resulting in infinite loops.
70 Problem fixed by casting the expression to unsigned before taking
71 the modulus.
72
73 2005-02-23 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
74
75 * ospfd.h: Add new field struct stream *ibuf to struct ospf.
76 * ospfd.c: (ospf_new) Check return code from ospf_sock_init.
77 Allocate ibuf using stream_new(OSPF_MAX_PACKET_SIZE+1).
78 (ospf_finish) Call stream_free(ospf->ibuf.
79 * ospf_packet.c: (ospf_read) Call stream_reset(ospf->ibuf) and then
80 pass it to ospf_recv_packet for use in receiving the packet
81 (instead of allocating a new stream for each packet received).
82 Eliminate all calls to stream_free(ibuf).
83 (ospf_recv_packet) The struct stream *ibuf is now passed in as
84 an argument. No need to use recvfrom to peek at the packet
85 header (to see how big it is), just use ospf->ibuf which is
86 always large enough (this eliminates a system call to recvfrom).
87 Therefore, no need to allocate a stream just for this packet,
88 and no need to free it when done.
89
90 2005-02-23 Vincenzo Eramo <eramo at infocom.ing.uniroma1.it>
91
92 * ospf_lsa.h: New flag to the LSA structure for the SPF calculation.
93 * ospf_lsdb.h: Export ospf_lsdb_clean_stat() function.
94 * ospf_spf.h: Add link to the LSA stat structure into vertex.
95 * ospf_spf.c: New functions cmp() and update_stat() to manage
96 candidates. Remove ospf_spf_has_vertex(), ospf_vertex_lookup(),
97 ospf_install_candidate() and ospf_spf_register() functions not needed
98 any more. Update ospf_vertex_new(), ospf_spf_next() and
99 ospf_spf_calculate() functions to use pqueue instead of linked list.
100
101 2005-02-21 Hasso Tepper <hasso at quagga.net>
102
103 * ospf_ase.c: Don't show messages related to the ase calculations if
104 we are not debugging.
105
106 2005-02-19 Hasso Tepper <hasso at quagga.net>
107
108 * ospf_api.h: char isn't always signed, but it has to be it here.
109
110 2005-02-19 Paul Jakma <paul.jakma@sun.com>
111
112 * ospf_packet.c: (ospf_stream_copy) remove
113 (ospf_packet_dup) use stream_copy instead of ospf_stream_copy
114
115 2005-02-17 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
116
117 * ospf_packet.c: (ospf_recv_packet) If there is somehow a runt
118 packet in the queue, it must be discarded. Improve warning messages.
119 Fix scope to static.
120 (ospf_read) Fix bug: should reset the read thread in all cases
121 to make sure we continue to get incoming messages.
122
123 2005-02-15 Paul Jakma <paul.jakma@sun.com>
124
125 * ospf_packet.c: (ospf_recv_packet) Fix silly error wrt allocating
126 ibuf. Thanks Andrew.
127
128 2005-02-14 Paul Jakma <paul.jakma@sun.com>
129
130 * ospf_packet.c: (ospf_recv_packet) use stream_recvmsg.
131
132 2005-02-11 Hasso Tepper <hasso at quagga.net>
133
134 * ospf_lsdb.c: Fix sum of checksums calculation.
135
136 2005-02-09 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
137
138 * ospf_packet.c: (ospf_write) If sendmsg fails, give more info in the
139 error message.
140
141 2005-02-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
142
143 * ospf_interface.h: Reduce structure padding by putting new u_char
144 field multicast_memberships in a better spot (grouped with
145 other u_char fields type and state).
146
147 2005-02-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
148
149 * ospf_interface.h: Improve passive_interface comment. Add new
150 multicast_memberships bitmask to struct ospf_interface to track
151 active multicast subscriptions. Declare new function
152 ospf_if_set_multicast.
153 * ospf_interface.c: (ospf_if_set_multicast) New function to configure
154 multicast memberships properly based on the current
155 multicast_memberships status and the current values of the
156 ospf_interface state, type, and passive_interface status.
157 (ospf_if_up) Remove call to ospf_if_add_allspfrouters (this is
158 now handled by ism_change_state's call to ospf_if_set_multicast).
159 (ospf_if_down) Remove call to ospf_if_drop_allspfrouters (now
160 handled by ism_change_state).
161 * ospf_ism.c: (ospf_dr_election) Remove logic to join or leave
162 the DRouters multicast group (now handled by ism_change_state's call
163 to ospf_if_set_multicast).
164 (ism_change_state) Add call to ospf_if_set_multicast to change
165 multicast memberships as necessary to reflect the new interface state.
166 * ospf_packet.c: (ospf_hello) When a Hello packet is received on a
167 passive interface: 1. Increase the severity of the error message
168 from LOG_INFO to LOG_WARNING; 2. Add more information to the error
169 message (packet destination address and interface address);
170 and 3. If the packet was sent to ospf-all-routers, then try
171 to fix the multicast group memberships.
172 (ospf_read) When a packet is received on an interface whose state
173 is ISM_Down, enhance the warning message to show the packet
174 destination address, and try to update/fix the multicast group
175 memberships if the packet was sent to a multicast address.
176 When a packet is received for ospf-designated-routers, but the
177 current interface state is not DR or BDR, then increase the
178 severity level of the error message from LOG_INFO to LOG_WARNING,
179 and try to fix the multicast group memberships.
180 * ospf_vty.c: (ospf_passive_interface) Call ospf_if_set_multicast for
181 any ospf interface that may have changed from active to passive.
182 (no_ospf_passive_interface) Call ospf_if_set_multicast for
183 any ospf interface that may have changed from passive to active.
184 (show_ip_ospf_interface_sub) Show multicast group memberships.
185
186 2005-02-08 Paul Jakma <paul@dishone.st>
187
188 * ospf_packet.c: (various) Remove unneeded stream_set_putp abuse.
189
190 2005-02-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
191
192 * ospf_packet.c: (ospf_read) Fix bug: must check for state ISM_Down,
193 not for event ISM_InterfaceDown. And improve the message by
194 adding the interface flags.
195
196 2005-01-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
197
198 * ospf_network.c: (ospf_sock_init) Save errno before calling
199 ospfd_privs.change.
200
201 2005-01-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
202
203 * ospf_packet.c: (ospf_packet_add) If oi->obuf is NULL, print
204 an error message and return.
205 (ospf_read) If the interface state is ISM_InterfaceDown, issue
206 a warning message and ignore the packet.
207
208 2005-01-10 Greg Troxel <gdt@fnord.ir.bbn.com>
209
210 * ospf_packet.h: Remove commented out definition of
211 OSPF_MAX_PACKET; neither it or the uncommented one are used any more.
212
213 * ospf_packet.c (ospf_make_ls_upd): Leave room for authentication
214 when deciding if an update will fit.
215 (ospf_packet_authspace): Factor out calculation of size required
216 for authentication.
217 (ospf_make_db_desc): Use ospf_max_packet, not OSPF_MAX_PACKET.
218 Don't confuse readers that there is a macro.
219
220 2004-12-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
221
222 * ospf_network.c: Improve all setsockopt error messages to give detailed
223 information on the arguments.
224
225 2004-12-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
226
227 * ospf_packet.c: (ospf_db_desc) Reduce severity of "Negotiation done"
228 messages from LOG_WARNING to LOG_INFO, since this seems to be
229 normal.
230
231 2004-12-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
232
233 * ospf_packet.c: (ospf_read) Always look up the interface if
234 ospf_recv_packet returns NULL ifp, since some platforms such
235 as Solaris 8 appear to support ifindex retrieval but don't.
236
237 2004-12-22 Hasso Tepper <hasso at quagga.net>
238
239 * ospf_dump.c: Show debug configuration in vtysh.
240 * ospf_vty.c: Fix "show ip ospf" output. Router can't be elected in
241 any case if it's configured as "translate-never".
242 * ospf_lsdb.[ch]: New function to calculate sum of checksums.
243 * ospf_vty.c: Bugfix to show really number of AS external LSAs, not
244 number of all LSAs with AS scope, this includes opaque as LSAs as
245 well, show this number separately. Show numbers and sums of
246 checksums for each type of LSAs.
247 * ospf_lsa.c: Calculate checksum before putting LSA into database.
248
249 2004-12-15 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
250
251 * ospf_interface.h: Declare new function ospf_default_iftype.
252 * ospf_interface.c: (ospf_default_iftype) New function to centralize
253 this logic in one place.
254 * ospf_zebra.c: (ospf_interface_add) Use new function
255 ospf_default_iftype.
256 * ospf_vty.c: (no_ip_ospf_network,config_write_interface) Fix logic
257 by using new function ospf_default_iftype.
258
259 2004-12-11 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
260
261 * ospf_packet.c: (ospf_db_desc) Should be static, not global.
262 (ospf_hello,ospf_db_desc,ospf_ls_upd,ospf_ls_ack) Improve warning
263 messages to include identifying information (e.g. router id).
264 * ospf_nsm.c: (nsm_change_state) Improve info message to include
265 router id and state names.
266
267 2004-12-09 Greg Troxel <gdt@fnord.ir.bbn.com>
268
269 * ospf_apiserver.c (ospf_apiserver_term): Obtain struct
270 ospf_apiserver * from listnode. Remove unused variables. Follows
271 suggestion from Jay Fenlason.
272
273 2004-12-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
274
275 * *.c: Change level of debug messages to LOG_DEBUG.
276
277 2004-12-07 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
278
279 * ospf_main.c: (main) The 2nd argument to openzlog has been removed.
280
281 2004-12-03 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
282
283 * ospf_packet.c: (ospf_db_desc) Reduce priority on a debug message
284 from LOG_NOTICE to LOG_DEBUG.
285
286 2004-12-03 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
287
288 * ospf_main.c: (sigint) Use zlog_notice for termination message.
289 (main) Issue a startup announcement using zlog_notice.
290
291 2004-11-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
292
293 * ospf_packet.c: (ospf_db_desc_proc) Fix spelling of packet in warning
294 message and in comment.
295 (ospf_db_desc) Warning message that a packet is being discarded
296 should give the router id of the packet source. Fix spelling
297 of packet in two warning messages.
298 (ospf_ls_req) Warning message that a link state request is being
299 discarded should give the router id of the neighbor that sent it.
300
301 2004-11-26 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
302
303 * ospf_main.c: Remove #include "debug.h" (was not being used, and
304 lib/debug.h has now been deleted).
305
306 2004-11-25 Hasso Tepper <hasso at quagga.net>
307
308 * ospf_main.c: Make group to run as configurable.
309
310 2004-11-15 Greg Troxel <gdt@fnord.ir.bbn.com>
311
312 * ospf_packet.c (ospf_recv_packet): Assume CMSG_SPACE is present
313 and works (lib/zebra.h provides if OS doesn't).
314
315 2004-11-15 Paul Jakma <paul@dishone.st>
316
317 * ospf_{apiserver,te}.c: ospf_lsa_free's should be ospf_lsa_unlock.
318
319 2004-11-12 Paul Jakma <paul@dishone.st>
320
321 * ospf_ia.c: (process_summary_lsa) Only an ABR has any reason to
322 ignore stub area summary default. Even so it seems a strange
323 check, add a comment to that effect.
324
325 2004-11-04 Paul Jakma <paul@dishone.st>
326
327 * ospfd.c: (ospf_network_match_iface) revert to previous network
328 statement match behaviour.
329
330 2004-11-02 Paul Jakma <paul@dishone.st>
331
332 * ospf_packet.c: (ospf_write_frags) remove iov arg, msg already points
333 to it. Add convenience pointer to msg->msg_iov[1], and use this,
334 fixing the unfortunate borkenness introduced in moving of this code
335 to a function.
336 (ospf_write) remove iovp and fix up call to previous.
337 (ospf_ls_upd_packet_new) cast size to long int - unfortunately
338 glibc's size_t format modifier is not portable.
339
340 2004-10-31 Paul Jakma <paul@dishone.st>
341
342 * ospf_packet.c: (ospf_write_frags) Add debug output
343 (ospf_write) set type early, so we can pass it to
344 ospf_write_frags.
345 (ospf_ls_upd_packet_new) print size in debug output when too large
346 packet is encountered.
347 * ospf_zebra.c: (ospf_distribute_list_update_timer) Ugly misuse of
348 THREAD_ARG to store an integer, but it should at least use same
349 same type to retrieve the value. Assert value is sane.
350
351 2004-10-22 Paul Jakma <paul@dishone.st>
352
353 * ospf_network.c: (ospf_sock_init) call neutral setsock_ifindex()
354 function.
355 * ospf_packet.c: (ospf_read) manually look up ifindex
356 if system could not have returned one, eg openbsd, thanks to Rivo
357 Nurges for highlighting problem and fix.
358 Change setsockopt_pktinfo to setsockopt_ifindex.
359
360 2004-10-19 Andrew J. Schorr <aschorr@telemetry-investments.com>
361
362 * ospf_snmp.c: (ospf_snmp_if_update) Fix logic to handle PtP links
363 with dedicated subnets properly.
364 * ospf_lsa.c: (lsa_link_ptop_set) ditto.
365 * ospfd.c: (ospf_network_match_iface) ditto.
366 (ospf_network_run) ditto.
367 * ospf_interface.c: (ospf_if_is_configured) ditto.
368 (ospf_if_lookup_by_prefix) ditto.
369 (ospf_if_lookup_recv_if) ditto.
370 * ospf_vty.c: (show_ip_ospf_interface_sub) Display the peer or
371 broadcast address if present.
372
373 2004-10-13 Hasso Tepper <hasso at quagga.net>
374
375 * ospf_main.c: Unbreak compilation with ospfapi disabled.
376 * ospf_snmp.c: Remove defaults used to initialize smux connection to
377 snmpd. Connection is initialized only if smux peer is configured.
378
379 2004-10-12 Hasso Tepper <hasso at quagga.net>
380
381 * ospf_main.c, ospf_opaque.c: Unbreak ospfclient compilation - move
382 static variable from ospf_main.c into ospf_opaque.c.
383
384 2004-10-11 Hasso Tepper <hasso at quagga.net>
385
386 * ospf_main.c, ospf_opaque.c: Disable ospfapi init by default. New
387 command line switch to enable it.
388
389 2004-10-11 Paul Jakma <paul@dishone.st>
390
391 * ospf_dump.c: (ospf_ip_header_dump) Assume header is in host order
392 remove ntohs that should have dissappeared. Take struct ip
393 as argument, caller has to know there's an IP header at start of
394 stream anyway.
395 * ospf_dump.h: update declaration of ospf_ip_header_dump.
396 * ospf_packet.c: (ospf_write) correct call to
397 sockopt_iphdrincl_swab_htosys which was munging the header.
398 (ospf_recv_packet) ip_len is needed for old OpenBSD fixup.
399 (ospf_read) sockopt_iphdrincl_swab_systoh ip header as soon as
400 we have it.
401 * (global) Const char update and signed/unsigned fixes.
402 * (various headers) size defines should be unsigned.
403 * ospf_interface.h: remove duplicated defines, include the
404 authoritative header - though, these defines should probably
405 be moved to a dedicated header, or ospfd.h.
406 * ospf_lsa.h: (struct lsa) ls_seqnum should be unsigned.
407 * ospf_packet.c: (ospf_write) cast result of shift to unsigned.
408
409 2004-10-08 Hasso Tepper <hasso at quagga.net>
410
411 * *.[c|h]: Fix compiler warnings: make some strings const, signed ->
412 unsigned, remove unused variables etc.
413
414 2004-10-07 Greg Troxel <gdt@claude.ir.bbn.com>
415
416 * ospf_apiserver.c (ospf_apiserver_unregister_opaque_type): Don't
417 use of variable names 'node' and 'nextnode' to avoid possible
418 conflict with list macros. Move variable declaration inside for
419 loop after a statement to top of function.
420
421 2004-10-07 Paul Jakma <paul@dishone.st>
422
423 * ospf_snmp.c: Missed list typedef update
424 * ospf_dump.c: Include sockopt.h for header swab functions.
425
426 2004-10-05 Paul Jakma <paul@dishone.st>
427
428 * ospf_packet.c: replace ospf_swap_iph_to... with
429 sockopt_iphdrincl_swab_...
430
431 2004-10-03 James R. Leu <jleu at mindspring.com>
432
433 * ospf_zebra.c: Read router id related messages from zebra daemon.
434 Schedule router-id update thread if it's changed.
435 * ospfd.c: Remove own router-id selection function. Use router id from
436 zebra daemon if it isn't manually overriden in configuration.
437
438 2004-09-27 Paul Jakma <paul@dishone.st>
439
440 * ospf_dump.c: (ospf_ip_header_dump) Use HAVE_IP_HDRINCL_BSD_ORDER
441 Apply to offset too. Print ip_cksum, lets not worry about
442 possible 2.0.37 compile problems.
443 * ospf_packet.c: (ospf_swap_iph_to{n,h}) Use
444 HAVE_IP_HDRINCL_BSD_ORDER.
445 (ospf_recv_packet) ditto.
446 (ospf_write) Fixup iov argument to ospf_write_frags.
447 (struct msghdr).msg_name is caddr_t on most platforms.
448 (ospf_recv_packet) ditto. And msg_flags is not always there
449 memset struct then set fields we care about rather than
450 initialise all fields individually.
451
452 2004-09-26 Hasso Tepper <hasso at quagga.net>
453
454 * ospf_abr.c, ospf_dump.c, ospf_lsa.c, ospf_packet.c, ospf_vty.c,
455 ospf_zebra.c: Fix compiler warnings.
456
457 2004-09-24 Paul Jakma <paul@dishone.st>
458
459 * ospf_apiserver.{c,h}: lists typedef removal cleanup.
460 update some list loops to LIST_LOOP. some miscellaneous indent
461 fixups.
462 (ospf_apiserver_unregister_opaque_type) fix listnode_delete of
463 referenced node in loop.
464 (ospf_apiserver_term) loops calling ospf_apiserver_free, which
465 deletes referenced nodes from apiserver_list, fixed.
466 * ospf_interface.h: lists typedef removal cleanup.
467 * ospf_opaque.{c,h}: lists typedef removal cleanup. update some list
468 loops to LIST_LOOP. miscellaneous style and indent fixups.
469 * ospf_te.{c,h}: ditto
470 * ospf_packet.c: lists typedef removal cleanup.
471 (ospf_write) ifdef fragmentation support. move actual
472 fragmentation out to a new, similarly ifdefed, function.
473 (ospf_write_frags) fragmented write support, moved from previous.
474
475 2004-09-23 Hasso Tepper <hasso at quagga.net>
476
477 * *.[c|h]: list -> struct list *, listnode -> struct listnode *.
478
479 2004-09-12 Paul Jakma <paul@dishone.st>
480
481 * ospf_packet.c: Fix bugzilla #107
482 (ospf_packet_max) get rid of the magic 88 constant
483 (ospf_swab_iph_ton) new function. set ip header to network order,
484 taking BSDisms into account.
485 (ospf_swab_iph_toh) the inverse.
486 (ospf_write) Add support for IP fragmentation, will only work on
487 linux though, other kernels make it impossible. get rid of the
488 magic 4 constant.
489 (ospf_make_ls_upd) Bound check to end of stream, not to
490 interface mtu.
491 (ospf_ls_upd_packet_new) New function, allocate upd packet
492 taking oversized LSAs into account.
493 (ospf_ls_upd_queue_send) use ospf_ls_upd_packet_new to allocate,
494 rather than statically allocating mtu sized packet buffer, which
495 actually was wrong - it didnt take ip header into account, which
496 should not be included in packet buffer.
497 (ospf_ls_upd_send_queue_event) minor tweaks and remove
498 TODO comment.
499
500 2004-08-31 David Wiggins <dwiggins@bbn.com>
501
502 * ospf_spf.c (ospf_spf_calculate): Many more comments and debug
503 print statements. New function ospf_vertex_dump used in debugging.
504
505 2004-08-31 David Wiggins <dwiggins@bbn.com>
506
507 * ospf_spf.h (struct vertex): Comments for flags and structure members.
508
509 2004-08-31 David Wiggins <dwiggins@bbn.com>
510
511 * ospf_route.c: When finding an alternate route, log cost as well.
512
513 2004-08-31 David Wiggins <dwiggins@bbn.com>
514
515 * ospf_interface.c (ospf_lookup_if_params): Initialize af in
516 struct prefix allocated on stack.
517
518 2004-08-31 David Wiggins <dwiggins@bbn.com>
519
520 * ospf_packet.c (ospf_ls_ack_send_delayed): In p2mp mode, send
521 acks to AllSPFRouters, rather than All-DR.
522
523 2004-08-27 Hasso Tepper <hasso at quagga.net>
524
525 * ospf_vty.c: Don't print ospf network type under interface only
526 if interface is in broadcast mode and interface type really is
527 broadcast. Fixes Bugzilla #108.
528
529 2004-08-27 David Wiggins <dwiggins@bbn.com>
530
531 * ospf_spf.c (ospf_nexthop_calculation): Initialize address family
532 in on-stack struct prefix_ipv4. Fixes point-to-multipoint SPF
533 calculation.
534
535 2004-08-26 Greg Troxel <gdt@fnord.ir.bbn.com>
536
537 * ospf_packet.c (ospf_recv_packet): adjust size declaration of
538 buffer used to get interface index so that it compiles on other
539 than Linux and includes the required alignment space. Probably
540 this was only working on sparc/sparc64 because most of
541 sockaddr_dl was not being written.
542
543 2004-08-19 Paul Jakma <paul@dishone.st>
544
545 * ospf_packet.c: update to match sockopt renames.
546
547 2004-08-04 Paul Jakma <paul@dishone.st>
548
549 * ospf_spf.c: (ospf_spf_consider_nexthop) Add comment about issue.
550 Compare only against list head - all nexthops must be same cost
551 anyway, fixes a reference-listnode-after-delete bug noted by
552 Kir Kostuchenko.
553 (ospf_nexthop_calculation) Use ospf_spf_consider_nexthop for all
554 candidates attached to root.
555
556 2004-07-27 Paul Jakma <paul@dishone.st>
557
558 * ospf_packet.c: (ospf_ls_upd_send_queue_event) fix thinko from
559 last fix for ospfd wedging due to oversize LSAs: dont list loop on
560 ospf_ls_upd_queue_send() - guaranteed segfault.
561
562 2004-07-27 Paul Jakma <paul@dishone.st>
563
564 * ospf_opaque.c: (ospf_opaque_lsa_flush_schedule) do not NULL out
565 the LSA as then free_opaque_info_per_id() can never unlock (and
566 free) the LSA. Reported by Gunnar Stigen.
567
568 2004-07-23 Paul Jakma <paul@dishone.st>
569
570 * ospf_network.c: Replace PKTINFO/RECVIF with call to
571 setsockopt_pktinfo
572 * ospf_packet.c: Use getsockopt_pktinfo_ifindex and
573 SOPT_SIZE_CMSG_PKTINFO_IPV4.
574
575 2004-07-14 Paul Jakma <paul@dishone.st>
576
577 * ospf_packet.c: (ospf_ls_upd_send_queue_event) Partial fix for
578 problem reported by Peter Frost amongst others, where function
579 will spin indefinitely if update list contains LSAs greater than
580 MTU-headers or other condition leading to update list never being
581 cleared. Problem of what to do with these LSAs remains.
582 (ospf_make_ls_upd) add comment about large LSA problem,
583 indentation cleanup.
584
585 2004-07-01 Greg Troxel <gdt@fnord.ir.bbn.com>
586
587 * Makefile.am (lib_LTLIBRARIES): make libospf shared
588
589 2004-06-30 Greg Troxel <gdt@poblano.ir.bbn.com>
590
591 * Makefile.am: Add shlib support.
592
593 2004-06-10 Hasso Tepper <hasso@estpak.ee>
594
595 * *: Removed ifdefs HAVE_NSSA.
596
597 2004-06-06 Paul Jakma <paul@dishone.st>
598
599 * ospf_dump.c,ospf_lsa.c: Fix typos of merge of previous.
600 ospf_flood.c: (ospf_process_self_originated_lsa) fix zlog format
601
602 2004-05-31 Sagun Shakya <sagun.shakya@sun.com>
603
604 * ospf_dump.c: (ospf_lsa_header_dump) LOOKUP can return null if
605 index is out of range.
606 ospf_flood.c: endianness fix
607 ospf_lsa.c: Missing ntohl's on (struct lsa *)->data->ls_seqnum
608 in various places.
609
610 2004-05-10 Hasso Tepper <hasso@estpak.ee>
611
612 * ospf_zebra.c, ospfd.c: Move ospf_prefix_list_update() function
613 to ospf_zebra.c from ospfd.c and add redistribution updates if
614 route-map is used in redistribution.
615 * ospf_main.c: Remove now useless call to ospf_init().
616
617 2004-05-08 Paul Jakma <paul@dishone.st>
618
619 * ospf_zebra.c: Sync with lib/zclient changes
620
621 2004-05-05 Paul Jakma <paul@dishone.st>
622
623 * ospf_network.c: (ospf_sock_init) Check whether IP_HDRINCL is
624 defined. Warn at compile and runtime. Use
625 IPTOS_PREC_INTERNETCONTROL otherwise.
626 * ospf_packet.c: (ospf_associate_packet_vl) cleanup, move
627 some of the checks up to ospf_read, return either a
628 virtual link oi, or NULL.
629 (ospf_read) Cleanup, make it responsible for checks. Remove
630 the nbr lookup - moved to ospf_neighbor. Adjust all nbr
631 lookups to use new wrappers exported by ospf_neighbor.
632 * ospf_neighbor.h: Add ospf_neigbour_get and ospf_nbr_lookup.
633 * ospf_neighbor.c: (ospf_neigbour_get) Index ospf_interface
634 neighbour table by router-id for virtual-link ospf_interfaces,
635 not by peer_addr (which breaks for asymmetric vlinks)
636 (ospf_nbr_lookup) add a wrapper for nbr lookups to deal with
637 above.
638 * ospf_interface.c: (ospf_vl_set_params) Catch changes of interface
639 address for either end of a virtual-link, and hence potential cost
640 changes.
641
642 2004-04-22 Hasso Tepper <hasso@estpak.ee>
643
644 * ospf_zebra.c: Don't ignore reject/bh routes, it's the only way
645 to "summarize" routes in ASBR at the moment.
646
647 2004-04-20 Hasso Tepper <hasso@estpak.ee>
648
649 * ospfd.c: Unset NP flag if area is going to be normal or stub.
650 Fixes UNH OSPF_NSSA.1.2a comment.
651 * ospf_abr.c: Originate default into stub/nssa area even if
652 summaries are disabled.
653 * ospf_zebra.c: Don't attempt to redistribute 127.0.0.0/8.
654
655 2004-04-19 Hasso Tepper <hasso@estpak.ee>
656
657 * ospf_vty.c: Don't warn that export- and import-list can't be
658 configured to backbone area if they are applied and are working
659 fine.
660
661 2004-02-19 Sowmini Varadhan <sowmini.varadhan@sun.com>
662
663 * ospf_packet.c: Don't drop packets in Solaris x86.
664 [quagga-dev 1005].
665
666 2004-03-18 Amir Guindehi <amir@datacore.ch>
667
668 * ospf_opaque.c: Attempt to correct the incorrect behavior of
669 Quagga's ospfd in the special situation that a node's opaque
670 capability has changed as "ON -> OFF -> ON". [quagga-dev 843].
671
672 2004-02-19 Sowmini Varadhan <sowmini.varadhan@sun.com>
673
674 * ospf_abr.c: (ospf_abr_update_aggregate) UNH 3.12b,c, address range
675 should be configured with the highest cost path within the range,
676 not lowest.
677
678 2004-02-17 Paul Jakma <paul@dishone.st>
679
680 * ospf_zebra.c: (ospf_interface_delete) Do not delete the interface
681 params, nor the interface structure, if an interface delete
682 message is received from zebra.
683 * ospf_interface.c: (ospf_if_delete_hook) Delete the interface
684 params and interface, ie that which was previously removed in
685 (ospf_interface_delete) above.
686
687 2004-02-11 Hasso Tepper <hasso@estpak.ee>
688 * ospf_interface.c, ospf_zebra.c: Don't attempt to read path->oi->ifp
689 if oi doesn't exist any more.
690
691 2004-02-11 Vadim Suraev <vadim.suraev@terayon.com>
692 * ospf_packet.c (ospf_ls_upd): Router should flush received network
693 LSA if it was originated with older router-id ([zebra 14710] #6).
694
695 2003-12-08 Mattias Amnefelt <mattiasa@kth.se>
696
697 * ospf_packet.c: (ospf_recv_packet) OpenBSD now leaves iph.ip_len
698 network byte order.
699
700 2003-12-05 Greg Troxel <gdt@poblano.ir.bbn.com>
701
702 * ospfd.c (ospf_network_match_iface): Rewrite code for clarity
703 while trying not to change semantics. Add ifdefed-out code to
704 avoid matching ppp interfaces whose destination address does not
705 also match the prefix under consideration, to help out people with
706 problems due to as-yet-unfixed bugs with p2p interfaces coming and
707 going.
708
709 2003-07-25 kamatchi soundaram <kamatchi@tdd.sj.nec.com>
710
711 * ospf_packet.c (ospf_ls_upd_send_queue_event): get next route
712 node in body of the loop to avoid chance that route node
713 is unlocked and deleted before the next iteration tries to
714 get next route node.
715
716 2003-05-24 Kenji Yabuuchi
717
718 * ospf_interface.c(ospf_if_lookup_recv_if): Use the most specific
719 match for interface lookup.
720
721 2003-05-18 Hasso Tepper <hasso@estpak.ee>
722
723 * ospf_vty.c: Show NSSA LSA route info in "show ip ospf database"
724 output
725
726 2003-05-16 Hasso Tepper <hasso@estpak.ee>
727
728 * ospf_lsa.c: Fix handling of NSSA
729
730 2003-04-23 Hasso Tepper <hasso@estpak.ee>
731
732 * ospf_vty.c: fix "router xxx" node commands in vtysh
733
734 2003-04-19 Hasso Tepper <hasso@estpak.ee>
735
736 * {ospf_abr,ospfd}.c: area id's DECIMAL -> ADDRESS
737 * ospf_routemap.c: sync daemon's route-map commands to have same
738 syntax.
739
740 2003-04-19 Sergey Vyshnevetskiy <serg@vostok.net>
741
742 * ospf_packet.c: Add missing param to zlog
743 * ospf_flood.c: remove unused vars
744
745 2003-04-17 Denis Ovsienko <zebra@pilot.org.ua>
746
747 * ospf_interface.c: fix incorrect memset
748
749 2003-04-10 Amir Guindehi <amir@datacore.ch>
750
751 * ospf_lsa.[ch]: opaque LSA fix, use ospf_lookup.
752
753 2003-04-03 David Watson <dwatson@eecs.umich.edu>
754
755 * ospf_lsa.c: byte order fix
756
757 2002-03-17 Amir Guindehi <amir@datacore.ch>
758
759 * ospf_apiserver.[ch]: Merge Ralph Keller's OSPFAPI support.
760 * ospf_api.[ch]: Merge Ralph Keller's OSPFAPI support.
761 * ospfclient: OSPFAPI demonstration client.
762
763 2003-01-23 Masahiko Endo <endo@suri.co.jp>
764
765 * ospf_ism.c: NSM event schedule bug fix.
766
767 2002-10-30 Greg Troxel <gdt@ir.bbn.com>
768
769 * ospf_packet.c (ospf_make_md5_digest): MD5 length fix.
770
771 2002-10-23 endo@suri.co.jp (Masahiko Endo)
772
773 * ospf_opaque.c: Update Opaque LSA patch.
774
775 2002-10-23 Ralph Keller <keller@tik.ee.ethz.ch>
776
777 * ospf_vty.c (show_ip_ospf_database): Fix CLI parse.
778
779 2002-10-23 Juris Kalnins <juris@mt.lv>
780
781 * ospf_interface.c (ospf_if_stream_unset): When write queue
782 becomes empty stop write timer.
783
784 2002-10-10 Greg Troxel <gdt@ir.bbn.com>
785
786 * ospf_packet.c (ospf_check_md5_digest): Change >= to > to make it
787 conform to RFC.
788
789 2002-07-07 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
790
791 * zebra-0.93 released.
792
793 2002-06-19 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
794
795 * ospf_spf.c (ospf_nexthop_calculation): Add NULL set to oi and
796 check of l2. Reported by: Daniel Drown <dan-zebra@drown.org>
797 (ospf_lsa_has_link): LSA Length calculation fix. Reported by:
798 Paul Jakma <paulj@alphyra.ie>.
799
800 * ospfd.c (ospf_if_update): Fix nextnode reference bug. Reported
801 by: juris@mt.lv.
802
803 2002-01-21 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
804
805 * ospfd.c: Merge [zebra 11445] Masahiko ENDO's Opaque-LSA support.
806
807 2001-08-27 Kunihiro Ishiguro <kunihiro@zebra.org>
808
809 * ospf_interface.c (ospf_add_to_if): Use /32 address to register
810 OSPF interface information.
811 (ospf_delete_from_if): Likewise.
812
813 * ospf_zebra.c (ospf_interface_address_delete): Likewise.
814
815 2001-08-23 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
816
817 * ospf_zebra.c (ospf_redistribute_unset): When redistribute type
818 is OSPF, do not unset redistribute flag.
819
820 2001-08-19 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
821
822 * zebra-0.92a released.
823
824 2001-08-15 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
825
826 * zebra-0.92 released.
827
828 2001-08-12 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
829
830 * ospfd.c (ospf_config_write): auto-cost reference-bandwidth
831 configuration display.
832
833 2001-07-24 David Watson <dwatson@eecs.umich.edu>
834
835 * ospf_spf.c (ospf_spf_next): Modify ospf_vertex_add_parent to
836 check for an existing link before connecting the parent and child.
837 ospf_nexthop_calculation is also modified to check for duplicate
838 entries when copying from the parent. Finally, ospf_spf_next
839 removes duplicates when it merges two equal cost candidates.
840
841 2001-07-23 itojun@iijlab.net
842
843 * ospfd.c (show_ip_ospf_neighbor): Check ospf_top before use it
844 [zebra 8549].
845
846 2001-07-23 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
847
848 * ospf_packet.c (ospf_write): Remove defined(__OpenBSD__) to make
849 it work on OpenBSD.
850
851 2001-06-26 Kunihiro Ishiguro <kunihiro@zebra.org>
852
853 * ospf_zebra.c (config_write_ospf_default_metric): Display
854 default-metric configuration.
855
856 2001-06-18 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
857
858 * ospf_ia.h (OSPF_EXAMINE_SUMMARIES_ALL): Remove old macros.
859
860 2001-05-28 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
861
862 * ospf_snmp.c (ospfIfEntry): Fix interface lookup bug to avoid
863 crush.
864 (ospfIfMetricEntry): Likewise.
865
866 2001-03-18 Kunihiro Ishiguro <kunihiro@zebra.org>
867
868 * ospf_packet.c (ospf_read): Fix typo. Reported by: "Jen B
869 Lin'Kova" <jen@stack.net>.
870
871 2001-03-15 Gleb Natapov <gleb@nbase.co.il>
872
873 * ospf_interface.c (ip_ospf_network): Set interface parameter.
874 (interface_config_write): Add check for OSPF_IFTYPE_LOOPBACK.
875
876 * ospf_zebra.c (ospf_interface_add): Set interface parameter.
877
878 2001-02-21 Kunihiro Ishiguro <kunihiro@zebra.org>
879
880 * ospf_packet.c (ospf_recv_packet): Solaris also need to add
881 (iph.ip_hl << 2) to iph.ip_len.
882
883 2001-02-09 Kunihiro Ishiguro <kunihiro@zebra.org>
884
885 * ospfd.h (OSPF_LS_REFRESH_TIME): Fix OSPF_LS_REFRESH_TIME value.
886 Suggested by: David Watson <dwatson@eecs.umich.edu>.
887
888 * ospf_zebra.c (zebra_init): Remove zebra node.
889
890 * ospfd.c (ospf_area_range_set): Function name is changed from
891 ospf_ara_range_cmd.
892 (ospf_area_range_unset): New function which separated from DEFUN.
893 New commands are added:
894 "no area A.B.C.D range A.B.C.D/M advertise"
895 "no area <0-4294967295> range A.B.C.D/M advertise"
896 "no area A.B.C.D range A.B.C.D/M not-advertise"
897 "no area <0-4294967295> range A.B.C.D/M not-advertise"
898
899 * ospf_lsa.c (ospf_lsa_more_recent): Fix previous change.
900
901 2001-02-08 Matthew Grant <grantma@anathoth.gen.nz>
902
903 * ospf_network.c (ospf_if_add_allspfrouters): Use
904 setsockopt_multicast_ipv4.
905 (ospf_if_drop_allspfrouters): Likewise.
906
907 * ospf_lsa.c (ospf_router_lsa_install): Add rt_recalc flag.
908 (ospf_network_lsa_install): Likewise.
909 (ospf_summary_lsa_install): Likewise.
910 (ospf_summary_asbr_lsa_install): Likewise.
911 (ospf_external_lsa_install): Likewise.
912 (ospf_lsa_install): Call ospf_lsa_different to check this LSA is
913 new one or not.
914
915 2001-02-08 Kunihiro Ishiguro <kunihiro@zebra.org>
916
917 * ospf_zebra.c (ospf_interface_delete): Do not free interface
918 structure when ospfd receive interface delete message to support
919 pseudo interface.
920
921 2001-02-01 Dick Glasspool <dick@ipinfusion.com>
922
923 * ospfd.c (area_range_notadvertise): Change area range "suppress"
924 command to "not-advertise".
925
926 * ospfd.h (OSPF_LS_REFRESH_TIME): Change OSPF_LS_REFRESH_TIME from
927 1800 to 60.
928
929 * ospf_abr.c (ospf_abr_update_aggregate): When update_aggregate is
930 updating the area-range, the lowest cost is now saved.
931
932 * ospf_lsa.c (ospf_lsa_more_recent): Routing to compare sequence
933 numbers rather than creating overflow during calculation.
934
935 2001-02-01 Kunihiro Ishiguro <kunihiro@zebra.org>
936
937 * zebra-0.91 is released.
938
939 2001-01-31 Kunihiro Ishiguro <kunihiro@zebra.org>
940
941 * ospf_packet.c (ospf_db_desc_proc): Do not continue process when
942 NSM_SeqNumberMismatch is scheduled.
943 (ospf_ls_req): Free ls_upd when return from this function.
944 (ospf_ls_upd_timer): When update list is empty do not call
945 ospf_ls_upd_send(). Suggested by: endo@suri.co.jp (Masahiko
946 Endo).
947
948 2001-01-26 Kunihiro Ishiguro <kunihiro@zebra.org>
949
950 * ospf_lsa.c (ospf_maxage_flood): Flood LSA when it reaches
951 MaxAge. RFC2328 Section 14.
952 (ospf_maxage_lsa_remover): Call above function during removing
953 MaxAge LSA.
954
955 2001-01-26 Dick Glasspool <dick@ipinfusion.com>
956
957 * ospf_flood.c (ospf_flood_through_as): Function is updated for
958 NSSA Translations now done at ospf_abr.c with no change in P-bit.
959
960 * ospf_lsa.c (ospf_get_nssa_ip): Get 1st IP connection for Forward
961 Addr.
962 (ospf_install_flood_nssa): Leave Type-7 LSA at Lock Count = 2.
963
964 * ospf_ase.c (ospf_ase_calculate_route): Add debug codes.
965
966 * ospf_abr.c (ospf_abr_translate_nssa): Recalculate LSA checksum.
967
968 * ospf_packet.h (OSPF_SEND_PACKET_LOOP): Added for test packet.
969
970 * ospf_dump.c (ospf_lsa_type_msg): Add OSPF_GROUP_MEMBER_LSA and
971 OSPF_AS_NSSA_LSA.
972
973 * ospfd.c (data_injection): Function to inject LSA. This is
974 debugging command.
975
976 2001-01-11 Kunihiro Ishiguro <kunihiro@zebra.org>
977
978 * ospf_route.c (ospf_route_match_same): Remove function.
979 (ospf_route_match_same_new): Renamed to ospf_route_match_same.
980
981 * ospf_zebra.c (ospf_interface_address_delete): Add check for
982 oi->address. Suggested by Matthew Grant
983 <grantma@anathoth.gen.nz>.
984 (ospf_zebra_add): Remove function.
985 (ospf_zebra_add_multipath): Rename to ospf_zebra_add.
986
987 * ospf_interface.c: Remove HAVE_IF_PSEUDO part.
988
989 * ospf_zebra.c: Likewise.
990
991 2001-01-10 Kunihiro Ishiguro <kunihiro@zebra.org>
992
993 * ospf_ase.c: Remove OLD_RIB part.
994
995 * ospf_route.c: Likewise.
996
997 * zebra-0.90 is released.
998
999 * ospf_packet.c (ospf_recv_packet): Use ip_len adjestment code to
1000 NetBSD.
1001
1002 2001-01-09 Kunihiro Ishiguro <kunihiro@zebra.org>
1003
1004 * ospf_route.c (ospf_route_delete): Use
1005 ospf_zebra_delete_multipath.
1006
1007 2001-01-09 Matthew Grant <grantma@anathoth.gen.nz>
1008
1009 * ospf_interface.c (ospf_if_cleanup): Function name is renamed
1010 from ospf_if_free(). Rewrite whole procudure to support primary
1011 address deletion.
1012
1013 * ospf_zebra.c (ospf_interface_address_delete): Add primary
1014 address deletion process.
1015
1016 2001-01-09 Kunihiro Ishiguro <kunihiro@zebra.org>
1017
1018 * ospf_packet.c (ospf_recv_packet): OpenBSD has same ip_len
1019 treatment like FreeBSD.
1020
1021 2001-01-09 endo@suri.co.jp (Masahiko Endo)
1022
1023 * ospf_packet.c (ospf_recv_packet): FreeBSD kernel network code
1024 strips IP header size from receiving IP Packet. So we adjust
1025 ip_len to whole IP packet size by adding IP header size.
1026
1027 2001-01-08 endo@suri.co.jp (Masahiko Endo)
1028
1029 * ospf_network.c (ospf_serv_sock): When socket() is failed return
1030 immediately.
1031 (ospf_serv_sock): Close socket when it is not used.
1032
1033 * ospf_packet.c (ospf_write): Set sin_len when HAVE_SIN_LEN is
1034 defined.
1035 (ospf_write): When bind is fined, close sock.
1036
1037 2001-01-07 Gleb Natapov <gleb@nbase.co.il>
1038
1039 * ospf_zebra.c (ospf_interface_state_up): Fixes coredump that
1040 appears when you try to configure bandwidth on the ppp interface
1041 that is not yet configured in ospfd.
1042
1043 2001-01-07 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1044
1045 * ospf_route.c (show_ip_ospf_route_external): "show ip ospf route"
1046 will print nexthops for AS-external routes.
1047
1048 * ospf_ase.c (ospf_ase_route_match_same): New function to compare
1049 ASE route under multipath environment.
1050 (ospf_ase_compare_tables): Likewise.
1051
1052 2001-01-01 Kunihiro Ishiguro <kunihiro@zebra.org>
1053
1054 * ospfd.h (OSPF_VTYSH_PATH): Change "/tmp/ospfd" to "/tmp/.ospfd".
1055
1056 2000-12-28 Kunihiro Ishiguro <kunihiro@zebra.org>
1057
1058 * ospf_route.c (ospf_route_install): Install multipath information
1059 to zebra daemon.
1060
1061 * ospf_zebra.c (ospf_zebra_add_multipath): Function for passing
1062 multipath information to zebra daemon.
1063
1064 2000-12-25 Dick Glasspool <dick@ipinfusion.com>
1065
1066 * ospf_packet.c (ospf_write): Call ospf_packet_delete when sendto
1067 fail.
1068 (DISCARD_LSA): Add argument N for logging point of DISCARD_LSA is
1069 called.
1070
1071 * ospf_lsa.c (ospf_external_lsa_refresh): NSSA install_flood will
1072 leave Type-7 LSA at Lock Count = 2.
1073
1074 * ospf_flood.c (ospf_flood_through): Flood_though_as updated for
1075 NSSA no P-bit off during Area flooding, but P-bit is turned off
1076 for mulitple NSSA AS flooding.
1077
1078 * ospf_ase.c (ospf_ase_calculate_timer): Added calculations for
1079 Type-7 LSDB.
1080
1081 * ospf_abr.c (ospf_abr_translate_nssa): Removed one unlock call.
1082 (ospf_abr_announce_nssa_defaults): Corrected Debug from EVENT to
1083 NSSA.
1084
1085 2000-12-25 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1086
1087 * ospf_zebra.c (ospf_zebra_read_ipv4): Checking the age of the
1088 found LSA and if the LSA is MAXAGE we should call refresh instead
1089 of originate.
1090
1091 2000-12-18 Dick Glasspool <dick@ipinfusion.com>
1092
1093 * ospf_abr.c: Removed redundant "...flood" in
1094 announce_network_to_area(). Repaired nssa Unlock by using
1095 discard.
1096
1097 * ospf_packet.c: Removed old NSSA translate during mk_ls_update.
1098
1099 * ospfd.c: Free up all data bases including NSSA.
1100
1101 * ospf_lsa.c: Now allow removal of XLATE LSA's Check in
1102 discard_callback. Added routine to get ip addr from within the
1103 ifp.
1104
1105 * ospf_flood.c: Now set Forward Address for outgoing Type-7.
1106
1107 * ospf_lsa.h: Added prototype for the below. struct in_addr
1108 ospf_get_ip_from_ifp (struct interface *ifp).
1109
1110 2000-12-14 Gleb Natapov <gleb@nbase.co.il>
1111
1112 * ospf_packet.c (ospf_recv_packet): New OSPF pakcet read method.
1113 Now maximum packet length may be 65535 bytes (maximum IP packet
1114 length).
1115
1116 * ospf_interface.c (ospf_if_stream_set): Don't make input buffer.
1117
1118 * ospfd.c (config_write_network_area): Remove unnecessary area
1119 lookup code.
1120
1121 2000-12-13 Kunihiro Ishiguro <kunihiro@zebra.org>
1122
1123 * ospf_packet.c (ospf_read): Accept packet bigger than MTU value.
1124
1125 2000-12-13 Gleb Natapov <gleb@nbase.co.il>
1126
1127 * ospfd.c (config_write_network_area): Fix bug in
1128 config_write_network_area function.
1129
1130 2000-12-12 Gleb Natapov <gleb@nbase.co.il>
1131
1132 * ospf_abr.c (ospf_abr_announce_network_to_area): Make Summary
1133 LSA's origination and refreshment as same as other type of LSA.
1134
1135 * ospf_lsa.c (ospf_summary_lsa_refresh): Return struct ospf_lsa *.
1136
1137 * ospf_lsa.c (ospf_summary_asbr_lsa_refresh): Likewise.
1138
1139 2000-12-08 Dick Glasspool <dick@ipinfusion.com>
1140
1141 The bulk of NSSA changes are contained herein; This version will
1142 require manual setting of "always" for NSSA Translator, and will
1143 not perform aggregation yet.
1144
1145 * ospf_dump.c: "debug ospf nssa" is added.
1146
1147 * ospf_dump.h: Likewise.
1148
1149 * ospf_packet.c (ospf_hello): Display router ID on Bad NSSA Hello.
1150
1151 * ospfd.c: Discard_LSA to stay away from LOCAL_XLT Process NSSA
1152 'never, candidate, always'. Change "suppress" to "not-advertise".
1153
1154 * ospfd.h: Add TranslatorRole to struct ospf_area. Add anyNSSA to
1155 struct ospf.
1156
1157 * ospf_ase.c (ospf_ase_calculate_route): External to stay away
1158 from LOCAL_XLT
1159
1160 * ospf_nsm.c (ospf_db_summary_add): External to stay away from
1161 LOCAL_XLT
1162
1163 * ospf_abr.c: Major logic added for abr_nssa_task(). If ABR, and
1164 NSSA translator, then do it. Approve the global list, and flush
1165 any unapproved.
1166
1167 * ospf_lsa.h: New LSA flag OSPF_LSA_LOCAL_XLT to indicate that the
1168 Type-5 resulted from a Local Type-7 translation; not used for
1169 flooding, but used for flushing.
1170
1171 * ospf_flood.c: New NSSA flooding.
1172
1173 2000-12-08 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1174
1175 * ospfd.c (ospf_find_vl_data): New function for looking up virtual
1176 link data.
1177 (ospf_vl_set_security): Virtual link configuration with
1178 authentication.
1179 (ospf_vl_set_timers): Set timers for virtual link.
1180
1181 * New commands are added.
1182 "area A.B.C.D virtual-link A.B.C.D"
1183 "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>"
1184 "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"
1185 "area A.B.C.D virtual-link A.B.C.D authentication-key AUTH_KEY"
1186 "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"
1187 "area A.B.C.D virtual-link A.B.C.D message-digest-key <1-255> md5 KEY"
1188
1189 * ospf_packet.c (ospf_check_md5_digest): Add neighbor's
1190 cryptographic sequence number treatment.
1191 (ospf_check_auth): OSPF input buffer is added to argument.
1192 (ospf_read): Save neighbor's cryptographic sequence number.
1193
1194 * ospf_nsm.c (nsm_change_status): Clear cryptographic sequence
1195 number when neighbor status is changed to NSM down.
1196
1197 * ospf_neighbor.c (ospf_nbr_new): Set zero to crypt_seqnum.
1198
1199 * ospf_neighbor.h (struct ospf_neighbor): Add cryptographic
1200 sequence number to neighbor structure.
1201
1202 2000-11-29 Kunihiro Ishiguro <kunihiro@zebra.org>
1203
1204 * ospf_snmp.c (ospfIfLookup): OSPF MIB updates.
1205 (ospfExtLsdbEntry): Add OspfExtLsdbTable treatment.
1206
1207 2000-11-28 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1208
1209 * ospfd.c (ospf_interface_down): Clear a ls_upd_queue queue of the
1210 interface.
1211 (ospf_ls_upd_queue_empty): New function to empty ls update queue
1212 of the OSPF interface.
1213 (no_router_ospf): 'no router ospf' unregister redistribution
1214 requests from zebra.
1215
1216 2000-11-28 Kunihiro Ishiguro <kunihiro@zebra.org>
1217
1218 * ospf_ism.c (ism_change_status): Increment status change number.
1219
1220 * ospf_interface.h (struct ospf_interface): Add new member for
1221 status change statistics.
1222
1223 * Makefile.am: Update dependencies.
1224
1225 * ospf_zebra.c (ospf_interface_add): OSPF SNMP interface update.
1226 (ospf_interface_delete): OSPF SNMP interface delete.
1227
1228 * ospf_snmp.h: New file is added.
1229
1230 2000-11-23 Dick Glasspool <dick@ipinfusion.com>
1231
1232 * ospfd.h: Add new ospf_area structure member for
1233 NSSATranslatorRole and NSSATranslator state.
1234
1235 * ospfd.c: Provided for eventual commands to specify NSSA
1236 elections for "translator- ALWAYS/NEVER/CANDIDATE". Provided for
1237 decimal integer version of area-suppress.
1238
1239 * ospf_flood.c: Flood Type-7's only into NSSA (not AS).
1240
1241 * ospf_lsa.c: Undo some previous changes for NSSA. If NSSA
1242 translator, advertise Nt bit.
1243
1244 * ospf_route.c: 1st version of "sh ip os border-routers".
1245
1246 2000-11-23 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1247
1248 * ospfd.c (area_vlink): Virtual link can not configured in stub
1249 area.
1250
1251 2000-11-23 Gleb Natapov <gleb@nbase.co.il>
1252
1253 * ospf_packet.c (ospf_db_desc): In states Loading and Full the
1254 slave must resend its last Database Description packet in response
1255 to duplicate Database Description packets received from the
1256 master. For this reason the slave must wait RouterDeadInterval
1257 seconds before freeing the last Database Description packet.
1258 Reception of a Database Description packet from the master after
1259 this interval will generate a SeqNumberMismatch neighbor
1260 event. RFC2328 Section 10.8
1261 (ospf_make_db_desc): DD Master flag treatment.
1262
1263 * ospf_nsm.c (nsm_twoway_received): Move DD related procedure to
1264 nsm_change_status().
1265 (nsm_bad_ls_req): Likewise.
1266 (nsm_adj_ok): Likewise.
1267 (nsm_seq_number_mismatch): Likewise.
1268 (nsm_oneway_received): Likewise.
1269
1270 * ospf_neighbor.h (struct ospf_neighbor): New structure member
1271 last_send_ts for timestemp when last Database Description packet
1272 was sent.
1273
1274 * ospf_nsm.c (ospf_db_desc_timer): Make it sure nbr->last_send is
1275 there. Call ospf_db_desc_resend() in any case.
1276
1277 2000-11-16 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1278
1279 * ospf_lsa.c (lsa_link_broadcast_set): When there is no DR on
1280 network (suppose you have only one router with interface priority
1281 0). It's router LSA does not contain the link information about
1282 this network.
1283
1284 * ospf_nsm.c (nsm_timer_set): When you change a priority of
1285 interface from/to 0 ISM_NeighborChange event should be scheduled
1286 in order to elect new DR/BDR on the network.
1287
1288 * ospf_interface.c (ip_ospf_priority): Likewise.
1289
1290 * ospf_flood.c (ospf_ls_retransmit_add): When we add some LSA into
1291 retransmit list we need to check whether the present old LSA in
1292 retransmit list is not more recent than the new
1293 one.
1294
1295 2000-11-09 Dick Glasspool <dick@ipinfusion.com>
1296
1297 * ospf_packet.c: Allows for NSSA Type-7 LSA's throughout the NSSA
1298 area. Any that exit the NSSA area are translated to type-5 LSA's.
1299 The instantiated image is restored after translation.
1300 (ospf_ls_upd_send_list): Renamed to ospf_ls_upd_queu_send().
1301 (ospf_ls_upd_send): Old function which enclosed by #ifdef 0 is
1302 removed.
1303 (ospf_ls_ack_send): Likewise.
1304
1305 * ospf_flood.c: NSSA-LSA's without P-bit will be restricted to
1306 local area. Otherwise they are allowed out the area to be
1307 translated by ospf_packet.c.
1308
1309 * ospf_lsa.c: Undo some previous changes for NSSA.
1310
1311 * ospf_lsdb.h: New access for type 7.
1312
1313 2000-11-07 Kunihiro Ishiguro <kunihiro@zebra.org>
1314
1315 * ospf_route.c (ospf_path_exist): New function to check nexthop
1316 and interface are in current OSPF path or not.
1317 (ospf_route_copy_nexthops_from_vertex): Add nexthop to OSPF path
1318 when it is not there. Reported by Michael Rozhavsky
1319 <mrozhavsky@opticalaccess.com>
1320
1321 2000-11-06 Kunihiro Ishiguro <kunihiro@zebra.org>
1322
1323 * ospf_dump.c (config_write_debug): Add seventh string "detail" is
1324 added for flag is OSPF_DEBUG_SEND | OSPF_DEBUG_RECV |
1325 OSPF_DEBUG_DETAIL.
1326
1327 2000-11-06 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1328
1329 * ospf_lsa.c (router_lsa_flags): ASBR can't exit in stub area.
1330
1331 2000-11-06 Kunihiro Ishiguro <kunihiro@zebra.org>
1332
1333 * ospf_lsa.c (ospf_router_lsa_originate): Reduce unconditional
1334 logging.
1335
1336 2000-11-06 Dick Glasspool <dick@ipinfusion.com>
1337
1338 * ospfd.h: Add ait_ntoa function prototype.
1339
1340 * ospfd.c (ait_ntoa): New function for displaying area ID and
1341 Stub/NSSA status.
1342 (show_ip_ospf_interface_sub): Use ait_ntoa.
1343 (show_ip_ospf_nbr_static_detail_sub): Likewise.
1344 (show_ip_ospf_neighbor_detail_sub): Likewise.
1345
1346 * ospf_route.c (ospf_intra_route_add): Set external routing type
1347 to ospf route.
1348 (ospf_intra_add_router): Likewise.
1349 (ospf_intra_add_transit): Likewise.
1350 (ospf_intra_add_stub): Likewise.
1351 (ospf_add_discard_route): Likewise.
1352 (show_ip_ospf_route_network): Use ait_ntoa.
1353 (show_ip_ospf_route_network): Likewise.
1354 (show_ip_ospf_route_router): Likewise.
1355
1356 * ospf_lsa.c (show_lsa_detail): Use ait_ntoa.
1357 (show_lsa_detail_adv_router): Likewise.
1358 (show_ip_ospf_database_summary): Likewise.
1359
1360 * ospf_route.h (struct route_standard): Add new member
1361 external_routing.
1362
1363 * ospf_ia.c (process_summary_lsa): Set external routing tyep to ospf
1364 route.
1365 (ospf_update_network_route): Likewise.
1366 (ospf_update_router_route): Likewise.
1367
1368 2000-11-04 Kunihiro Ishiguro <kunihiro@zebra.org>
1369
1370 * ospf_flood.c (ospf_process_self_originated_lsa): Enclose
1371 OSPF_AS_NSSA_LSA treatment with #ifdef HAVE_NSSA.
1372
1373 2000-11-03 Kunihiro Ishiguro <kunihiro@zebra.org>
1374
1375 * Unconditional logging is enclosed with if (IS_DEBUG_OSPF_EVENT).
1376 Please specify "debug ospf event" for enable logging.
1377
1378 * ospf_ism.c: Do not extern debug flag varible. It is done by
1379 ospf_debug.h
1380 * ospf_asbr.c: Likewise.
1381 * ospf_lsa.c: Likewise.
1382 * ospf_nsm.c: Likewise.
1383 * ospf_zebra.c: Likewise.
1384
1385 * ospf_dump.c (debug_ospf_event): New command "debug ospf event"
1386 is added.
1387
1388 * ospfd.c (router_ospf): Change logging from vty_out() to
1389 zlog_info().
1390 (ospf_area_stub_cmd): Likewise.
1391
1392 * ospf_dump.h: Extern term_debug flags.
1393 (OSPF_DEBUG_EVENT): Add new flag.
1394 (IS_DEBUG_OSPF_EVENT): Add new macro.
1395
1396 2000-11-03 Dick Glasspool <dick@ipinfusion.com>
1397
1398 * ospf_flood.c (ospf_process_self_originated_lsa):
1399 OSPF_AS_NSSA_LSA is treated as same as OSPF_AS_EXTERNAL_LSA.
1400 (ospf_flood): Type-5's have no change. Type-7's can be received,
1401 and will Flood the AS as Type-5's They will also flood the local
1402 NSSA Area as Type-7's. The LSDB will be updated as Type-5's, and
1403 during re-fresh will be converted back to Type-7's (if within an
1404 NSSA).
1405 (ospf_flood_through): Incoming Type-7's were allowed here if our
1406 neighbor was an NSSA. So Flood our area with the Type-7 and also
1407 if we are an ABR, flood thru AS as Type-5.
1408
1409 * ospf_lsa.c (ospf_external_lsa_refresh): Flood NSSA both NSSA
1410 area and other area.
1411
1412 * ospf_packet.c (ospf_db_desc_proc): When AS External LSA is
1413 exists in DD packet, make it sure that this area is not stub.
1414 (ospf_ls_upd_list_lsa): When LSA type is NSSA then set lsa's area
1415 to NULL.
1416 (ospf_ls_upd): If the LSA is AS External LSA and the area is stub
1417 then discard the lsa. If the LSA is NSSA LSA and the area is not
1418 NSSA then discard the lsa.
1419
1420 2000-11-03 Kunihiro Ishiguro <kunihiro@zebra.org>
1421
1422 * ospfd.c (ospf_interface_run): Fix bug of Hello packet's option
1423 is not properly set when interface comes up.
1424
1425 2000-11-02 Kunihiro Ishiguro <kunihiro@zebra.org>
1426
1427 * ospfd.h (OSPF_OPTION_O): Add new hello header option.
1428
1429 2000-11-01 Dick Glasspool <dick@ipinfusion.com>
1430
1431 * ospf_lsa.h: Define OSPF_MAX_LSA to 8 when HAVE_NSSA is enabled.
1432 (OSPF_GROUP_MEMBER_LSA): Define OSPF_GROUP_MEMBER_LSA.
1433
1434 * ospf_lsa.c (show_database_desc): Add "Group Membership LSA"
1435 string.
1436
1437 2000-10-31 Dick Glasspool <dick@ipinfusion.com>
1438
1439 * ospf_lsa.h (OSPF_AS_NSSA_LSA): Define OSPF_AS_NSSA_LSA.
1440
1441 * ospf_lsa.c (show_ip_ospf_database): NSSA database display
1442 function is added. ALIASES which have "show ip ospf database
1443 nssa-external" is added.
1444 (show_ip_ospf_border_routers): New command "show ip ospf
1445 border-routers" is added.
1446
1447 2000-10-30 Dick Glasspool <dick@ipinfusion.com>
1448
1449 * ospfd.c (router_ospf): NSSA Enabled message is added for
1450 testing.
1451 (ospf_area_type_set): Are type set for NSSA area.
1452 (ospf_area_stub_cmd): Special translation of no_summary into NSSA
1453 and summary information. If NSSA is enabled pass the information
1454 to ospf_area_type_set().
1455 (area_nssa): New commands are added:
1456 "area A.B.C.D nssa"
1457 "area <0-4294967295> nssa"
1458 "area A.B.C.D nssa no-summary"
1459 "area <0-4294967295> nssa no-summary"
1460 (ospf_no_area_stub_cmd): Special translation of no_summary into
1461 NSSA and summary information. If external_routing is
1462 OSPF_AREA_NSSA unset area with ospf_area_type_set (area,
1463 OSPF_AREA_DEFAULT).
1464 (show_ip_ospf_area): Display NSSA status.
1465 (config_write_ospf_area): Show NSSA configuration.
1466
1467 * ospf_packet.c (ospf_hello): For NSSA support, ensure that NP is
1468 on and E is off.
1469
1470 2000-10-26 Gleb Natapov <gleb@nbase.co.il>
1471
1472 * ospf_lsa.c (ospf_network_lsa_body_set): The network-LSA lists
1473 those routers that are fully adjacent to the Designated Router;
1474 each fully adjacent router is identified by its OSPF Router ID.
1475 The Designated Router includes itself in this list. RFC2328,
1476 Section 12.4.2.
1477
1478 2000-10-23 Jochen Friedrich <jochen@scram.de>
1479
1480 * ospf_snmp.c: ospf_oid and ospfd_oid are used in smux_open after
1481 it is registered. So those variables must be static.
1482
1483 2000-10-18 K N Sridhar <sridhar@euler.ece.iisc.ernet.in>
1484
1485 * ospfd.c: Add area_default_cost_decimal_cmd and
1486 no_area_default_cost_decimal_cmd alias.
1487
1488 2000-10-05 Gleb Natapov <gleb@nbase.co.il>
1489
1490 * ospfd.c (ospf_network_new): Fix setting area format.
1491 (no_router_ospf): Check area existance when calling
1492 ospf_interface_down().
1493
1494 * ospf_flood.c (ospf_external_info_check): Fix bug of refreshing
1495 default route.
1496
1497 2000-10-02 Kunihiro Ishiguro <kunihiro@zebra.org>
1498
1499 * zebra-0.89 is released.
1500
1501 2000-09-29 Kunihiro Ishiguro <kunihiro@zebra.org>
1502
1503 * ospf_snmp.c (ospfHostEntry): OSPF Host MIB is implemented.
1504
1505 * ospfd.c (ospf_nbr_static_cmp): OSPF neighbor is sorted by it's
1506 address.
1507
1508 2000-09-28 Michael Rozhavsky <mike@nbase.co.il>
1509
1510 * ospf_interface.c (ospf_if_free): Fix deleting self neighbor twice.
1511
1512 2000-09-27 Kunihiro Ishiguro <kunihiro@zebra.org>
1513
1514 * ospf_packet.c (ospf_read): Solaris on x86 has ip_len with host
1515 byte order.
1516
1517 2000-09-25 Toshiaki Takada <takada@zebra.org>
1518
1519 * ospfd.c (ospf_compatible_rfc1583), (no_ospf_compatible_rfc1583):
1520 Add CISCO compatible command.
1521
1522 2000-09-25 Kunihiro Ishiguro <kunihiro@zebra.org>
1523
1524 * ospf_abr.c (ospf_area_range_lookup): New function is added for
1525 area range lookup in OSPF-MIB.
1526 (ospf_area_range_lookup_next): Likewise.
1527
1528 2000-09-22 Kunihiro Ishiguro <kunihiro@zebra.org>
1529
1530 * ospfd.c (no_router_ospf): Delete virtual link before deleting
1531 area structure.
1532
1533 * ospf_lsa.c (ospf_external_lsa_refresh_type): Check
1534 EXTERNAL_INFO(type).
1535
1536 * ospfd.c (no_router_ospf): Call ospf_vl_delete() instead of
1537 ospf_vl_data_free().
1538
1539 * ospf_interface.c (ospf_vl_shutdown): Execute ISM_InterfaceDown
1540 when ospf_vl_shutdown is called.
1541 (ospf_vl_delete): Call ospf_vl_shutdown() to delete virtual link
1542 interface's thread.
1543
1544 2000-09-21 Gleb Natapov <gleb@nbase.co.il>
1545
1546 * ospf_lsa.c: New implementation of OSPF refresh.
1547
1548 2000-09-20 Kunihiro Ishiguro <kunihiro@zebra.org>
1549
1550 * ospf_snmp.c (ospfLsdbLookup): Add LSDB MIB implementation.
1551
1552 2000-09-18 Kunihiro Ishiguro <kunihiro@zebra.org>
1553
1554 * ospf_snmp.c (ospfStubAreaEntry): Add OSPF stub area MIB.
1555
1556 2000-09-18 Gleb Natapov <gleb@nbase.co.il>
1557
1558 * ospf_route.h (route_standard): Change member from `struct area'
1559 to area_id.
1560
1561 * ospf_abr.c (ospf_abr_announce_network), (ospf_abr_should_announce),
1562 (ospf_abr_process_network_rt), (ospf_abr_announce_rtr),
1563 (ospf_abr_process_router_rt):
1564 * ospf_ase.c (ospf_find_asbr_route),
1565 (ospf_find_asbr_router_through_area),
1566 * ospf_ia.c (ospf_find_abr_route), (ospf_ia_router_route),
1567 (process_summary_lsa), (ospf_update_network_route),
1568 (ospf_update_router_route):
1569 * ospf_route.c (ospf_intra_route_add), (ospf_intra_add_router),
1570 (ospf_intra_add_transit), (ospf_intra_add_stub),
1571 (ospf_route_table_dump), (show_ip_ospf_route_network),
1572 (show_ip_ospf_route_router), (ospf_asbr_route_cmp),
1573 (ospf_prune_unreachable_routers):
1574 * ospf_spf.c (ospf_rtrs_print):
1575 * ospfd.c (ospf_rtrs_free): Fix the struct change above.
1576
1577 2000-09-14 Kunihiro Ishiguro <kunihiro@zebra.org>
1578
1579 * ospf_network.c (ospf_serv_sock_init): Enclose SO_BINDTODEVICE
1580 with ifdef.
1581
1582 2000-09-13 Gleb Natapov <gleb@nbase.co.il>
1583
1584 * ospf_ism.c (ospf_elect_dr), (ospf_elect_bdr): Fix DR election.
1585
1586 * ospf_network.c (ospf_serv_sock_init): Add socket option
1587 SO_BINDTODEVICE on read socket.
1588
1589 * ospf_packet.c (ospf_hello): Ignore Hello packet if E-bit does
1590 not match.
1591
1592 * ospfd.c (ospf_area_check_free), (ospf_area_get),
1593 (ospf_area_add_if): New function added.
1594
1595 2000-09-13 Kunihiro Ishiguro <kunihiro@zebra.org>
1596
1597 * ospf_route.c (ospf_intra_add_router): Update ABR and ASBR router
1598 count.
1599
1600 * ospf_spf.c (ospf_spf_init): Rest ABR and ASBR router count
1601 starting SPF calculation.
1602
1603 * ospfd.h (struct ospf_area): Add ABR and ASBR router count.
1604
1605 2000-09-12 Kunihiro Ishiguro <kunihiro@zebra.org>
1606
1607 * ospfd.c (ospf_area_id_cmp): New area structure is sorted by area
1608 ID.
1609
1610 * ospf_lsa.c (ospf_router_lsa_originate): For OSPF MIB update
1611 lsa_originate_count.
1612 (ospf_network_lsa_originate): Likewise.
1613 (ospf_summary_lsa_originate): Likewise.
1614 (ospf_summary_asbr_lsa_originate): Likewise.
1615 (ospf_external_lsa_originate): Likewise.
1616
1617 2000-09-11 Kunihiro Ishiguro <kunihiro@zebra.org>
1618
1619 * ospf_snmp.c (ospf_variables): ospfRouterID's type RouterID
1620 syntax is IpAddress.
1621 (ospf_admin_stat): New function for OSPF administrative status
1622 check.
1623
1624 2000-09-10 Jochen Friedrich <jochen@scram.de>
1625
1626 * ospf_snmp.c: Implement OSPF MIB skeleton.
1627
1628 2000-09-08 Kunihiro Ishiguro <kunihiro@zebra.org>
1629
1630 * ospf_snmp.c: New file is added.
1631
1632 2000-09-07 David Lipovkov <davidl@nbase.co.il>
1633
1634 * ospf_zebra.c (ospf_interface_delete): Add pseudo interface
1635 treatment.
1636
1637 * ospf_interface.c (interface_config_write): Likewise.
1638
1639 2000-08-17 Kunihiro Ishiguro <kunihiro@zebra.org>
1640
1641 * zebra-0.88 is released.
1642
1643 2000-08-17 Michael Rozhavsky <mike@nbase.co.il>
1644
1645 * ospfd.c (ospf_area_free): Remove virtual link configuration only
1646 when Area is removed.
1647
1648 2000-08-17 Kunihiro Ishiguro <kunihiro@zebra.org>
1649
1650 * ospfd.c (network_area): Revert check for EXTERNAL_INFO
1651 (ZEBRA_ROUTE_CONNECT).
1652 (no_network_area): Likewise.
1653
1654 2000-08-16 Kunihiro Ishiguro <kunihiro@zebra.org>
1655
1656 * ospfd.h (struct ospf): Add distance_table and
1657 distance_{all,intra,inter,external}.
1658
1659 * ospf_zebra.c: Add OSPF distance related functions.
1660
1661 2000-08-15 Gleb Natapov <gleb@nbase.co.il>
1662
1663 * ospf_asbr.c (ospf_external_info_find_lsa): New function added.
1664
1665 * ospf_lsa.c (ospf_default_external_info),
1666 (ospf_default_originate_timer), (ospf_external_lsa_refresh_default):
1667 New function added.
1668
1669 * ospf_zebra.c
1670 (ospf_default_information_originate_metric_type_routemap),
1671 (ospf_default_information_originate_always_metric_type_routemap):
1672 Change name and add route-map function.
1673 (ospf_default_information_originate_metric_routemap),
1674 (ospf_default_information_originate_routemap),
1675 (ospf_default_information_originate_type_metric_routemap):
1676 New DEFUN added.
1677
1678 2000-08-14 Kunihiro Ishiguro <kunihiro@zebra.org>
1679
1680 * ospf_zebra.c (zebra_interface_if_set_value): Change ifindex
1681 restore size from two octet to four.
1682
1683 2000-08-14 Michael Rozhavsky <mike@nbase.co.il>
1684
1685 * ospf_ase.c (ospf_ase_incremental_update): Implement incremental
1686 AS-external-LSA in 16.6 of RFC2328.
1687
1688 2000-08-14 Matthew Grant <grantma@anathoth.gen.nz>
1689
1690 * ospf_interface.c (ospf_if_get_output_cost): Change cost
1691 calculation algorithm.
1692
1693 * ospf_packet (ospf_ls_upd): Fix problem of LSA retransmitting.
1694
1695 2000-08-11 Michael Rozhavsky <mike@nbase.co.il>
1696
1697 * ospf_lsa.c (ospf_maxage_lsa_remover): Fix maxage remover for
1698 AS-external-LSAs.
1699
1700 2000-08-10 Toshiaki Takada <takada@zebra.org>
1701
1702 * ospfd.c (auto_cost_reference_bandwidth): New DEFUN added.
1703 `auto-cost reference-bandwidth' OSPF router command added.
1704
1705 2000-08-08 Gleb Natapov <gleb@nbase.co.il>
1706
1707 * ospf_routemap.c (ospf_route_map_update): New function added.
1708 Add route-map event hook.
1709
1710 2000-08-08 Toshiaki Takada <takada@zebra.org>
1711
1712 * ospf_zebra.c (ospf_distribute_check_connected): If redistribute
1713 prefix is connected route on OSPF enabled interface, suppress to
1714 announce it.
1715
1716 2000-08-08 Matthew Grant <grantma@anathoth.gen.nz>
1717
1718 * ospf_interface.c (ospf_if_get_output_cost):
1719 New function added. Handle bandwidth parameter for cost
1720 calculation.
1721
1722 2000-08-08 Michael Rozhavsky <mike@nbase.co.il>
1723
1724 * ospf_interface.c (interface_config_write): Show interface
1725 configuration regardless interface is down.
1726
1727 * ospf_ase.c (ospf_ase_caocluate_route): Whole rewritten external
1728 route calculate function.
1729
1730 2000-08-08 Gleb Natapov <gleb@nbase.co.il>
1731
1732 * ospf_routemap.c: New file added.
1733
1734 * ospf_asbr.c (ospf_reset_route_map_set_values),
1735 (ospf_route_map_set_compare): New function added.
1736
1737 * ospf_lsa.c (ospf_external_lsa_body_set): Set routemap metric
1738 with AS-external-LSA.
1739
1740 2000-08-05 Kunihiro Ishiguro <kunihiro@zebra.org>
1741
1742 * ospf_ase.c (ospf_ase_calculate_route_add): Pass new->cost to
1743 ospf_zebra_add as metric.
1744 (ospf_ase_calculate_route_add): Likewise.
1745
1746 * ospf_route.c (ospf_route_install): Pass or->cost to
1747 ospf_zebra_add as metric.
1748
1749 * ospf_zebra.c (ospf_zebra_add): Add metric arguemnt.
1750 (ospf_zebra_delete): Likewise.
1751
1752 2000-08-03 Matthew Grant <grantma@anathoth.gen.nz>
1753
1754 * ospf_flood.c (ospf_flood_delayed_lsa_ack): New function added.
1755 Dispatch delayed-ACK with flooding AS-external-LSA across virtual
1756 link.
1757
1758 2000-07-31 Matthew Grant <grantma@anathoth.gen.nz>
1759
1760 * ospfd.c (show_ip_ospf_area): Fix lack of VTY_NEWLINE when
1761 `show ip ospf'.
1762
1763 * ospf_interface.c (ospf_if_free): Fix bug of crash with
1764 Point-to-Point interface.
1765
1766 2000-07-27 Michael Rozhavsky <mike@nbase.co.il>
1767
1768 * ospf_flood.c (ospf_process_self_originated_lsa):
1769 Make sure to clear LSA->param (redistributed external information)
1770 before refreshment.
1771
1772 2000-07-27 Gleb Natapov <gleb@nbase.co.il>
1773
1774 * ospfd.c (refresh_group_limit), (refresh_per_slice),
1775 (refresh_age_diff): New defun added. Refresher related parameter
1776 can be configurable.
1777
1778 2000-07-27 Akihiro Mizutani <mizutani@dml.com>
1779
1780 * ospf_interface.c (interface_config_write): Print `description'
1781 config directive to work.
1782
1783 2000-07-24 Akihiro Mizutani <mizutani@dml.com>
1784
1785 * ospf_interface.c (ospf_if_init): Use install_default for
1786 INTERFACE_NODE.
1787
1788 2000-07-24 Gleb Natapov <gleb@nbase.co.il>
1789
1790 * ospf_packet.c (ospf_ls_upd_send_list), (ospf_ls_upd_send_event),
1791 (ospf_ls_ack_send_list), (ospf_ls_ack_send_event): New function added.
1792 This make sending always as many LS update/Ack combined in one ospf
1793 packet.
1794
1795 2000-07-24 Gleb Natapov <gleb@nbase.co.il>
1796
1797 * ospf_packet.c (ospf_ls_upd_list_lsa): Set NULL to lsa->area if
1798 LSA is AS-external-LSA.
1799
1800 * ospf_nsm.c (nsm_reset_nbr): Do not cancel Inactivity timer.
1801
1802 2000-07-21 Toshiaki Takada <takada@zebra.org>
1803
1804 * ospf_zebra.c (ospf_default_originate_timer): Set timer for
1805 `default-information originate'. Fix some default originate
1806 related functions.
1807
1808 2000-07-12 Toshiaki Takada <takada@zebra.org>
1809
1810 * ospf_lsa.c (stream_put_ospf_metric): New function added.
1811
1812 2000-07-12 Toshiaki Takada <takada@zebra.org>
1813
1814 * ospf_lsa.c (show_ip_ospf_database_router),
1815 (show_ip_ospf_database_network), (show_ip_ospf_database_summary),
1816 (show_ip_ospf_database_summary_asbr), (show_ip_ospf_database_externel),
1817 (show_router_lsa), (show_any_lsa), (show_router_lsa_self),
1818 (show_any_lsa_self): Functions removed.
1819
1820 (show_lsa_prefix_set), (show_lsa_detail_proc), (show_lsa_detail),
1821 (show_lsa_detail_adv_router_proc), (show_lsa_detail_adv_router):
1822 New functions added. Replace above functions.
1823
1824 (show_ip_ospf_database_all), (show_ip_ospf_database_self_originated):
1825 Functions removed.
1826 (show_ip_ospf_database_summary): New functions added. Replace
1827 above functions.
1828
1829 (show_ip_ospf_database_cmd): DEFUN rearranged.
1830 (show_ip_ospf_database_type_id_cmd),
1831 (show_ip_ospf_database_type_id_adv_router_cmd),
1832 (show_ip_ospf_database_type_is_self_cmd): New ALIASes added.
1833 (show_ip_ospf_database_type_adv_rotuer_cmd): New DEFUN added.
1834 (show_ip_ospf_database_type_self_cmd): New ALIAS added.
1835
1836 2000-07-11 Toshiaki Takada <takada@zebra.org>
1837
1838 * ospf_asbr.c (ospf_external_info_new),
1839 (ospf_external_info_free): New functions added.
1840
1841 * ospf_lsa.h (ospf_lsa): Add new member `void *param' to set
1842 origination parameter for external-LSA.
1843 Remove member `redistribute'.
1844
1845 * ospf_zebra.c (ospf_redistirbute_set): When `redistribute'
1846 command executed, metric and metric-type values are overridden.
1847 If one of those is changed refresh AS-external-LSAs for appropriate
1848 type.
1849
1850 2000-07-11 Michael Rozhavsky <mike@nbase.co.il>
1851
1852 * ospf_lsa.c (ospf_summary_lsa_refresh),
1853 (ospf_summary_asbr_lsa_refresh): Make sure to refresh summary-LSAs.
1854
1855 * ospf_abr.c (set_metric): New function added.
1856
1857 2000-07-07 Toshiaki Takada <takada@zebra.org>
1858
1859 * ospf_zebra.c (ospf_default_information_originate_metric_type),
1860 (ospf_default_information_originate_type_metric): New defun added.
1861 Metic and Metric type can be set to default route.
1862 (ospf_default_information_originate_always_metric_type):
1863 (ospf_default_information_originate_always_type_metric):
1864 New defun added. Metric and Metric type can be set to default
1865 always route.
1866
1867 * ospf_zebra.c (ospf_default_metric), (no_ospf_default_metric):
1868 New defun added.
1869
1870 2000-07-06 Gleb Natapov <gleb@nbase.co.il>
1871
1872 * ospf_flood.c (ospf_flood_through_area): Fix bug of considering
1873 on the same interface the LSA was received from.
1874
1875 2000-07-06 Michael Rozhavsky <mike@nbase.co.il>
1876
1877 * ospfd.c (ospf_config_write): Fix bug of printing `area stub'
1878 command with `write mem'.
1879
1880 * ospfd.c (no_router_ospf): Remove installed routes from zebra.
1881
1882 * ospf_zebra.c (ospf_interface_delete): Fix function to handle
1883 zebra interface delete event.
1884
1885 2000-07-06 Toshiaki Takada <takada@zebra.org>
1886
1887 * ospf_zebra.c (ospf_default_information_originate),
1888 (ospf_default_information_originate_always): New DEFUN added.
1889
1890 2000-07-05 Michael Rozhavsky <mike@nbase.co.il>
1891
1892 * ospf_route.c (ospf_terminate): Make sure to remove external route
1893 when SIGINT received.
1894
1895 2000-07-03 Gleb Natapov <gleb@nbase.co.il>
1896
1897 * ospf_flood.c, ospf_ism.c, ospf_lsa,c, ospfd.c: Make sure to free
1898 many structure with `no router ospf'.
1899
1900 2000-06-30 Gleb Natapov <gleb@nbase.co.il>
1901
1902 * ospf_neighbor.c (ospf_nbr_new),
1903 ospf_nsm.c (nsm_timer_set): Start LS update timer only
1904 when neighbor enters Exchange state.
1905
1906 2000-06-29 Gleb Natapov <gleb@nbase.co.il>
1907
1908 * ospf_nsm.c (nsm_timer_set), (nsm_exchange_done),
1909 ospf_packet.c (ospf_db_desc_proc):
1910 Do not cancel DD retransmit timer when Master.
1911
1912 2000-06-29 Gleb Natapov <gleb@nbase.co.il>
1913
1914 * ospf_abr.c (ospf_abr_announce_network_to_area),
1915 (ospf_abr_announce_rtr_to_area)
1916 ospf_ase.c (ospf_ase_rtrs_register_lsa),
1917 ospf_flood.c (ospf_process_self_originated_lsa),
1918 (ospf_flood_through_area), (ospf_ls_request_delete),
1919 ospf_interface.c (ospf_if_free),
1920 ospf_ism.c (ism_change_status),
1921 ospf_lsa.c (ospf_router_lsa_update_timer),
1922 (ospf_router_lsa_install), (ospf_network_lsa_install),
1923 (ospf_lsa_maxage_delete), (ospf_lsa_action),
1924 (ospf_schedule_lsa_flood_area),
1925 ospf_nsm.c (nsm_change_status),
1926 ospf_packet.c (ospf_make_ls_req_func), (ospf_make_ls_ack):
1927 Use ospf_lsa_{lock,unlock} for all looking-up of LSA.
1928
1929 * ospf_flood.c (ospf_ls_request_free): Function deleted.
1930
1931 * ospf_lsa.c (ospf_discard_from_db): New function added.
1932
1933 2000-06-26 Toshiaki Takada <takada@zebra.org>
1934
1935 * ospfd.h (ospf): struct member `external_lsa' name changed to
1936 `lsdb'.
1937
1938 2000-06-26 Toshiaki Takada <takada@zebra.org>
1939
1940 * ospf_lsa.c (ospf_lsa_install), (ospf_router_lsa_install),
1941 (ospf_network_lsa_install), (ospf_summary_lsa_install),
1942 (ospf_summary_asbr_lsa_install), (ospf_external_lsa_install):
1943 Functions re-arranged.
1944
1945 * ospf_lsa.c (IS_LSA_MAXAGE), (IS_LSA_SELF): Macro added.
1946
1947 2000-06-20 Michael Rozhavsky <mike@nbase.co.il>
1948
1949 * ospf_packet.c (ospf_ls_req), (ospf_ls_upd), (ospf_ls_ack): Add
1950 verification of LS type.
1951
1952 2000-06-20 Gleb Natapov <gleb@nbase.co.il>
1953
1954 * ospf_ase.c (ospf_ase_calculate_timer): Add more sanity check
1955 whether rn->info is NULL.
1956
1957 2000-06-20 Toshiaki Takada <takada@zebra.org>
1958
1959 * ospfd.c (show_ip_ospf_interface_sub): Show Router-ID of both
1960 DR and Backup correctly with `show ip ospf interface' command.
1961
1962 2000-06-20 Toshiaki Takada <takada@zebra.org>
1963
1964 * ospf_lsa.c (ospf_lsa_lock), (ospf_lsa_unlock),
1965 (ospf_lsa_discard): These functions are used for avoiding
1966 unexpected reference to freed LSAs.
1967
1968 2000-06-13 Kunihiro Ishiguro <kunihiro@zebra.org>
1969
1970 * ospf_packet.c (ospf_ls_upd): Initialize lsa by NULL to avoid
1971 warning.
1972
1973 2000-06-12 Kunihiro Ishiguro <kunihiro@zebra.org>
1974
1975 * ospf_ase.h (ospf_ase_rtrs_register_lsa): Add prototype.
1976
1977 2000-06-12 Toshiaki Takada <takada@zebra.org>
1978
1979 * ospf_lsa.c (ospf_external_lsa_install): Make sure to register
1980 LSA to rtrs_external when replacing AS-external-LSAs in LSDB.
1981 Fix core dump.
1982
1983 2000-06-10 Toshiaki Takada <takada@zebra.org>
1984
1985 * ospf_lsdb.c (id_to_prefix), (ospf_lsdb_hash_key),
1986 (ospf_lsdb_hash_cmp), (ospf_lsdb_new), (ospf_lsdb_iterator),
1987 (lsdb_free), (ospf_lsdb_free), (ospf_lsdb_add), (ospf_lsdb_delete),
1988 (find_lsa), (ospf_lsdb_lookup), (find_by_id),
1989 (ospf_lsdb_lookup_by_id), (ospf_lsdb_lookup_by_header): Functinos
1990 removed for migration to new_lsdb.
1991
1992 * ospf_lsa.c (ospf_summary_lsa_install),
1993 (ospf_summary_asbr_lsa_install), (ospf_maxage_lsa_remover),
1994 (ospf_lsa_maxage_walker), (ospf_lsa_lookup),
1995 (ospf_lsa_lookup_by_id): Use new_lsdb instead of ospf_lsdb.
1996 (count_lsa), (ospf_lsa_count_table), (ospf_lsa_count),
1997 (ospf_get_free_id_for_prefix): Funcitions removed.
1998
1999 2000-06-09 Gleb Natapov <gleb@nbase.co.il>
2000
2001 * ospf_ism.c (ism_interface_down): Prevent some unneeded DR changes.
2002
2003 * ospf_packet.c (ospf_db_desc_proc): Fix memory leak.
2004 (ospf_hello): Always copy router-ID when hello is received.
2005
2006 2000-06-08 Gleb Natapov <gleb@nbase.co.il>
2007
2008 * ospf_lsa.h (struct ospf_lsa): Add member of pointer to struct
2009 ospf_area.
2010
2011 2000-06-08 Michael Rozhavsky <mike@nbase.co.il>
2012
2013 * ospf_ase.c (ospf_asbr_route_same): New function added.
2014 This function makes sure external route calculation more
2015 precisely.
2016
2017 2000-06-07 Michael Rozhavsky <mike@nbase.co.il>
2018
2019 * ospf_ism.c (ism_change_status): Use ospf_lsa_flush_area for
2020 network-LSA deletion instead of using ospf_lsdb_delete.
2021 Also cancel network-LSA origination timer.
2022
2023 2000-06-07 Levi Harper <lharper@kennedytech.com>
2024
2025 * ospf_interface.c (ospf_if_down): Close read fd when an interface
2026 goes down.
2027
2028 2000-06-05 Kunihiro Ishiguro <kunihiro@zebra.org>
2029
2030 * ospf_asbr.c (ospf_external_info_lookup): Add explicit brace for
2031 avoid ambiguous else.
2032
2033 * ospf_flood.c (ospf_external_info_check): Likewise.
2034
2035 2000-06-05 Toshiaki Takada <takada@zebra.org>
2036
2037 * ospf_nsm.c (nsm_adj_ok): Fix bug of DR election.
2038
2039 2000-06-04 Toshiaki Takada <takada@zebra.org>
2040
2041 * ospf_zebra.c (ospf_default_information_originate),
2042 (no_ospf_default_information_originate): New DEFUN added.
2043
2044 2000-06-03 Toshiaki Takada <takada@zebra.org>
2045
2046 * ospf_lsa.h, ospf_asbr.h (external_info): Struct moved from
2047 ospf_lsa.h to ospf_asbr.h.
2048
2049 * ospf_lsa.c, ospf_asbr.c (ospf_external_info_add),
2050 (ospf_external_info_delete): Function moved from ospf_lsa.c
2051 to ospf_asbr.c.
2052
2053 2000-06-03 Toshiaki Takada <takada@zebra.org>
2054
2055 * ospf_flood.c (ospf_external_info_check): New function added.
2056 (ospf_process_self_orignated_lsa): Make sure to flush
2057 self-originated AS-external-LSA, when router reboot and no longer
2058 originate those AS-external-LSA.
2059
2060 2000-06-02 Toshiaki Takada <takada@zebra.org>
2061
2062 * ospf_network.c (ospf_serv_sock): Remove SO_DONTROUTE
2063 socket option.
2064
2065 * ospf_packet.c (ospf_write): Set MSG_DONTROUTE flag for
2066 unicast destination packets.
2067
2068 2000-06-02 Toshiaki Takada <takada@zebra.org>
2069
2070 * ospf_lsdb.c (new_lsdb_delete): Delete entry from LSDB only when
2071 specified LSA matches.
2072
2073 2000-06-02 Gleb Natapov <gleb@nbase.co.il>
2074
2075 * ospf_network.c (ospf_serv_sock): Set SO_DONTROUTE
2076 socket option.
2077
2078 2000-06-01 Akihiro Mizutani <mizutani@dml.com>
2079
2080 * ospf_dump.c: Replace string `Debugging functions\n' with DEBUG_STR.
2081 Replace string `OSPF information\n' with OSPF_STR.
2082
2083 2000-06-01 Toshiaki Takada <takada@zebra.org>
2084
2085 * ospf_lsdb.[ch]: Use new_lsdb struct for network-LSA instead of
2086 ospf_lsdb.
2087
2088 2000-06-01 Toshiaki Takada <takada@zebra.org>
2089
2090 * ospf_dump.c (config_debug_ospf_packet), (config_debug_ospf_event),
2091 (config_debug_ospf_ism), (config_debug_ospf_nsm),
2092 (config_debug_ospf_lsa), (config_debug_ospf_zebra),
2093 (term_debug_ospf_packet), (term_debug_ospf_event),
2094 (term_debug_ospf_ism), (term_debug_ospf_nsm),
2095 (term_debug_ospf_lsa), (term_debug_ospf_zebra): Repalce debug_ospf_*
2096 variable to use for debug option flags.
2097
2098 (debug_ospf_packet), (debug_ospf_ism), (debug_ospf_nsm),
2099 (debug_ospf_lsa), (debug_ospf_zebra): Set {config,term}_debug_*
2100 flags when vty->node is CONFIG_NODE, otherwise set only term_debug_*
2101 flags.
2102
2103 * ospf_dump.h (CONF_DEBUG_PACKET_ON), (CONF_DEBUG_PACKET_OFF),
2104 (TERM_DEBUG_PACKET_ON), (TERM_DEBUG_PACKET_OFF),
2105 (CONF_DEBUG_ON), (CONF_DEBUG_OFF), (IS_CONF_DEBUG_OSPF_PACKET),
2106 (IS_CONF_DEBUG_OSPF): New Macro added.
2107
2108 2000-05-31 Toshiaki Takada <takada@zebra.org>
2109
2110 * ospfd.c (clear_ip_ospf_neighbor): New DEFUN added.
2111 Currently this command is used for only debugging.
2112
2113 * ospf_nsm.c (nsm_change_status): Make sure thread cancellation
2114 for network-LSA when DR has no full neighbors.
2115
2116 * ospf_nsm.c (ospf_db_summary_clear): New function added.
2117
2118 2000-05-30 Toshiaki Takada <takada@zebra.org>
2119
2120 * ospf_lsdb.c (new_lsdb_insert): LSAs are always freed by
2121 maxage_lsa_remover when LSA is replaced.
2122
2123 2000-05-25 Gleb Natapov <gleb@nbase.co.il>
2124
2125 * ospf_flood.c (ospf_ls_retransmit_delete_nbr_all): Add argument
2126 `struct ospf_area' to remove LSA from Link State retransmission list
2127 of neighbor from only one Area.
2128
2129 2000-05-24 Michael Rozhavsky <mike@nbase.co.il>
2130
2131 * ospf_lsdb.c (ospf_lsdb_add): Preserve flags field when
2132 overriting old LSA with new LSA.
2133
2134 2000-05-24 Gleb Natapov <gleb@nbase.co.il>
2135
2136 * ospf_lsa.c (ospf_router_lsa_body_set): Fix bug of router-LSA
2137 size calculation.
2138
2139 2000-05-22 Michael Rozhavsky <mike@nbase.co.il>
2140
2141 * ospf_route.c (ospf_intra_add_stub):
2142 * ospf_spf.h (struct vertex): Use u_int32_t for distance (cost)
2143 value instead of u_int16_t.
2144
2145 2000-05-22 Axel Gerlach <agerlach@datus.datus.com>
2146
2147 * ospf_ia.c (ospf_ia_network_route): Fix bug of Inter-area route
2148 equal cost path calculation.
2149
2150 2000-05-21 Toshiaki Takada <takada@zebra.org>
2151
2152 * ospf_ase.c (ospf_ase_calculate_route_delete): New function added.
2153 Make sure, when rotuer route is deleted, related external routes
2154 are also deleted.
2155
2156 2000-05-20 Toshiaki Takada <takada@zebra.org>
2157
2158 * ospfd.c (ospf_interface_down): Make sure interface flag is disable
2159 and set fd to -1.
2160
2161 2000-05-16 Toshiaki Takada <takada@zebra.org>
2162
2163 * ospf_asbr.c (ospf_asbr_should_announce), (ospf_asbr_route_remove):
2164 Functions removed.
2165
2166 * ospfd.h (EXTERNAL_INFO): Macro added.
2167 Substitute `ospf_top->external_info[type]' with it.
2168
2169 2000-05-16 Toshiaki Takada <takada@zebra.org>
2170
2171 * ospf_lsa.c (ospf_rtrs_external_remove): New function added.
2172
2173 2000-05-14 Gleb Natapov <gleb@nbase.co.il>
2174
2175 * ospf_flood.c (ospf_ls_retransmit_delete_nbr_all)
2176 * ospf_lsdb.c (new_lsdb_insert)
2177 * ospf_packet.c (ospf_ls_ack): Fix database synchonization problem.
2178
2179 2000-05-14 Gleb Natapov <gleb@nbase.co.il>
2180
2181 * ospf_lsa.h (tv_adjust), (tv_ceil), (tv_floor), (int2tv),
2182 (tv_add), (tv_sub), (tv_cmp): Prototype definition added.
2183
2184 * ospf_nsm.h (ospf_db_summary_delete_all): Prototype definition added.
2185
2186 2000-05-13 Toshiaki Takada <takada@zebra.org>
2187
2188 * ospf_lsa.[ch] (ospf_lsa): struct timestamp type is changed from
2189 time_t to struct timeval.
2190 (tv_adjust), (tv_ceil), (tv_floor), (int2tv), (tv_add),
2191 (tv_sub), (tv_cmp): timeval utillity functions added.
2192
2193 2000-05-12 Toshiaki Takada <takada@zebra.org>
2194
2195 * ospf_lsa.[ch] (ospf_schedule_update_router_lsas): Delete function.
2196 Change to use macro OSPF_LSA_UPDATE_TIMER instead of using
2197 this function.
2198 router-LSA refresh timer related stuff is re-organized.
2199
2200 2000-05-10 Gleb Natapov <gleb@nbase.co.il>
2201
2202 * ospf_interface.c (ospf_vl_set_params):
2203 * ospf_packet.c (ospf_check_network_mask):
2204 * ospf_spf.[ch] (ospf_spf_next):
2205 Remove field address from `struct vertex', and search for peer
2206 address of virtual link in function `ospf_vl_set_params' instead.
2207
2208 2000-05-10 Gleb Natapov <gleb@nbase.co.il>
2209
2210 * ospf_packet.c (ospf_ls_upd): Fix some memory leak related LSA.
2211
2212 2000-05-08 Thomas Molkenbur <tmo@datus.com>
2213
2214 * ospf_packet.c (ospf_packet_dup): Replace ospf_steram_copy()
2215 with ospf_stream_dup() to fix memory leak.
2216
2217 2000-05-08 Michael Rozhavsky <mike@nbase.co.il>
2218
2219 * ospf_flood.c (ospf_flood_through_area): Fix the problem of
2220 LSA update without DROther.
2221
2222 2000-05-04 Gleb Natapov <gleb@nbase.co.il>
2223
2224 * ospf_spf.c (ospf_vertex_free): Fix memory leak of SPF calculation.
2225
2226 2000-05-03 Toshiaki Takada <takada@zebra.org>
2227
2228 * ospf_neighbor.c (ospf_db_summary_add): Use new_lsdb struct
2229 instead linked-list.
2230 (ospf_db_summary_count), (ospf_db_summary_isempty):
2231 New function added.
2232
2233 * ospf_lsa.c (ospf_rotuer_lsa): Re-arrange and divide functions.
2234
2235 2000-05-02 Gleb Natapov <gleb@nbase.co.il>
2236
2237 * ospf_lsdb.c (new_lsdb_cleanup): Fix memory leak. When LSDB are
2238 not needed any more, then free them.
2239
2240 2000-05-02 Toshiaki Takada <takada@zebra.org>
2241
2242 * ospfd.c (timers_spf), (no_timers_spf): New defun added.
2243 SPF calculation timers related stuff is rearranged.
2244
2245 * ospf_spf.c (ospf_spf_calculate_timer_add): Function removed.
2246 SPF timer is scheduled by SPF calculation delay and holdtime
2247 configuration variable.
2248
2249 * ospf_lsa.c (ospf_external_lsa_nexthop_get): Set AS-external-LSA's
2250 forwarding address when nexthop learned by other protocols is
2251 in the OSPF domain.
2252
2253 * ospf_zebra.c (ospf_redistribute_source_metric_type),
2254 (ospf_redistribute_source_type_metric): Re-arrange DEFUNs and
2255 ALIASes.
2256
2257 2000-05-01 Toshiaki Takada <takada@zebra.org>
2258
2259 * ospf_flood.c (ospf_ls_retransmit_count),
2260 (ospf_ls_retransmit_isempty): New function added.
2261
2262 (ospf_ls_retransmit_add), (ospf_ls_retransmit_delete),
2263 (ospf_ls_retransmit_clear), (ospf_ls_retransmit_lookup),
2264 (ospf_ls_retransmit_delete_all), (ospf_ls_retransmit_delete_nbr_all),
2265 (ospf_ls_retransmit_add_nbr_all): Replace these functions to use
2266 new_lsdb.
2267
2268 2000-04-29 Toshiaki Takada <takada@zebra.org>
2269
2270 * ospfd.c (no_network_area): Add check Area-ID whether specified
2271 Area-ID with prefix matches config.
2272
2273 2000-04-27 Toshiaki Takada <takada@zebra.org>
2274
2275 * ospf_lsa.c (ospf_maxage_lsa_remover): Fix problem of
2276 remaining withdrawn routes on zebra.
2277
2278 2000-04-25 Michael Rozhavsky <mike@nbase.co.il>
2279
2280 * ospf_nsm.c (nsm_kill_nbr), (nsm_ll_down), (nsm_change_status),
2281 (ospf_nsm_event): Fix network-LSA re-origination problem.
2282
2283 2000-04-24 Toshiaki Takada <takada@zebra.org>
2284
2285 * ospf_nsm.c (ospf_db_desc_timer): Fix bug of segmentation fault
2286 with DD retransmission.
2287
2288 * ospf_nsm.c (nsm_kill_nbr): Fix bug of re-origination when
2289 a neighbor disappears.
2290
2291 2000-04-23 Michael Rozhavsky <mike@nbase.co.il>
2292
2293 * ospf_abr.c (ospf_abr_announce_network_to_area): Fix bug of
2294 summary-LSAs reorigination. Correctly copy OSPF_LSA_APPROVED
2295 flag to new LSA. when summary-LSA is reoriginatd.
2296
2297 * ospf_flood.c (ospf_flood_through_area): Fix bug of flooding
2298 procedure. Change the condition of interface selection.
2299
2300 2000-04-21 Toshiaki Takada <takada@zebra.org>
2301
2302 * ospf_lsa.c (ospf_refresher_register_lsa): Fix bug of refresh never
2303 occurs.
2304
2305 * ospfd.c (show_ip_ospf_neighbor_id): New defun added.
2306 `show ip ospf neighbor' related commands are re-arranged.
2307
2308 2000-04-20 Toshiaki Takada <takada@zebra.org>
2309
2310 * ospf_dump.c (debug_ospf_zebra): New defun added.
2311 Suppress zebra related debug information.
2312
2313 2000-04-19 Toshiaki Takada <takada@zebra.org>
2314
2315 * ospf_zebra.c (ospf_distribute_list_update_timer),
2316 (ospf_distribute_list_update), (ospf_filter_update):
2317 New function added. Re-organize `distribute-list' router ospf
2318 command.
2319
2320 2000-04-13 Michael Rozhavsky <mike@nbase.co.il>
2321
2322 * ospf_packet.c (ospf_make_ls_upd): Add check for MAX_AGE.
2323
2324 2000-04-14 Michael Rozhavsky <mike@nbase.co.il>
2325
2326 * ospf_packet.c (ospf_make_ls_upd): Increment LS age by configured
2327 interface transmit_delay.
2328
2329 2000-04-14 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2330
2331 * ospf_interface.c (ip_ospf_cost), (no_ip_ospf_cost):
2332 Add to schedule router_lsa origination when the interface cost changes.
2333
2334 2000-04-12 Toshiaki Takada <takada@zebra.org>
2335
2336 * ospf_lsa.c (ospf_refresher_register_lsa),
2337 (ospf_refresher_unregister_lsa): Fix bug of core dumped.
2338
2339 * ospfd.c (no_router_ospf): Fix bug of core dumped.
2340
2341 2000-03-29 Toshiaki Takada <takada@zebra.org>
2342
2343 * ospf_nsm.c (nsm_oneway_received): Fix bug of MS flag unset.
2344
2345 2000-03-29 Michael Rozhavsky <mike@nbase.co.il>
2346
2347 * ospf_lsa.c (ospf_network_lsa):
2348 * ospf_nsm.c (ospf_nsm_event): Fix bug of Network-LSA originated
2349 in stub network.
2350
2351 2000-03-28 Toshiaki Takada <takada@zebra.org>
2352
2353 * ospf_nsm.c (nsm_bad_ls_req), (nsm_seq_number_mismatch),
2354 (nsm_oneway_received): Fix bug of NSM state flapping between
2355 ExStart and Exchange.
2356
2357 2000-03-28 Toshiaki Takada <takada@zebra.org>
2358
2359 * ospf_packet.h (strcut ospf_header): Fix the size of ospf_header,
2360 change u_int8_t to u_char.
2361
2362 2000-03-27 Toshiaki Takada <takada@zebra.org>
2363
2364 * ospf_lsa.c (ospf_lsa_checksum): Take care of BIGENDIAN architecture.
2365
2366 2000-03-27 Toshiaki Takada <takada@zebra.org>
2367
2368 * ospfd.c (ospf_interface_run): Make sure Address family matches.
2369
2370 2000-03-26 Love <lha@s3.kth.se>
2371
2372 * ospf_packet.c (ospf_write): Chack result of sendto().
2373
2374 2000-03-26 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2375
2376 * ospf_nsm.c (nsm_oneway_received): Fix bug of 1-WayReceived in NSM.
2377
2378 2000-03-23 Libor Pechacek <farco@clnet.cz>
2379
2380 * ospf_lsa.c (ospf_network_lsa)
2381 * ospf_lsdb.c (new_lsdb_insert): Fix bug of accessing to
2382 unallocated memory.
2383
2384 2000-03-23 Toshiaki Takada <takada@zebra.org>
2385
2386 * ospfd.c (ospf_config_write): Fix bug of duplicate line for
2387 `area A.B.C.D authentication'.
2388
2389 2000-03-22 Toshiaki Takada <takada@zebra.org>
2390
2391 * ospf_debug.c (debug_ospf_lsa), (no_debug_ospf_lsa): Defun added.
2392 Suppress all zlog related to LSAs with this config option.
2393
2394 2000-03-21 Kunihiro Ishiguro <kunihiro@zebra.org>
2395
2396 * ospf_nsm.c (ospf_nsm_event): Add check for NSM_InactivityTimer.
2397
2398 2000-03-21 Toshiaki Takada <takada@zebra.org>
2399
2400 * ospf_packet.c (ospf_ls_upd_timer), (ospf_ls_req):
2401 Fix bug of memory leak about linklist.
2402
2403 * ospf_flood.c (ospf_flood_through_area): Likewise.
2404
2405 2000-03-18 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2406
2407 * ospf_flood.c (ospf_ls_retransmit_lookup): Add checksum comparison
2408 to identify LSA uniquely. This fix routes lost.
2409
2410 2000-03-18 Toshiaki Takada <takada@zebra.org>
2411
2412 * ospf_ase.c (ospf_find_asbr_route): Add sanity check with router
2413 routing table.
2414
2415 2000-03-17 Alex Zinin <zinin@amt.ru>
2416
2417 * ospf_spf.[ch]: Bug fix.
2418 The 2nd stage of Dijkstra could consider one vertex
2419 more than once if there is more than one link
2420 between the routers, thus adding extra CPU overhead
2421 and extra next-hops.
2422 Fixed.
2423
2424 2000-03-15 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2425
2426 * ospf_nsm.c (nsm_inactivity_timer): Changed to call nsm_kill_nbr().
2427
2428 2000-03-14 Toshiaki Takada <takada@zebra.org>
2429
2430 * ospf_route.c (ospf_route_copy_nexthops): Fix bug of memory leak of
2431 ospf_path. Actually ignore merging ospf_route with completely same
2432 paths.
2433
2434 2000-03-12 Toshiaki Takada <takada@zebra.org>
2435
2436 * ospf_lsa.c (show_as_external_lsa_detail): fix bug of
2437 external route tag byte order.
2438
2439 2000-03-11 Toshiaki Takada <takada@zebra.org>
2440
2441 * ospf_lsdb.c (ospf_lsdb_insert): New function added.
2442
2443 2000-03-09 Toshiaki Takada <takada@zebra.org>
2444
2445 * ospf_lsa.c (ospf_external_lsa_install),
2446 (ospf_lsa_lookup), (show_ip_ospf_database_all),
2447 (show_ip_ospf_database_self_originate): Use struct new_lsdb for
2448 LSDB of AS-external-LSAs instead of ospf_lsdb.
2449
2450 * ospf_lsa.c (ospf_lsa_unique_id): New function added.
2451 Use for assigning Unique Link State ID instead of
2452 ospf_get_free_id_for_prefix().
2453
2454 2000-03-09 Toshiaki Takada <takada@zebra.org>
2455
2456 * ospf_ase.c (ospf_ase_calculate_timer): Fix bug of segmentation
2457 fault reported by George Bonser <george@siteROCK.com>.
2458
2459 2000-03-07 Libor Pechacek <farco@clnet.cz>
2460
2461 * ospfd.c (ospf_interface_down): Fix bug of segmentation fault.
2462
2463 2000-03-06 Toshiaki Takada <takada@zebra.org>
2464
2465 * ospf_route.c (ospf_route_cmp): Change meaning of return values.
2466
2467 2000-03-02 Alex Zinin <zinin@amt.ru>
2468 * ospfd.h, ospf_ia.h
2469 New Shortcut ABR code. Now area's flag can be configured
2470 with Default, Enable, and Disable values.
2471 More info will be in the new ver of I-D soon (see IETF web).
2472
2473 2000-02-25 Toshiaki Takada <takada@zebra.org>
2474
2475 * ospf_lsa.c (ospf_lsa_header_set), (ospf_external_lsa_body_set),
2476 (osfp_external_lsa_originate), (ospf_external_lsa_queue),
2477 (ospf_external_lsa_originate_from_queue): New function added.
2478 (ospf_external_lsa): Function removed.
2479
2480 * ospf_zebra.c (ospf_zebra_read_ipv4): Originate AS-external-LSA
2481 when listen a route from Zebra, instead creating external route.
2482
2483 * ospf_asbr.c (ospf_asbr_route_add_flood_lsa),
2484 (ospf_asbr_route_add_queue_lsa),
2485 (ospf_asbr_route_install_lsa), (ospf_asbr_route_add):
2486 Functions removed.
2487
2488 * ospf_ase.c (process_ase_lsa): Function will not be used.
2489 (ospf_ase_calculate), (ospf_ase_calculate_route_add),
2490 (ospf_ase_calculate_new_route), (ospf_ase_caluculate_asbr_route):
2491 process_ase_lsa () is separated to these functions.
2492
2493 OSPF AS-external-LSA origination is whole re-organized.
2494
2495 2000-02-18 Toshiaki Takada <takada@zebra.org>
2496
2497 * ospf_packet.c (ospf_ls_upd): Fix bug of OSPF LSA memory leak.
2498
2499 * ospf_asbr.c (ospf_asbr_route_add_flood_lsa),
2500 (ospf_asbr_route_add_queue_lsa): Fix bug of OSPF external route
2501 memory leak.
2502
2503 2000-02-12 Kunihiro Ishiguro <kunihiro@zebra.org>
2504
2505 * ospf_asbr.c (ospf_asbr_route_install_lsa): Re-calculate LSA
2506 checksum after change Advertised Router field.
2507
2508 2000-02-09 Toshiaki Takada <takada@zebra.org>
2509
2510 * ospf_asbr.c (ospf_external_route_lookup): Add new function.
2511
2512 2000-02-08 Toshiaki Takada <takada@zebra.org>
2513
2514 * ospfd.c (ospf_router_id_get), (ospf_router_id_update),
2515 (ospf_router_id_update_timer): Router ID decision algorithm is changed.
2516 Router ID is chosen from all of eligible interface addresses even if
2517 it is not enable to OSPF.
2518
2519 2000-02-08 Toshiaki Takada <takada@zebra.org>
2520
2521 * ospf_asbr.c (ospf_asbr_route_add): Function divided to
2522 ospf_asbr_route_add_flood_lsa, ospf_asbr_route_add_queue_lsa and
2523 ospf_asbr_route_install_lsa. If Router-ID is not set, then LSA is
2524 waited to install to LSDB.
2525 `0.0.0.0 adv_router' AS-external-LSA origination bug was fixed.
2526
2527 2000-02-01 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2528
2529 * ospf_flood.c (ospf_ls_retransmit_lookup): Compare LS seqnum
2530 in the ACK before deleting.
2531
2532 * ospf_packet.c (ospf_hello): Reset the flags after a shutdown
2533 and no shutdown of the interface.
2534
2535 2000-01-31 Toshiaki Takada <takada@zebra.org>
2536
2537 * ospf_packet.c (ospf_ls_req): Send multiple Link State Update
2538 packets respond to a Link State Request packet.
2539
2540 * ospfd.c (show_ip_ospf_neighbor_detail_sub): Show thread state.
2541
2542 * ospf_interface.c (ospf_vl_new): Crash when backbone area
2543 is not configured and set virtual-link to no-backbone area,
2544 bug fixed.
2545
2546 2000-01-30 Kunihiro Ishiguro <kunihiro@zebra.org>
2547
2548 * ospf_neighbor.h (struct ospf_neighbor): Add pointer to last send
2549 LS Request LSA.
2550
2551 * ospf_packet.c (ospf_ls_upd): Comment out LS request list
2552 treatment. That should be done in OSPF flooding procedure.
2553
2554 * ospf_flood.c (ospf_flood_through_area): Enclose
2555 ospf_check_nbr_loding inside if-else close.
2556
2557 2000-01-31 Toshiaki Takada <takada@zebra.org>
2558
2559 * ospf_packet.c (ospf_make_ls_upd): Fix bug of #LSAs counting.
2560
2561 2000-01-29 Toshiaki Takada <takada@zebra.org>
2562
2563 * ospf_packet.c (ospf_make_md5_digest): Fix bug of md5 authentication.
2564
2565 2000-01-28 Toshiaki Takada <takada@zebra.org>
2566
2567 * ospfd.c (show_ip_ospf): Show Number of ASE-LSAs.
2568
2569 2000-01-27 Kunihiro Ishiguro <kunihiro@zebra.org>
2570
2571 * ospf_packet.c (ospf_make_db_desc): Don't use rm_list for
2572 removing LSA from nbr->db_summary.
2573
2574 2000-01-27 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2575
2576 * ospf_packet.c (ospf_ls_upd_send): Set AllSPFRouters to
2577 destination when the link is point-to-point.
2578 (ospf_ls_ack_send_delayed): Likewise.
2579
2580 2000-01-27 Kunihiro Ishiguro <kunihiro@zebra.org>
2581
2582 * ospf_flood.c (ospf_ls_request_delete_all): Fix bug of next
2583 pointer lookup after the node is freed.
2584
2585 2000-01-26 Kunihiro Ishiguro <kunihiro@zebra.org>
2586
2587 * ospf_asbr.c (ospf_asbr_route_add): Instead of scanning all AS
2588 external route, use ospf_top->external_self.
2589
2590 2000-01-27 Toshiaki Takada <takada@zebra.org>
2591
2592 * ospf_lsa.c (ospf_forward_address_get): New function added.
2593
2594 * ospf_asbr.c (ospf_asbr_check_lsas): Originate AS-external-LSA
2595 only when it should be replaced.
2596
2597 2000-01-25 Kunihiro Ishiguro <kunihiro@zebra.org>
2598
2599 * ospf_flood.c (ospf_ls_retransmit_clear): Delete list node.
2600
2601 * ospf_lsa.c (ospf_lsa_free): Reduce logging message using
2602 ospf_zlog value.
2603
2604 * ospf_ism.c (ism_change_status): Fix bug of DR -> non DR status
2605 change. Self originated LSA is freed but not deleted from lsdb.
2606
2607 2000-01-24 Kunihiro Ishiguro <kunihiro@zebra.org>
2608
2609 * ospf_ism.c (ism_interface_down): Don't use router_id for
2610 detecting self neighbor structure. Instead of that compare
2611 pointer itself.
2612
2613 * ospf_neighbor.c (ospf_nbr_free): Cancel all timer when neighbor
2614 is deleted.
2615 (ospf_nbr_free): Free last send packet.
2616
2617 * ospf_neighbor.h (struct ospf_neighbor): Remove host strucutre.
2618 Instead of that src is introduced.
2619
2620 * ospf_nsm.h: Enclose macro defenition with do {} while (0).
2621
2622 2000-01-17 Kunihiro Ishiguro <kunihiro@zebra.org>
2623
2624 * ospfd.c: Change part of passive interface implementation. For
2625 passive interface just disabling sending/receiving Hello on the
2626 interface.
2627
2628 2000-01-16 Kai Bankett <kai.bankett@vew-telnet.net>
2629
2630 * ospf_interface.h (OSPF_IF_PASSIVE): Add passive flag.
2631 * ospf_interface.c (ospf_if_lookup_by_name): Add new function.
2632 * ospf_lsa.c (ospf_router_lsa): Skip passive interface.
2633 * ospfd.c (passive_interface): New command passive-interface is
2634 added.
2635 (ospf_config_write): Print passive interface.
2636
2637 2000-01-15 Toshiaki Takada <takada@zebra.org>
2638
2639 * ospf_interface.h (crypt_key): New struct added to store
2640 multiple cryptographic autheitication keys.
2641 (ospf_interface): struct changed.
2642
2643 * ospf_interface.c: ospf_crypt_key_new, ospf_crypt_key_add,
2644 ospf_crypt_key_lookup, ospf_crypt_key_delete: new functions added.
2645
2646 * ospf_packet.c (ip_ospf_message_digest_key): Changed to store
2647 multiple cryptographic authentication keys.
2648
2649 2000-01-14 Toshiaki Takada <takada@zebra.org>
2650
2651 * ospf_interface.c: DEFUN (if_ospf_*) commands changed name to
2652 ip_ospf_* ().
2653 Old notation `ospf *' still remains backward compatibility.
2654
2655 1999-12-29 Alex Zinin <zinin@amt.ru>
2656 * ospf_lsa.c: ospf_lsa_more_recent() bug fix
2657 * ospf_nsm.c, ospf_packet.c: remove nbr data struct when
2658 int goes down, also check DD flags correctly (bug fix)
2659
2660 1999-12-28 Alex Zinin <zinin@amt.ru>
2661 * "redistribute <source> metric-type (1|2) metric <XXX>" added
2662
2663 1999-12-23 Alex Zinin <zinin@amt.ru>
2664 * added RFC1583Compatibility flag
2665 * added dynamic interface up/down functionality
2666
2667 1999-11-19 Toshiaki Takada <takada@zebra.org>
2668
2669 * ospf_neighbor.h (struct ospf_neighbor): Add member state_change
2670 for NSM state change statistics.
2671
2672 1999-11-19 Toshiaki Takada <takada@zebra.org>
2673
2674 * ospfd.c (show_ip_ospf_neighbor_detail),
2675 (show_ip_ospf_neighbor_int_detail): DEFUN Added.
2676
2677 1999-11-14 Kunihiro Ishiguro <kunihiro@zebra.org>
2678
2679 * ospf_asbr.c (ospf_asbr_check_lsas): Add check of
2680 lsa->refresh_list.
2681
2682 1999-11-11 Toshiaki Takada <takada@zebra.org>
2683
2684 * ospf_ia.[ch] (OSPF_EXAMINE_SUMMARIES_ALL): Macro added.
2685 This macro is expanded to ospf_examine_summaries ()
2686 for SUMMARY_LSA and SUMMARY_LSA_ASBR.
2687 (OSPF_EXAMINE_TRANSIT_SUMMARIES_ALL): Macro added.
2688 This macro is expanded to ospf_examine_transit_summaries ()
2689 for SUMMARY_LSA and SUMMARY_LSA_ASBR.
2690
2691 1999-11-11 Toshiaki Takada <takada@zebra.org>
2692
2693 * ospf_lsa.[ch] (ospf_find_self_summary_lsa_by_prefix): Changed to
2694 macro OSPF_SUMMARY_LSA_SELF_FIND_BY_PREFIX.
2695 (ospf_find_self_summary_asbr_lsa_by_prefix): Changed to
2696 macro OSPF_SUMMARY_ASBR_LSA_SELF_FIND_BY_PREFIX.
2697 (ospf_find_self_external_lsa_by_prefix): Changed to
2698 macro OSPF_EXTERNAL_LSA_SELF_FIND_BY_PREFIX.
2699
2700 1999-11-11 Toshiaki Takada <takada@zebra.org>
2701
2702 * ospfd.c (ospf_abr_type): ospf_abr_type_cisco, ospf_abr_type_ibm,
2703 ospf_abr_type_shortcut and ospf_abr_type_standard DEFUNs are
2704 combined.
2705 * ospfd.c (no_ospf_abr_type): no_ospf_abr_type_cisco,
2706 no_ospf_abr_type_ibm and no_ospf_abr_type_shortcut DEFUNS are
2707 combined.
2708
2709 1999-11-10 Toshiaki Takada <takada@zebra.org>
2710
2711 * ospf_route.c (ospf_lookup_int_by_prefix): Move function to
2712 ospf_interface.c and change name to ospf_if_lookup_by_prefix ().
2713
2714 1999-11-01 Alex Zinin <zinin@amt.ru>
2715 * ospf_packet.c
2716 some correction to LSU processing
2717
2718 * ospf_lsa.c ospfd.h
2719 randomize initial LSA refreshment interval
2720 and limit the size of LSA-group to 10
2721 to let randomization work more effectively.
2722
2723 1999-10-31 Alex Zinin <zinin@amt.ru>
2724 * ospf_interface.c
2725 cancel t_network_lsa_self
2726 when freeing int structure
2727
2728 * ospf_abr.c ospf_asbr.c ospf_flood.c ospf_lsa.c
2729 ospf_lsa.h ospf_lsdb.h ospfd.c ospfd.h
2730
2731 Summary and ASE LSA refreshment functions
2732 added---LSA refreshment is paced to 70 LSAs
2733 per sec to avoid link overflow. Refreshment events
2734 are further randomized within a 10 sec interval
2735 to avoid syncing.
2736
2737 Also the sigfault of memcmp() in ospf_lsa_is_different()
2738 is fixed.
2739
2740 1999-10-30 Alex Zinin <zinin@amt.ru>
2741 * ospf_nsm.c
2742 Fix the bug where MAX_AGE LSAs
2743 are included into the DB summary.
2744
2745 * ospf_interface.c
2746 allocate 2*MTU input buffer instead of just MTU
2747 for the cases when the other router mistakenly
2748 sends larger packets thus causing fragmentation, etc.
2749
2750 * ospf_nsm.c
2751 in nsm_reset_nbr() lists should be freed
2752 not when they are empty.
2753
2754 1999-10-29 Kunihiro Ishiguro <kunihiro@zebra.org>
2755
2756 * ospf_zebra.c (ospf_acl_hook): Move OSPF_IS_ASBR and OSPF_IS_ABR
2757 check inside of if (ospf_top).
2758
2759 1999-10-29 Alex Zinin <zinin@amt.ru>
2760 * ospf_lsa.c ospf_lsdb.c :
2761 add assertion in lsa and lsa->data alloc functions,
2762 as well as in lsdb_add for new->data
2763
2764 * ospf_lsdb.c: free hash table correctly
2765
2766 1999-10-28 John Capo <jc@irbs.com>
2767
2768 * ospf_packet.h (OSPF_PACKET_MAX): Correct MAX packet length
2769 calculation
2770
2771 1999-10-27 Kunihiro Ishiguro <kunihiro@zebra.org>
2772
2773 * OSPF-TRAP-MIB.txt: New file added. Edited version of RFC1850.
2774
2775 * OSPF-MIB.txt: New file added. Edited version of RFC1850.
2776
2777 1999-10-27 Alex Zinin <zinin@amt.ru>
2778 * ospfd, ospf_zebra, ospf_abr
2779 "area import-list" command is added.
2780 This command allows to filter the inter-area routes
2781 injected into an area. Access list hook function
2782 extended to invalidate area exp/imp lists.
2783
2784 1999-10-25 Yoshinobu Inoue <shin@nd.net.fujitsu.co.jp>
2785
2786 * ospfd.c (ospf_interface_run): Enable to detect P2P network
2787 on an OSPF interface.
2788
2789 1999-10-19 Jordan Mendelson <jordy@wserv.com>
2790
2791 * ospf_lsdb.c (ospf_lsdb_add): Fix bug of crash
2792 in ospf_ls_retransmit_lookup ().
2793
2794 1999-10-19 Vladimir B. Grebenschikov <vova@express.ru>
2795
2796 * ospf_route.c: Workaround about installation of OSPF routes into
2797 the zebra daemon. Add checking of existance routes. Free
2798 ospf_top->old_table if it exists.
2799
2800 1999-10-15 Jordan Mendelson <jordy@wserv.com>
2801
2802 * Add support for MD5 authentication.
2803
2804 1999-10-12 Alex Zinin <zinin@amt.ru>
2805 * ospfd.c, ospfd.h, ospf_abr.c:
2806 a new command "area export-list" was added, it allows
2807 the admin. to control which intra-area routes are
2808 announced to other areas by the ABR
2809
2810 1999-10-12 Alex Zinin <zinin@amt.ru>
2811 * ospf_asbr.c (ospf_asbr_check_lsas): Fix bug of coredump
2812 when "no redistribute" is used after a distribute list
2813 denying some networks was used
2814
2815 1999-10-05 Toshiaki Takada <takada@zebra.org>
2816
2817 * ospf_route.c (ospf_path_dup): New function added.
2818
2819 1999-10-05 Toshiaki Takada <takada@zebra.org>
2820
2821 * ospf_interface.[ch]: Some of VL related funciton name changed.
2822
2823 1999-09-27 Alex Zinin <zinin@amt.ru>
2824
2825 * ospf_zebra.c: Distribute-list functionality added
2826
2827 1999-09-27 Toshiaki Takada <takada@zebra.org>
2828
2829 * ospfd.c (show_ip_ospf): Fix bug of segmentation fault when no ospf
2830 instance exists.
2831
2832 1999-09-25 Kunihiro Ishiguro <kunihiro@zebra.org>
2833
2834 * ospfd.c (ospf_interface_down): Fix bug of misusing nextnode()
2835 instead of node->next. Reported by Hiroki Ishibashi
2836 <ishibasi@dcd.abk.nec.co.jp>.
2837
2838 * ospf_route.c (show_ip_ospf_route): Add check for ospf is enabled
2839 or not.
2840
2841 1999-09-23 Alex Zinin <zinin@amt.ru>
2842
2843 * stub area support added
2844
2845 1999-09-23 Alex Zinin <zinin@amt.ru>
2846
2847 * fwd_addr in ASE-LSAs is now set correctly
2848 * ASE routing changed to check the fwd_addr
2849 and skip the route if the addr points to one
2850 of our interfaces to avoid loops.
2851
2852 1999-09-22 Alex Zinin <zinin@amt.ru>
2853
2854 * ospf_interface:
2855 ospf_vls_in_area() added, it returns
2856 the number of VLs configured through the area
2857
2858 * ospf_interface.c ospf_lsa.c ospf_lsdb.c ospfd.c
2859 honor correct mem alloc
2860
2861 1999-09-22 Alex Zinin <zinin@amt.ru>
2862
2863 * memory.[ch]:
2864 Some OSPF mem types added,
2865 plus more info in "show mem"
2866
2867 1999-09-21 Alex Zinin <zinin@amt.ru>
2868
2869 * ospfd.c:
2870 "area range substitute" added.
2871 It can be used on NAT-enabled (IP-masquarade)
2872 routers to announce private networks
2873 from an area as public ones into the outside
2874 world (not in the RFC, btw :)
2875
2876 1999-09-21 Alex Zinin <zinin@amt.ru>
2877
2878 * ospfd.c:
2879 "area range suppress" added.
2880 This command allows to instruct the router
2881 to be silent about specific ranges, i.e.,
2882 it is a method of route filtering on area
2883 borders
2884
2885 1999-09-21 Alex Zinin <zinin@amt.ru>
2886
2887 * ospfd.c VLs removed when "no network area" executed
2888
2889 1999-09-20 Alex Zinin <zinin@amt.ru>
2890
2891 * ospf_ase.c bug fix for not-zero fwd_addr
2892 and directly connected routes.
2893
2894 1999-09-20 Yon Uriarte <yon@plannet.de>
2895
2896 * ospf_packet.c (ospf_make_ls_req): Introduce delta value for
2897 checking the length of OSPF packet exceeds MTU or not.
2898
2899 * ospf_lsa.c (ospf_lsa_different): Apply ntohs for checking
2900 l1->data->length.
2901
2902 1999-09-18 Alex Zinin <zinin@amt.ru>
2903
2904 * ospf_lsa.c bug fix for ospf_network_lsa() to
2905 include itself into the RID list
2906
2907 1999-09-10 Alex Zinin <zinin@amt.ru>
2908
2909 * Alternative ABR behaviors IBM/Cisco/Shortcut
2910 implemented
2911
2912 1999-09-10 Alex Zinin <zinin@amt.ru>
2913
2914 * router and network-LSA origination
2915 changed to honor MinLSInterval
2916
2917 1999-09-08 Alex Zinin <zinin@amt.ru>
2918
2919 * modified ABR behavior to honor VLs and transit
2920 areas
2921
2922 1999-09-07 Alex Zinin <zinin@amt.ru>
2923
2924 * completed VL functionality
2925
2926 1999-09-06 Kunihiro Ishiguro <kunihiro@zebra.org>
2927
2928 * ospf_asbr.c: New file.
2929 ospf_asbr.h: New file.
2930
2931 * ospf_zebra.c (ospf_redistribute_connected): Add redistribute
2932 related stuff.
2933
2934 1999-09-05 Kunihiro Ishiguro <kunihiro@zebra.org>
2935
2936 * ospfd.h (OSPF_FLAG_VIRTUAL_LINK): Change OSPF_FLAG_VEND to
2937 OSPF_FLAG_VIRTUAL_LINK for comprehensiveness.
2938
2939 1999-09-03 Kunihiro Ishiguro <kunihiro@zebra.org>
2940
2941 * ospf_spf.c (ospf_spf_register): Change name from
2942 ospf_spf_route_add() to ospf_spf_register().
2943 Include "ospfd/ospf_abr.h" for ospf_abr_task() prototype.
2944
2945 1999-09-02 Kunihiro Ishiguro <kunihiro@zebra.org>
2946
2947 * ospf_lsa.c (ospf_external_lsa_install): Change to update
2948 lsa->data rather than install new one, when same id lsa is already
2949 installed.
2950
2951 1999-09-01 Kunihiro Ishiguro <kunihiro@zebra.org>
2952
2953 * ospf_lsa.c (ospf_router_lsa_install): Return lsa value.
2954 (ospf_network_lsa_install): Likewise.
2955 (ospf_summary_lsa_install): Likewise.
2956 (ospf_summary_asbr_lsa_install): Likewise.
2957 (ospf_external_lsa_install): Likewise.
2958
2959 * ospf_spf.c (ospf_spf_calculate): Comment out debug function
2960 ospf_rtrs_print().
2961
2962 1999-08-31 Kunihiro Ishiguro <kunihiro@zebra.org>
2963
2964 * ospf_spf.c (ospf_rtrs_free): Add ospf_spf_calculate() for
2965 freeing rtrs.
2966
2967 1999-08-31 Toshiaki Takada <takada@zebra.org>
2968
2969 * ospf_lsa.c (show_ip_ospf_database_summary),
2970 (show_ip_ospf_database_summary_asbr),
2971 (show_ip_ospf_database_external): New function added.
2972 `show ip ospf database summary',
2973 `show ip ospf database asbr-summary'
2974 `show ip ospf database external' command can be used.
2975
2976 * ospf_lsa.c (ospf_lsa_count_table): New function added.
2977 (show_ip_ospf_database_all): show nothing if a type of LSA
2978 does not exist.
2979
2980 1999-08-31 Kunihiro Ishiguro <kunihiro@zebra.org>
2981
2982 * ospf_lsa.c (ospf_maxage_lsa_remover): Preserve next pointer when
2983 the node is deleted.
2984
2985 1999-08-31 Toshiaki Takada <takada@zebra.org>
2986
2987 * ospf_flood.c (ospf_ls_retransmit_lookup): change to return
2988 struct ospf_lsa *.
2989 (ospf_ls_request_new), (ospf_ls_request_free),
2990 (ospf_ls_request_add), (ospf_ls_request_delete),
2991 (ospf_ls_request_delete_all), (ospf_ls_request_lookup):
2992 New function added.
2993
2994 * ospf_packet.c (ospf_ls_upd_send_lsa): New function added.
2995
2996 * ospf_lsa.h (LS_AGE): Slightly change macro definition.
2997
2998 * ospf_lsa.c (ospf_lsa_more_recent), (ospf_lsa_diffrent):
2999 Use LS_AGE macro.
3000
3001 1999-08-30 Alex Zinin <zinin@amt.ru>
3002
3003 * ospfd.c
3004 fix a bug with area range config write
3005 added "show ip ospf" command, it will be enhanced later on
3006
3007 1999-08-30 Alex Zinin <zinin@amt.ru>
3008
3009 * ospf_lsa.c
3010 updated ospf_router_lsa() to honor flags (B-bit)
3011
3012 1999-08-30 Alex Zinin <zinin@amt.ru>
3013
3014 * ospf_abr.c
3015 wrote major functions implementing ABR activity
3016
3017 1999-08-30 Alex Zinin <zinin@amt.ru>
3018
3019 * ospf_ia.c ospf_route.c ospf_route.h
3020 fixed the bug with ospf_route.origin field.
3021 Now it holds pointer to lsa_header
3022
3023 1999-08-30 Alex Zinin <zinin@amt.ru>
3024
3025 * ospf_flood.c ospf_flood.h:
3026 transformed ospf_flood_if_select into ospf_flood_through_area()
3027 added new ospf_flood_if_select() and ospf_flood_through_as()
3028
3029 1999-08-30 Toshiaki Takada <takada@zebra.org>
3030
3031 * ospf_flood.[ch]: New file added.
3032
3033 * ospf_packet.c (ospf_lsa_flooding),
3034 (ospf_lsa_flooding_select_if): functions move to ospf_flood.c
3035
3036 * ospf_neighbor.c (ospf_put_lsa_on_retransm_list),
3037 (ospf_remove_lsa_from_retransm_list),
3038 (ospf_nbr_remove_all_lsas_from_retransm_list),
3039 (ospf_lsa_remove_from_ls_retransmit):
3040 (ospf_lsa_retransmit): functions move to
3041 ospf_flood.c, and change function's name:
3042
3043 ospf_put_lsa_on_retransm_list ()
3044 -> ospf_ls_retransmit_add ()
3045 ospf_remove_lsa_from_retransm_list ()
3046 -> ospf_ls_retransmit_delete ()
3047 ospf_nbr_remove_all_lsas_from_retransm_list ()
3048 -> ospf_ls_retransmit_clear ()
3049 ospf_lsa_remove_from_ls_retransmit ()
3050 -> ospf_ls_retransmit_delete_nbr_all ()
3051 ospf_lsa_retransmit ()
3052 -> ospf_ls_retransmit_add_nbr_all ()
3053
3054 * ospf_lsa.c (ospf_lsa_lookup_from_list): function move to
3055 ospf_flood.c, and change name to ospf_ls_retransmit_lookup ().
3056
3057 1999-08-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3058
3059 * ospf_neighbor.c (ospf_nbr_lookup_by_addr): Use
3060 route_node_lookup() instead of route_node_get().
3061
3062 * ospf_packet.c (ospf_ls_upd): Temporary comment out (6) check.
3063
3064 1999-08-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3065
3066 * ospf_route.c (ospf_lookup_int_by_prefix): Add check of
3067 oi->address.
3068
3069 1999-08-29 Alex Zinin <zinin@amt.ru>
3070 * ospf_lsa.c
3071 MaxAge LSA deletion functions added.
3072
3073 1999-08-29 Alex Zinin <zinin@amt.ru>
3074 * ospf_neighbor.c
3075 ospf_nbr_lookup_by_addr(): added route_unlock_node()
3076 when function returns NULL if (rn->info == NULL)
3077
3078 1999-08-29 Alex Zinin <zinin@amt.ru>
3079 * ospfd.c
3080 added a hack for area range deletion
3081
3082 1999-08-29 Alex Zinin <zinin@amt.ru>
3083 * ospf_lsa.h
3084 included lsdb field into struct ospf_lsa, to find
3085 LSDB easier when removing MaxAge LSAs.
3086
3087 1999-08-29 Alex Zinin <zinin@amt.ru>
3088 * ospf_lsa.c ospf_neighbor.c ospf_nsm.c
3089 ospf_packet.c changed to honor new retransmit list
3090 management functions
3091
3092 1999-08-29 Alex Zinin <zinin@amt.ru>
3093 * ospf_neighbor.c , .h added new retransmit list functions.
3094
3095 1999-08-29 Alex Zinin <zinin@amt.ru>
3096 * Makefile.in
3097 added ospf_ase, ospf_abr, ospf_ia
3098
3099 1999-08-29 Alex Zinin <zinin@amt.ru>
3100 * ospf_spf.c:
3101 - changed ospf_next_hop_calculation() to include interface
3102 and nexthop addr for directly connected routers---more informative
3103 and solves problem with route installation into the kernel
3104 - changed ospf_nexthop_out_if_addr() to support routers, not only
3105 transit networks
3106 - added ospf_process_stubs();
3107
3108 1999-08-29 Alex Zinin <zinin@amt.ru>
3109 * ospf_lsa.c:
3110 - changed ospf_router_lsa() to provide correct links
3111 for p-t-p interfaces;
3112 - changed ospf_summary_lsa_install() to support table
3113 of self-originated summary-LSAs;
3114 - added ospf_summary_asbr_lsa_install() and ospf_external_lsa_install()
3115 - changed ospf_lsa_install() accordingly
3116 - changed show_ip_ospf_database_router_links() to support p-t-p
3117
3118 1999-08-29 Kunihiro Ishiguro <kunihiro@zebra.org>
3119
3120 * ospf_packet.c (ospf_make_db_desc): Only master can clear more
3121 flag.
3122
3123 1999-08-29 Kunihiro Ishiguro <kunihiro@zebra.org>
3124
3125 * ospf_packet.c (ospf_read): Add check of IP src address.
3126
3127 1999-08-28 Alex Zinin <zinin@amt.ru>
3128 * ospf_neighbor.h
3129 added ospf_nbr_lookup_by_routerid()
3130
3131 1999-08-28 Alex Zinin <zinin@amt.ru>
3132 * ospfd.h
3133 added ABR/ASBR flag definitions and fields;
3134 added iflist field to area structure;
3135 summary_lsa_self and summary_lsa_asbr_self are changed
3136 to be route tables;
3137 added ranges field---configured area ranges;
3138 A separate Routers RT added;
3139 area range config commands and config write added
3140
3141
3142 1999-08-28 Alex Zinin <zinin@amt.ru>
3143 * ospf_route.c :
3144 ospf_route_free()--added code to free the list of paths;
3145 The following functions added:
3146 ospf_intra_add_router();
3147 ospf_intra_add_transit();
3148 ospf_intra_add_stub();
3149 the last function uses new ospf_int_lookup_by_prefix();
3150 show_ip_ospf_route_cmd()--changed to support new RT structure;
3151 added ospf_cmp_routes()--general route comparision function;
3152 added ospf_route_copy_nexthops() and ospf_route_copy_nexthops_from_vertex()
3153 they are used in ASE and IA routing;
3154 added ospf_subst_route() and ospf_add_route();
3155
3156 1999-08-28 Alex Zinin <zinin@amt.ru>
3157 * ospf_route.h :
3158 changed struct ospf_path to include output interface,
3159 changed struct ospf_route to support IA and ASE routing.
3160 added prototypes of the function used in IA and ASE modules.
3161
3162 1999-08-28 Alex Zinin <zinin@amt.ru>
3163 * ospf_lsa.h ospf_lsa.c :
3164 added ospf_my_lsa(), an interface independent version of
3165 ospf_lsa_is_self_originated(), it will be used in ASE and IA-routing.
3166
3167 1999-08-27 Kunihiro Ishiguro <kunihiro@zebra.org>
3168
3169 * ospf_interface.c (interface_config_write): Add check for
3170 oi->nbr_self.
3171
3172 1999-08-25 Toshiaki Takada <takada@zebra.org>
3173
3174 * ospf_lsa.c (ospf_lsa_dup): New function added.
3175
3176 * ospf_packet.c (ospf_write), (ospf_read): Print send/recv
3177 interface in debug message.
3178
3179 1999-08-25 Toshiaki Takada <takada@zebra.org>
3180
3181 * ospf_packet.c (ospf_ls_ack_send): The name is changed from
3182 `ospf_ls_ack_send'.
3183 (ospf_ls_ack_send_delayed) (ospf_ls_ack_timer): New function added.
3184 Delayed Link State Acknowledgment is scheduled by timer.
3185
3186 1999-08-25 Alex Zinin <zinin@amt.ru>
3187
3188 * ospf_lsa.c (ospf_router_lsa): Incorrectly included link to
3189 a stub network instead of link to a transit network into
3190 originated router-LSA, bug fixed.
3191
3192 1999-08-24 Toshiaki Takada <takada@zebra.org>
3193
3194 * ospfd.c (ospf_update_router_id): New function added.
3195
3196 * ospf_network.c (ospf_write): Create new socket per transmission.
3197 And select outgoing interface whether dst is unicast or multicast.
3198
3199 * ospf_packet.c: LSA flooding will work.
3200
3201 1999-08-24 VOP <vop@unity.net>
3202
3203 * ospf_route.c: Include "sockunion.h"
3204
3205 1999-08-24 Kunihiro Ishiguro <kunihiro@zebra.org>
3206
3207 * ospf_network.c (ospf_serv_sock_init): Enclose
3208 IPTOS_PREC_INTERNETCONTROL setting with #ifdef for OS which does
3209 not have the definition.
3210
3211 1999-08-23 Toshiaki Takada <takada@zebra.org>
3212
3213 * ospf_packet.c: Fix bug of DD processing.
3214
3215 1999-08-18 Toshiaki Takada <takada@zebra.org>
3216
3217 * ospf_lsa.c (show_ip_ospf_database): Show actual `LS age'.
3218
3219 1999-08-17 Toshiaki Takada <takada@zebra.org>
3220
3221 * ospf_lsa.h (OSPF_MAX_LSA): The value of OSPF_MAX_LSA is
3222 corrected. The bug of `mes_lookup' is fixed.
3223 This had been reported by Poul-Henning Kamp <phk@freebsd.org>.
3224
3225 * ospf_lsa.c (ospf_router_lsa_install): The name is changed from
3226 `ospf_add_router_lsa'.
3227 (ospf_network_lsa_install): The name is changed from
3228 `ospf_add_network_lsa'.
3229
3230 * ospf_interface.h (ospf_interface): Add member `nbr_self'.
3231
3232 * ospf_interface.c (ospf_if_is_enable): New function added.
3233
3234 1999-08-16 Toshiaki Takada <takada@zebra.org>
3235
3236 * ospf_lsa.h (struct lsa_header): The name is changed from
3237 `struct ospf_lsa'.
3238 (struct ospf_lsa): New struct added to control each LSA's aging
3239 and timers.
3240
3241 * ospf_lsa.c (ospf_lsa_data_free): The name is change from
3242 `ospf_lsa_free'.
3243 (ospf_lsa_data_new), (ospf_lsa_new), (ospf_lsa_free),
3244 (ospf_lsa_different), (ospf_lsa_install): New function added.
3245
3246 * ospf_packet.c (ospf_ls_upd_list_lsa): New function added.
3247
3248 1999-08-12 Toshiaki Takada <takada@zebra.org>
3249
3250 * ospf_nsm.c (nsm_reset_nbr): New function added.
3251 KillNbr and LLDown neighbor event call this function.
3252
3253 1999-08-10 Toshiaki Takada <takada@zebra.org>
3254
3255 * ospf_packet.c (ospf_ls_retransmit)
3256 (ospf_ls_upd_timer): New function added.
3257 Set retransmission timer for Link State Update.
3258
3259 1999-07-29 Toshiaki Takada <takada@zebra.org>
3260
3261 * ospf_ism.c (ospf_dr_election): Fix bug of DR election.
3262
3263 1999-07-28 Toshiaki Takada <takada@zebra.org>
3264
3265 * ospf_network.c (ospf_serv_sock_init): Set IP precedence field
3266 with IPTOS_PREC_INTERNET_CONTROL.
3267
3268 * ospf_nsm.c (nsm_change_status): Schedule NeighborChange event
3269 if NSM status change.
3270
3271 * ospf_packet.c (ospf_make_hello): Never include a neighbor in
3272 Hello packet, when the neighbor goes down.
3273
3274 1999-07-26 Kunihiro Ishiguro <kunihiro@zebra.org>
3275
3276 * Makefile.am (noinst_HEADERS): Add ospf_route.h.
3277
3278 * ospf_route.c (show_ip_ospf_route): Add `show ip ospf route'
3279 command.
3280
3281 1999-07-25 Toshiaki Takada <takada@zebra.org>
3282
3283 * ospf_lsa.c (ospf_router_lsa): Fix bug of LS sequence number
3284 assignement.
3285
3286 1999-07-25 Kunihiro Ishiguro <kunihiro@zebra.org>
3287
3288 * ospf_route.c (ospf_route_table_free): New function added.
3289
3290 * ospf_spf.c (ospf_spf_next): Free vertex w when cw's and w's
3291 distance is same.
3292
3293 * ospfd.h (struct ospf): Add old_table.
3294
3295 * ospf_main.c (sighup): Call of log_rotate () removed.
3296
3297 * ospf_lsa.c (ospf_lsa_is_self_originated): Fix bug of checking
3298 area->lsa as self LSA. This should be area->lsa_self.
3299
3300 1999-07-24 Kunihiro Ishiguro <kunihiro@zebra.org>
3301
3302 * ospf_zebra.c (ospf_zebra_add): ospf_zebra_add
3303 (),ospf_zebra_delete () added.
3304
3305 * ospf_spf.c (ospf_spf_calculate): Call ospf_intra_route_add ().
3306
3307 1999-07-24 Toshiaki Takada <takada@zebra.org>
3308
3309 * ospf_lsa.c: Change LS sequence number treatment.
3310 (ospf_lsa_is_self_originated): New function added.
3311 (show_ip_ospf_database_self_originated): New DEFUN added.
3312
3313 1999-07-23 Kunihiro Ishiguro <kunihiro@zebra.org>
3314
3315 * ospf_interface.c (ospf_if_lookup_by_addr): Add loopback check.
3316
3317 1999-07-22 Toshiaki Takada <takada@zebra.org>
3318
3319 * ospf_spf.c (ospf_nexthop_new), (ospf_nexthop_free),
3320 (ospf_nexthop_dup): function added.
3321 (ospf_nexthop_calculation): function changed.
3322
3323 * ospf_interface.c (ospf_if_lookup_by_addr): function added.
3324
3325 1999-07-21 Toshiaki Takada <takada@zebra.org>
3326
3327 * ospf_spf.c (ospf_spf_closest_vertex): function removed.
3328
3329 1999-07-21 Kunihiro Ishiguro <kunihiro@zebra.org>
3330
3331 * ospf_spf.c (ospf_spf_next): Apply ntohs for fetching metric.
3332
3333 1999-07-21 Toshiaki Takada <takada@zebra.org>
3334
3335 * ospf_neighbor.c (ospf_nbr_lookup_by_router_id): fundtion removed.
3336
3337 * ospf_lsa.c (show_ip_ospf_database_router): describe each
3338 connected link.
3339
3340 1999-07-21 Kunihiro Ishiguro <kunihiro@zebra.org>
3341
3342 * ospf_spf.c (ospf_spf_next): V is router LSA or network LSA so
3343 change behavior according to LSA type.
3344 (ospf_lsa_has_link): Link check function is added.
3345
3346 1999-07-20 Kunihiro Ishiguro <kunihiro@zebra.org>
3347
3348 * ospf_spf.c (ospf_spf_calculate_schedule): Add new function for
3349 SPF calcultion schedule addtition.
3350 (ospf_spf_calculate_timer_add): Rough 30 sec interval SPF calc
3351 timer is added.
3352 (ospf_spf_next_router): Delete ospf_spf_next_network ().
3353
3354 * ospf_lsa.c (show_ip_ospf_database_all): Network-LSA display
3355 header typo correction. Display of router LSA's #link added.
3356
3357 1999-07-19 Toshiaki Takada <takada@zebra.org>
3358
3359 * ospf_packet.c (ospf_check_network_mask): Added new function for
3360 receiving Raw IP packet on an appropriate interface.
3361
3362 1999-07-16 Toshiaki Takada <takada@zebra.org>
3363
3364 * ospfd.c (ospf_router_id): new DEFUN added.
3365
3366 1999-07-15 Toshiaki Takada <takada@zebra.org>
3367
3368 * ospf_spf.c (ospf_spf_init), (ospf_spf_free),
3369 (ospf_spf_has_vertex), (ospf_vertex_lookup),
3370 (ospf_spf_next_router), (ospf_spf_next_network),
3371 (ospf_spf_closest_vertex), (ospf_spf_calculate):
3372 function added.
3373
3374 1999-07-13 Toshiaki Takada <takada@zebra.org>
3375
3376 * ospf_ism.c: fix bug of DR Election.
3377
3378 * ospf_nsm.c: fix bug of adjacency forming.
3379
3380 1999-07-05 Kunihiro Ishiguro <kunihiro@zebra.org>
3381
3382 * ospfd.c (ospf_init): Change to use install_default.
3383
3384 1999-07-01 Rick Payne <rickp@rossfell.co.uk>
3385
3386 * ospf_zebra.c (zebra_init): Install standard commands to
3387 ZEBRA_NODE.
3388
3389 1999-06-30 Toshiaki Takada <takada@zebra.org>
3390
3391 * ospf_dump.c: Whole debug command is improved.
3392 (ISM|NSM) (events|status|timers) debug option added.
3393 (show_debugging_ospf): new DEFUN added.
3394
3395 1999-06-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3396
3397 * ospf_lsa.c (ospf_lsa_lookup_from_list): Change !IPV4_ADDR_CMP to
3398 IPV4_ADDR_SAME.
3399
3400 1999-06-29 Toshiaki Takada <takada@zebra.org>
3401
3402 * ospf_dump.c (ospf_summary_lsa_dump): Add summary-LSA dump routine.
3403 (ospf_as_external_lsa_dump): Add AS-external-LSA dump routine.
3404
3405 * ospf_nsm.c (nsm_twoway_received): fix condtion of adjacnet.
3406
3407 * ospf_ism.c (ospf_dr_election): fix DR Election.
3408
3409 * ospf_dump.c (ospf_nbr_state_message): fix `show ip ospf neighbor'
3410 command's state.
3411
3412 1999-06-29 Kunihiro Ishiguro <kunihiro@zebra.org>
3413
3414 * ospf_dump.c (ospf_router_lsa_dump): Add router-LSA dump routine.
3415
3416 1999-06-28 Toshiaki Takada <takada@zebra.org>
3417
3418 * ospf_lsa.c (show_ip_ospf_database_network): fix bug of
3419 `show ip ospf database network' command output.
3420
3421 * ospf_nsm.c (nsm_inactivity_timer): Clear list of Link State
3422 Retransmission, Database Summary and Link State Request.
3423
3424 * ospf_packet.c (ospf_ls_req_timer): New function added.
3425 Set Link State Request retransmission timer.
3426
3427 1999-06-27 Kunihiro Ishiguro <kunihiro@zebra.org>
3428
3429 * ospf_main.c (main): Change default output from ZLOG_SYSLOG to
3430 ZLOG_STDOUT.
3431
3432 * ospfd.c (ospf_init): Register show_ip_ospf_interface_cmd and
3433 show_ip_ospf_neighbor_cmd to VIEW_NODE.
3434
3435 * ospf_lsa.c (ospf_lsa_init): Register show_ip_ospf_database_cmd
3436 and show_ip_ospf_database_type_cmd to VIEW_NODE.
3437
3438 1999-06-25 Toshiaki Takada <takada@zebra.org>
3439
3440 * ospf_packet.c: fix bug of DD making.
3441 fix bug of LS-Update reading.
3442
3443 1999-06-23 Toshiaki Takada <takada@zebra.org>
3444
3445 * ospf_packet.c: All type of packets are changed to use
3446 fifo queue structure.
3447 (ospf_fill_header) function added.
3448
3449 1999-06-22 Toshiaki Takada <takada@zebra.org>
3450
3451 * ospf_packet.c (ospf_packet_new): New function added to handle
3452 sending ospf packet by fifo queue structure.
3453 (ospf_packet_free), (ospf_fifo_new), (ospf_fifo_push),
3454 (ospf_fifo_pop), (ospf_fifo_head), (ospf_fifo_flush),
3455 (ospf_fifo_free): Likewise.
3456
3457 1999-06-21 Toshiaki Takada <takada@zebra.org>
3458
3459 * ospf_nsm.c (ospf_db_desc_timer): function added.
3460 (nsm_timer_set) function added.
3461 * ospf_dump.c (ospf_option_dump): function added.
3462 * ospf_packet.c (ospf_ls_req) (ospf_make_ls_req): function added.
3463
3464 1999-06-20 Toshiaki Takada <takada@zebra.org>
3465
3466 * ospf_lsa.c (ospf_lsa_more_recent): function added.
3467 * ospf_neighbor.h (struct ospf_neighbor): Change member ms_flag
3468 to dd_flags.
3469
3470 1999-06-19 Toshiaki Takada <takada@zebra.org>
3471
3472 * ospf_lsa.c: DEFUN (show_ip_ospf_database) Added.
3473 * ospf_interface.c (if_ospf_cost), (if_ospf_dead_interval),
3474 (if_ospf_hello_interval), (if_ospf_priority),
3475 (if_ospf_retransmit_interval), (if_ospf_transmit_delay)
3476 argument changed from NUMBER to <range>.
3477 DEFUN (if_ospf_network_broadcast),
3478 DEFUN (if_ospf_network_non_broadcast),
3479 DEFUN (if_ospf_network_point_to_multipoint),
3480 DEFUN (if_ospf_network_point_to_point) functions are combined to
3481 DEFUN (if_ospf_network).
3482
3483 1999-06-18 Toshiaki Takada <takada@zebra.org>
3484
3485 * ospf_lsa.c: ospf_add_router_lsa (), ospf_add_network_lsa (),
3486 ospf_lsa_lookup (), ospf_lsa_count () Added.
3487
3488 1999-06-15 Toshiaki Takada <takada@zebra.org>
3489
3490 * DEFUN (ospf_debug_ism), DEFUN (ospf_debug_nsm),
3491 DEFUN (no_ospf_debug_ism), DEFUN (no_ospf_debug_nsm) Added.
3492 `debug ospf ism' command shows debug message.
3493 `debuf ospf nsm' command shows debug message.
3494
3495 1999-06-14 Toshiaki Takada <takada@zebra.org>
3496
3497 * ospf_lsa.c: ospf_network_lsa () Added.
3498 ospf_lsa_checksum () Added.
3499 * DEFUN (ospf_debug_packet), DEFUN (no_ospf_debug_packet) Added.
3500 `debug ospf packet' command shows debug message.
3501
3502 1999-06-13 Toshiaki Takada <takada@zebra.org>
3503
3504 * ospf_packet.h: Remove struct ospf_ls_req {}, ospf_ls_upd {},
3505 ospf_ls_ack {}.
3506
3507 1999-06-11 Toshiaki Takada <takada@zebra.org>
3508
3509 * ospf_dump.c: fix IP packet length treatment.
3510
3511 1999-06-10 Toshiaki Takada <takada@zebra.org>
3512
3513 * ospf_ism.h: Add OSPF_ISM_EVENT_EXECUTE() Macro Added.
3514 * ospf_nsm.h: Add OSPF_NSM_EVENT_EXECUTE() Macro Added.
3515
3516 * ospf_packet.c: ospf_db_desc (), ospf_db_desc_send () Added.
3517 ospf_make_hello (), ospf_make_db_desc () Added.
3518 ospf_db_desc_proc () Added.n
3519
3520 * Database Description packet can be processed.
3521
3522 1999-06-08 Toshiaki Takada <takada@zebra.org>
3523
3524 * ospf_lsa.c: New file.
3525
3526 1999-06-07 Toshiaki Takada <takada@zebra.org>
3527
3528 * ospf_neighbor.c: ospf_fully_adjacent_count () Added.
3529
3530 1999-06-07 Kunihiro Ishiguro <kunihiro@zebra.org>
3531
3532 * ospf_spf.[ch]: New file.
3533
3534 1999-05-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3535
3536 * ospf_zebra.c: Changed to use lib/zclient.c routines.
3537
3538 * ospf_zebra.h (zebra_start): Remove struct zebra.
3539
3540 1999-05-29 Kunihiro Ishiguro <kunihiro@zebra.org>
3541
3542 * ospfd.c (ospf_config_write): Add cast (unsigned long int) to
3543 ntohl for sprintf warning.
3544
3545 1999-05-19 Toshiaki Takada <takada@zebra.org>
3546
3547 * ospf_ism.c (ospf_dr_election): Join AllDRouters Multicast group
3548 if interface state changes to DR or BDR.
3549
3550 1999-05-14 Stephen R. van den Berg <srb@cuci.nl>
3551
3552 * ospf_main.c (signal_init): SIGTERM call sigint.
3553 (sigint): Logging more better message.
3554
3555 1999-05-12 Toshiaki Takada <takada@zebra.org>
3556
3557 * ospfd.c: Fix bug of `no router ospf' statement, it will work.
3558
3559 1999-05-11 Toshiaki Takada <takada@zebra.org>
3560
3561 * ospf_neighbor.c: ospf_nbr_free () Added.
3562
3563 1999-05-10 Toshiaki Takada <takada@zebra.org>
3564
3565 * ospfd.h: struct ospf_area { }, struct ospf_network { } Changed.
3566 * Fix bug of `no network' statement, it will work.
3567
3568 1999-05-07 Toshiaki Takada <takada@zebra.org>
3569
3570 * ospf_interface.c, ospf_zebra.c: Fix bug of last interface is not
3571 updated by ospf_if_update ().
3572
3573 1999-04-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3574
3575 * Makefile.am (noinst_HEADERS): Add ospf_lsa.h for distribution.
3576
3577 1999-04-25 Toshiaki Takada <takada@zebra.org>
3578
3579 * ospf_interface.c: DEFUN (no_if_ospf_cost),
3580 DEFUN (no_if_ospf_dead_interval),
3581 DEFUN (no_if_ospf_hello_interval),
3582 DEFUN (no_if_ospf_priority),
3583 DEFUN (no_if_ospf_retransmit_interval),
3584 DEFUN (no_if_ospf_transmit_delay) Added.
3585
3586 interface_config_write () suppress showing interface
3587 default values.
3588
3589 1999-04-25 Kunihiro Ishiguro <kunihiro@zebra.org>
3590
3591 * ospf_dump.c (ospf_timer_dump): If thread is NULL return "inactive".
3592
3593 * ospfd.c (ospf_if_update): Fix bug of using ospf_area { } instead
3594 of ospf_network { }. So `router ospf' statement in ospfd.conf
3595 works again.
3596 (ospf_if_update): Call ospf_get_router_id for updating router ID.
3597
3598 1999-04-25 Toshiaki Takada <takada@zebra.org>
3599
3600 * ospf_interface.c: DEFUN (if_ospf_network) deleted.
3601 DEFUN (if_ospf_network_broadcast),
3602 DEFUN (if_ospf_network_non_broadcast),
3603 DEFUN (if_ospf_network_point_to_multipoint),
3604 DEFUN (if_ospf_network_point_to_point),
3605 DEFUN (no_if_ospf_network) Added.
3606
3607 1999-04-23 Toshiaki Takada <takada@zebra.org>
3608
3609 * ospfd.h: struct area { } changed to struct ospf_network { }.
3610 Add struct ospf_area { }.
3611 * ospfd.c: Add ospf_area_lookup_by_area_id (), ospf_network_new (),
3612 and ospf_network_free ().
3613 DEFUN (area_authentication), DEFUN (no_area_authentication) Added.
3614
3615 1999-04-22 Toshiaki Takada <takada@zebra.org>
3616
3617 * ospf_lsa.h: New file.
3618 * ospf_packet.h: LSA related struct definition are moved to
3619 ospf_lsa.h.
3620 * ospf_packet.c: ospf_verify_header () Added.
3621
3622 1999-04-21 Toshiaki Takada <takada@zebra.org>
3623
3624 * ospf_ism.c: ospf_elect_dr () and related function is changed.
3625 DR Election bug fixed.
3626 * ospf_dump.c: ospf_nbr_state_message (), ospf_timer_dump () Added.
3627 * ospfd.c: DEFUN (show_ip_ospf_neighbor) Added.
3628
3629 1999-04-19 Kunihiro Ishiguro <kunihiro@zebra.org>
3630
3631 * ospf_main.c (main): access_list_init () is added for vty
3632 connection filtering.
3633
3634 1999-04-16 Toshiaki Takada <takada@zebra.org>
3635
3636 * ospfd.c: DEFUN (show_ip_ospf_interface) Added.
3637 * ospf_neighbor.c: ospf_nbr_count () Added.
3638
3639 1999-04-15 Toshiaki Takada <takada@zebra.org>
3640
3641 * ospfd.h: struct ospf { } Changed.
3642 * ospfd.c: ospf_lookup_by_process_id () Deleted.
3643 * ospf_ism.c: ospf_wait_timer () Added. WaitTimer will work.
3644
3645 1999-04-14 Toshiaki Takada <takada@zebra.org>
3646
3647 * ospf_ism.c: ospf_elect_dr () Added.
3648 * ospf_network.c: ospf_if_ipmulticast () Added.
3649
3650 1999-04-11 Toshiaki Takada <takada@zebra.org>
3651
3652 * ospf_interface.c: interface_config_write (),
3653 DEFUN (if_ip_ospf_cost),
3654 DEFUN (if_ip_ospf_dead_interval),
3655 DEFUN (if_ip_ospf_hello_interval),
3656 DEFUN (if_ip_ospf_priority),
3657 DEFUN (if_ip_ospf_retransmit_interval) and
3658 DEFUN (if_ip_ospf_transmit_delay) Added.
3659
3660 1999-04-08 Toshiaki Takada <takada@zebra.org>
3661
3662 * ospf_dump.c: ospf_packet_db_desc_dump () Added.
3663 * ospf_neighbor.c: ospf_nbr_bidirectional () Added.
3664 * ospf_nsm.c: nsm_twoway_received () Added.
3665
3666 1999-04-02 Toshiaki Takada <takada@zebra.org>
3667
3668 * ospf_neighbor.c: New file.
3669 * ospf_neighbor.h: New file.
3670 * ospf_nsm.c: New file.
3671 * ospf_nsm.h: New file.
3672 * ospf_packet.c: Add ospf_make_header (), ospf_hello () and
3673 ospf_hello_send (). Now OSPFd can receive Hello and send Hello.
3674
3675 1999-03-27 Kunihiro Ishiguro <kunihiro@zebra.org>
3676
3677 * ospf_packet.c: Add ospf_recv_packet (). Now OSPF Hello can receive.
3678
3679 1999-03-19 Toshiaki Takada <takada@zebra.org>
3680
3681 * ospf_packet.c: New file.
3682 * ospf_packet.h: New file.
3683 * ospf_network.c: New file.
3684 * ospf_network.h: New file.
3685 * ospfd.h: move OSPF message structure has moved to ospf_packet.h.
3686
3687 1999-03-17 Kunihiro Ishiguro <kunihiro@zebra.org>
3688
3689 * ospf_zebra.c (ospf_zebra_get_interface): Fix for IPv6 interface
3690 address.
3691
3692 * Makefile.am (install-sysconfDATA): Overwrite install-sysconfDATA
3693 for install ospfd.conf.sample as owner read only file.
3694
3695 * ospf_main.c (usage): Change to use ZEBRA_BUG_ADDRESS.
3696
3697 1999-03-15 Toshiaki Takada <takada@zebra.org>
3698
3699 * ospf_ism.c: New file.
3700 * ospf_ism.h: New file.
3701 * ospf_dump.c: New file.
3702 * ospf_dump.h: New file.
3703
3704 * ospfd.h: Add (struct ospf), (struct config_network),
3705 (struct message) structure.
3706
3707 * ospf_interface.c: Add ospf_if_match_network ().
3708 * ospf_interface.h (struct ospf_interface): Change struct members.
3709
3710 * ospfd.c: ospf_lookup_by_process_id (), ospf_network_new (),
3711 DEFUN (network_area): Added.
3712
3713 * ospfd.conf.sample: Change sample configuration.
3714
3715 1999-03-05 Toshiaki Takada <takada@zebra.org>
3716
3717 * ospf_interface.c: New file.
3718 * ospf_interface.h: New file.
3719 * ospf_zebra.h: New file.
3720 * ospf_zebra.c: Add interface function for zebra daemon.
3721 * ospfd.c: New file.
3722
3723 1999-02-23 Kunihiro Ishiguro <kunihiro@zebra.org>
3724
3725 * Move IPv6 codes and files to ospf6d directory.
3726
3727 1999-02-18 Peter Galbavy <Peter.Galbavy@knowledge.com>
3728
3729 * syslog support added
3730
3731 1998-12-22 Toshiaki Takada <takada@zebra.org>
3732
3733 * ospfd.h: New file.
3734 * ospf_lsa.h: New file.
3735
3736 1998-12-15 Kunihiro Ishiguro <kunihiro@zebra.org>
3737
3738 * Makefile.am: New file.
3739 * ospf_main.c: New file.
3740