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