]> git.proxmox.com Git - mirror_frr.git/blame - ospfd/ChangeLog
2005-11-03 Paul Jakma <paul.jakma@sun.com>
[mirror_frr.git] / ospfd / ChangeLog
CommitLineData
484315fd 12005-11-03 Paul Jakma <paul.jakma@sun.com>
2
3 * ospf_apiserver.c: (apiserver_sync_callback) stray semi-colon
4 * ospf_packet.c: include checksum.h, remove the in_cksum extern
5 * prototypes.
6 * ospf_te.h: Add braces, quell warning.
7
88d6cf37 82005-10-29 Paul Jakma <paul.jakma@sun.com>
9
10 * (general) RFC3137 stub-router support
11 * ospfd.h: Add OSPF_OUTPUT_COST_INFINITE define.
12 (struct ospf_master) Add a OSPF_MASTER_SHUTDOWN flag for
13 options, to allow shutdown to distinguish between complete
14 shutdown and shutdown of a subset of ospf instances.
15 (struct ospf)
16 Add stub_router_{startup,shutdown_}time, configuration of startup
17 and shutdown time for stub-router.
18 Add t_graceful_shutdown struct thread, timer for graceful
19 shutdown, if needed.
20 (struct ospf_area) Add stub_router_state - run time state of
21 stub-router for an area. Add flags for ADMIN, IS and WAS
22 states.
23 Add t_stub_router, timer thread to resend router-lsa for an
24 area.
25 * ospf_lsa.c: (ospf_link_cost) new simple function to spit out
26 either the given lnks cost or infinite cost if stub-router is
27 in effect.
28 (lsa_link_{ptop,broadcast,virtuallink,ptomp}_set) use
29 previous function for transit-links.
30 (ospf_stub_router_timer) timer thread for end of startup stub
31 router. Change state as required for the area and setup
32 re-origination of router-lsa.
33 (ospf_stub_router_check) Check/do whether stub-router should be
34 enabled, and whether it requires timer to be setup.
35 (ospf_router_lsa_new) call previous function at top.
36 (ospf_router_lsa_originate) no external callers, made static.
37 * ospf_lsa.h: (ospf_router_lsa_originate) removed.
38 * ospf_main.c: (sigint) make static.
39 remove call to exit, as ospf_terminate now deals with
40 exiting.
41 * ospf_route.c: (ospf_terminate) removed, now in ospfd.c.
42 * ospf_vty.c: (show_ip_ospf_area) print out state of
43 stub-router, if active.
44 (show_ip_ospf) print out configuration of stub-router
45 support, and details of graceful-shutdown if the timer is
46 active.
47 ((no)?ospf_max_metric_router_lsa_{admin,startup,shutdown}) new
48 commands to (de-)?configure stub-router support.
49 (config_write_stub_router) write out config of stub-router.
50 (ospf_config_write) call previous.
51 (ospf_vty_init) install the new stub-router commands.
52 * ospfd.c: various functions made static.
53 (ospf_new) Set defaults for stub-router. Graceful shutdown
54 is made to default on, just to be adventerous.
55 (ospf_graceful_shutdown_finish) new function, final part of
56 shutdown.
57 (ospf_graceful_shutdown_timer) timer thread wrapper for
58 graceful-shutdown.
59 (ospf_graceful_shutdown_check) check whether to setup timer
60 for shutdown or proceed directly to final shutdown.
61 (ospf_terminate) moved here from ospf_route.c, call
62 ospf_finish for each instance.
63 (ospf_finish) renamed to ospf_finish_final and made static.
64 (ospf_finish) new function, exported wrapper around
65 ospf_graceful_shutdown_check.
66 (ospf_finish_final) complete shutdown of an instance.
67 Add missing TIMER_OFF's of two timer threads.
68 (ospf_area_free) opaque self lsa timer should be turned off.
69
b8ad39d4 702005-10-23 Paul Jakma <paul.jakma@sun.com>
71
e029d448 72 * ospf_apiserver.c: (ospf_apiserver_term) This function should
73 not have side-effects (eg segv) if no apiserver instances are
74 active, ie be robust.
b8ad39d4 75 * ospf_vty.c: (show_ip_ospf) fix display of SPF timer if it
76 has not yet been run.
77
ea4ffc90 782005-10-21 Paul Jakma <paul.jakma@sun.com>
79
80 * ospf_dump.c: (ospf_timeval_dump) fix ms adjustment, thanks to
81 Andrew Schorr.
82 * ospf_vty.c: (ospf_config_write) fix write out of spf timers
83 configuration.
84
d24f6e2a 852005-10-21 Paul Jakma <paul.jakma@sun.com>
86
87 * (general) SPF millisecond resolution timer with adaptive,
88 linear back-off holdtime. Prettification of ospf_timer_dump.
89 * ospf_dump.c: (ospf_timeval_dump) new function. The guts of
90 ospf_timer_dump, but made to be more dynamic in printing out
91 the relative timeval, sliding the precision printed out
92 according to the value.
93 (ospf_timer_dump) guts moved to ospf_timeval_dump.
94 * ospf_dump.h: export ospf_timeval_dump.
95 * ospf_flood.c: (ospf_flood) remove gettimeofday, use
96 the libzebra exported recent_time instead, as it's not
97 terribly critical to have time exactly right - the dropped
98 LSA will be retransmited to us if we don't ACK it.
99 * ospf_packet.c: (ospf_ls_upd_timer) Ditto, but here we're
100 not transmitting, just putting LSA back on update transmit list.
101 * ospfd.h: delay and holdtimes should be unsigned.
102 Add spf_max_holdtime and spf_hold_multiplier.
103 Update default defines for delay and hold time to be in msec.
104 (struct ospf) change the SPF timestamp to a struct timeval.
105 Remove ospf_timers_spf_(un)?set.
106 * ospfd.c: (ospf_timers_spf_{set,unset}) removed.
107 (ospf_new) initialise spf_max_holdtime and spf_hold_multiplier
108 * ospf_spf.c: (ospf_spf_calculate) SPF timestamp is a timeval
109 now, update with gettimeofday.
110 (ospf_spf_calculate_schedule) Change SPF timers to millisecond
111 resolution.
112 Make the holdtime be adaptive, with a linear increase in
113 holdtime ever consecutive SPF run which occurs within holdtime
114 of previous SPF, bounded by spf_max_holdtime.
115 * ospf_vty.c: Update spf timers commands.
116 (ospf_timers_spf_set) trivial helper.
117 (ospf_timers_throttle_spf_cmd) new command to set SPF delay,
118 initial hold and max hold times with millisecond resolution.
119 (ospf_timers_spf_cmd) Deprecated. Accept the old values,
120 convert to msec, truncate to new limits.
121 (no_ospf_timers_throttle_spf_cmd) set timers to defaults.
122 (no_ospf_timers_spf_cmd) deprecated form, same as previous.
123 (show_ip_ospf_cmd) Display SPF parameters and times.
124 (show_ip_ospf_neighbour_header) Centralise the 'sh ip os ne'
125 header.
126 (show_ip_ospf_neighbor_sub) Fix the field widths. Get rid of
127 the multiple spaces which were making the lines even longer.
128 (show_ip_ospf_neighbor_cmd) Use show_ip_ospf_neighbour_header
129 (show_ip_ospf_neighbor_all_cmd) ditto and fix the field
130 widths for NBMA neighbours.
131 (show_ip_ospf_neighbor_int) Use header function.
132 (show_ip_ospf_nbr_nbma_detail_sub) use sizeof for timebuf,
133 local array - safer.
134 (show_ip_ospf_neighbor_detail_sub) ditto
135 (ospf_vty_init) install the new SPF throttle timer commands.
136
f9ad937f 1372005-10-21 Paul Jakma <paul.jakma@sun.com>
138
139 * (general) OSPF fast, sub-second hello and 1s dead-interval
140 support.
141 * ospf_dump.c: (ospf_timer_dump) Print out milliseconds too.
142 Callers typically specify a length of 9, so most see
143 millisecs unless they specify the additional length.
144 * ospf_interface.h: (struct ospf_interface) new interface param,
145 fast_hello.
146 * ospf_interface.c: (ospf_if_table_lookup) add brackets,
147 gcc warning fix.
148 (ospf_new_if_params) Initialise fast_hello param.
149 (ospf_free_if_params) Check whether fast_hello is configured.
150 (ospf_if_new_hook) set fast_hello to default.
151 * ospf_ism.h: Wrap OSPF_ISM_TIMER_ON inside do {} while (0) to
152 prevent funny side-effects from its if statement when this
153 macro is used conditionally by other macros.
154 (OSPF_ISM_TIMER_MSEC_ON) new macro, set in milliseconds.
155 (OSPF_HELLO_TIMER_ON) new macro to set hello timer according
156 to whether fast_hello is set.
157 * ospf_ism.c: Update all setting of the hello timer to use
158 either OSPF_ISM_TIMER_MSEC_ON or OSPF_HELLO_TIMER_ON. The
159 former is used when hello is to be sent immediately.
160 * ospf_nsm.c: ditto
161 * ospf_packet.c: (ospf_hello) hello-interval is not checked
162 for mismatch if fast_hello is set.
163 (ospf_read) Annoying nit, fix "no ospf_interface" to be debug
164 rather than a warning, as it can be perfectly normal to
165 receive packets when logical subnets are used.
166 (ospf_make_hello) Set hello-interval to 0 if fast-hellos are
167 configured.
168 * ospf_vty.c: (ospf_auto_cost_reference_bandwidth) annoying
169 nit, don't vty_out if this command is given, it gets tired
170 quick.
171 (show_ip_ospf_interface_sub) Print the hello-interval
172 according to whether fast-hello is set or not.
173 Print the extra 5 millisec characters from (ospf_timer_dump)
174 if fast-hello is configured.
175 (ospf_vty_dead_interval_set) new function, common to all
176 forms of dead-interval command, to set dead-interval and
177 fast-hello correctly. If a dead-interval is given, unset
178 fast-hello, else if a hello-multiplier is set, set
179 dead-interval to 1 and fast-hello to given multiplier.
180 (ip_ospf_dead_interval_addr_cmd) use
181 ospf_vty_dead_interval_set().
182 (ip_ospf_dead_interval_minimal_addr_cmd) ditto.
183 (no_ip_ospf_dead_interval) Unset fast-hello.
184 (no_ip_ospf_hello_interval) Bug-fix, unset of hello-interval
185 should set it to OSPF_HELLO_INTERVAL_DEFAULT, not
186 OSPF_ROUTER_DEAD_INTERVAL_DEFAULT.
187 (config_write_interface) Write out fast-hello.
188 (ospf_config_write) Write a comment about
189 "auto-cost reference-bandwidth" having to be equal on all
190 routers. Hopefully just as noticeable as old practice of
191 writing to vty, but less annoying.
192 (ospf_vty_if_init) install the two new dead-interval
193 commands.
194 * ospfd.h: Add defines for OSPF_ROUTER_DEAD_INTERVAL_MINIMAL
195 and OSPF_FAST_HELLO_DEFAULT.
196
eb3da6df 1972005-10-18 Paul Jakma <paul.jakma@sun.com>
198
199 * (general) SPF memory management cleanup and fix for rare
200 double-free bug.
201 * ospf_spf.h: (struct vertex_parent) New struct to hold parent
202 specific data, eg the backlink and the parent vertex pointer,
203 and point to the appropriate general struct vertex_nexthop.
204 (struct vertex_nexthop) remove parent vertex pointer, so
205 this struct can be shared across vertices.
206 (struct vertex) rename list child to list children. Remove
207 list of nexthops, replace with list of vertex_parents.
208 * ospf_spf.c: (update_stat) trivial, remove cast from void *.
209 (vertex_nexthop_new) remove init of parent - field is gone
210 from struct vertex_nexthop.
211 (ospf_canonical_nexthops_free) Remove the canonical
212 vertex_nexthop memory objects. These are the vertex_nexthops
213 attached to the first level of router vertices from the root.
214 (vertex_parent_new) new function, create a vertex_parent.
215 (vertex_parent_free) ditto, but free it.
216 (ospf_vertex_new) Update to match changes to struct vertex.
217 (ospf_vertex_free) Recursively free a struct vertex and its
218 children. The parent list is used as a reference count.
219 vertex_nexthops must be free seperately, if required.
220 (ospf_vertex_dump) update to match struct vertex changes.
221 Print out backlink of parents too.
222 (ospf_vertex_add_parent) ditto.
223 (ospf_lsa_has_link) update comment.
224 (ospf_nexthop_add_unique) removed, not needed anymore.
225 (ospf_nexthop_merge) ditto.
226 (ospf_spf_consider_nexthop) renamed to ospf_spf_add_parent.
227 Simplified to just create vertex_parent and add it.
228 (ospf_spf_flush_parents) new function, flush out the parent
229 list.
230 (ospf_nexthop_calculation) Take the relevant route_lsa_link
231 as an argument, which simplifies things and removes the need
232 for the hack in ospf_nexthop_add_unique - ospf_spf_next
233 already knew exactly which link the cost calculated was for.
234 Update to match struct vertex changes too.
235 (ospf_spf_next) Don't create a vertex for W unnecessarily, if
236 it's there's a vertex already created for W, use it, and
237 hence there's no need to free it either.
238 Update some manipulation/comparisons of distance to match.
239 Flush the parent list if a lower cost path is found.
240 (ospf_spf_route_free) unused, removed.
241 (ospf_spf_dump) match the struct vertex changes, and dump the
242 ifname if possible.
243 (ospf_spf_calculate) At end of SPF, free the canonical nexthops
244 and call ospf_vertex_free on the root vertex to free the
245 entire tree.
246 * ospf_interface.c: (ospf_vl_set_params) match struct vertex
247 changes.
248 * ospf_route.c: (ospf_intra_route_add) ditto
249 (ospf_route_copy_nexthops_from_vertex) ditto
250
3623814a 2512005-10-11 Paul Jakma <paul.jakma@sun.com>
252
253 * ospf_api.c: sign warnings.
254 * ospf_apiserver.c: sign warning and convert all the struct
255 in_addr initialisations so as not to make assumptions about
256 how this struct is organised, initialise the s_addr member
257 explicitely.
258 * ospf_packet.c: Add const qualifier to auth_key.
259
77df1f78 2602005-10-06 Alain Ritoux <alain.ritoux@6wind.com>
261
262 * ospf_snmp.c: Avoid mixing interface and ospf_interface objects
263 which now allows snmpwalk to work with ospfIfTable and
264 also with ospfIfMetricTable
265
f52d13cb 2662005-10-01 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
267
268 * ospf_dump.c: Remove local hard-coded table ospf_redistributed_proto.
269 (ospf_redist_string) New function implemented using new library
270 function zebra_route_string(). Note that there are a few differences
271 in the output that will result: the new function returns strings
272 that are lower-case, whereas the old table was mixed case. Also,
273 the old table mapped ZEBRA_ROUTE_OSPF6 to "OSPFv3", whereas the
274 new function returns "ospf6".
275 * ospfd.h: Remove extern struct message ospf_redistributed_proto[],
276 and add extern const char *ospf_redist_string(u_int route_type)
277 instead.
278 * ospf_asbr.c: (ospf_external_info_add) In two messages, use
279 ospf_redist_string instead of LOOKUP(ospf_redistributed_proto).
280 * ospf_vty.c: Remove local hard-coded table distribute_str.
281 (config_write_ospf_redistribute,config_write_ospf_distribute): Use
282 new library function zebra_route_string() instead of distribute_str[].
283 * ospf_zebra.c: (ospf_redistribute_set,ospf_redistribute_unset,
284 ospf_redistribute_default_set,ospf_redistribute_check)
285 In debug messages, use ospf_redist_string() instead of
286 LOOKUP(ospf_redistributed_proto).
287
6638c1ab 2882005-09-30 Vincent Jardin <vincent.jardin@6wind.com>
289
290 * ospf_dump.c, ospf_ia.c, ospf_spf.c, ospf_ase.c:
291 remove unused DEBUG
292
5e4914c3 2932005-09-29 Alain Ritoux <alain.ritoux@6wind.com>
294
295 * ospf_ism.c: generate SNMP traps on Interface state change
296 * ospf_nsm.c: generate SNMP traps on Neighbour state change
297 * ospf_snmp.[ch]: support for SNMP traps for interface and neighbours.
298
ba682537 2992005-09-29 Alain Ritoux <alain.ritoux@6wind.com>
300
301 * ospf_vty.c: forece default route LSA to be re_issued whenever
302 cost is changed ( [no] ip ospf area XXX default-cost YYY)
303 Support ignore-mtu option
304 * ospfd.h: define OSPF_MTU_IGNORE_DEFAULT
305 * ospf_packet.c: support ignore-mtu option
306 * ospf_interface.h: field added for skipping MTU check
307 * ospf_interface.c: fix memory leak in ospf_crypt_key_delete()
308 Set mtu_ignore field to default value
309 * ospf_abr.[ch]: export ospf_abr_announce_network_to_area()
310 * ospf_ism.h: add MACRO to convert internal ISM status into SNMP
311 correct values
312 * ospf_snmp.c: add sanity check on LSA type in lsdb_lookup_next()
313 convert OSPFIFSTATE internal status into SNMP values
314
c1a03d47 3152005-09-28 Alain Ritoux <alain.ritoux@6wind.com>
316
317 * ospf_packet.c: use new md5 API
318
5339cfdb 3192005-09-19 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
320
321 * ospf_lsa.h: (ospf_external_lsa_flush) Comment out the 5th argument
322 (nexthop) since it is not used in the function (except inside
323 some commented-out code).
324 * ospf_lsa.c: (ospf_external_lsa_flush,ospf_external_lsa_refresh)
325 Comment out the 5th argument to ospf_external_lsa_flush.
326 * ospf_asbr.c: (ospf_redistribute_withdraw) Comment out 5th arg
327 to ospf_external_lsa_flush.
328 * ospf_vty.c: (no_ospf_default_information_originate) Eliminate 5th
329 uninitialized nexthop arg to ospf_external_lsa_flush.
330 * ospf_zebra.c: (ospf_zebra_read_ipv4) Comment out 5th arg
331 to ospf_external_lsa_flush.
332 * ospfd.c: (ospf_network_set) Comment out 5th arg
333 to ospf_external_lsa_flush.
334
e6a0bf9c 3352005-09-17 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
336
337 * ospf_opaque.c:
338 (ospf_opaque_lsa_refresh_schedule,ospf_opaque_lsa_flush_schedule)
339 No need to call ospf_lookup(), just use lsa0->area->ospf instead.
340
bb5b7552 3412005-08-21 Hasso Tepper <hasso at quagga.net>
342
343 * ospf_vty.c: Make "show ip ospf neighbor xxx" commands work.
344 Interface should be specified by name now.
345
54bedb55 3462005-08-17 Hasso Tepper <hasso at quagga.net>
347
348 * ospf_vty.c: Check carefully if interface exists before trying to
349 print info about it.
350
01018ce4 3512005-08-05 Hasso Tepper <hasso at quagga.net>
352
353 * ospf_zebra.c: Don't assert/stop before type == ZEBRA_ROUTE_MAX if
354 dealing with routemaps. There is ospf->route_map[ZEBRA_ROUTE_MAX]
355 for default-information.
356
c898775c 3572005-07-26 Paul Jakma <paul.jakma@sun.com>
358
359 * ospf_abr.c: (ospf_abr_announce_network_to_area) SET_FLAG
360 should be on lsa not old, which may be freed for one thing,
361 obviously.
362
d57834f6 3632005-07-12 Paul Jakma <paul.jakma@sun.com>
364
365 * ospfd.h: add OSPF_ABR_DEFAULT for convenience, make
366 OSPF_ABR_CISCO be the default ABR type.
367 * ospfd.c: (ospf_new) initialise abr_type to OSPF_ABR_DEFAULT
368 * ospf_vty.c: (no_ospf_abr_type_cmd) add standard as a negatable
369 abr_type. default abr_type should be OSPF_ABR_DEFAULT.
370 (ospf_config_write) test whether default abr_type against
371 OSPF_ABR_DEFAULT, rather than any specific ABR_TYPE.
372
8469bd75 3732005-06-20 Hasso Tepper <hasso at quagga.net>
f4833e9f 374
375 * ospf_nsm.c: Make database exchange for NSSA database work.
376
7461d459 3772005-06-13 Paul Jakma <paul.jakma@sun.com>
378
379 * ospf_spf.c: Try get more information on a SEGV under
380 ospf_spf_vertex_add_parent.
381 (ospf_vertex_free) NULL out the child and nexthop lists
382 (ospf_vertex_add_parent) nexthop and child can not be NULL
383 vertex_nexthop's parent->child list can not be NULL
384 (ospf_spf_next) w and cw are per-loop iteration variables, move
385 declarations into loop body.
386
1ddd729e 3872005-06-07 Hasso Tepper <hasso at quagga.net>
388
389 * ospf_apiserver.c: Fix obvious error in notifying clients about ISM
390 changes - oi->ifp->status doesn't give to us info about ISM,
391 oi->state does.
392
7e440869 3932005-06-01 Akihiro Mizutani <mizutani@net-chef.net>
394
395 * ospf_ism.c (ospf_elect_bdr/ospf_elect_dr): Fix DR election bug.
396
500e4189 3972005-05-26 Paul Jakma <paul.jakma@sun.com>
398
399 * ospf_abr.c: (ospf_abr_update_aggregate) Fix comment, cost bug itself
400 had been fixed long ago by Sowmini.
401
a3387a44 4022005-05-19 Paul Jakma <paul.jakma@sun.com>
403
404 * ospf_interface.c: (ospf_if_table_lookup) Fix a serious bug
405 a less serious one.
406 1: this function is supposed to lookup
407 entries in the oifs ospf_interface route_table and return either
408 an existing oi or NULL to indicate not found, its caller depends
409 on this, yet this function uses route_node_get which /always/
410 returns a route_node - one is created if none exists. Use
411 route_node_lookup instead. This should fix root cause of the
412 reports of the (ospf_add_to_if) assert being hit.
413 2: oi's are inserted into this table with prefixlength set to
414 /32 (indeed, it should be a hash table, not a route_table),
415 however prefixlength to lookup was not changed, if no valid entry
416 can be inserted other than /32, then nothng but /32 should be
417 looked up. This possibly only worked by fluke..
418 Fix confirmed by 2 reporters (one list, one IRC), definitely a
419 backport candidate once it has been incubated in HEAD for a while.
420 Thanks to Patrick Friedel and Ivan Warren for testing.
421
69310a67 4222005-05-11 Paul Jakma <paul.jakma@sun.com>
423
424 * (general) Fix memory leaks in opaque AS-scope LSAs, reported and
425 with much debugging done by by scott collins <scollins@agile.tv>.
426 * ospf_lsa.c: (ospf_discard_from_db) dont call
427 ospf_ase_unregister_external_lsa for opaque-lsa's, opaques are
428 never registered with ase in the first place.
429 * ospf_packet.c: (general) Disabuse opaque related code of its
430 tendency to try gather up things into temporary lists.
431 (ospf_ls_upd) remove the temporary lists opaque uses, call
432 opaque functions inline, just like all other types.
433 (ospf_ls_ack) ditto.
434 (ospf_recv_packet) fixup sign warning.
435 * ospf_opaque.c: (general) fix the unneeded use of lists, and
436 untwist some of the logic.
437 (ospf_opaque_self_originated_lsa_received) take a single LSA
438 as argument, not a list of them. Remove the list loop. Logic
439 otherwise unchanged.
440 (ospf_opaque_ls_ack_received) Mostly ditto. But untwist the logic,
441 move the actions up into the switch block, remove the goto's and
442 sanitise the logic near the end a bit.
443 * ospf_opaque.h: Adjust definitions of aforementioned functions
444 in ospf_opaque.c to match.
445
42c98199 4462005-05-07 Yar Tikhiy <yar@comp.chem.msu.su>
447
448 * ospf_network.c: Log ifindex on multicast membership leave/join
449 events.
450
4dadc291 4512005-05-06 Paul Jakma <paul.jakma@sun.com>
452
453 * (general) extern and static qualifiers added.
454 unspecified arguments in definitions fixed, typically they should
455 be 'void'.
456 function casts added for callbacks.
457 Guards added to headers which lacked them.
458 Proper headers included rather than relying on incomplete
459 definitions.
460 gcc noreturn function attribute where appropriate.
461 * ospf_opaque.c: remove the private definition of ospf_lsa's
462 ospf_lsa_refresh_delay.
463 * ospf_lsa.h: export ospf_lsa_refresh_delay
464 * ospf_packet.c: (ospf_make_md5_digest) make *auth_key const,
465 correct thing to do - removes need for the casts later.
466 * ospf_vty.c: Use vty.h's VTY_GET_INTEGER rather than ospf_vty's
467 home-brewed versions, shuts up several warnings.
468 * ospf_vty.h: remove VTY_GET_UINT32. VTY_GET_IPV4_ADDRESS and
469 VTY_GET_IPV4_PREFIX moved to lib/vty.h.
470 * ospf_zebra.c: (ospf_distribute_list_update_timer) hacky
471 overloading of the THREAD_ARG pointer should at least use
472 uintptr_t.
473
9e67dc27 4742005-04-15 Zhipeng Gong <zpgong@cdc.3upsystems.com>
475
476 * ospf_abr.c: (ospf_abr_announce_network_to_area) dont forget
477 to approve LSAs for the case where metric has changed, lsa gets
478 flushed otherwise. (backport candidate).
479
634f9ea2 4802005-04-11 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
481
482 * ospf_zebra.c (ospf_zebra_add): Call zclient_send_message instead
483 of writen.
484
e4319de3 4852005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
486
487 * ospf_interface.h: (ospf_if_lookup_by_name) Remove declaration of a
488 function that does not exist.
489
21fefa98 4902005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
491
492 * ospf_zebra.c: (zebra_interface_if_lookup) Must use
493 if_lookup_by_name_len.
494
a349198f 4952005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
496
497 * ospf_interface.c: (ospf_vl_new) Use strnlen to fix call to if_create.
498
d2fc8896 4992005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
500
501 * ospf_vty.c: (show_ip_ospf_interface_sub) Show ifindex and interface
502 flags to help with debugging.
503 * ospf_zebra.c: (ospf_interface_delete) After deleting, set ifp->ifindex
504 to IFINDEX_INTERNAL.
505 (zebra_interface_if_lookup) Make function static. Tighten up code.
506
aca72fda 5072005-03-31 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
508
509 * ospf_dump.c: (show_debugging_ospf) Show if ospf event debugging
510 is turned on.
511
a608bbf2 5122005-03-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
513
514 * ospf_zebra.c: (ospf_interface_state_up) If the MTU of an operative
515 interface changes, print a debug message and call ospf_if_reset()
516 to simulate down/up on the interface.
517 * ospf_interface.h: Declare new function ospf_if_reset().
518 * ospf_interface.c: (ospf_if_reset) New function to call ospf_if_down
519 and ospf_if_up for all ospf interfaces attached to an interface.
520
fd651fa6 5212005-03-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
522
5dcbdf82 523 * ospf_packet.c: (ospf_write_frags) Enhance error message to
524 show MTU. Also make function static.
525 (ospf_write) Enhance error message to show interface name and MTU.
526 Also make function static.
527
5282005-03-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
529
530 * ospf_vty.c: (show_ip_ospf_interface_sub) Display interface MTU and
531 bandwidth; this is useful for debugging problems. Also, the function
532 should be static.
fd651fa6 533
1b639047 5342005-03-27 Hasso Tepper <hasso at quagga.net>
535
536 * ospf_snmp.c: Don't crash in snmp query if ospf instance doesn't
537 exist at all.
538
343f5cc7 5392005-03-25 Hasso Tepper <hasso at quagga.net>
540
541 * ospfd.h: Include log.h, fixes compile with gcc-4.0.
542
9dbc7972 5432005-03-13 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
544
545 * ospf_lsa.c: (ospf_lsa_refresh_walker) If the system clock jumps
546 backward, then current time may be less than
547 ospf->lsa_refresher_started. This was causing invalid values
548 for ospf->lsa_refresh_queue.index resulting in infinite loops.
549 Problem fixed by casting the expression to unsigned before taking
550 the modulus.
551
5c33349b 5522005-02-23 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
553
554 * ospfd.h: Add new field struct stream *ibuf to struct ospf.
555 * ospfd.c: (ospf_new) Check return code from ospf_sock_init.
556 Allocate ibuf using stream_new(OSPF_MAX_PACKET_SIZE+1).
557 (ospf_finish) Call stream_free(ospf->ibuf.
558 * ospf_packet.c: (ospf_read) Call stream_reset(ospf->ibuf) and then
559 pass it to ospf_recv_packet for use in receiving the packet
560 (instead of allocating a new stream for each packet received).
561 Eliminate all calls to stream_free(ibuf).
562 (ospf_recv_packet) The struct stream *ibuf is now passed in as
563 an argument. No need to use recvfrom to peek at the packet
564 header (to see how big it is), just use ospf->ibuf which is
565 always large enough (this eliminates a system call to recvfrom).
566 Therefore, no need to allocate a stream just for this packet,
567 and no need to free it when done.
568
462f20d5 5692005-02-23 Vincenzo Eramo <eramo at infocom.ing.uniroma1.it>
570
571 * ospf_lsa.h: New flag to the LSA structure for the SPF calculation.
572 * ospf_lsdb.h: Export ospf_lsdb_clean_stat() function.
573 * ospf_spf.h: Add link to the LSA stat structure into vertex.
574 * ospf_spf.c: New functions cmp() and update_stat() to manage
575 candidates. Remove ospf_spf_has_vertex(), ospf_vertex_lookup(),
576 ospf_install_candidate() and ospf_spf_register() functions not needed
577 any more. Update ospf_vertex_new(), ospf_spf_next() and
578 ospf_spf_calculate() functions to use pqueue instead of linked list.
579
e40dcce1 5802005-02-21 Hasso Tepper <hasso at quagga.net>
581
582 * ospf_ase.c: Don't show messages related to the ase calculations if
583 we are not debugging.
584
306541b3 5852005-02-19 Hasso Tepper <hasso at quagga.net>
586
587 * ospf_api.h: char isn't always signed, but it has to be it here.
588
fa81b713 5892005-02-19 Paul Jakma <paul.jakma@sun.com>
590
591 * ospf_packet.c: (ospf_stream_copy) remove
592 (ospf_packet_dup) use stream_copy instead of ospf_stream_copy
593
038163fa 5942005-02-17 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
595
596 * ospf_packet.c: (ospf_recv_packet) If there is somehow a runt
597 packet in the queue, it must be discarded. Improve warning messages.
598 Fix scope to static.
599 (ospf_read) Fix bug: should reset the read thread in all cases
600 to make sure we continue to get incoming messages.
601
658b03a6 6022005-02-15 Paul Jakma <paul.jakma@sun.com>
603
604 * ospf_packet.c: (ospf_recv_packet) Fix silly error wrt allocating
605 ibuf. Thanks Andrew.
606
bfdc44af 6072005-02-14 Paul Jakma <paul.jakma@sun.com>
608
609 * ospf_packet.c: (ospf_recv_packet) use stream_recvmsg.
610
082253f5 6112005-02-11 Hasso Tepper <hasso at quagga.net>
612
613 * ospf_lsdb.c: Fix sum of checksums calculation.
614
083ee9d9 6152005-02-09 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
616
617 * ospf_packet.c: (ospf_write) If sendmsg fails, give more info in the
618 error message.
619
8cfde376 6202005-02-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
621
622 * ospf_interface.h: Reduce structure padding by putting new u_char
623 field multicast_memberships in a better spot (grouped with
624 other u_char fields type and state).
625
ba6454ec 6262005-02-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
627
628 * ospf_interface.h: Improve passive_interface comment. Add new
629 multicast_memberships bitmask to struct ospf_interface to track
630 active multicast subscriptions. Declare new function
631 ospf_if_set_multicast.
632 * ospf_interface.c: (ospf_if_set_multicast) New function to configure
633 multicast memberships properly based on the current
634 multicast_memberships status and the current values of the
635 ospf_interface state, type, and passive_interface status.
636 (ospf_if_up) Remove call to ospf_if_add_allspfrouters (this is
637 now handled by ism_change_state's call to ospf_if_set_multicast).
638 (ospf_if_down) Remove call to ospf_if_drop_allspfrouters (now
639 handled by ism_change_state).
640 * ospf_ism.c: (ospf_dr_election) Remove logic to join or leave
641 the DRouters multicast group (now handled by ism_change_state's call
642 to ospf_if_set_multicast).
643 (ism_change_state) Add call to ospf_if_set_multicast to change
644 multicast memberships as necessary to reflect the new interface state.
645 * ospf_packet.c: (ospf_hello) When a Hello packet is received on a
646 passive interface: 1. Increase the severity of the error message
647 from LOG_INFO to LOG_WARNING; 2. Add more information to the error
648 message (packet destination address and interface address);
649 and 3. If the packet was sent to ospf-all-routers, then try
650 to fix the multicast group memberships.
651 (ospf_read) When a packet is received on an interface whose state
652 is ISM_Down, enhance the warning message to show the packet
653 destination address, and try to update/fix the multicast group
654 memberships if the packet was sent to a multicast address.
655 When a packet is received for ospf-designated-routers, but the
656 current interface state is not DR or BDR, then increase the
657 severity level of the error message from LOG_INFO to LOG_WARNING,
658 and try to fix the multicast group memberships.
659 * ospf_vty.c: (ospf_passive_interface) Call ospf_if_set_multicast for
660 any ospf interface that may have changed from active to passive.
661 (no_ospf_passive_interface) Call ospf_if_set_multicast for
662 any ospf interface that may have changed from passive to active.
663 (show_ip_ospf_interface_sub) Show multicast group memberships.
664
3a9eb091 6652005-02-08 Paul Jakma <paul@dishone.st>
666
667 * ospf_packet.c: (various) Remove unneeded stream_set_putp abuse.
668
847947f2 6692005-02-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
670
671 * ospf_packet.c: (ospf_read) Fix bug: must check for state ISM_Down,
672 not for event ISM_InterfaceDown. And improve the message by
673 adding the interface flags.
674
0b7d97d2 6752005-01-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
676
677 * ospf_network.c: (ospf_sock_init) Save errno before calling
678 ospfd_privs.change.
679
c3eab871 6802005-01-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
681
682 * ospf_packet.c: (ospf_packet_add) If oi->obuf is NULL, print
683 an error message and return.
684 (ospf_read) If the interface state is ISM_InterfaceDown, issue
685 a warning message and ignore the packet.
686
86f1fd96 6872005-01-10 Greg Troxel <gdt@fnord.ir.bbn.com>
688
689 * ospf_packet.h: Remove commented out definition of
690 OSPF_MAX_PACKET; neither it or the uncommented one are used any more.
691
692 * ospf_packet.c (ospf_make_ls_upd): Leave room for authentication
693 when deciding if an update will fit.
694 (ospf_packet_authspace): Factor out calculation of size required
695 for authentication.
696 (ospf_make_db_desc): Use ospf_max_packet, not OSPF_MAX_PACKET.
697 Don't confuse readers that there is a macro.
698
3dc56b5b 6992004-12-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
700
701 * ospf_network.c: Improve all setsockopt error messages to give detailed
702 information on the arguments.
703
17eaa728 7042004-12-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
705
706 * ospf_packet.c: (ospf_db_desc) Reduce severity of "Negotiation done"
707 messages from LOG_WARNING to LOG_INFO, since this seems to be
708 normal.
709
b87f772a 7102004-12-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
711
712 * ospf_packet.c: (ospf_read) Always look up the interface if
713 ospf_recv_packet returns NULL ifp, since some platforms such
714 as Solaris 8 appear to support ifindex retrieval but don't.
715
1d806288 7162004-12-22 Hasso Tepper <hasso at quagga.net>
717
718 * ospf_dump.c: Show debug configuration in vtysh.
c6b87819 719 * ospf_vty.c: Fix "show ip ospf" output. Router can't be elected in
720 any case if it's configured as "translate-never".
fe71a97d 721 * ospf_lsdb.[ch]: New function to calculate sum of checksums.
722 * ospf_vty.c: Bugfix to show really number of AS external LSAs, not
723 number of all LSAs with AS scope, this includes opaque as LSAs as
724 well, show this number separately. Show numbers and sums of
725 checksums for each type of LSAs.
726 * ospf_lsa.c: Calculate checksum before putting LSA into database.
1d806288 727
bc18d616 7282004-12-15 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
729
730 * ospf_interface.h: Declare new function ospf_default_iftype.
731 * ospf_interface.c: (ospf_default_iftype) New function to centralize
732 this logic in one place.
733 * ospf_zebra.c: (ospf_interface_add) Use new function
734 ospf_default_iftype.
735 * ospf_vty.c: (no_ip_ospf_network,config_write_interface) Fix logic
736 by using new function ospf_default_iftype.
737
3aa8d5f9 7382004-12-11 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
739
740 * ospf_packet.c: (ospf_db_desc) Should be static, not global.
741 (ospf_hello,ospf_db_desc,ospf_ls_upd,ospf_ls_ack) Improve warning
742 messages to include identifying information (e.g. router id).
743 * ospf_nsm.c: (nsm_change_state) Improve info message to include
744 router id and state names.
745
91f3e525 7462004-12-09 Greg Troxel <gdt@fnord.ir.bbn.com>
747
3fb9de74 748 * ospf_apiserver.c (ospf_apiserver_term): Obtain struct
749 ospf_apiserver * from listnode. Remove unused variables. Follows
750 suggestion from Jay Fenlason.
91f3e525 751
9b0e25c0 7522004-12-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
753
754 * *.c: Change level of debug messages to LOG_DEBUG.
755
274a4a44 7562004-12-07 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
757
758 * ospf_main.c: (main) The 2nd argument to openzlog has been removed.
759
1210fa66 7602004-12-03 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
761
762 * ospf_packet.c: (ospf_db_desc) Reduce priority on a debug message
763 from LOG_NOTICE to LOG_DEBUG.
764
887c44a4 7652004-12-03 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
766
767 * ospf_main.c: (sigint) Use zlog_notice for termination message.
768 (main) Issue a startup announcement using zlog_notice.
769
bec595ad 7702004-11-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
771
772 * ospf_packet.c: (ospf_db_desc_proc) Fix spelling of packet in warning
773 message and in comment.
774 (ospf_db_desc) Warning message that a packet is being discarded
775 should give the router id of the packet source. Fix spelling
776 of packet in two warning messages.
777 (ospf_ls_req) Warning message that a link state request is being
778 discarded should give the router id of the neighbor that sent it.
779
5b85facc 7802004-11-26 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
781
782 * ospf_main.c: Remove #include "debug.h" (was not being used, and
783 lib/debug.h has now been deleted).
784
c065230a 7852004-11-25 Hasso Tepper <hasso at quagga.net>
786
787 * ospf_main.c: Make group to run as configurable.
788
69e1325f 7892004-11-15 Greg Troxel <gdt@fnord.ir.bbn.com>
790
791 * ospf_packet.c (ospf_recv_packet): Assume CMSG_SPACE is present
792 and works (lib/zebra.h provides if OS doesn't).
793
788dab10 7942004-11-15 Paul Jakma <paul@dishone.st>
795
796 * ospf_{apiserver,te}.c: ospf_lsa_free's should be ospf_lsa_unlock.
797
05e85fa9 7982004-11-12 Paul Jakma <paul@dishone.st>
799
800 * ospf_ia.c: (process_summary_lsa) Only an ABR has any reason to
801 ignore stub area summary default. Even so it seems a strange
802 check, add a comment to that effect.
803
f3ae74cd 8042004-11-04 Paul Jakma <paul@dishone.st>
805
806 * ospfd.c: (ospf_network_match_iface) revert to previous network
807 statement match behaviour.
808
62d8e96a 8092004-11-02 Paul Jakma <paul@dishone.st>
810
811 * ospf_packet.c: (ospf_write_frags) remove iov arg, msg already points
812 to it. Add convenience pointer to msg->msg_iov[1], and use this,
813 fixing the unfortunate borkenness introduced in moving of this code
814 to a function.
815 (ospf_write) remove iovp and fix up call to previous.
816 (ospf_ls_upd_packet_new) cast size to long int - unfortunately
817 glibc's size_t format modifier is not portable.
818
37ccfa3d 8192004-10-31 Paul Jakma <paul@dishone.st>
820
821 * ospf_packet.c: (ospf_write_frags) Add debug output
822 (ospf_write) set type early, so we can pass it to
823 ospf_write_frags.
824 (ospf_ls_upd_packet_new) print size in debug output when too large
825 packet is encountered.
64511f39 826 * ospf_zebra.c: (ospf_distribute_list_update_timer) Ugly misuse of
827 THREAD_ARG to store an integer, but it should at least use same
828 same type to retrieve the value. Assert value is sane.
37ccfa3d 829
ac191232 8302004-10-22 Paul Jakma <paul@dishone.st>
831
832 * ospf_network.c: (ospf_sock_init) call neutral setsock_ifindex()
833 function.
834 * ospf_packet.c: (ospf_read) manually look up ifindex
4ccb2c46 835 if system could not have returned one, eg openbsd, thanks to Rivo
836 Nurges for highlighting problem and fix.
06f953f7 837 Change setsockopt_pktinfo to setsockopt_ifindex.
ac191232 838
3fb9cd6e 8392004-10-19 Andrew J. Schorr <aschorr@telemetry-investments.com>
840
841 * ospf_snmp.c: (ospf_snmp_if_update) Fix logic to handle PtP links
842 with dedicated subnets properly.
843 * ospf_lsa.c: (lsa_link_ptop_set) ditto.
844 * ospfd.c: (ospf_network_match_iface) ditto.
845 (ospf_network_run) ditto.
846 * ospf_interface.c: (ospf_if_is_configured) ditto.
847 (ospf_if_lookup_by_prefix) ditto.
848 (ospf_if_lookup_recv_if) ditto.
849 * ospf_vty.c: (show_ip_ospf_interface_sub) Display the peer or
850 broadcast address if present.
851
d68614db 8522004-10-13 Hasso Tepper <hasso at quagga.net>
853
854 * ospf_main.c: Unbreak compilation with ospfapi disabled.
c75105ab 855 * ospf_snmp.c: Remove defaults used to initialize smux connection to
856 snmpd. Connection is initialized only if smux peer is configured.
d68614db 857
f4d58ce5 8582004-10-12 Hasso Tepper <hasso at quagga.net>
859
860 * ospf_main.c, ospf_opaque.c: Unbreak ospfclient compilation - move
861 static variable from ospf_main.c into ospf_opaque.c.
862
c3abdb72 8632004-10-11 Hasso Tepper <hasso at quagga.net>
864
865 * ospf_main.c, ospf_opaque.c: Disable ospfapi init by default. New
866 command line switch to enable it.
867
6b333611 8682004-10-11 Paul Jakma <paul@dishone.st>
869
870 * ospf_dump.c: (ospf_ip_header_dump) Assume header is in host order
871 remove ntohs that should have dissappeared. Take struct ip
872 as argument, caller has to know there's an IP header at start of
873 stream anyway.
874 * ospf_dump.h: update declaration of ospf_ip_header_dump.
875 * ospf_packet.c: (ospf_write) correct call to
876 sockopt_iphdrincl_swab_htosys which was munging the header.
877 (ospf_recv_packet) ip_len is needed for old OpenBSD fixup.
878 (ospf_read) sockopt_iphdrincl_swab_systoh ip header as soon as
879 we have it.
6c835671 880 * (global) Const char update and signed/unsigned fixes.
881 * (various headers) size defines should be unsigned.
882 * ospf_interface.h: remove duplicated defines, include the
883 authoritative header - though, these defines should probably
884 be moved to a dedicated header, or ospfd.h.
885 * ospf_lsa.h: (struct lsa) ls_seqnum should be unsigned.
886 * ospf_packet.c: (ospf_write) cast result of shift to unsigned.
6b333611 887
eb1ce605 8882004-10-08 Hasso Tepper <hasso at quagga.net>
889
890 * *.[c|h]: Fix compiler warnings: make some strings const, signed ->
891 unsigned, remove unused variables etc.
892
54ade996 8932004-10-07 Greg Troxel <gdt@claude.ir.bbn.com>
894
895 * ospf_apiserver.c (ospf_apiserver_unregister_opaque_type): Don't
896 use of variable names 'node' and 'nextnode' to avoid possible
897 conflict with list macros. Move variable declaration inside for
898 loop after a statement to top of function.
899
aa20c6f1 9002004-10-07 Paul Jakma <paul@dishone.st>
901
902 * ospf_snmp.c: Missed list typedef update
903 * ospf_dump.c: Include sockopt.h for header swab functions.
904
18b12c38 9052004-10-05 Paul Jakma <paul@dishone.st>
906
907 * ospf_packet.c: replace ospf_swap_iph_to... with
908 sockopt_iphdrincl_swab_...
909
18a6dce6 9102004-10-03 James R. Leu <jleu at mindspring.com>
911
912 * ospf_zebra.c: Read router id related messages from zebra daemon.
913 Schedule router-id update thread if it's changed.
914 * ospfd.c: Remove own router-id selection function. Use router id from
915 zebra daemon if it isn't manually overriden in configuration.
916
68defd6d 9172004-09-27 Paul Jakma <paul@dishone.st>
918
6a99f831 919 * ospf_dump.c: (ospf_ip_header_dump) Use HAVE_IP_HDRINCL_BSD_ORDER
920 Apply to offset too. Print ip_cksum, lets not worry about
921 possible 2.0.37 compile problems.
922 * ospf_packet.c: (ospf_swap_iph_to{n,h}) Use
923 HAVE_IP_HDRINCL_BSD_ORDER.
924 (ospf_recv_packet) ditto.
925 (ospf_write) Fixup iov argument to ospf_write_frags.
926 (struct msghdr).msg_name is caddr_t on most platforms.
68defd6d 927 (ospf_recv_packet) ditto. And msg_flags is not always there
928 memset struct then set fields we care about rather than
929 initialise all fields individually.
930
c9e52be3 9312004-09-26 Hasso Tepper <hasso at quagga.net>
932
933 * ospf_abr.c, ospf_dump.c, ospf_lsa.c, ospf_packet.c, ospf_vty.c,
934 ospf_zebra.c: Fix compiler warnings.
935
87d6f87a 9362004-09-24 Paul Jakma <paul@dishone.st>
937
938 * ospf_apiserver.{c,h}: lists typedef removal cleanup.
939 update some list loops to LIST_LOOP. some miscellaneous indent
940 fixups.
941 (ospf_apiserver_unregister_opaque_type) fix listnode_delete of
942 referenced node in loop.
1603c06b 943 (ospf_apiserver_term) loops calling ospf_apiserver_free, which
944 deletes referenced nodes from apiserver_list, fixed.
87d6f87a 945 * ospf_interface.h: lists typedef removal cleanup.
946 * ospf_opaque.{c,h}: lists typedef removal cleanup. update some list
947 loops to LIST_LOOP. miscellaneous style and indent fixups.
948 * ospf_te.{c,h}: ditto
949 * ospf_packet.c: lists typedef removal cleanup.
a2570683 950 (ospf_write) ifdef fragmentation support. move actual
951 fragmentation out to a new, similarly ifdefed, function.
952 (ospf_write_frags) fragmented write support, moved from previous.
87d6f87a 953
52dc7ee6 9542004-09-23 Hasso Tepper <hasso at quagga.net>
955
956 * *.[c|h]: list -> struct list *, listnode -> struct listnode *.
957
68b7339a 9582004-09-12 Paul Jakma <paul@dishone.st>
959
960 * ospf_packet.c: Fix bugzilla #107
961 (ospf_packet_max) get rid of the magic 88 constant
962 (ospf_swab_iph_ton) new function. set ip header to network order,
963 taking BSDisms into account.
964 (ospf_swab_iph_toh) the inverse.
965 (ospf_write) Add support for IP fragmentation, will only work on
966 linux though, other kernels make it impossible. get rid of the
967 magic 4 constant.
968 (ospf_make_ls_upd) Bound check to end of stream, not to
969 interface mtu.
970 (ospf_ls_upd_packet_new) New function, allocate upd packet
971 taking oversized LSAs into account.
972 (ospf_ls_upd_queue_send) use ospf_ls_upd_packet_new to allocate,
973 rather than statically allocating mtu sized packet buffer, which
974 actually was wrong - it didnt take ip header into account, which
975 should not be included in packet buffer.
976 (ospf_ls_upd_send_queue_event) minor tweaks and remove
977 TODO comment.
978
630e4807 9792004-08-31 David Wiggins <dwiggins@bbn.com>
980
981 * ospf_spf.c (ospf_spf_calculate): Many more comments and debug
982 print statements. New function ospf_vertex_dump used in debugging.
983
9842004-08-31 David Wiggins <dwiggins@bbn.com>
985
986 * ospf_spf.h (struct vertex): Comments for flags and structure members.
987
9882004-08-31 David Wiggins <dwiggins@bbn.com>
989
990 * ospf_route.c: When finding an alternate route, log cost as well.
991
9922004-08-31 David Wiggins <dwiggins@bbn.com>
993
994 * ospf_interface.c (ospf_lookup_if_params): Initialize af in
995 struct prefix allocated on stack.
996
9972004-08-31 David Wiggins <dwiggins@bbn.com>
998
999 * ospf_packet.c (ospf_ls_ack_send_delayed): In p2mp mode, send
1000 acks to AllSPFRouters, rather than All-DR.
1001
7b90143f 10022004-08-27 Hasso Tepper <hasso at quagga.net>
1003
1004 * ospf_vty.c: Don't print ospf network type under interface only
1005 if interface is in broadcast mode and interface type really is
1006 broadcast. Fixes Bugzilla #108.
1007
d7d93997 10082004-08-27 David Wiggins <dwiggins@bbn.com>
1009
1010 * ospf_spf.c (ospf_nexthop_calculation): Initialize address family
1011 in on-stack struct prefix_ipv4. Fixes point-to-multipoint SPF
1012 calculation.
1013
d0deca68 10142004-08-26 Greg Troxel <gdt@fnord.ir.bbn.com>
1015
1016 * ospf_packet.c (ospf_recv_packet): adjust size declaration of
d7d93997 1017 buffer used to get interface index so that it compiles on other
1018 than Linux and includes the required alignment space. Probably
1019 this was only working on sparc/sparc64 because most of
1020 sockaddr_dl was not being written.
d0deca68 1021
863082d5 10222004-08-19 Paul Jakma <paul@dishone.st>
1023
1024 * ospf_packet.c: update to match sockopt renames.
1025
75ee0b8e 10262004-08-04 Paul Jakma <paul@dishone.st>
1027
1028 * ospf_spf.c: (ospf_spf_consider_nexthop) Add comment about issue.
1029 Compare only against list head - all nexthops must be same cost
1030 anyway, fixes a reference-listnode-after-delete bug noted by
1031 Kir Kostuchenko.
1032 (ospf_nexthop_calculation) Use ospf_spf_consider_nexthop for all
1033 candidates attached to root.
1034
48fe13bf 10352004-07-27 Paul Jakma <paul@dishone.st>
1036
1037 * ospf_packet.c: (ospf_ls_upd_send_queue_event) fix thinko from
1038 last fix for ospfd wedging due to oversize LSAs: dont list loop on
1039 ospf_ls_upd_queue_send() - guaranteed segfault.
1040
36c64efd 10412004-07-27 Paul Jakma <paul@dishone.st>
1042
1043 * ospf_opaque.c: (ospf_opaque_lsa_flush_schedule) do not NULL out
1044 the LSA as then free_opaque_info_per_id() can never unlock (and
1045 free) the LSA. Reported by Gunnar Stigen.
1046
2dd8bb4e 10472004-07-23 Paul Jakma <paul@dishone.st>
1048
1049 * ospf_network.c: Replace PKTINFO/RECVIF with call to
1050 setsockopt_pktinfo
1051 * ospf_packet.c: Use getsockopt_pktinfo_ifindex and
1052 SOPT_SIZE_CMSG_PKTINFO_IPV4.
1053
59ea14c6 10542004-07-14 Paul Jakma <paul@dishone.st>
1055
1056 * ospf_packet.c: (ospf_ls_upd_send_queue_event) Partial fix for
1057 problem reported by Peter Frost amongst others, where function
1058 will spin indefinitely if update list contains LSAs greater than
1059 MTU-headers or other condition leading to update list never being
1060 cleared. Problem of what to do with these LSAs remains.
1061 (ospf_make_ls_upd) add comment about large LSA problem,
1062 indentation cleanup.
1063
b2c1b282 10642004-07-01 Greg Troxel <gdt@fnord.ir.bbn.com>
1065
1066 * Makefile.am (lib_LTLIBRARIES): make libospf shared
1067
87efd646 10682004-06-30 Greg Troxel <gdt@poblano.ir.bbn.com>
1069
1070 * Makefile.am: Add shlib support.
1071
beebba75 10722004-06-10 Hasso Tepper <hasso@estpak.ee>
1073
1074 * *: Removed ifdefs HAVE_NSSA.
1075
553ff113 10762004-06-06 Paul Jakma <paul@dishone.st>
1077
1078 * ospf_dump.c,ospf_lsa.c: Fix typos of merge of previous.
1079 ospf_flood.c: (ospf_process_self_originated_lsa) fix zlog format
1080
0c2be26c 10812004-05-31 Sagun Shakya <sagun.shakya@sun.com>
1082
1083 * ospf_dump.c: (ospf_lsa_header_dump) LOOKUP can return null if
1084 index is out of range.
1085 ospf_flood.c: endianness fix
1086 ospf_lsa.c: Missing ntohl's on (struct lsa *)->data->ls_seqnum
1087 in various places.
1088
dd669bb0 10892004-05-10 Hasso Tepper <hasso@estpak.ee>
1090
1091 * ospf_zebra.c, ospfd.c: Move ospf_prefix_list_update() function
1092 to ospf_zebra.c from ospfd.c and add redistribution updates if
1093 route-map is used in redistribution.
1094 * ospf_main.c: Remove now useless call to ospf_init().
1095
0a589359 10962004-05-08 Paul Jakma <paul@dishone.st>
1097
1098 * ospf_zebra.c: Sync with lib/zclient changes
1099
d3f0d621 11002004-05-05 Paul Jakma <paul@dishone.st>
1101
5bd4189c 1102 * ospf_network.c: (ospf_sock_init) Check whether IP_HDRINCL is
1103 defined. Warn at compile and runtime. Use
1104 IPTOS_PREC_INTERNETCONTROL otherwise.
d3f0d621 1105 * ospf_packet.c: (ospf_associate_packet_vl) cleanup, move
1106 some of the checks up to ospf_read, return either a
1107 virtual link oi, or NULL.
1108 (ospf_read) Cleanup, make it responsible for checks. Remove
1109 the nbr lookup - moved to ospf_neighbor. Adjust all nbr
1110 lookups to use new wrappers exported by ospf_neighbor.
1111 * ospf_neighbor.h: Add ospf_neigbour_get and ospf_nbr_lookup.
1112 * ospf_neighbor.c: (ospf_neigbour_get) Index ospf_interface
1113 neighbour table by router-id for virtual-link ospf_interfaces,
1114 not by peer_addr (which breaks for asymmetric vlinks)
1115 (ospf_nbr_lookup) add a wrapper for nbr lookups to deal with
1116 above.
cd59da68 1117 * ospf_interface.c: (ospf_vl_set_params) Catch changes of interface
1118 address for either end of a virtual-link, and hence potential cost
1119 changes.
1120
a0a39761 11212004-04-22 Hasso Tepper <hasso@estpak.ee>
1122
1123 * ospf_zebra.c: Don't ignore reject/bh routes, it's the only way
1124 to "summarize" routes in ASBR at the moment.
1125
8585d4e5 11262004-04-20 Hasso Tepper <hasso@estpak.ee>
1127
1128 * ospfd.c: Unset NP flag if area is going to be normal or stub.
1129 Fixes UNH OSPF_NSSA.1.2a comment.
1130 * ospf_abr.c: Originate default into stub/nssa area even if
1131 summaries are disabled.
1132 * ospf_zebra.c: Don't attempt to redistribute 127.0.0.0/8.
1133
c266ac78 11342004-04-19 Hasso Tepper <hasso@estpak.ee>
1135
1136 * ospf_vty.c: Don't warn that export- and import-list can't be
1137 configured to backbone area if they are applied and are working
1138 fine.
1139
128d31d3 11402004-02-19 Sowmini Varadhan <sowmini.varadhan@sun.com>
1141
1142 * ospf_packet.c: Don't drop packets in Solaris x86.
1143 [quagga-dev 1005].
1144
0d85b995 11452004-03-18 Amir Guindehi <amir@datacore.ch>
1146
1147 * ospf_opaque.c: Attempt to correct the incorrect behavior of
1148 Quagga's ospfd in the special situation that a node's opaque
1149 capability has changed as "ON -> OFF -> ON". [quagga-dev 843].
1150
7f352b86 11512004-02-19 Sowmini Varadhan <sowmini.varadhan@sun.com>
1152
1153 * ospf_abr.c: (ospf_abr_update_aggregate) UNH 3.12b,c, address range
1154 should be configured with the highest cost path within the range,
1155 not lowest.
1156
940b01aa 11572004-02-17 Paul Jakma <paul@dishone.st>
1158
1159 * ospf_zebra.c: (ospf_interface_delete) Do not delete the interface
1160 params, nor the interface structure, if an interface delete
1161 message is received from zebra.
1162 * ospf_interface.c: (ospf_if_delete_hook) Delete the interface
1163 params and interface, ie that which was previously removed in
1164 (ospf_interface_delete) above.
1165
2db3d05d 11662004-02-11 Hasso Tepper <hasso@estpak.ee>
1167 * ospf_interface.c, ospf_zebra.c: Don't attempt to read path->oi->ifp
1168 if oi doesn't exist any more.
1169
cb05eb28 11702004-02-11 Vadim Suraev <vadim.suraev@terayon.com>
1171 * ospf_packet.c (ospf_ls_upd): Router should flush received network
1172 LSA if it was originated with older router-id ([zebra 14710] #6).
1173
11742003-12-08 Mattias Amnefelt <mattiasa@kth.se>
239aecc0 1175
1176 * ospf_packet.c: (ospf_recv_packet) OpenBSD now leaves iph.ip_len
1177 network byte order.
1178
8f40e891 11792003-12-05 Greg Troxel <gdt@poblano.ir.bbn.com>
1180
1181 * ospfd.c (ospf_network_match_iface): Rewrite code for clarity
1182 while trying not to change semantics. Add ifdefed-out code to
1183 avoid matching ppp interfaces whose destination address does not
1184 also match the prefix under consideration, to help out people with
1185 problems due to as-yet-unfixed bugs with p2p interfaces coming and
1186 going.
1187
736d3441 11882003-07-25 kamatchi soundaram <kamatchi@tdd.sj.nec.com>
1189
1190 * ospf_packet.c (ospf_ls_upd_send_queue_event): get next route
1191 node in body of the loop to avoid chance that route node
1192 is unlocked and deleted before the next iteration tries to
1193 get next route node.
1194
0a825c79 11952003-05-24 Kenji Yabuuchi
1196
1197 * ospf_interface.c(ospf_if_lookup_recv_if): Use the most specific
1198 match for interface lookup.
1199
551a8979 12002003-05-18 Hasso Tepper <hasso@estpak.ee>
445f1435 1201
551a8979 1202 * ospf_vty.c: Show NSSA LSA route info in "show ip ospf database"
1203 output
445f1435 1204
d748032f 12052003-05-16 Hasso Tepper <hasso@estpak.ee>
1206
1207 * ospf_lsa.c: Fix handling of NSSA
1208
551a8979 12092003-04-23 Hasso Tepper <hasso@estpak.ee>
1210
1211 * ospf_vty.c: fix "router xxx" node commands in vtysh
1212
445f1435 12132003-04-19 Hasso Tepper <hasso@estpak.ee>
1214
1215 * {ospf_abr,ospfd}.c: area id's DECIMAL -> ADDRESS
1216 * ospf_routemap.c: sync daemon's route-map commands to have same
1217 syntax.
1218
12192003-04-19 Sergey Vyshnevetskiy <serg@vostok.net>
1220
1221 * ospf_packet.c: Add missing param to zlog
1222 * ospf_flood.c: remove unused vars
1223
12242003-04-17 Denis Ovsienko <zebra@pilot.org.ua>
1225
1226 * ospf_interface.c: fix incorrect memset
1227
28a13841 12282003-04-10 Amir Guindehi <amir@datacore.ch>
445f1435 1229
1230 * ospf_lsa.[ch]: opaque LSA fix, use ospf_lookup.
1231
12322003-04-03 David Watson <dwatson@eecs.umich.edu>
1233
1234 * ospf_lsa.c: byte order fix
1235
07661cb5 12362002-03-17 Amir Guindehi <amir@datacore.ch>
1237
1238 * ospf_apiserver.[ch]: Merge Ralph Keller's OSPFAPI support.
1239 * ospf_api.[ch]: Merge Ralph Keller's OSPFAPI support.
1240 * ospfclient: OSPFAPI demonstration client.
1241
12422003-01-23 Masahiko Endo <endo@suri.co.jp>
1243
1244 * ospf_ism.c: NSM event schedule bug fix.
1245
12462002-10-30 Greg Troxel <gdt@ir.bbn.com>
1247
1248 * ospf_packet.c (ospf_make_md5_digest): MD5 length fix.
1249
718e3744 12502002-10-23 endo@suri.co.jp (Masahiko Endo)
1251
1252 * ospf_opaque.c: Update Opaque LSA patch.
1253
12542002-10-23 Ralph Keller <keller@tik.ee.ethz.ch>
1255
1256 * ospf_vty.c (show_ip_ospf_database): Fix CLI parse.
1257
12582002-10-23 Juris Kalnins <juris@mt.lv>
1259
1260 * ospf_interface.c (ospf_if_stream_unset): When write queue
1261 becomes empty stop write timer.
1262
12632002-10-10 Greg Troxel <gdt@ir.bbn.com>
1264
1265 * ospf_packet.c (ospf_check_md5_digest): Change >= to > to make it
1266 conform to RFC.
1267
12682002-07-07 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1269
1270 * zebra-0.93 released.
1271
12722002-06-19 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1273
1274 * ospf_spf.c (ospf_nexthop_calculation): Add NULL set to oi and
1275 check of l2. Reported by: Daniel Drown <dan-zebra@drown.org>
1276 (ospf_lsa_has_link): LSA Length calculation fix. Reported by:
1277 Paul Jakma <paulj@alphyra.ie>.
1278
1279 * ospfd.c (ospf_if_update): Fix nextnode reference bug. Reported
1280 by: juris@mt.lv.
1281
12822002-01-21 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1283
1284 * ospfd.c: Merge [zebra 11445] Masahiko ENDO's Opaque-LSA support.
1285
12862001-08-27 Kunihiro Ishiguro <kunihiro@zebra.org>
1287
1288 * ospf_interface.c (ospf_add_to_if): Use /32 address to register
1289 OSPF interface information.
1290 (ospf_delete_from_if): Likewise.
1291
1292 * ospf_zebra.c (ospf_interface_address_delete): Likewise.
1293
12942001-08-23 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1295
1296 * ospf_zebra.c (ospf_redistribute_unset): When redistribute type
1297 is OSPF, do not unset redistribute flag.
1298
12992001-08-19 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1300
1301 * zebra-0.92a released.
1302
13032001-08-15 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1304
1305 * zebra-0.92 released.
1306
13072001-08-12 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1308
1309 * ospfd.c (ospf_config_write): auto-cost reference-bandwidth
1310 configuration display.
1311
13122001-07-24 David Watson <dwatson@eecs.umich.edu>
1313
1314 * ospf_spf.c (ospf_spf_next): Modify ospf_vertex_add_parent to
1315 check for an existing link before connecting the parent and child.
1316 ospf_nexthop_calculation is also modified to check for duplicate
1317 entries when copying from the parent. Finally, ospf_spf_next
1318 removes duplicates when it merges two equal cost candidates.
1319
13202001-07-23 itojun@iijlab.net
1321
1322 * ospfd.c (show_ip_ospf_neighbor): Check ospf_top before use it
1323 [zebra 8549].
1324
13252001-07-23 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1326
1327 * ospf_packet.c (ospf_write): Remove defined(__OpenBSD__) to make
1328 it work on OpenBSD.
1329
13302001-06-26 Kunihiro Ishiguro <kunihiro@zebra.org>
1331
1332 * ospf_zebra.c (config_write_ospf_default_metric): Display
1333 default-metric configuration.
1334
13352001-06-18 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1336
1337 * ospf_ia.h (OSPF_EXAMINE_SUMMARIES_ALL): Remove old macros.
1338
13392001-05-28 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1340
1341 * ospf_snmp.c (ospfIfEntry): Fix interface lookup bug to avoid
1342 crush.
1343 (ospfIfMetricEntry): Likewise.
1344
13452001-03-18 Kunihiro Ishiguro <kunihiro@zebra.org>
1346
1347 * ospf_packet.c (ospf_read): Fix typo. Reported by: "Jen B
1348 Lin'Kova" <jen@stack.net>.
1349
13502001-03-15 Gleb Natapov <gleb@nbase.co.il>
1351
1352 * ospf_interface.c (ip_ospf_network): Set interface parameter.
1353 (interface_config_write): Add check for OSPF_IFTYPE_LOOPBACK.
1354
1355 * ospf_zebra.c (ospf_interface_add): Set interface parameter.
1356
13572001-02-21 Kunihiro Ishiguro <kunihiro@zebra.org>
1358
1359 * ospf_packet.c (ospf_recv_packet): Solaris also need to add
1360 (iph.ip_hl << 2) to iph.ip_len.
1361
13622001-02-09 Kunihiro Ishiguro <kunihiro@zebra.org>
1363
1364 * ospfd.h (OSPF_LS_REFRESH_TIME): Fix OSPF_LS_REFRESH_TIME value.
1365 Suggested by: David Watson <dwatson@eecs.umich.edu>.
1366
1367 * ospf_zebra.c (zebra_init): Remove zebra node.
1368
1369 * ospfd.c (ospf_area_range_set): Function name is changed from
1370 ospf_ara_range_cmd.
1371 (ospf_area_range_unset): New function which separated from DEFUN.
1372 New commands are added:
1373 "no area A.B.C.D range A.B.C.D/M advertise"
1374 "no area <0-4294967295> range A.B.C.D/M advertise"
1375 "no area A.B.C.D range A.B.C.D/M not-advertise"
1376 "no area <0-4294967295> range A.B.C.D/M not-advertise"
1377
1378 * ospf_lsa.c (ospf_lsa_more_recent): Fix previous change.
1379
13802001-02-08 Matthew Grant <grantma@anathoth.gen.nz>
1381
1382 * ospf_network.c (ospf_if_add_allspfrouters): Use
1383 setsockopt_multicast_ipv4.
1384 (ospf_if_drop_allspfrouters): Likewise.
1385
1386 * ospf_lsa.c (ospf_router_lsa_install): Add rt_recalc flag.
1387 (ospf_network_lsa_install): Likewise.
1388 (ospf_summary_lsa_install): Likewise.
1389 (ospf_summary_asbr_lsa_install): Likewise.
1390 (ospf_external_lsa_install): Likewise.
1391 (ospf_lsa_install): Call ospf_lsa_different to check this LSA is
1392 new one or not.
1393
13942001-02-08 Kunihiro Ishiguro <kunihiro@zebra.org>
1395
1396 * ospf_zebra.c (ospf_interface_delete): Do not free interface
1397 structure when ospfd receive interface delete message to support
1398 pseudo interface.
1399
14002001-02-01 Dick Glasspool <dick@ipinfusion.com>
1401
1402 * ospfd.c (area_range_notadvertise): Change area range "suppress"
1403 command to "not-advertise".
1404
1405 * ospfd.h (OSPF_LS_REFRESH_TIME): Change OSPF_LS_REFRESH_TIME from
1406 1800 to 60.
1407
1408 * ospf_abr.c (ospf_abr_update_aggregate): When update_aggregate is
1409 updating the area-range, the lowest cost is now saved.
1410
1411 * ospf_lsa.c (ospf_lsa_more_recent): Routing to compare sequence
1412 numbers rather than creating overflow during calculation.
1413
14142001-02-01 Kunihiro Ishiguro <kunihiro@zebra.org>
1415
1416 * zebra-0.91 is released.
1417
14182001-01-31 Kunihiro Ishiguro <kunihiro@zebra.org>
1419
1420 * ospf_packet.c (ospf_db_desc_proc): Do not continue process when
1421 NSM_SeqNumberMismatch is scheduled.
1422 (ospf_ls_req): Free ls_upd when return from this function.
1423 (ospf_ls_upd_timer): When update list is empty do not call
1424 ospf_ls_upd_send(). Suggested by: endo@suri.co.jp (Masahiko
1425 Endo).
1426
14272001-01-26 Kunihiro Ishiguro <kunihiro@zebra.org>
1428
1429 * ospf_lsa.c (ospf_maxage_flood): Flood LSA when it reaches
1430 MaxAge. RFC2328 Section 14.
1431 (ospf_maxage_lsa_remover): Call above function during removing
1432 MaxAge LSA.
1433
14342001-01-26 Dick Glasspool <dick@ipinfusion.com>
1435
1436 * ospf_flood.c (ospf_flood_through_as): Function is updated for
1437 NSSA Translations now done at ospf_abr.c with no change in P-bit.
1438
1439 * ospf_lsa.c (ospf_get_nssa_ip): Get 1st IP connection for Forward
1440 Addr.
1441 (ospf_install_flood_nssa): Leave Type-7 LSA at Lock Count = 2.
1442
1443 * ospf_ase.c (ospf_ase_calculate_route): Add debug codes.
1444
1445 * ospf_abr.c (ospf_abr_translate_nssa): Recalculate LSA checksum.
1446
1447 * ospf_packet.h (OSPF_SEND_PACKET_LOOP): Added for test packet.
1448
1449 * ospf_dump.c (ospf_lsa_type_msg): Add OSPF_GROUP_MEMBER_LSA and
1450 OSPF_AS_NSSA_LSA.
1451
1452 * ospfd.c (data_injection): Function to inject LSA. This is
1453 debugging command.
1454
14552001-01-11 Kunihiro Ishiguro <kunihiro@zebra.org>
1456
1457 * ospf_route.c (ospf_route_match_same): Remove function.
1458 (ospf_route_match_same_new): Renamed to ospf_route_match_same.
1459
1460 * ospf_zebra.c (ospf_interface_address_delete): Add check for
1461 oi->address. Suggested by Matthew Grant
1462 <grantma@anathoth.gen.nz>.
1463 (ospf_zebra_add): Remove function.
1464 (ospf_zebra_add_multipath): Rename to ospf_zebra_add.
1465
1466 * ospf_interface.c: Remove HAVE_IF_PSEUDO part.
1467
1468 * ospf_zebra.c: Likewise.
1469
14702001-01-10 Kunihiro Ishiguro <kunihiro@zebra.org>
1471
1472 * ospf_ase.c: Remove OLD_RIB part.
1473
1474 * ospf_route.c: Likewise.
1475
1476 * zebra-0.90 is released.
1477
1478 * ospf_packet.c (ospf_recv_packet): Use ip_len adjestment code to
1479 NetBSD.
1480
14812001-01-09 Kunihiro Ishiguro <kunihiro@zebra.org>
1482
1483 * ospf_route.c (ospf_route_delete): Use
1484 ospf_zebra_delete_multipath.
1485
14862001-01-09 Matthew Grant <grantma@anathoth.gen.nz>
1487
1488 * ospf_interface.c (ospf_if_cleanup): Function name is renamed
1489 from ospf_if_free(). Rewrite whole procudure to support primary
1490 address deletion.
1491
1492 * ospf_zebra.c (ospf_interface_address_delete): Add primary
1493 address deletion process.
1494
14952001-01-09 Kunihiro Ishiguro <kunihiro@zebra.org>
1496
1497 * ospf_packet.c (ospf_recv_packet): OpenBSD has same ip_len
1498 treatment like FreeBSD.
1499
15002001-01-09 endo@suri.co.jp (Masahiko Endo)
1501
1502 * ospf_packet.c (ospf_recv_packet): FreeBSD kernel network code
1503 strips IP header size from receiving IP Packet. So we adjust
1504 ip_len to whole IP packet size by adding IP header size.
1505
15062001-01-08 endo@suri.co.jp (Masahiko Endo)
1507
1508 * ospf_network.c (ospf_serv_sock): When socket() is failed return
1509 immediately.
1510 (ospf_serv_sock): Close socket when it is not used.
1511
1512 * ospf_packet.c (ospf_write): Set sin_len when HAVE_SIN_LEN is
1513 defined.
1514 (ospf_write): When bind is fined, close sock.
1515
15162001-01-07 Gleb Natapov <gleb@nbase.co.il>
1517
1518 * ospf_zebra.c (ospf_interface_state_up): Fixes coredump that
1519 appears when you try to configure bandwidth on the ppp interface
1520 that is not yet configured in ospfd.
1521
15222001-01-07 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1523
1524 * ospf_route.c (show_ip_ospf_route_external): "show ip ospf route"
1525 will print nexthops for AS-external routes.
1526
1527 * ospf_ase.c (ospf_ase_route_match_same): New function to compare
1528 ASE route under multipath environment.
1529 (ospf_ase_compare_tables): Likewise.
1530
15312001-01-01 Kunihiro Ishiguro <kunihiro@zebra.org>
1532
1533 * ospfd.h (OSPF_VTYSH_PATH): Change "/tmp/ospfd" to "/tmp/.ospfd".
1534
15352000-12-28 Kunihiro Ishiguro <kunihiro@zebra.org>
1536
1537 * ospf_route.c (ospf_route_install): Install multipath information
1538 to zebra daemon.
1539
1540 * ospf_zebra.c (ospf_zebra_add_multipath): Function for passing
1541 multipath information to zebra daemon.
1542
15432000-12-25 Dick Glasspool <dick@ipinfusion.com>
1544
1545 * ospf_packet.c (ospf_write): Call ospf_packet_delete when sendto
1546 fail.
1547 (DISCARD_LSA): Add argument N for logging point of DISCARD_LSA is
1548 called.
1549
1550 * ospf_lsa.c (ospf_external_lsa_refresh): NSSA install_flood will
1551 leave Type-7 LSA at Lock Count = 2.
1552
1553 * ospf_flood.c (ospf_flood_through): Flood_though_as updated for
1554 NSSA no P-bit off during Area flooding, but P-bit is turned off
1555 for mulitple NSSA AS flooding.
1556
1557 * ospf_ase.c (ospf_ase_calculate_timer): Added calculations for
1558 Type-7 LSDB.
1559
1560 * ospf_abr.c (ospf_abr_translate_nssa): Removed one unlock call.
1561 (ospf_abr_announce_nssa_defaults): Corrected Debug from EVENT to
1562 NSSA.
1563
15642000-12-25 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1565
1566 * ospf_zebra.c (ospf_zebra_read_ipv4): Checking the age of the
1567 found LSA and if the LSA is MAXAGE we should call refresh instead
1568 of originate.
1569
15702000-12-18 Dick Glasspool <dick@ipinfusion.com>
1571
1572 * ospf_abr.c: Removed redundant "...flood" in
1573 announce_network_to_area(). Repaired nssa Unlock by using
1574 discard.
1575
1576 * ospf_packet.c: Removed old NSSA translate during mk_ls_update.
1577
1578 * ospfd.c: Free up all data bases including NSSA.
1579
1580 * ospf_lsa.c: Now allow removal of XLATE LSA's Check in
1581 discard_callback. Added routine to get ip addr from within the
1582 ifp.
1583
1584 * ospf_flood.c: Now set Forward Address for outgoing Type-7.
1585
1586 * ospf_lsa.h: Added prototype for the below. struct in_addr
1587 ospf_get_ip_from_ifp (struct interface *ifp).
1588
15892000-12-14 Gleb Natapov <gleb@nbase.co.il>
1590
1591 * ospf_packet.c (ospf_recv_packet): New OSPF pakcet read method.
1592 Now maximum packet length may be 65535 bytes (maximum IP packet
1593 length).
1594
1595 * ospf_interface.c (ospf_if_stream_set): Don't make input buffer.
1596
1597 * ospfd.c (config_write_network_area): Remove unnecessary area
1598 lookup code.
1599
16002000-12-13 Kunihiro Ishiguro <kunihiro@zebra.org>
1601
1602 * ospf_packet.c (ospf_read): Accept packet bigger than MTU value.
1603
16042000-12-13 Gleb Natapov <gleb@nbase.co.il>
1605
1606 * ospfd.c (config_write_network_area): Fix bug in
1607 config_write_network_area function.
1608
16092000-12-12 Gleb Natapov <gleb@nbase.co.il>
1610
1611 * ospf_abr.c (ospf_abr_announce_network_to_area): Make Summary
1612 LSA's origination and refreshment as same as other type of LSA.
1613
1614 * ospf_lsa.c (ospf_summary_lsa_refresh): Return struct ospf_lsa *.
1615
1616 * ospf_lsa.c (ospf_summary_asbr_lsa_refresh): Likewise.
1617
16182000-12-08 Dick Glasspool <dick@ipinfusion.com>
1619
1620 The bulk of NSSA changes are contained herein; This version will
1621 require manual setting of "always" for NSSA Translator, and will
1622 not perform aggregation yet.
1623
1624 * ospf_dump.c: "debug ospf nssa" is added.
1625
1626 * ospf_dump.h: Likewise.
1627
1628 * ospf_packet.c (ospf_hello): Display router ID on Bad NSSA Hello.
1629
1630 * ospfd.c: Discard_LSA to stay away from LOCAL_XLT Process NSSA
1631 'never, candidate, always'. Change "suppress" to "not-advertise".
1632
1633 * ospfd.h: Add TranslatorRole to struct ospf_area. Add anyNSSA to
1634 struct ospf.
1635
1636 * ospf_ase.c (ospf_ase_calculate_route): External to stay away
1637 from LOCAL_XLT
1638
1639 * ospf_nsm.c (ospf_db_summary_add): External to stay away from
1640 LOCAL_XLT
1641
1642 * ospf_abr.c: Major logic added for abr_nssa_task(). If ABR, and
1643 NSSA translator, then do it. Approve the global list, and flush
1644 any unapproved.
1645
1646 * ospf_lsa.h: New LSA flag OSPF_LSA_LOCAL_XLT to indicate that the
1647 Type-5 resulted from a Local Type-7 translation; not used for
1648 flooding, but used for flushing.
1649
1650 * ospf_flood.c: New NSSA flooding.
1651
16522000-12-08 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1653
1654 * ospfd.c (ospf_find_vl_data): New function for looking up virtual
1655 link data.
1656 (ospf_vl_set_security): Virtual link configuration with
1657 authentication.
1658 (ospf_vl_set_timers): Set timers for virtual link.
1659
1660 * New commands are added.
1661 "area A.B.C.D virtual-link A.B.C.D"
1662 "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>"
1663 "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"
1664 "area A.B.C.D virtual-link A.B.C.D authentication-key AUTH_KEY"
1665 "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"
1666 "area A.B.C.D virtual-link A.B.C.D message-digest-key <1-255> md5 KEY"
1667
1668 * ospf_packet.c (ospf_check_md5_digest): Add neighbor's
1669 cryptographic sequence number treatment.
1670 (ospf_check_auth): OSPF input buffer is added to argument.
1671 (ospf_read): Save neighbor's cryptographic sequence number.
1672
1673 * ospf_nsm.c (nsm_change_status): Clear cryptographic sequence
1674 number when neighbor status is changed to NSM down.
1675
1676 * ospf_neighbor.c (ospf_nbr_new): Set zero to crypt_seqnum.
1677
1678 * ospf_neighbor.h (struct ospf_neighbor): Add cryptographic
1679 sequence number to neighbor structure.
1680
16812000-11-29 Kunihiro Ishiguro <kunihiro@zebra.org>
1682
1683 * ospf_snmp.c (ospfIfLookup): OSPF MIB updates.
1684 (ospfExtLsdbEntry): Add OspfExtLsdbTable treatment.
1685
16862000-11-28 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1687
1688 * ospfd.c (ospf_interface_down): Clear a ls_upd_queue queue of the
1689 interface.
1690 (ospf_ls_upd_queue_empty): New function to empty ls update queue
1691 of the OSPF interface.
1692 (no_router_ospf): 'no router ospf' unregister redistribution
1693 requests from zebra.
1694
16952000-11-28 Kunihiro Ishiguro <kunihiro@zebra.org>
1696
1697 * ospf_ism.c (ism_change_status): Increment status change number.
1698
1699 * ospf_interface.h (struct ospf_interface): Add new member for
1700 status change statistics.
1701
1702 * Makefile.am: Update dependencies.
1703
1704 * ospf_zebra.c (ospf_interface_add): OSPF SNMP interface update.
1705 (ospf_interface_delete): OSPF SNMP interface delete.
1706
1707 * ospf_snmp.h: New file is added.
1708
17092000-11-23 Dick Glasspool <dick@ipinfusion.com>
1710
1711 * ospfd.h: Add new ospf_area structure member for
1712 NSSATranslatorRole and NSSATranslator state.
1713
1714 * ospfd.c: Provided for eventual commands to specify NSSA
1715 elections for "translator- ALWAYS/NEVER/CANDIDATE". Provided for
1716 decimal integer version of area-suppress.
1717
1718 * ospf_flood.c: Flood Type-7's only into NSSA (not AS).
1719
1720 * ospf_lsa.c: Undo some previous changes for NSSA. If NSSA
1721 translator, advertise Nt bit.
1722
1723 * ospf_route.c: 1st version of "sh ip os border-routers".
1724
17252000-11-23 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1726
1727 * ospfd.c (area_vlink): Virtual link can not configured in stub
1728 area.
1729
17302000-11-23 Gleb Natapov <gleb@nbase.co.il>
1731
1732 * ospf_packet.c (ospf_db_desc): In states Loading and Full the
1733 slave must resend its last Database Description packet in response
1734 to duplicate Database Description packets received from the
1735 master. For this reason the slave must wait RouterDeadInterval
1736 seconds before freeing the last Database Description packet.
1737 Reception of a Database Description packet from the master after
1738 this interval will generate a SeqNumberMismatch neighbor
1739 event. RFC2328 Section 10.8
1740 (ospf_make_db_desc): DD Master flag treatment.
1741
1742 * ospf_nsm.c (nsm_twoway_received): Move DD related procedure to
1743 nsm_change_status().
1744 (nsm_bad_ls_req): Likewise.
1745 (nsm_adj_ok): Likewise.
1746 (nsm_seq_number_mismatch): Likewise.
1747 (nsm_oneway_received): Likewise.
1748
1749 * ospf_neighbor.h (struct ospf_neighbor): New structure member
1750 last_send_ts for timestemp when last Database Description packet
1751 was sent.
1752
1753 * ospf_nsm.c (ospf_db_desc_timer): Make it sure nbr->last_send is
1754 there. Call ospf_db_desc_resend() in any case.
1755
17562000-11-16 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1757
1758 * ospf_lsa.c (lsa_link_broadcast_set): When there is no DR on
1759 network (suppose you have only one router with interface priority
1760 0). It's router LSA does not contain the link information about
1761 this network.
1762
1763 * ospf_nsm.c (nsm_timer_set): When you change a priority of
1764 interface from/to 0 ISM_NeighborChange event should be scheduled
1765 in order to elect new DR/BDR on the network.
1766
1767 * ospf_interface.c (ip_ospf_priority): Likewise.
1768
1769 * ospf_flood.c (ospf_ls_retransmit_add): When we add some LSA into
1770 retransmit list we need to check whether the present old LSA in
1771 retransmit list is not more recent than the new
1772 one.
1773
17742000-11-09 Dick Glasspool <dick@ipinfusion.com>
1775
1776 * ospf_packet.c: Allows for NSSA Type-7 LSA's throughout the NSSA
1777 area. Any that exit the NSSA area are translated to type-5 LSA's.
1778 The instantiated image is restored after translation.
1779 (ospf_ls_upd_send_list): Renamed to ospf_ls_upd_queu_send().
1780 (ospf_ls_upd_send): Old function which enclosed by #ifdef 0 is
1781 removed.
1782 (ospf_ls_ack_send): Likewise.
1783
1784 * ospf_flood.c: NSSA-LSA's without P-bit will be restricted to
1785 local area. Otherwise they are allowed out the area to be
1786 translated by ospf_packet.c.
1787
1788 * ospf_lsa.c: Undo some previous changes for NSSA.
1789
1790 * ospf_lsdb.h: New access for type 7.
1791
17922000-11-07 Kunihiro Ishiguro <kunihiro@zebra.org>
1793
1794 * ospf_route.c (ospf_path_exist): New function to check nexthop
1795 and interface are in current OSPF path or not.
1796 (ospf_route_copy_nexthops_from_vertex): Add nexthop to OSPF path
1797 when it is not there. Reported by Michael Rozhavsky
1798 <mrozhavsky@opticalaccess.com>
1799
18002000-11-06 Kunihiro Ishiguro <kunihiro@zebra.org>
1801
1802 * ospf_dump.c (config_write_debug): Add seventh string "detail" is
1803 added for flag is OSPF_DEBUG_SEND | OSPF_DEBUG_RECV |
1804 OSPF_DEBUG_DETAIL.
1805
18062000-11-06 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1807
1808 * ospf_lsa.c (router_lsa_flags): ASBR can't exit in stub area.
1809
18102000-11-06 Kunihiro Ishiguro <kunihiro@zebra.org>
1811
1812 * ospf_lsa.c (ospf_router_lsa_originate): Reduce unconditional
1813 logging.
1814
18152000-11-06 Dick Glasspool <dick@ipinfusion.com>
1816
1817 * ospfd.h: Add ait_ntoa function prototype.
1818
1819 * ospfd.c (ait_ntoa): New function for displaying area ID and
1820 Stub/NSSA status.
1821 (show_ip_ospf_interface_sub): Use ait_ntoa.
1822 (show_ip_ospf_nbr_static_detail_sub): Likewise.
1823 (show_ip_ospf_neighbor_detail_sub): Likewise.
1824
1825 * ospf_route.c (ospf_intra_route_add): Set external routing type
1826 to ospf route.
1827 (ospf_intra_add_router): Likewise.
1828 (ospf_intra_add_transit): Likewise.
1829 (ospf_intra_add_stub): Likewise.
1830 (ospf_add_discard_route): Likewise.
1831 (show_ip_ospf_route_network): Use ait_ntoa.
1832 (show_ip_ospf_route_network): Likewise.
1833 (show_ip_ospf_route_router): Likewise.
1834
1835 * ospf_lsa.c (show_lsa_detail): Use ait_ntoa.
1836 (show_lsa_detail_adv_router): Likewise.
1837 (show_ip_ospf_database_summary): Likewise.
1838
1839 * ospf_route.h (struct route_standard): Add new member
1840 external_routing.
1841
1842 * ospf_ia.c (process_summary_lsa): Set external routing tyep to ospf
1843 route.
1844 (ospf_update_network_route): Likewise.
1845 (ospf_update_router_route): Likewise.
1846
18472000-11-04 Kunihiro Ishiguro <kunihiro@zebra.org>
1848
1849 * ospf_flood.c (ospf_process_self_originated_lsa): Enclose
1850 OSPF_AS_NSSA_LSA treatment with #ifdef HAVE_NSSA.
1851
18522000-11-03 Kunihiro Ishiguro <kunihiro@zebra.org>
1853
1854 * Unconditional logging is enclosed with if (IS_DEBUG_OSPF_EVENT).
1855 Please specify "debug ospf event" for enable logging.
1856
1857 * ospf_ism.c: Do not extern debug flag varible. It is done by
1858 ospf_debug.h
1859 * ospf_asbr.c: Likewise.
1860 * ospf_lsa.c: Likewise.
1861 * ospf_nsm.c: Likewise.
1862 * ospf_zebra.c: Likewise.
1863
1864 * ospf_dump.c (debug_ospf_event): New command "debug ospf event"
1865 is added.
1866
1867 * ospfd.c (router_ospf): Change logging from vty_out() to
1868 zlog_info().
1869 (ospf_area_stub_cmd): Likewise.
1870
1871 * ospf_dump.h: Extern term_debug flags.
1872 (OSPF_DEBUG_EVENT): Add new flag.
1873 (IS_DEBUG_OSPF_EVENT): Add new macro.
1874
18752000-11-03 Dick Glasspool <dick@ipinfusion.com>
1876
1877 * ospf_flood.c (ospf_process_self_originated_lsa):
1878 OSPF_AS_NSSA_LSA is treated as same as OSPF_AS_EXTERNAL_LSA.
1879 (ospf_flood): Type-5's have no change. Type-7's can be received,
1880 and will Flood the AS as Type-5's They will also flood the local
1881 NSSA Area as Type-7's. The LSDB will be updated as Type-5's, and
1882 during re-fresh will be converted back to Type-7's (if within an
1883 NSSA).
1884 (ospf_flood_through): Incoming Type-7's were allowed here if our
1885 neighbor was an NSSA. So Flood our area with the Type-7 and also
1886 if we are an ABR, flood thru AS as Type-5.
1887
1888 * ospf_lsa.c (ospf_external_lsa_refresh): Flood NSSA both NSSA
1889 area and other area.
1890
1891 * ospf_packet.c (ospf_db_desc_proc): When AS External LSA is
1892 exists in DD packet, make it sure that this area is not stub.
1893 (ospf_ls_upd_list_lsa): When LSA type is NSSA then set lsa's area
1894 to NULL.
1895 (ospf_ls_upd): If the LSA is AS External LSA and the area is stub
1896 then discard the lsa. If the LSA is NSSA LSA and the area is not
1897 NSSA then discard the lsa.
1898
18992000-11-03 Kunihiro Ishiguro <kunihiro@zebra.org>
1900
1901 * ospfd.c (ospf_interface_run): Fix bug of Hello packet's option
1902 is not properly set when interface comes up.
1903
19042000-11-02 Kunihiro Ishiguro <kunihiro@zebra.org>
1905
1906 * ospfd.h (OSPF_OPTION_O): Add new hello header option.
1907
19082000-11-01 Dick Glasspool <dick@ipinfusion.com>
1909
1910 * ospf_lsa.h: Define OSPF_MAX_LSA to 8 when HAVE_NSSA is enabled.
1911 (OSPF_GROUP_MEMBER_LSA): Define OSPF_GROUP_MEMBER_LSA.
1912
1913 * ospf_lsa.c (show_database_desc): Add "Group Membership LSA"
1914 string.
1915
19162000-10-31 Dick Glasspool <dick@ipinfusion.com>
1917
1918 * ospf_lsa.h (OSPF_AS_NSSA_LSA): Define OSPF_AS_NSSA_LSA.
1919
1920 * ospf_lsa.c (show_ip_ospf_database): NSSA database display
1921 function is added. ALIASES which have "show ip ospf database
1922 nssa-external" is added.
1923 (show_ip_ospf_border_routers): New command "show ip ospf
1924 border-routers" is added.
1925
19262000-10-30 Dick Glasspool <dick@ipinfusion.com>
1927
1928 * ospfd.c (router_ospf): NSSA Enabled message is added for
1929 testing.
1930 (ospf_area_type_set): Are type set for NSSA area.
1931 (ospf_area_stub_cmd): Special translation of no_summary into NSSA
1932 and summary information. If NSSA is enabled pass the information
1933 to ospf_area_type_set().
1934 (area_nssa): New commands are added:
1935 "area A.B.C.D nssa"
1936 "area <0-4294967295> nssa"
1937 "area A.B.C.D nssa no-summary"
1938 "area <0-4294967295> nssa no-summary"
1939 (ospf_no_area_stub_cmd): Special translation of no_summary into
1940 NSSA and summary information. If external_routing is
1941 OSPF_AREA_NSSA unset area with ospf_area_type_set (area,
1942 OSPF_AREA_DEFAULT).
1943 (show_ip_ospf_area): Display NSSA status.
1944 (config_write_ospf_area): Show NSSA configuration.
1945
1946 * ospf_packet.c (ospf_hello): For NSSA support, ensure that NP is
1947 on and E is off.
1948
19492000-10-26 Gleb Natapov <gleb@nbase.co.il>
1950
1951 * ospf_lsa.c (ospf_network_lsa_body_set): The network-LSA lists
1952 those routers that are fully adjacent to the Designated Router;
1953 each fully adjacent router is identified by its OSPF Router ID.
1954 The Designated Router includes itself in this list. RFC2328,
1955 Section 12.4.2.
1956
19572000-10-23 Jochen Friedrich <jochen@scram.de>
1958
1959 * ospf_snmp.c: ospf_oid and ospfd_oid are used in smux_open after
1960 it is registered. So those variables must be static.
1961
19622000-10-18 K N Sridhar <sridhar@euler.ece.iisc.ernet.in>
1963
1964 * ospfd.c: Add area_default_cost_decimal_cmd and
1965 no_area_default_cost_decimal_cmd alias.
1966
19672000-10-05 Gleb Natapov <gleb@nbase.co.il>
1968
1969 * ospfd.c (ospf_network_new): Fix setting area format.
1970 (no_router_ospf): Check area existance when calling
1971 ospf_interface_down().
1972
1973 * ospf_flood.c (ospf_external_info_check): Fix bug of refreshing
1974 default route.
1975
19762000-10-02 Kunihiro Ishiguro <kunihiro@zebra.org>
1977
1978 * zebra-0.89 is released.
1979
19802000-09-29 Kunihiro Ishiguro <kunihiro@zebra.org>
1981
1982 * ospf_snmp.c (ospfHostEntry): OSPF Host MIB is implemented.
1983
1984 * ospfd.c (ospf_nbr_static_cmp): OSPF neighbor is sorted by it's
1985 address.
1986
19872000-09-28 Michael Rozhavsky <mike@nbase.co.il>
1988
1989 * ospf_interface.c (ospf_if_free): Fix deleting self neighbor twice.
1990
19912000-09-27 Kunihiro Ishiguro <kunihiro@zebra.org>
1992
1993 * ospf_packet.c (ospf_read): Solaris on x86 has ip_len with host
1994 byte order.
1995
19962000-09-25 Toshiaki Takada <takada@zebra.org>
1997
1998 * ospfd.c (ospf_compatible_rfc1583), (no_ospf_compatible_rfc1583):
1999 Add CISCO compatible command.
2000
20012000-09-25 Kunihiro Ishiguro <kunihiro@zebra.org>
2002
2003 * ospf_abr.c (ospf_area_range_lookup): New function is added for
2004 area range lookup in OSPF-MIB.
2005 (ospf_area_range_lookup_next): Likewise.
2006
20072000-09-22 Kunihiro Ishiguro <kunihiro@zebra.org>
2008
2009 * ospfd.c (no_router_ospf): Delete virtual link before deleting
2010 area structure.
2011
2012 * ospf_lsa.c (ospf_external_lsa_refresh_type): Check
2013 EXTERNAL_INFO(type).
2014
2015 * ospfd.c (no_router_ospf): Call ospf_vl_delete() instead of
2016 ospf_vl_data_free().
2017
2018 * ospf_interface.c (ospf_vl_shutdown): Execute ISM_InterfaceDown
2019 when ospf_vl_shutdown is called.
2020 (ospf_vl_delete): Call ospf_vl_shutdown() to delete virtual link
2021 interface's thread.
2022
20232000-09-21 Gleb Natapov <gleb@nbase.co.il>
2024
2025 * ospf_lsa.c: New implementation of OSPF refresh.
2026
20272000-09-20 Kunihiro Ishiguro <kunihiro@zebra.org>
2028
2029 * ospf_snmp.c (ospfLsdbLookup): Add LSDB MIB implementation.
2030
20312000-09-18 Kunihiro Ishiguro <kunihiro@zebra.org>
2032
2033 * ospf_snmp.c (ospfStubAreaEntry): Add OSPF stub area MIB.
2034
20352000-09-18 Gleb Natapov <gleb@nbase.co.il>
2036
2037 * ospf_route.h (route_standard): Change member from `struct area'
2038 to area_id.
2039
2040 * ospf_abr.c (ospf_abr_announce_network), (ospf_abr_should_announce),
2041 (ospf_abr_process_network_rt), (ospf_abr_announce_rtr),
2042 (ospf_abr_process_router_rt):
2043 * ospf_ase.c (ospf_find_asbr_route),
2044 (ospf_find_asbr_router_through_area),
2045 * ospf_ia.c (ospf_find_abr_route), (ospf_ia_router_route),
2046 (process_summary_lsa), (ospf_update_network_route),
2047 (ospf_update_router_route):
2048 * ospf_route.c (ospf_intra_route_add), (ospf_intra_add_router),
2049 (ospf_intra_add_transit), (ospf_intra_add_stub),
2050 (ospf_route_table_dump), (show_ip_ospf_route_network),
2051 (show_ip_ospf_route_router), (ospf_asbr_route_cmp),
2052 (ospf_prune_unreachable_routers):
2053 * ospf_spf.c (ospf_rtrs_print):
2054 * ospfd.c (ospf_rtrs_free): Fix the struct change above.
2055
20562000-09-14 Kunihiro Ishiguro <kunihiro@zebra.org>
2057
2058 * ospf_network.c (ospf_serv_sock_init): Enclose SO_BINDTODEVICE
2059 with ifdef.
2060
20612000-09-13 Gleb Natapov <gleb@nbase.co.il>
2062
2063 * ospf_ism.c (ospf_elect_dr), (ospf_elect_bdr): Fix DR election.
2064
2065 * ospf_network.c (ospf_serv_sock_init): Add socket option
2066 SO_BINDTODEVICE on read socket.
2067
2068 * ospf_packet.c (ospf_hello): Ignore Hello packet if E-bit does
2069 not match.
2070
2071 * ospfd.c (ospf_area_check_free), (ospf_area_get),
2072 (ospf_area_add_if): New function added.
2073
20742000-09-13 Kunihiro Ishiguro <kunihiro@zebra.org>
2075
2076 * ospf_route.c (ospf_intra_add_router): Update ABR and ASBR router
2077 count.
2078
2079 * ospf_spf.c (ospf_spf_init): Rest ABR and ASBR router count
2080 starting SPF calculation.
2081
2082 * ospfd.h (struct ospf_area): Add ABR and ASBR router count.
2083
20842000-09-12 Kunihiro Ishiguro <kunihiro@zebra.org>
2085
2086 * ospfd.c (ospf_area_id_cmp): New area structure is sorted by area
2087 ID.
2088
2089 * ospf_lsa.c (ospf_router_lsa_originate): For OSPF MIB update
2090 lsa_originate_count.
2091 (ospf_network_lsa_originate): Likewise.
2092 (ospf_summary_lsa_originate): Likewise.
2093 (ospf_summary_asbr_lsa_originate): Likewise.
2094 (ospf_external_lsa_originate): Likewise.
2095
20962000-09-11 Kunihiro Ishiguro <kunihiro@zebra.org>
2097
2098 * ospf_snmp.c (ospf_variables): ospfRouterID's type RouterID
2099 syntax is IpAddress.
2100 (ospf_admin_stat): New function for OSPF administrative status
2101 check.
2102
21032000-09-10 Jochen Friedrich <jochen@scram.de>
2104
2105 * ospf_snmp.c: Implement OSPF MIB skeleton.
2106
21072000-09-08 Kunihiro Ishiguro <kunihiro@zebra.org>
2108
2109 * ospf_snmp.c: New file is added.
2110
21112000-09-07 David Lipovkov <davidl@nbase.co.il>
2112
2113 * ospf_zebra.c (ospf_interface_delete): Add pseudo interface
2114 treatment.
2115
2116 * ospf_interface.c (interface_config_write): Likewise.
2117
21182000-08-17 Kunihiro Ishiguro <kunihiro@zebra.org>
2119
2120 * zebra-0.88 is released.
2121
21222000-08-17 Michael Rozhavsky <mike@nbase.co.il>
2123
2124 * ospfd.c (ospf_area_free): Remove virtual link configuration only
2125 when Area is removed.
2126
21272000-08-17 Kunihiro Ishiguro <kunihiro@zebra.org>
2128
2129 * ospfd.c (network_area): Revert check for EXTERNAL_INFO
2130 (ZEBRA_ROUTE_CONNECT).
2131 (no_network_area): Likewise.
2132
21332000-08-16 Kunihiro Ishiguro <kunihiro@zebra.org>
2134
2135 * ospfd.h (struct ospf): Add distance_table and
2136 distance_{all,intra,inter,external}.
2137
2138 * ospf_zebra.c: Add OSPF distance related functions.
2139
21402000-08-15 Gleb Natapov <gleb@nbase.co.il>
2141
2142 * ospf_asbr.c (ospf_external_info_find_lsa): New function added.
2143
2144 * ospf_lsa.c (ospf_default_external_info),
2145 (ospf_default_originate_timer), (ospf_external_lsa_refresh_default):
2146 New function added.
2147
2148 * ospf_zebra.c
2149 (ospf_default_information_originate_metric_type_routemap),
2150 (ospf_default_information_originate_always_metric_type_routemap):
2151 Change name and add route-map function.
2152 (ospf_default_information_originate_metric_routemap),
2153 (ospf_default_information_originate_routemap),
2154 (ospf_default_information_originate_type_metric_routemap):
2155 New DEFUN added.
2156
21572000-08-14 Kunihiro Ishiguro <kunihiro@zebra.org>
2158
2159 * ospf_zebra.c (zebra_interface_if_set_value): Change ifindex
2160 restore size from two octet to four.
2161
21622000-08-14 Michael Rozhavsky <mike@nbase.co.il>
2163
2164 * ospf_ase.c (ospf_ase_incremental_update): Implement incremental
2165 AS-external-LSA in 16.6 of RFC2328.
2166
21672000-08-14 Matthew Grant <grantma@anathoth.gen.nz>
2168
2169 * ospf_interface.c (ospf_if_get_output_cost): Change cost
2170 calculation algorithm.
2171
2172 * ospf_packet (ospf_ls_upd): Fix problem of LSA retransmitting.
2173
21742000-08-11 Michael Rozhavsky <mike@nbase.co.il>
2175
2176 * ospf_lsa.c (ospf_maxage_lsa_remover): Fix maxage remover for
2177 AS-external-LSAs.
2178
21792000-08-10 Toshiaki Takada <takada@zebra.org>
2180
2181 * ospfd.c (auto_cost_reference_bandwidth): New DEFUN added.
2182 `auto-cost reference-bandwidth' OSPF router command added.
2183
21842000-08-08 Gleb Natapov <gleb@nbase.co.il>
2185
2186 * ospf_routemap.c (ospf_route_map_update): New function added.
2187 Add route-map event hook.
2188
21892000-08-08 Toshiaki Takada <takada@zebra.org>
2190
2191 * ospf_zebra.c (ospf_distribute_check_connected): If redistribute
2192 prefix is connected route on OSPF enabled interface, suppress to
2193 announce it.
2194
21952000-08-08 Matthew Grant <grantma@anathoth.gen.nz>
2196
2197 * ospf_interface.c (ospf_if_get_output_cost):
2198 New function added. Handle bandwidth parameter for cost
2199 calculation.
2200
22012000-08-08 Michael Rozhavsky <mike@nbase.co.il>
2202
2203 * ospf_interface.c (interface_config_write): Show interface
2204 configuration regardless interface is down.
2205
2206 * ospf_ase.c (ospf_ase_caocluate_route): Whole rewritten external
2207 route calculate function.
2208
22092000-08-08 Gleb Natapov <gleb@nbase.co.il>
2210
2211 * ospf_routemap.c: New file added.
2212
2213 * ospf_asbr.c (ospf_reset_route_map_set_values),
2214 (ospf_route_map_set_compare): New function added.
2215
2216 * ospf_lsa.c (ospf_external_lsa_body_set): Set routemap metric
2217 with AS-external-LSA.
2218
22192000-08-05 Kunihiro Ishiguro <kunihiro@zebra.org>
2220
2221 * ospf_ase.c (ospf_ase_calculate_route_add): Pass new->cost to
2222 ospf_zebra_add as metric.
2223 (ospf_ase_calculate_route_add): Likewise.
2224
2225 * ospf_route.c (ospf_route_install): Pass or->cost to
2226 ospf_zebra_add as metric.
2227
2228 * ospf_zebra.c (ospf_zebra_add): Add metric arguemnt.
2229 (ospf_zebra_delete): Likewise.
2230
22312000-08-03 Matthew Grant <grantma@anathoth.gen.nz>
2232
2233 * ospf_flood.c (ospf_flood_delayed_lsa_ack): New function added.
2234 Dispatch delayed-ACK with flooding AS-external-LSA across virtual
2235 link.
2236
22372000-07-31 Matthew Grant <grantma@anathoth.gen.nz>
2238
2239 * ospfd.c (show_ip_ospf_area): Fix lack of VTY_NEWLINE when
2240 `show ip ospf'.
2241
2242 * ospf_interface.c (ospf_if_free): Fix bug of crash with
2243 Point-to-Point interface.
2244
22452000-07-27 Michael Rozhavsky <mike@nbase.co.il>
2246
2247 * ospf_flood.c (ospf_process_self_originated_lsa):
2248 Make sure to clear LSA->param (redistributed external information)
2249 before refreshment.
2250
22512000-07-27 Gleb Natapov <gleb@nbase.co.il>
2252
2253 * ospfd.c (refresh_group_limit), (refresh_per_slice),
2254 (refresh_age_diff): New defun added. Refresher related parameter
2255 can be configurable.
2256
22572000-07-27 Akihiro Mizutani <mizutani@dml.com>
2258
2259 * ospf_interface.c (interface_config_write): Print `description'
2260 config directive to work.
2261
22622000-07-24 Akihiro Mizutani <mizutani@dml.com>
2263
2264 * ospf_interface.c (ospf_if_init): Use install_default for
2265 INTERFACE_NODE.
2266
22672000-07-24 Gleb Natapov <gleb@nbase.co.il>
2268
2269 * ospf_packet.c (ospf_ls_upd_send_list), (ospf_ls_upd_send_event),
2270 (ospf_ls_ack_send_list), (ospf_ls_ack_send_event): New function added.
2271 This make sending always as many LS update/Ack combined in one ospf
2272 packet.
2273
22742000-07-24 Gleb Natapov <gleb@nbase.co.il>
2275
2276 * ospf_packet.c (ospf_ls_upd_list_lsa): Set NULL to lsa->area if
2277 LSA is AS-external-LSA.
2278
2279 * ospf_nsm.c (nsm_reset_nbr): Do not cancel Inactivity timer.
2280
22812000-07-21 Toshiaki Takada <takada@zebra.org>
2282
2283 * ospf_zebra.c (ospf_default_originate_timer): Set timer for
2284 `default-information originate'. Fix some default originate
2285 related functions.
2286
22872000-07-12 Toshiaki Takada <takada@zebra.org>
2288
2289 * ospf_lsa.c (stream_put_ospf_metric): New function added.
2290
22912000-07-12 Toshiaki Takada <takada@zebra.org>
2292
2293 * ospf_lsa.c (show_ip_ospf_database_router),
2294 (show_ip_ospf_database_network), (show_ip_ospf_database_summary),
2295 (show_ip_ospf_database_summary_asbr), (show_ip_ospf_database_externel),
2296 (show_router_lsa), (show_any_lsa), (show_router_lsa_self),
2297 (show_any_lsa_self): Functions removed.
2298
2299 (show_lsa_prefix_set), (show_lsa_detail_proc), (show_lsa_detail),
2300 (show_lsa_detail_adv_router_proc), (show_lsa_detail_adv_router):
2301 New functions added. Replace above functions.
2302
2303 (show_ip_ospf_database_all), (show_ip_ospf_database_self_originated):
2304 Functions removed.
2305 (show_ip_ospf_database_summary): New functions added. Replace
2306 above functions.
2307
2308 (show_ip_ospf_database_cmd): DEFUN rearranged.
2309 (show_ip_ospf_database_type_id_cmd),
2310 (show_ip_ospf_database_type_id_adv_router_cmd),
2311 (show_ip_ospf_database_type_is_self_cmd): New ALIASes added.
2312 (show_ip_ospf_database_type_adv_rotuer_cmd): New DEFUN added.
2313 (show_ip_ospf_database_type_self_cmd): New ALIAS added.
2314
23152000-07-11 Toshiaki Takada <takada@zebra.org>
2316
2317 * ospf_asbr.c (ospf_external_info_new),
2318 (ospf_external_info_free): New functions added.
2319
2320 * ospf_lsa.h (ospf_lsa): Add new member `void *param' to set
2321 origination parameter for external-LSA.
2322 Remove member `redistribute'.
2323
2324 * ospf_zebra.c (ospf_redistirbute_set): When `redistribute'
2325 command executed, metric and metric-type values are overridden.
2326 If one of those is changed refresh AS-external-LSAs for appropriate
2327 type.
2328
23292000-07-11 Michael Rozhavsky <mike@nbase.co.il>
2330
2331 * ospf_lsa.c (ospf_summary_lsa_refresh),
2332 (ospf_summary_asbr_lsa_refresh): Make sure to refresh summary-LSAs.
2333
2334 * ospf_abr.c (set_metric): New function added.
2335
23362000-07-07 Toshiaki Takada <takada@zebra.org>
2337
2338 * ospf_zebra.c (ospf_default_information_originate_metric_type),
2339 (ospf_default_information_originate_type_metric): New defun added.
2340 Metic and Metric type can be set to default route.
2341 (ospf_default_information_originate_always_metric_type):
2342 (ospf_default_information_originate_always_type_metric):
2343 New defun added. Metric and Metric type can be set to default
2344 always route.
2345
2346 * ospf_zebra.c (ospf_default_metric), (no_ospf_default_metric):
2347 New defun added.
2348
23492000-07-06 Gleb Natapov <gleb@nbase.co.il>
2350
2351 * ospf_flood.c (ospf_flood_through_area): Fix bug of considering
2352 on the same interface the LSA was received from.
2353
23542000-07-06 Michael Rozhavsky <mike@nbase.co.il>
2355
2356 * ospfd.c (ospf_config_write): Fix bug of printing `area stub'
2357 command with `write mem'.
2358
2359 * ospfd.c (no_router_ospf): Remove installed routes from zebra.
2360
2361 * ospf_zebra.c (ospf_interface_delete): Fix function to handle
2362 zebra interface delete event.
2363
23642000-07-06 Toshiaki Takada <takada@zebra.org>
2365
2366 * ospf_zebra.c (ospf_default_information_originate),
2367 (ospf_default_information_originate_always): New DEFUN added.
2368
23692000-07-05 Michael Rozhavsky <mike@nbase.co.il>
2370
2371 * ospf_route.c (ospf_terminate): Make sure to remove external route
2372 when SIGINT received.
2373
23742000-07-03 Gleb Natapov <gleb@nbase.co.il>
2375
2376 * ospf_flood.c, ospf_ism.c, ospf_lsa,c, ospfd.c: Make sure to free
2377 many structure with `no router ospf'.
2378
23792000-06-30 Gleb Natapov <gleb@nbase.co.il>
2380
2381 * ospf_neighbor.c (ospf_nbr_new),
2382 ospf_nsm.c (nsm_timer_set): Start LS update timer only
2383 when neighbor enters Exchange state.
2384
23852000-06-29 Gleb Natapov <gleb@nbase.co.il>
2386
2387 * ospf_nsm.c (nsm_timer_set), (nsm_exchange_done),
2388 ospf_packet.c (ospf_db_desc_proc):
2389 Do not cancel DD retransmit timer when Master.
2390
23912000-06-29 Gleb Natapov <gleb@nbase.co.il>
2392
2393 * ospf_abr.c (ospf_abr_announce_network_to_area),
2394 (ospf_abr_announce_rtr_to_area)
2395 ospf_ase.c (ospf_ase_rtrs_register_lsa),
2396 ospf_flood.c (ospf_process_self_originated_lsa),
2397 (ospf_flood_through_area), (ospf_ls_request_delete),
2398 ospf_interface.c (ospf_if_free),
2399 ospf_ism.c (ism_change_status),
2400 ospf_lsa.c (ospf_router_lsa_update_timer),
2401 (ospf_router_lsa_install), (ospf_network_lsa_install),
2402 (ospf_lsa_maxage_delete), (ospf_lsa_action),
2403 (ospf_schedule_lsa_flood_area),
2404 ospf_nsm.c (nsm_change_status),
2405 ospf_packet.c (ospf_make_ls_req_func), (ospf_make_ls_ack):
2406 Use ospf_lsa_{lock,unlock} for all looking-up of LSA.
2407
2408 * ospf_flood.c (ospf_ls_request_free): Function deleted.
2409
2410 * ospf_lsa.c (ospf_discard_from_db): New function added.
2411
24122000-06-26 Toshiaki Takada <takada@zebra.org>
2413
2414 * ospfd.h (ospf): struct member `external_lsa' name changed to
2415 `lsdb'.
2416
24172000-06-26 Toshiaki Takada <takada@zebra.org>
2418
2419 * ospf_lsa.c (ospf_lsa_install), (ospf_router_lsa_install),
2420 (ospf_network_lsa_install), (ospf_summary_lsa_install),
2421 (ospf_summary_asbr_lsa_install), (ospf_external_lsa_install):
2422 Functions re-arranged.
2423
2424 * ospf_lsa.c (IS_LSA_MAXAGE), (IS_LSA_SELF): Macro added.
2425
24262000-06-20 Michael Rozhavsky <mike@nbase.co.il>
2427
2428 * ospf_packet.c (ospf_ls_req), (ospf_ls_upd), (ospf_ls_ack): Add
2429 verification of LS type.
2430
24312000-06-20 Gleb Natapov <gleb@nbase.co.il>
2432
2433 * ospf_ase.c (ospf_ase_calculate_timer): Add more sanity check
2434 whether rn->info is NULL.
2435
24362000-06-20 Toshiaki Takada <takada@zebra.org>
2437
2438 * ospfd.c (show_ip_ospf_interface_sub): Show Router-ID of both
2439 DR and Backup correctly with `show ip ospf interface' command.
2440
24412000-06-20 Toshiaki Takada <takada@zebra.org>
2442
2443 * ospf_lsa.c (ospf_lsa_lock), (ospf_lsa_unlock),
2444 (ospf_lsa_discard): These functions are used for avoiding
2445 unexpected reference to freed LSAs.
2446
24472000-06-13 Kunihiro Ishiguro <kunihiro@zebra.org>
2448
2449 * ospf_packet.c (ospf_ls_upd): Initialize lsa by NULL to avoid
2450 warning.
2451
24522000-06-12 Kunihiro Ishiguro <kunihiro@zebra.org>
2453
2454 * ospf_ase.h (ospf_ase_rtrs_register_lsa): Add prototype.
2455
24562000-06-12 Toshiaki Takada <takada@zebra.org>
2457
2458 * ospf_lsa.c (ospf_external_lsa_install): Make sure to register
2459 LSA to rtrs_external when replacing AS-external-LSAs in LSDB.
2460 Fix core dump.
2461
24622000-06-10 Toshiaki Takada <takada@zebra.org>
2463
2464 * ospf_lsdb.c (id_to_prefix), (ospf_lsdb_hash_key),
2465 (ospf_lsdb_hash_cmp), (ospf_lsdb_new), (ospf_lsdb_iterator),
2466 (lsdb_free), (ospf_lsdb_free), (ospf_lsdb_add), (ospf_lsdb_delete),
2467 (find_lsa), (ospf_lsdb_lookup), (find_by_id),
2468 (ospf_lsdb_lookup_by_id), (ospf_lsdb_lookup_by_header): Functinos
2469 removed for migration to new_lsdb.
2470
2471 * ospf_lsa.c (ospf_summary_lsa_install),
2472 (ospf_summary_asbr_lsa_install), (ospf_maxage_lsa_remover),
2473 (ospf_lsa_maxage_walker), (ospf_lsa_lookup),
2474 (ospf_lsa_lookup_by_id): Use new_lsdb instead of ospf_lsdb.
2475 (count_lsa), (ospf_lsa_count_table), (ospf_lsa_count),
2476 (ospf_get_free_id_for_prefix): Funcitions removed.
2477
24782000-06-09 Gleb Natapov <gleb@nbase.co.il>
2479
2480 * ospf_ism.c (ism_interface_down): Prevent some unneeded DR changes.
2481
2482 * ospf_packet.c (ospf_db_desc_proc): Fix memory leak.
2483 (ospf_hello): Always copy router-ID when hello is received.
2484
24852000-06-08 Gleb Natapov <gleb@nbase.co.il>
2486
2487 * ospf_lsa.h (struct ospf_lsa): Add member of pointer to struct
2488 ospf_area.
2489
24902000-06-08 Michael Rozhavsky <mike@nbase.co.il>
2491
2492 * ospf_ase.c (ospf_asbr_route_same): New function added.
2493 This function makes sure external route calculation more
2494 precisely.
2495
24962000-06-07 Michael Rozhavsky <mike@nbase.co.il>
2497
2498 * ospf_ism.c (ism_change_status): Use ospf_lsa_flush_area for
2499 network-LSA deletion instead of using ospf_lsdb_delete.
2500 Also cancel network-LSA origination timer.
2501
25022000-06-07 Levi Harper <lharper@kennedytech.com>
2503
2504 * ospf_interface.c (ospf_if_down): Close read fd when an interface
2505 goes down.
2506
25072000-06-05 Kunihiro Ishiguro <kunihiro@zebra.org>
2508
2509 * ospf_asbr.c (ospf_external_info_lookup): Add explicit brace for
2510 avoid ambiguous else.
2511
2512 * ospf_flood.c (ospf_external_info_check): Likewise.
2513
25142000-06-05 Toshiaki Takada <takada@zebra.org>
2515
2516 * ospf_nsm.c (nsm_adj_ok): Fix bug of DR election.
2517
25182000-06-04 Toshiaki Takada <takada@zebra.org>
2519
2520 * ospf_zebra.c (ospf_default_information_originate),
2521 (no_ospf_default_information_originate): New DEFUN added.
2522
25232000-06-03 Toshiaki Takada <takada@zebra.org>
2524
2525 * ospf_lsa.h, ospf_asbr.h (external_info): Struct moved from
2526 ospf_lsa.h to ospf_asbr.h.
2527
2528 * ospf_lsa.c, ospf_asbr.c (ospf_external_info_add),
2529 (ospf_external_info_delete): Function moved from ospf_lsa.c
2530 to ospf_asbr.c.
2531
25322000-06-03 Toshiaki Takada <takada@zebra.org>
2533
2534 * ospf_flood.c (ospf_external_info_check): New function added.
2535 (ospf_process_self_orignated_lsa): Make sure to flush
2536 self-originated AS-external-LSA, when router reboot and no longer
2537 originate those AS-external-LSA.
2538
25392000-06-02 Toshiaki Takada <takada@zebra.org>
2540
2541 * ospf_network.c (ospf_serv_sock): Remove SO_DONTROUTE
2542 socket option.
2543
2544 * ospf_packet.c (ospf_write): Set MSG_DONTROUTE flag for
2545 unicast destination packets.
2546
25472000-06-02 Toshiaki Takada <takada@zebra.org>
2548
2549 * ospf_lsdb.c (new_lsdb_delete): Delete entry from LSDB only when
2550 specified LSA matches.
2551
25522000-06-02 Gleb Natapov <gleb@nbase.co.il>
2553
2554 * ospf_network.c (ospf_serv_sock): Set SO_DONTROUTE
2555 socket option.
2556
25572000-06-01 Akihiro Mizutani <mizutani@dml.com>
2558
2559 * ospf_dump.c: Replace string `Debugging functions\n' with DEBUG_STR.
2560 Replace string `OSPF information\n' with OSPF_STR.
2561
25622000-06-01 Toshiaki Takada <takada@zebra.org>
2563
2564 * ospf_lsdb.[ch]: Use new_lsdb struct for network-LSA instead of
2565 ospf_lsdb.
2566
25672000-06-01 Toshiaki Takada <takada@zebra.org>
2568
2569 * ospf_dump.c (config_debug_ospf_packet), (config_debug_ospf_event),
2570 (config_debug_ospf_ism), (config_debug_ospf_nsm),
2571 (config_debug_ospf_lsa), (config_debug_ospf_zebra),
2572 (term_debug_ospf_packet), (term_debug_ospf_event),
2573 (term_debug_ospf_ism), (term_debug_ospf_nsm),
2574 (term_debug_ospf_lsa), (term_debug_ospf_zebra): Repalce debug_ospf_*
2575 variable to use for debug option flags.
2576
2577 (debug_ospf_packet), (debug_ospf_ism), (debug_ospf_nsm),
2578 (debug_ospf_lsa), (debug_ospf_zebra): Set {config,term}_debug_*
2579 flags when vty->node is CONFIG_NODE, otherwise set only term_debug_*
2580 flags.
2581
2582 * ospf_dump.h (CONF_DEBUG_PACKET_ON), (CONF_DEBUG_PACKET_OFF),
2583 (TERM_DEBUG_PACKET_ON), (TERM_DEBUG_PACKET_OFF),
2584 (CONF_DEBUG_ON), (CONF_DEBUG_OFF), (IS_CONF_DEBUG_OSPF_PACKET),
2585 (IS_CONF_DEBUG_OSPF): New Macro added.
2586
25872000-05-31 Toshiaki Takada <takada@zebra.org>
2588
2589 * ospfd.c (clear_ip_ospf_neighbor): New DEFUN added.
2590 Currently this command is used for only debugging.
2591
2592 * ospf_nsm.c (nsm_change_status): Make sure thread cancellation
2593 for network-LSA when DR has no full neighbors.
2594
2595 * ospf_nsm.c (ospf_db_summary_clear): New function added.
2596
25972000-05-30 Toshiaki Takada <takada@zebra.org>
2598
2599 * ospf_lsdb.c (new_lsdb_insert): LSAs are always freed by
2600 maxage_lsa_remover when LSA is replaced.
2601
26022000-05-25 Gleb Natapov <gleb@nbase.co.il>
2603
2604 * ospf_flood.c (ospf_ls_retransmit_delete_nbr_all): Add argument
2605 `struct ospf_area' to remove LSA from Link State retransmission list
2606 of neighbor from only one Area.
2607
26082000-05-24 Michael Rozhavsky <mike@nbase.co.il>
2609
2610 * ospf_lsdb.c (ospf_lsdb_add): Preserve flags field when
2611 overriting old LSA with new LSA.
2612
26132000-05-24 Gleb Natapov <gleb@nbase.co.il>
2614
2615 * ospf_lsa.c (ospf_router_lsa_body_set): Fix bug of router-LSA
2616 size calculation.
2617
26182000-05-22 Michael Rozhavsky <mike@nbase.co.il>
2619
2620 * ospf_route.c (ospf_intra_add_stub):
2621 * ospf_spf.h (struct vertex): Use u_int32_t for distance (cost)
2622 value instead of u_int16_t.
2623
26242000-05-22 Axel Gerlach <agerlach@datus.datus.com>
2625
2626 * ospf_ia.c (ospf_ia_network_route): Fix bug of Inter-area route
2627 equal cost path calculation.
2628
26292000-05-21 Toshiaki Takada <takada@zebra.org>
2630
2631 * ospf_ase.c (ospf_ase_calculate_route_delete): New function added.
2632 Make sure, when rotuer route is deleted, related external routes
2633 are also deleted.
2634
26352000-05-20 Toshiaki Takada <takada@zebra.org>
2636
2637 * ospfd.c (ospf_interface_down): Make sure interface flag is disable
2638 and set fd to -1.
2639
26402000-05-16 Toshiaki Takada <takada@zebra.org>
2641
2642 * ospf_asbr.c (ospf_asbr_should_announce), (ospf_asbr_route_remove):
2643 Functions removed.
2644
2645 * ospfd.h (EXTERNAL_INFO): Macro added.
2646 Substitute `ospf_top->external_info[type]' with it.
2647
26482000-05-16 Toshiaki Takada <takada@zebra.org>
2649
2650 * ospf_lsa.c (ospf_rtrs_external_remove): New function added.
2651
26522000-05-14 Gleb Natapov <gleb@nbase.co.il>
2653
2654 * ospf_flood.c (ospf_ls_retransmit_delete_nbr_all)
2655 * ospf_lsdb.c (new_lsdb_insert)
2656 * ospf_packet.c (ospf_ls_ack): Fix database synchonization problem.
2657
26582000-05-14 Gleb Natapov <gleb@nbase.co.il>
2659
2660 * ospf_lsa.h (tv_adjust), (tv_ceil), (tv_floor), (int2tv),
2661 (tv_add), (tv_sub), (tv_cmp): Prototype definition added.
2662
2663 * ospf_nsm.h (ospf_db_summary_delete_all): Prototype definition added.
2664
26652000-05-13 Toshiaki Takada <takada@zebra.org>
2666
2667 * ospf_lsa.[ch] (ospf_lsa): struct timestamp type is changed from
2668 time_t to struct timeval.
2669 (tv_adjust), (tv_ceil), (tv_floor), (int2tv), (tv_add),
2670 (tv_sub), (tv_cmp): timeval utillity functions added.
2671
26722000-05-12 Toshiaki Takada <takada@zebra.org>
2673
2674 * ospf_lsa.[ch] (ospf_schedule_update_router_lsas): Delete function.
2675 Change to use macro OSPF_LSA_UPDATE_TIMER instead of using
2676 this function.
2677 router-LSA refresh timer related stuff is re-organized.
2678
26792000-05-10 Gleb Natapov <gleb@nbase.co.il>
2680
2681 * ospf_interface.c (ospf_vl_set_params):
2682 * ospf_packet.c (ospf_check_network_mask):
2683 * ospf_spf.[ch] (ospf_spf_next):
2684 Remove field address from `struct vertex', and search for peer
2685 address of virtual link in function `ospf_vl_set_params' instead.
2686
26872000-05-10 Gleb Natapov <gleb@nbase.co.il>
2688
2689 * ospf_packet.c (ospf_ls_upd): Fix some memory leak related LSA.
2690
26912000-05-08 Thomas Molkenbur <tmo@datus.com>
2692
2693 * ospf_packet.c (ospf_packet_dup): Replace ospf_steram_copy()
2694 with ospf_stream_dup() to fix memory leak.
2695
26962000-05-08 Michael Rozhavsky <mike@nbase.co.il>
2697
2698 * ospf_flood.c (ospf_flood_through_area): Fix the problem of
2699 LSA update without DROther.
2700
27012000-05-04 Gleb Natapov <gleb@nbase.co.il>
2702
2703 * ospf_spf.c (ospf_vertex_free): Fix memory leak of SPF calculation.
2704
27052000-05-03 Toshiaki Takada <takada@zebra.org>
2706
2707 * ospf_neighbor.c (ospf_db_summary_add): Use new_lsdb struct
2708 instead linked-list.
2709 (ospf_db_summary_count), (ospf_db_summary_isempty):
2710 New function added.
2711
2712 * ospf_lsa.c (ospf_rotuer_lsa): Re-arrange and divide functions.
2713
27142000-05-02 Gleb Natapov <gleb@nbase.co.il>
2715
2716 * ospf_lsdb.c (new_lsdb_cleanup): Fix memory leak. When LSDB are
2717 not needed any more, then free them.
2718
27192000-05-02 Toshiaki Takada <takada@zebra.org>
2720
2721 * ospfd.c (timers_spf), (no_timers_spf): New defun added.
2722 SPF calculation timers related stuff is rearranged.
2723
2724 * ospf_spf.c (ospf_spf_calculate_timer_add): Function removed.
2725 SPF timer is scheduled by SPF calculation delay and holdtime
2726 configuration variable.
2727
2728 * ospf_lsa.c (ospf_external_lsa_nexthop_get): Set AS-external-LSA's
2729 forwarding address when nexthop learned by other protocols is
2730 in the OSPF domain.
2731
2732 * ospf_zebra.c (ospf_redistribute_source_metric_type),
2733 (ospf_redistribute_source_type_metric): Re-arrange DEFUNs and
2734 ALIASes.
2735
27362000-05-01 Toshiaki Takada <takada@zebra.org>
2737
2738 * ospf_flood.c (ospf_ls_retransmit_count),
2739 (ospf_ls_retransmit_isempty): New function added.
2740
2741 (ospf_ls_retransmit_add), (ospf_ls_retransmit_delete),
2742 (ospf_ls_retransmit_clear), (ospf_ls_retransmit_lookup),
2743 (ospf_ls_retransmit_delete_all), (ospf_ls_retransmit_delete_nbr_all),
2744 (ospf_ls_retransmit_add_nbr_all): Replace these functions to use
2745 new_lsdb.
2746
27472000-04-29 Toshiaki Takada <takada@zebra.org>
2748
2749 * ospfd.c (no_network_area): Add check Area-ID whether specified
2750 Area-ID with prefix matches config.
2751
27522000-04-27 Toshiaki Takada <takada@zebra.org>
2753
2754 * ospf_lsa.c (ospf_maxage_lsa_remover): Fix problem of
2755 remaining withdrawn routes on zebra.
2756
27572000-04-25 Michael Rozhavsky <mike@nbase.co.il>
2758
2759 * ospf_nsm.c (nsm_kill_nbr), (nsm_ll_down), (nsm_change_status),
2760 (ospf_nsm_event): Fix network-LSA re-origination problem.
2761
27622000-04-24 Toshiaki Takada <takada@zebra.org>
2763
2764 * ospf_nsm.c (ospf_db_desc_timer): Fix bug of segmentation fault
2765 with DD retransmission.
2766
2767 * ospf_nsm.c (nsm_kill_nbr): Fix bug of re-origination when
2768 a neighbor disappears.
2769
27702000-04-23 Michael Rozhavsky <mike@nbase.co.il>
2771
2772 * ospf_abr.c (ospf_abr_announce_network_to_area): Fix bug of
2773 summary-LSAs reorigination. Correctly copy OSPF_LSA_APPROVED
2774 flag to new LSA. when summary-LSA is reoriginatd.
2775
2776 * ospf_flood.c (ospf_flood_through_area): Fix bug of flooding
2777 procedure. Change the condition of interface selection.
2778
27792000-04-21 Toshiaki Takada <takada@zebra.org>
2780
2781 * ospf_lsa.c (ospf_refresher_register_lsa): Fix bug of refresh never
2782 occurs.
2783
2784 * ospfd.c (show_ip_ospf_neighbor_id): New defun added.
2785 `show ip ospf neighbor' related commands are re-arranged.
2786
27872000-04-20 Toshiaki Takada <takada@zebra.org>
2788
2789 * ospf_dump.c (debug_ospf_zebra): New defun added.
2790 Suppress zebra related debug information.
2791
27922000-04-19 Toshiaki Takada <takada@zebra.org>
2793
2794 * ospf_zebra.c (ospf_distribute_list_update_timer),
2795 (ospf_distribute_list_update), (ospf_filter_update):
2796 New function added. Re-organize `distribute-list' router ospf
2797 command.
2798
27992000-04-13 Michael Rozhavsky <mike@nbase.co.il>
2800
2801 * ospf_packet.c (ospf_make_ls_upd): Add check for MAX_AGE.
2802
28032000-04-14 Michael Rozhavsky <mike@nbase.co.il>
2804
2805 * ospf_packet.c (ospf_make_ls_upd): Increment LS age by configured
2806 interface transmit_delay.
2807
28082000-04-14 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2809
2810 * ospf_interface.c (ip_ospf_cost), (no_ip_ospf_cost):
2811 Add to schedule router_lsa origination when the interface cost changes.
2812
28132000-04-12 Toshiaki Takada <takada@zebra.org>
2814
2815 * ospf_lsa.c (ospf_refresher_register_lsa),
2816 (ospf_refresher_unregister_lsa): Fix bug of core dumped.
2817
2818 * ospfd.c (no_router_ospf): Fix bug of core dumped.
2819
28202000-03-29 Toshiaki Takada <takada@zebra.org>
2821
2822 * ospf_nsm.c (nsm_oneway_received): Fix bug of MS flag unset.
2823
28242000-03-29 Michael Rozhavsky <mike@nbase.co.il>
2825
2826 * ospf_lsa.c (ospf_network_lsa):
2827 * ospf_nsm.c (ospf_nsm_event): Fix bug of Network-LSA originated
2828 in stub network.
2829
28302000-03-28 Toshiaki Takada <takada@zebra.org>
2831
2832 * ospf_nsm.c (nsm_bad_ls_req), (nsm_seq_number_mismatch),
2833 (nsm_oneway_received): Fix bug of NSM state flapping between
2834 ExStart and Exchange.
2835
28362000-03-28 Toshiaki Takada <takada@zebra.org>
2837
2838 * ospf_packet.h (strcut ospf_header): Fix the size of ospf_header,
2839 change u_int8_t to u_char.
2840
28412000-03-27 Toshiaki Takada <takada@zebra.org>
2842
2843 * ospf_lsa.c (ospf_lsa_checksum): Take care of BIGENDIAN architecture.
2844
28452000-03-27 Toshiaki Takada <takada@zebra.org>
2846
2847 * ospfd.c (ospf_interface_run): Make sure Address family matches.
2848
28492000-03-26 Love <lha@s3.kth.se>
2850
2851 * ospf_packet.c (ospf_write): Chack result of sendto().
2852
28532000-03-26 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2854
2855 * ospf_nsm.c (nsm_oneway_received): Fix bug of 1-WayReceived in NSM.
2856
28572000-03-23 Libor Pechacek <farco@clnet.cz>
2858
2859 * ospf_lsa.c (ospf_network_lsa)
2860 * ospf_lsdb.c (new_lsdb_insert): Fix bug of accessing to
2861 unallocated memory.
2862
28632000-03-23 Toshiaki Takada <takada@zebra.org>
2864
2865 * ospfd.c (ospf_config_write): Fix bug of duplicate line for
2866 `area A.B.C.D authentication'.
2867
28682000-03-22 Toshiaki Takada <takada@zebra.org>
2869
2870 * ospf_debug.c (debug_ospf_lsa), (no_debug_ospf_lsa): Defun added.
2871 Suppress all zlog related to LSAs with this config option.
2872
28732000-03-21 Kunihiro Ishiguro <kunihiro@zebra.org>
2874
2875 * ospf_nsm.c (ospf_nsm_event): Add check for NSM_InactivityTimer.
2876
28772000-03-21 Toshiaki Takada <takada@zebra.org>
2878
2879 * ospf_packet.c (ospf_ls_upd_timer), (ospf_ls_req):
2880 Fix bug of memory leak about linklist.
2881
2882 * ospf_flood.c (ospf_flood_through_area): Likewise.
2883
28842000-03-18 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2885
2886 * ospf_flood.c (ospf_ls_retransmit_lookup): Add checksum comparison
2887 to identify LSA uniquely. This fix routes lost.
2888
28892000-03-18 Toshiaki Takada <takada@zebra.org>
2890
2891 * ospf_ase.c (ospf_find_asbr_route): Add sanity check with router
2892 routing table.
2893
28942000-03-17 Alex Zinin <zinin@amt.ru>
2895
2896 * ospf_spf.[ch]: Bug fix.
2897 The 2nd stage of Dijkstra could consider one vertex
2898 more than once if there is more than one link
2899 between the routers, thus adding extra CPU overhead
2900 and extra next-hops.
2901 Fixed.
2902
29032000-03-15 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2904
2905 * ospf_nsm.c (nsm_inactivity_timer): Changed to call nsm_kill_nbr().
2906
29072000-03-14 Toshiaki Takada <takada@zebra.org>
2908
2909 * ospf_route.c (ospf_route_copy_nexthops): Fix bug of memory leak of
2910 ospf_path. Actually ignore merging ospf_route with completely same
2911 paths.
2912
29132000-03-12 Toshiaki Takada <takada@zebra.org>
2914
2915 * ospf_lsa.c (show_as_external_lsa_detail): fix bug of
2916 external route tag byte order.
2917
29182000-03-11 Toshiaki Takada <takada@zebra.org>
2919
2920 * ospf_lsdb.c (ospf_lsdb_insert): New function added.
2921
29222000-03-09 Toshiaki Takada <takada@zebra.org>
2923
2924 * ospf_lsa.c (ospf_external_lsa_install),
2925 (ospf_lsa_lookup), (show_ip_ospf_database_all),
2926 (show_ip_ospf_database_self_originate): Use struct new_lsdb for
2927 LSDB of AS-external-LSAs instead of ospf_lsdb.
2928
2929 * ospf_lsa.c (ospf_lsa_unique_id): New function added.
2930 Use for assigning Unique Link State ID instead of
2931 ospf_get_free_id_for_prefix().
2932
29332000-03-09 Toshiaki Takada <takada@zebra.org>
2934
2935 * ospf_ase.c (ospf_ase_calculate_timer): Fix bug of segmentation
2936 fault reported by George Bonser <george@siteROCK.com>.
2937
29382000-03-07 Libor Pechacek <farco@clnet.cz>
2939
2940 * ospfd.c (ospf_interface_down): Fix bug of segmentation fault.
2941
29422000-03-06 Toshiaki Takada <takada@zebra.org>
2943
2944 * ospf_route.c (ospf_route_cmp): Change meaning of return values.
2945
29462000-03-02 Alex Zinin <zinin@amt.ru>
2947 * ospfd.h, ospf_ia.h
2948 New Shortcut ABR code. Now area's flag can be configured
2949 with Default, Enable, and Disable values.
2950 More info will be in the new ver of I-D soon (see IETF web).
2951
29522000-02-25 Toshiaki Takada <takada@zebra.org>
2953
2954 * ospf_lsa.c (ospf_lsa_header_set), (ospf_external_lsa_body_set),
2955 (osfp_external_lsa_originate), (ospf_external_lsa_queue),
2956 (ospf_external_lsa_originate_from_queue): New function added.
2957 (ospf_external_lsa): Function removed.
2958
2959 * ospf_zebra.c (ospf_zebra_read_ipv4): Originate AS-external-LSA
2960 when listen a route from Zebra, instead creating external route.
2961
2962 * ospf_asbr.c (ospf_asbr_route_add_flood_lsa),
2963 (ospf_asbr_route_add_queue_lsa),
2964 (ospf_asbr_route_install_lsa), (ospf_asbr_route_add):
2965 Functions removed.
2966
2967 * ospf_ase.c (process_ase_lsa): Function will not be used.
2968 (ospf_ase_calculate), (ospf_ase_calculate_route_add),
2969 (ospf_ase_calculate_new_route), (ospf_ase_caluculate_asbr_route):
2970 process_ase_lsa () is separated to these functions.
2971
2972 OSPF AS-external-LSA origination is whole re-organized.
2973
29742000-02-18 Toshiaki Takada <takada@zebra.org>
2975
2976 * ospf_packet.c (ospf_ls_upd): Fix bug of OSPF LSA memory leak.
2977
2978 * ospf_asbr.c (ospf_asbr_route_add_flood_lsa),
2979 (ospf_asbr_route_add_queue_lsa): Fix bug of OSPF external route
2980 memory leak.
2981
29822000-02-12 Kunihiro Ishiguro <kunihiro@zebra.org>
2983
2984 * ospf_asbr.c (ospf_asbr_route_install_lsa): Re-calculate LSA
2985 checksum after change Advertised Router field.
2986
29872000-02-09 Toshiaki Takada <takada@zebra.org>
2988
2989 * ospf_asbr.c (ospf_external_route_lookup): Add new function.
2990
29912000-02-08 Toshiaki Takada <takada@zebra.org>
2992
2993 * ospfd.c (ospf_router_id_get), (ospf_router_id_update),
2994 (ospf_router_id_update_timer): Router ID decision algorithm is changed.
2995 Router ID is chosen from all of eligible interface addresses even if
2996 it is not enable to OSPF.
2997
29982000-02-08 Toshiaki Takada <takada@zebra.org>
2999
3000 * ospf_asbr.c (ospf_asbr_route_add): Function divided to
3001 ospf_asbr_route_add_flood_lsa, ospf_asbr_route_add_queue_lsa and
3002 ospf_asbr_route_install_lsa. If Router-ID is not set, then LSA is
3003 waited to install to LSDB.
3004 `0.0.0.0 adv_router' AS-external-LSA origination bug was fixed.
3005
30062000-02-01 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
3007
3008 * ospf_flood.c (ospf_ls_retransmit_lookup): Compare LS seqnum
3009 in the ACK before deleting.
3010
3011 * ospf_packet.c (ospf_hello): Reset the flags after a shutdown
3012 and no shutdown of the interface.
3013
30142000-01-31 Toshiaki Takada <takada@zebra.org>
3015
3016 * ospf_packet.c (ospf_ls_req): Send multiple Link State Update
3017 packets respond to a Link State Request packet.
3018
3019 * ospfd.c (show_ip_ospf_neighbor_detail_sub): Show thread state.
3020
3021 * ospf_interface.c (ospf_vl_new): Crash when backbone area
3022 is not configured and set virtual-link to no-backbone area,
3023 bug fixed.
3024
30252000-01-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3026
3027 * ospf_neighbor.h (struct ospf_neighbor): Add pointer to last send
3028 LS Request LSA.
3029
3030 * ospf_packet.c (ospf_ls_upd): Comment out LS request list
3031 treatment. That should be done in OSPF flooding procedure.
3032
3033 * ospf_flood.c (ospf_flood_through_area): Enclose
3034 ospf_check_nbr_loding inside if-else close.
3035
30362000-01-31 Toshiaki Takada <takada@zebra.org>
3037
3038 * ospf_packet.c (ospf_make_ls_upd): Fix bug of #LSAs counting.
3039
30402000-01-29 Toshiaki Takada <takada@zebra.org>
3041
3042 * ospf_packet.c (ospf_make_md5_digest): Fix bug of md5 authentication.
3043
30442000-01-28 Toshiaki Takada <takada@zebra.org>
3045
3046 * ospfd.c (show_ip_ospf): Show Number of ASE-LSAs.
3047
30482000-01-27 Kunihiro Ishiguro <kunihiro@zebra.org>
3049
3050 * ospf_packet.c (ospf_make_db_desc): Don't use rm_list for
3051 removing LSA from nbr->db_summary.
3052
30532000-01-27 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
3054
3055 * ospf_packet.c (ospf_ls_upd_send): Set AllSPFRouters to
3056 destination when the link is point-to-point.
3057 (ospf_ls_ack_send_delayed): Likewise.
3058
30592000-01-27 Kunihiro Ishiguro <kunihiro@zebra.org>
3060
3061 * ospf_flood.c (ospf_ls_request_delete_all): Fix bug of next
3062 pointer lookup after the node is freed.
3063
30642000-01-26 Kunihiro Ishiguro <kunihiro@zebra.org>
3065
3066 * ospf_asbr.c (ospf_asbr_route_add): Instead of scanning all AS
3067 external route, use ospf_top->external_self.
3068
30692000-01-27 Toshiaki Takada <takada@zebra.org>
3070
3071 * ospf_lsa.c (ospf_forward_address_get): New function added.
3072
3073 * ospf_asbr.c (ospf_asbr_check_lsas): Originate AS-external-LSA
3074 only when it should be replaced.
3075
30762000-01-25 Kunihiro Ishiguro <kunihiro@zebra.org>
3077
3078 * ospf_flood.c (ospf_ls_retransmit_clear): Delete list node.
3079
3080 * ospf_lsa.c (ospf_lsa_free): Reduce logging message using
3081 ospf_zlog value.
3082
3083 * ospf_ism.c (ism_change_status): Fix bug of DR -> non DR status
3084 change. Self originated LSA is freed but not deleted from lsdb.
3085
30862000-01-24 Kunihiro Ishiguro <kunihiro@zebra.org>
3087
3088 * ospf_ism.c (ism_interface_down): Don't use router_id for
3089 detecting self neighbor structure. Instead of that compare
3090 pointer itself.
3091
3092 * ospf_neighbor.c (ospf_nbr_free): Cancel all timer when neighbor
3093 is deleted.
3094 (ospf_nbr_free): Free last send packet.
3095
3096 * ospf_neighbor.h (struct ospf_neighbor): Remove host strucutre.
3097 Instead of that src is introduced.
3098
3099 * ospf_nsm.h: Enclose macro defenition with do {} while (0).
3100
31012000-01-17 Kunihiro Ishiguro <kunihiro@zebra.org>
3102
3103 * ospfd.c: Change part of passive interface implementation. For
3104 passive interface just disabling sending/receiving Hello on the
3105 interface.
3106
31072000-01-16 Kai Bankett <kai.bankett@vew-telnet.net>
3108
3109 * ospf_interface.h (OSPF_IF_PASSIVE): Add passive flag.
3110 * ospf_interface.c (ospf_if_lookup_by_name): Add new function.
3111 * ospf_lsa.c (ospf_router_lsa): Skip passive interface.
3112 * ospfd.c (passive_interface): New command passive-interface is
3113 added.
3114 (ospf_config_write): Print passive interface.
3115
31162000-01-15 Toshiaki Takada <takada@zebra.org>
3117
3118 * ospf_interface.h (crypt_key): New struct added to store
3119 multiple cryptographic autheitication keys.
3120 (ospf_interface): struct changed.
3121
3122 * ospf_interface.c: ospf_crypt_key_new, ospf_crypt_key_add,
3123 ospf_crypt_key_lookup, ospf_crypt_key_delete: new functions added.
3124
3125 * ospf_packet.c (ip_ospf_message_digest_key): Changed to store
3126 multiple cryptographic authentication keys.
3127
31282000-01-14 Toshiaki Takada <takada@zebra.org>
3129
3130 * ospf_interface.c: DEFUN (if_ospf_*) commands changed name to
3131 ip_ospf_* ().
3132 Old notation `ospf *' still remains backward compatibility.
3133
31341999-12-29 Alex Zinin <zinin@amt.ru>
3135 * ospf_lsa.c: ospf_lsa_more_recent() bug fix
3136 * ospf_nsm.c, ospf_packet.c: remove nbr data struct when
3137 int goes down, also check DD flags correctly (bug fix)
3138
31391999-12-28 Alex Zinin <zinin@amt.ru>
3140 * "redistribute <source> metric-type (1|2) metric <XXX>" added
3141
31421999-12-23 Alex Zinin <zinin@amt.ru>
3143 * added RFC1583Compatibility flag
3144 * added dynamic interface up/down functionality
3145
31461999-11-19 Toshiaki Takada <takada@zebra.org>
3147
3148 * ospf_neighbor.h (struct ospf_neighbor): Add member state_change
3149 for NSM state change statistics.
3150
31511999-11-19 Toshiaki Takada <takada@zebra.org>
3152
3153 * ospfd.c (show_ip_ospf_neighbor_detail),
3154 (show_ip_ospf_neighbor_int_detail): DEFUN Added.
3155
31561999-11-14 Kunihiro Ishiguro <kunihiro@zebra.org>
3157
3158 * ospf_asbr.c (ospf_asbr_check_lsas): Add check of
3159 lsa->refresh_list.
3160
31611999-11-11 Toshiaki Takada <takada@zebra.org>
3162
3163 * ospf_ia.[ch] (OSPF_EXAMINE_SUMMARIES_ALL): Macro added.
3164 This macro is expanded to ospf_examine_summaries ()
3165 for SUMMARY_LSA and SUMMARY_LSA_ASBR.
3166 (OSPF_EXAMINE_TRANSIT_SUMMARIES_ALL): Macro added.
3167 This macro is expanded to ospf_examine_transit_summaries ()
3168 for SUMMARY_LSA and SUMMARY_LSA_ASBR.
3169
31701999-11-11 Toshiaki Takada <takada@zebra.org>
3171
3172 * ospf_lsa.[ch] (ospf_find_self_summary_lsa_by_prefix): Changed to
3173 macro OSPF_SUMMARY_LSA_SELF_FIND_BY_PREFIX.
3174 (ospf_find_self_summary_asbr_lsa_by_prefix): Changed to
3175 macro OSPF_SUMMARY_ASBR_LSA_SELF_FIND_BY_PREFIX.
3176 (ospf_find_self_external_lsa_by_prefix): Changed to
3177 macro OSPF_EXTERNAL_LSA_SELF_FIND_BY_PREFIX.
3178
31791999-11-11 Toshiaki Takada <takada@zebra.org>
3180
3181 * ospfd.c (ospf_abr_type): ospf_abr_type_cisco, ospf_abr_type_ibm,
3182 ospf_abr_type_shortcut and ospf_abr_type_standard DEFUNs are
3183 combined.
3184 * ospfd.c (no_ospf_abr_type): no_ospf_abr_type_cisco,
3185 no_ospf_abr_type_ibm and no_ospf_abr_type_shortcut DEFUNS are
3186 combined.
3187
31881999-11-10 Toshiaki Takada <takada@zebra.org>
3189
3190 * ospf_route.c (ospf_lookup_int_by_prefix): Move function to
3191 ospf_interface.c and change name to ospf_if_lookup_by_prefix ().
3192
31931999-11-01 Alex Zinin <zinin@amt.ru>
3194 * ospf_packet.c
3195 some correction to LSU processing
3196
3197 * ospf_lsa.c ospfd.h
3198 randomize initial LSA refreshment interval
3199 and limit the size of LSA-group to 10
3200 to let randomization work more effectively.
3201
32021999-10-31 Alex Zinin <zinin@amt.ru>
3203 * ospf_interface.c
3204 cancel t_network_lsa_self
3205 when freeing int structure
3206
3207 * ospf_abr.c ospf_asbr.c ospf_flood.c ospf_lsa.c
3208 ospf_lsa.h ospf_lsdb.h ospfd.c ospfd.h
3209
3210 Summary and ASE LSA refreshment functions
3211 added---LSA refreshment is paced to 70 LSAs
3212 per sec to avoid link overflow. Refreshment events
3213 are further randomized within a 10 sec interval
3214 to avoid syncing.
3215
3216 Also the sigfault of memcmp() in ospf_lsa_is_different()
3217 is fixed.
3218
32191999-10-30 Alex Zinin <zinin@amt.ru>
3220 * ospf_nsm.c
3221 Fix the bug where MAX_AGE LSAs
3222 are included into the DB summary.
3223
3224 * ospf_interface.c
3225 allocate 2*MTU input buffer instead of just MTU
3226 for the cases when the other router mistakenly
3227 sends larger packets thus causing fragmentation, etc.
3228
3229 * ospf_nsm.c
3230 in nsm_reset_nbr() lists should be freed
3231 not when they are empty.
3232
32331999-10-29 Kunihiro Ishiguro <kunihiro@zebra.org>
3234
3235 * ospf_zebra.c (ospf_acl_hook): Move OSPF_IS_ASBR and OSPF_IS_ABR
3236 check inside of if (ospf_top).
3237
32381999-10-29 Alex Zinin <zinin@amt.ru>
3239 * ospf_lsa.c ospf_lsdb.c :
3240 add assertion in lsa and lsa->data alloc functions,
3241 as well as in lsdb_add for new->data
3242
3243 * ospf_lsdb.c: free hash table correctly
3244
32451999-10-28 John Capo <jc@irbs.com>
3246
3247 * ospf_packet.h (OSPF_PACKET_MAX): Correct MAX packet length
3248 calculation
3249
32501999-10-27 Kunihiro Ishiguro <kunihiro@zebra.org>
3251
3252 * OSPF-TRAP-MIB.txt: New file added. Edited version of RFC1850.
3253
3254 * OSPF-MIB.txt: New file added. Edited version of RFC1850.
3255
32561999-10-27 Alex Zinin <zinin@amt.ru>
3257 * ospfd, ospf_zebra, ospf_abr
3258 "area import-list" command is added.
3259 This command allows to filter the inter-area routes
3260 injected into an area. Access list hook function
3261 extended to invalidate area exp/imp lists.
3262
32631999-10-25 Yoshinobu Inoue <shin@nd.net.fujitsu.co.jp>
3264
3265 * ospfd.c (ospf_interface_run): Enable to detect P2P network
3266 on an OSPF interface.
3267
32681999-10-19 Jordan Mendelson <jordy@wserv.com>
3269
3270 * ospf_lsdb.c (ospf_lsdb_add): Fix bug of crash
3271 in ospf_ls_retransmit_lookup ().
3272
32731999-10-19 Vladimir B. Grebenschikov <vova@express.ru>
3274
3275 * ospf_route.c: Workaround about installation of OSPF routes into
3276 the zebra daemon. Add checking of existance routes. Free
3277 ospf_top->old_table if it exists.
3278
32791999-10-15 Jordan Mendelson <jordy@wserv.com>
3280
3281 * Add support for MD5 authentication.
3282
32831999-10-12 Alex Zinin <zinin@amt.ru>
3284 * ospfd.c, ospfd.h, ospf_abr.c:
3285 a new command "area export-list" was added, it allows
3286 the admin. to control which intra-area routes are
3287 announced to other areas by the ABR
3288
32891999-10-12 Alex Zinin <zinin@amt.ru>
3290 * ospf_asbr.c (ospf_asbr_check_lsas): Fix bug of coredump
3291 when "no redistribute" is used after a distribute list
3292 denying some networks was used
3293
32941999-10-05 Toshiaki Takada <takada@zebra.org>
3295
3296 * ospf_route.c (ospf_path_dup): New function added.
3297
32981999-10-05 Toshiaki Takada <takada@zebra.org>
3299
3300 * ospf_interface.[ch]: Some of VL related funciton name changed.
3301
33021999-09-27 Alex Zinin <zinin@amt.ru>
3303
3304 * ospf_zebra.c: Distribute-list functionality added
3305
33061999-09-27 Toshiaki Takada <takada@zebra.org>
3307
3308 * ospfd.c (show_ip_ospf): Fix bug of segmentation fault when no ospf
3309 instance exists.
3310
33111999-09-25 Kunihiro Ishiguro <kunihiro@zebra.org>
3312
3313 * ospfd.c (ospf_interface_down): Fix bug of misusing nextnode()
3314 instead of node->next. Reported by Hiroki Ishibashi
3315 <ishibasi@dcd.abk.nec.co.jp>.
3316
3317 * ospf_route.c (show_ip_ospf_route): Add check for ospf is enabled
3318 or not.
3319
33201999-09-23 Alex Zinin <zinin@amt.ru>
3321
3322 * stub area support added
3323
33241999-09-23 Alex Zinin <zinin@amt.ru>
3325
3326 * fwd_addr in ASE-LSAs is now set correctly
3327 * ASE routing changed to check the fwd_addr
3328 and skip the route if the addr points to one
3329 of our interfaces to avoid loops.
3330
33311999-09-22 Alex Zinin <zinin@amt.ru>
3332
3333 * ospf_interface:
3334 ospf_vls_in_area() added, it returns
3335 the number of VLs configured through the area
3336
3337 * ospf_interface.c ospf_lsa.c ospf_lsdb.c ospfd.c
3338 honor correct mem alloc
3339
33401999-09-22 Alex Zinin <zinin@amt.ru>
3341
3342 * memory.[ch]:
3343 Some OSPF mem types added,
3344 plus more info in "show mem"
3345
33461999-09-21 Alex Zinin <zinin@amt.ru>
3347
3348 * ospfd.c:
3349 "area range substitute" added.
3350 It can be used on NAT-enabled (IP-masquarade)
3351 routers to announce private networks
3352 from an area as public ones into the outside
3353 world (not in the RFC, btw :)
3354
33551999-09-21 Alex Zinin <zinin@amt.ru>
3356
3357 * ospfd.c:
3358 "area range suppress" added.
3359 This command allows to instruct the router
3360 to be silent about specific ranges, i.e.,
3361 it is a method of route filtering on area
3362 borders
3363
33641999-09-21 Alex Zinin <zinin@amt.ru>
3365
3366 * ospfd.c VLs removed when "no network area" executed
3367
33681999-09-20 Alex Zinin <zinin@amt.ru>
3369
3370 * ospf_ase.c bug fix for not-zero fwd_addr
3371 and directly connected routes.
3372
33731999-09-20 Yon Uriarte <yon@plannet.de>
3374
3375 * ospf_packet.c (ospf_make_ls_req): Introduce delta value for
3376 checking the length of OSPF packet exceeds MTU or not.
3377
3378 * ospf_lsa.c (ospf_lsa_different): Apply ntohs for checking
3379 l1->data->length.
3380
33811999-09-18 Alex Zinin <zinin@amt.ru>
3382
3383 * ospf_lsa.c bug fix for ospf_network_lsa() to
3384 include itself into the RID list
3385
33861999-09-10 Alex Zinin <zinin@amt.ru>
3387
3388 * Alternative ABR behaviors IBM/Cisco/Shortcut
3389 implemented
3390
33911999-09-10 Alex Zinin <zinin@amt.ru>
3392
3393 * router and network-LSA origination
3394 changed to honor MinLSInterval
3395
33961999-09-08 Alex Zinin <zinin@amt.ru>
3397
3398 * modified ABR behavior to honor VLs and transit
3399 areas
3400
34011999-09-07 Alex Zinin <zinin@amt.ru>
3402
3403 * completed VL functionality
3404
34051999-09-06 Kunihiro Ishiguro <kunihiro@zebra.org>
3406
3407 * ospf_asbr.c: New file.
3408 ospf_asbr.h: New file.
3409
3410 * ospf_zebra.c (ospf_redistribute_connected): Add redistribute
3411 related stuff.
3412
34131999-09-05 Kunihiro Ishiguro <kunihiro@zebra.org>
3414
3415 * ospfd.h (OSPF_FLAG_VIRTUAL_LINK): Change OSPF_FLAG_VEND to
3416 OSPF_FLAG_VIRTUAL_LINK for comprehensiveness.
3417
34181999-09-03 Kunihiro Ishiguro <kunihiro@zebra.org>
3419
3420 * ospf_spf.c (ospf_spf_register): Change name from
3421 ospf_spf_route_add() to ospf_spf_register().
3422 Include "ospfd/ospf_abr.h" for ospf_abr_task() prototype.
3423
34241999-09-02 Kunihiro Ishiguro <kunihiro@zebra.org>
3425
3426 * ospf_lsa.c (ospf_external_lsa_install): Change to update
3427 lsa->data rather than install new one, when same id lsa is already
3428 installed.
3429
34301999-09-01 Kunihiro Ishiguro <kunihiro@zebra.org>
3431
3432 * ospf_lsa.c (ospf_router_lsa_install): Return lsa value.
3433 (ospf_network_lsa_install): Likewise.
3434 (ospf_summary_lsa_install): Likewise.
3435 (ospf_summary_asbr_lsa_install): Likewise.
3436 (ospf_external_lsa_install): Likewise.
3437
3438 * ospf_spf.c (ospf_spf_calculate): Comment out debug function
3439 ospf_rtrs_print().
3440
34411999-08-31 Kunihiro Ishiguro <kunihiro@zebra.org>
3442
3443 * ospf_spf.c (ospf_rtrs_free): Add ospf_spf_calculate() for
3444 freeing rtrs.
3445
34461999-08-31 Toshiaki Takada <takada@zebra.org>
3447
3448 * ospf_lsa.c (show_ip_ospf_database_summary),
3449 (show_ip_ospf_database_summary_asbr),
3450 (show_ip_ospf_database_external): New function added.
3451 `show ip ospf database summary',
3452 `show ip ospf database asbr-summary'
3453 `show ip ospf database external' command can be used.
3454
3455 * ospf_lsa.c (ospf_lsa_count_table): New function added.
3456 (show_ip_ospf_database_all): show nothing if a type of LSA
3457 does not exist.
3458
34591999-08-31 Kunihiro Ishiguro <kunihiro@zebra.org>
3460
3461 * ospf_lsa.c (ospf_maxage_lsa_remover): Preserve next pointer when
3462 the node is deleted.
3463
34641999-08-31 Toshiaki Takada <takada@zebra.org>
3465
3466 * ospf_flood.c (ospf_ls_retransmit_lookup): change to return
3467 struct ospf_lsa *.
3468 (ospf_ls_request_new), (ospf_ls_request_free),
3469 (ospf_ls_request_add), (ospf_ls_request_delete),
3470 (ospf_ls_request_delete_all), (ospf_ls_request_lookup):
3471 New function added.
3472
3473 * ospf_packet.c (ospf_ls_upd_send_lsa): New function added.
3474
3475 * ospf_lsa.h (LS_AGE): Slightly change macro definition.
3476
3477 * ospf_lsa.c (ospf_lsa_more_recent), (ospf_lsa_diffrent):
3478 Use LS_AGE macro.
3479
34801999-08-30 Alex Zinin <zinin@amt.ru>
3481
3482 * ospfd.c
3483 fix a bug with area range config write
3484 added "show ip ospf" command, it will be enhanced later on
3485
34861999-08-30 Alex Zinin <zinin@amt.ru>
3487
3488 * ospf_lsa.c
3489 updated ospf_router_lsa() to honor flags (B-bit)
3490
34911999-08-30 Alex Zinin <zinin@amt.ru>
3492
3493 * ospf_abr.c
3494 wrote major functions implementing ABR activity
3495
34961999-08-30 Alex Zinin <zinin@amt.ru>
3497
3498 * ospf_ia.c ospf_route.c ospf_route.h
3499 fixed the bug with ospf_route.origin field.
3500 Now it holds pointer to lsa_header
3501
35021999-08-30 Alex Zinin <zinin@amt.ru>
3503
3504 * ospf_flood.c ospf_flood.h:
3505 transformed ospf_flood_if_select into ospf_flood_through_area()
3506 added new ospf_flood_if_select() and ospf_flood_through_as()
3507
35081999-08-30 Toshiaki Takada <takada@zebra.org>
3509
3510 * ospf_flood.[ch]: New file added.
3511
3512 * ospf_packet.c (ospf_lsa_flooding),
3513 (ospf_lsa_flooding_select_if): functions move to ospf_flood.c
3514
3515 * ospf_neighbor.c (ospf_put_lsa_on_retransm_list),
3516 (ospf_remove_lsa_from_retransm_list),
3517 (ospf_nbr_remove_all_lsas_from_retransm_list),
3518 (ospf_lsa_remove_from_ls_retransmit):
3519 (ospf_lsa_retransmit): functions move to
3520 ospf_flood.c, and change function's name:
3521
3522 ospf_put_lsa_on_retransm_list ()
3523 -> ospf_ls_retransmit_add ()
3524 ospf_remove_lsa_from_retransm_list ()
3525 -> ospf_ls_retransmit_delete ()
3526 ospf_nbr_remove_all_lsas_from_retransm_list ()
3527 -> ospf_ls_retransmit_clear ()
3528 ospf_lsa_remove_from_ls_retransmit ()
3529 -> ospf_ls_retransmit_delete_nbr_all ()
3530 ospf_lsa_retransmit ()
3531 -> ospf_ls_retransmit_add_nbr_all ()
3532
3533 * ospf_lsa.c (ospf_lsa_lookup_from_list): function move to
3534 ospf_flood.c, and change name to ospf_ls_retransmit_lookup ().
3535
35361999-08-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3537
3538 * ospf_neighbor.c (ospf_nbr_lookup_by_addr): Use
3539 route_node_lookup() instead of route_node_get().
3540
3541 * ospf_packet.c (ospf_ls_upd): Temporary comment out (6) check.
3542
35431999-08-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3544
3545 * ospf_route.c (ospf_lookup_int_by_prefix): Add check of
3546 oi->address.
3547
35481999-08-29 Alex Zinin <zinin@amt.ru>
3549 * ospf_lsa.c
3550 MaxAge LSA deletion functions added.
3551
35521999-08-29 Alex Zinin <zinin@amt.ru>
3553 * ospf_neighbor.c
3554 ospf_nbr_lookup_by_addr(): added route_unlock_node()
3555 when function returns NULL if (rn->info == NULL)
3556
35571999-08-29 Alex Zinin <zinin@amt.ru>
3558 * ospfd.c
3559 added a hack for area range deletion
3560
35611999-08-29 Alex Zinin <zinin@amt.ru>
3562 * ospf_lsa.h
3563 included lsdb field into struct ospf_lsa, to find
3564 LSDB easier when removing MaxAge LSAs.
3565
35661999-08-29 Alex Zinin <zinin@amt.ru>
3567 * ospf_lsa.c ospf_neighbor.c ospf_nsm.c
3568 ospf_packet.c changed to honor new retransmit list
3569 management functions
3570
35711999-08-29 Alex Zinin <zinin@amt.ru>
3572 * ospf_neighbor.c , .h added new retransmit list functions.
3573
35741999-08-29 Alex Zinin <zinin@amt.ru>
3575 * Makefile.in
3576 added ospf_ase, ospf_abr, ospf_ia
3577
35781999-08-29 Alex Zinin <zinin@amt.ru>
3579 * ospf_spf.c:
3580 - changed ospf_next_hop_calculation() to include interface
3581 and nexthop addr for directly connected routers---more informative
3582 and solves problem with route installation into the kernel
3583 - changed ospf_nexthop_out_if_addr() to support routers, not only
3584 transit networks
3585 - added ospf_process_stubs();
3586
35871999-08-29 Alex Zinin <zinin@amt.ru>
3588 * ospf_lsa.c:
3589 - changed ospf_router_lsa() to provide correct links
3590 for p-t-p interfaces;
3591 - changed ospf_summary_lsa_install() to support table
3592 of self-originated summary-LSAs;
3593 - added ospf_summary_asbr_lsa_install() and ospf_external_lsa_install()
3594 - changed ospf_lsa_install() accordingly
3595 - changed show_ip_ospf_database_router_links() to support p-t-p
3596
35971999-08-29 Kunihiro Ishiguro <kunihiro@zebra.org>
3598
3599 * ospf_packet.c (ospf_make_db_desc): Only master can clear more
3600 flag.
3601
36021999-08-29 Kunihiro Ishiguro <kunihiro@zebra.org>
3603
3604 * ospf_packet.c (ospf_read): Add check of IP src address.
3605
36061999-08-28 Alex Zinin <zinin@amt.ru>
3607 * ospf_neighbor.h
3608 added ospf_nbr_lookup_by_routerid()
3609
36101999-08-28 Alex Zinin <zinin@amt.ru>
3611 * ospfd.h
3612 added ABR/ASBR flag definitions and fields;
3613 added iflist field to area structure;
3614 summary_lsa_self and summary_lsa_asbr_self are changed
3615 to be route tables;
3616 added ranges field---configured area ranges;
3617 A separate Routers RT added;
3618 area range config commands and config write added
3619
3620
36211999-08-28 Alex Zinin <zinin@amt.ru>
3622 * ospf_route.c :
3623 ospf_route_free()--added code to free the list of paths;
3624 The following functions added:
3625 ospf_intra_add_router();
3626 ospf_intra_add_transit();
3627 ospf_intra_add_stub();
3628 the last function uses new ospf_int_lookup_by_prefix();
3629 show_ip_ospf_route_cmd()--changed to support new RT structure;
3630 added ospf_cmp_routes()--general route comparision function;
3631 added ospf_route_copy_nexthops() and ospf_route_copy_nexthops_from_vertex()
3632 they are used in ASE and IA routing;
3633 added ospf_subst_route() and ospf_add_route();
3634
36351999-08-28 Alex Zinin <zinin@amt.ru>
3636 * ospf_route.h :
3637 changed struct ospf_path to include output interface,
3638 changed struct ospf_route to support IA and ASE routing.
3639 added prototypes of the function used in IA and ASE modules.
3640
36411999-08-28 Alex Zinin <zinin@amt.ru>
3642 * ospf_lsa.h ospf_lsa.c :
3643 added ospf_my_lsa(), an interface independent version of
3644 ospf_lsa_is_self_originated(), it will be used in ASE and IA-routing.
3645
36461999-08-27 Kunihiro Ishiguro <kunihiro@zebra.org>
3647
3648 * ospf_interface.c (interface_config_write): Add check for
3649 oi->nbr_self.
3650
36511999-08-25 Toshiaki Takada <takada@zebra.org>
3652
3653 * ospf_lsa.c (ospf_lsa_dup): New function added.
3654
3655 * ospf_packet.c (ospf_write), (ospf_read): Print send/recv
3656 interface in debug message.
3657
36581999-08-25 Toshiaki Takada <takada@zebra.org>
3659
3660 * ospf_packet.c (ospf_ls_ack_send): The name is changed from
3661 `ospf_ls_ack_send'.
3662 (ospf_ls_ack_send_delayed) (ospf_ls_ack_timer): New function added.
3663 Delayed Link State Acknowledgment is scheduled by timer.
3664
36651999-08-25 Alex Zinin <zinin@amt.ru>
3666
3667 * ospf_lsa.c (ospf_router_lsa): Incorrectly included link to
3668 a stub network instead of link to a transit network into
3669 originated router-LSA, bug fixed.
3670
36711999-08-24 Toshiaki Takada <takada@zebra.org>
3672
3673 * ospfd.c (ospf_update_router_id): New function added.
3674
3675 * ospf_network.c (ospf_write): Create new socket per transmission.
3676 And select outgoing interface whether dst is unicast or multicast.
3677
3678 * ospf_packet.c: LSA flooding will work.
3679
36801999-08-24 VOP <vop@unity.net>
3681
3682 * ospf_route.c: Include "sockunion.h"
3683
36841999-08-24 Kunihiro Ishiguro <kunihiro@zebra.org>
3685
3686 * ospf_network.c (ospf_serv_sock_init): Enclose
3687 IPTOS_PREC_INTERNETCONTROL setting with #ifdef for OS which does
3688 not have the definition.
3689
36901999-08-23 Toshiaki Takada <takada@zebra.org>
3691
3692 * ospf_packet.c: Fix bug of DD processing.
3693
36941999-08-18 Toshiaki Takada <takada@zebra.org>
3695
3696 * ospf_lsa.c (show_ip_ospf_database): Show actual `LS age'.
3697
36981999-08-17 Toshiaki Takada <takada@zebra.org>
3699
3700 * ospf_lsa.h (OSPF_MAX_LSA): The value of OSPF_MAX_LSA is
3701 corrected. The bug of `mes_lookup' is fixed.
3702 This had been reported by Poul-Henning Kamp <phk@freebsd.org>.
3703
3704 * ospf_lsa.c (ospf_router_lsa_install): The name is changed from
3705 `ospf_add_router_lsa'.
3706 (ospf_network_lsa_install): The name is changed from
3707 `ospf_add_network_lsa'.
3708
3709 * ospf_interface.h (ospf_interface): Add member `nbr_self'.
3710
3711 * ospf_interface.c (ospf_if_is_enable): New function added.
3712
37131999-08-16 Toshiaki Takada <takada@zebra.org>
3714
3715 * ospf_lsa.h (struct lsa_header): The name is changed from
3716 `struct ospf_lsa'.
3717 (struct ospf_lsa): New struct added to control each LSA's aging
3718 and timers.
3719
3720 * ospf_lsa.c (ospf_lsa_data_free): The name is change from
3721 `ospf_lsa_free'.
3722 (ospf_lsa_data_new), (ospf_lsa_new), (ospf_lsa_free),
3723 (ospf_lsa_different), (ospf_lsa_install): New function added.
3724
3725 * ospf_packet.c (ospf_ls_upd_list_lsa): New function added.
3726
37271999-08-12 Toshiaki Takada <takada@zebra.org>
3728
3729 * ospf_nsm.c (nsm_reset_nbr): New function added.
3730 KillNbr and LLDown neighbor event call this function.
3731
37321999-08-10 Toshiaki Takada <takada@zebra.org>
3733
3734 * ospf_packet.c (ospf_ls_retransmit)
3735 (ospf_ls_upd_timer): New function added.
3736 Set retransmission timer for Link State Update.
3737
37381999-07-29 Toshiaki Takada <takada@zebra.org>
3739
3740 * ospf_ism.c (ospf_dr_election): Fix bug of DR election.
3741
37421999-07-28 Toshiaki Takada <takada@zebra.org>
3743
3744 * ospf_network.c (ospf_serv_sock_init): Set IP precedence field
3745 with IPTOS_PREC_INTERNET_CONTROL.
3746
3747 * ospf_nsm.c (nsm_change_status): Schedule NeighborChange event
3748 if NSM status change.
3749
3750 * ospf_packet.c (ospf_make_hello): Never include a neighbor in
3751 Hello packet, when the neighbor goes down.
3752
37531999-07-26 Kunihiro Ishiguro <kunihiro@zebra.org>
3754
3755 * Makefile.am (noinst_HEADERS): Add ospf_route.h.
3756
3757 * ospf_route.c (show_ip_ospf_route): Add `show ip ospf route'
3758 command.
3759
37601999-07-25 Toshiaki Takada <takada@zebra.org>
3761
3762 * ospf_lsa.c (ospf_router_lsa): Fix bug of LS sequence number
3763 assignement.
3764
37651999-07-25 Kunihiro Ishiguro <kunihiro@zebra.org>
3766
3767 * ospf_route.c (ospf_route_table_free): New function added.
3768
3769 * ospf_spf.c (ospf_spf_next): Free vertex w when cw's and w's
3770 distance is same.
3771
3772 * ospfd.h (struct ospf): Add old_table.
3773
3774 * ospf_main.c (sighup): Call of log_rotate () removed.
3775
3776 * ospf_lsa.c (ospf_lsa_is_self_originated): Fix bug of checking
3777 area->lsa as self LSA. This should be area->lsa_self.
3778
37791999-07-24 Kunihiro Ishiguro <kunihiro@zebra.org>
3780
3781 * ospf_zebra.c (ospf_zebra_add): ospf_zebra_add
3782 (),ospf_zebra_delete () added.
3783
3784 * ospf_spf.c (ospf_spf_calculate): Call ospf_intra_route_add ().
3785
37861999-07-24 Toshiaki Takada <takada@zebra.org>
3787
3788 * ospf_lsa.c: Change LS sequence number treatment.
3789 (ospf_lsa_is_self_originated): New function added.
3790 (show_ip_ospf_database_self_originated): New DEFUN added.
3791
37921999-07-23 Kunihiro Ishiguro <kunihiro@zebra.org>
3793
3794 * ospf_interface.c (ospf_if_lookup_by_addr): Add loopback check.
3795
37961999-07-22 Toshiaki Takada <takada@zebra.org>
3797
3798 * ospf_spf.c (ospf_nexthop_new), (ospf_nexthop_free),
3799 (ospf_nexthop_dup): function added.
3800 (ospf_nexthop_calculation): function changed.
3801
3802 * ospf_interface.c (ospf_if_lookup_by_addr): function added.
3803
38041999-07-21 Toshiaki Takada <takada@zebra.org>
3805
3806 * ospf_spf.c (ospf_spf_closest_vertex): function removed.
3807
38081999-07-21 Kunihiro Ishiguro <kunihiro@zebra.org>
3809
3810 * ospf_spf.c (ospf_spf_next): Apply ntohs for fetching metric.
3811
38121999-07-21 Toshiaki Takada <takada@zebra.org>
3813
3814 * ospf_neighbor.c (ospf_nbr_lookup_by_router_id): fundtion removed.
3815
3816 * ospf_lsa.c (show_ip_ospf_database_router): describe each
3817 connected link.
3818
38191999-07-21 Kunihiro Ishiguro <kunihiro@zebra.org>
3820
3821 * ospf_spf.c (ospf_spf_next): V is router LSA or network LSA so
3822 change behavior according to LSA type.
3823 (ospf_lsa_has_link): Link check function is added.
3824
38251999-07-20 Kunihiro Ishiguro <kunihiro@zebra.org>
3826
3827 * ospf_spf.c (ospf_spf_calculate_schedule): Add new function for
3828 SPF calcultion schedule addtition.
3829 (ospf_spf_calculate_timer_add): Rough 30 sec interval SPF calc
3830 timer is added.
3831 (ospf_spf_next_router): Delete ospf_spf_next_network ().
3832
3833 * ospf_lsa.c (show_ip_ospf_database_all): Network-LSA display
3834 header typo correction. Display of router LSA's #link added.
3835
38361999-07-19 Toshiaki Takada <takada@zebra.org>
3837
3838 * ospf_packet.c (ospf_check_network_mask): Added new function for
3839 receiving Raw IP packet on an appropriate interface.
3840
38411999-07-16 Toshiaki Takada <takada@zebra.org>
3842
3843 * ospfd.c (ospf_router_id): new DEFUN added.
3844
38451999-07-15 Toshiaki Takada <takada@zebra.org>
3846
3847 * ospf_spf.c (ospf_spf_init), (ospf_spf_free),
3848 (ospf_spf_has_vertex), (ospf_vertex_lookup),
3849 (ospf_spf_next_router), (ospf_spf_next_network),
3850 (ospf_spf_closest_vertex), (ospf_spf_calculate):
3851 function added.
3852
38531999-07-13 Toshiaki Takada <takada@zebra.org>
3854
3855 * ospf_ism.c: fix bug of DR Election.
3856
3857 * ospf_nsm.c: fix bug of adjacency forming.
3858
38591999-07-05 Kunihiro Ishiguro <kunihiro@zebra.org>
3860
3861 * ospfd.c (ospf_init): Change to use install_default.
3862
38631999-07-01 Rick Payne <rickp@rossfell.co.uk>
3864
3865 * ospf_zebra.c (zebra_init): Install standard commands to
3866 ZEBRA_NODE.
3867
38681999-06-30 Toshiaki Takada <takada@zebra.org>
3869
3870 * ospf_dump.c: Whole debug command is improved.
3871 (ISM|NSM) (events|status|timers) debug option added.
3872 (show_debugging_ospf): new DEFUN added.
3873
38741999-06-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3875
3876 * ospf_lsa.c (ospf_lsa_lookup_from_list): Change !IPV4_ADDR_CMP to
3877 IPV4_ADDR_SAME.
3878
38791999-06-29 Toshiaki Takada <takada@zebra.org>
3880
3881 * ospf_dump.c (ospf_summary_lsa_dump): Add summary-LSA dump routine.
3882 (ospf_as_external_lsa_dump): Add AS-external-LSA dump routine.
3883
3884 * ospf_nsm.c (nsm_twoway_received): fix condtion of adjacnet.
3885
3886 * ospf_ism.c (ospf_dr_election): fix DR Election.
3887
3888 * ospf_dump.c (ospf_nbr_state_message): fix `show ip ospf neighbor'
3889 command's state.
3890
38911999-06-29 Kunihiro Ishiguro <kunihiro@zebra.org>
3892
3893 * ospf_dump.c (ospf_router_lsa_dump): Add router-LSA dump routine.
3894
38951999-06-28 Toshiaki Takada <takada@zebra.org>
3896
3897 * ospf_lsa.c (show_ip_ospf_database_network): fix bug of
3898 `show ip ospf database network' command output.
3899
3900 * ospf_nsm.c (nsm_inactivity_timer): Clear list of Link State
3901 Retransmission, Database Summary and Link State Request.
3902
3903 * ospf_packet.c (ospf_ls_req_timer): New function added.
3904 Set Link State Request retransmission timer.
3905
39061999-06-27 Kunihiro Ishiguro <kunihiro@zebra.org>
3907
3908 * ospf_main.c (main): Change default output from ZLOG_SYSLOG to
3909 ZLOG_STDOUT.
3910
3911 * ospfd.c (ospf_init): Register show_ip_ospf_interface_cmd and
3912 show_ip_ospf_neighbor_cmd to VIEW_NODE.
3913
3914 * ospf_lsa.c (ospf_lsa_init): Register show_ip_ospf_database_cmd
3915 and show_ip_ospf_database_type_cmd to VIEW_NODE.
3916
39171999-06-25 Toshiaki Takada <takada@zebra.org>
3918
3919 * ospf_packet.c: fix bug of DD making.
3920 fix bug of LS-Update reading.
3921
39221999-06-23 Toshiaki Takada <takada@zebra.org>
3923
3924 * ospf_packet.c: All type of packets are changed to use
3925 fifo queue structure.
3926 (ospf_fill_header) function added.
3927
39281999-06-22 Toshiaki Takada <takada@zebra.org>
3929
3930 * ospf_packet.c (ospf_packet_new): New function added to handle
3931 sending ospf packet by fifo queue structure.
3932 (ospf_packet_free), (ospf_fifo_new), (ospf_fifo_push),
3933 (ospf_fifo_pop), (ospf_fifo_head), (ospf_fifo_flush),
3934 (ospf_fifo_free): Likewise.
3935
39361999-06-21 Toshiaki Takada <takada@zebra.org>
3937
3938 * ospf_nsm.c (ospf_db_desc_timer): function added.
3939 (nsm_timer_set) function added.
3940 * ospf_dump.c (ospf_option_dump): function added.
3941 * ospf_packet.c (ospf_ls_req) (ospf_make_ls_req): function added.
3942
39431999-06-20 Toshiaki Takada <takada@zebra.org>
3944
3945 * ospf_lsa.c (ospf_lsa_more_recent): function added.
3946 * ospf_neighbor.h (struct ospf_neighbor): Change member ms_flag
3947 to dd_flags.
3948
39491999-06-19 Toshiaki Takada <takada@zebra.org>
3950
3951 * ospf_lsa.c: DEFUN (show_ip_ospf_database) Added.
3952 * ospf_interface.c (if_ospf_cost), (if_ospf_dead_interval),
3953 (if_ospf_hello_interval), (if_ospf_priority),
3954 (if_ospf_retransmit_interval), (if_ospf_transmit_delay)
3955 argument changed from NUMBER to <range>.
3956 DEFUN (if_ospf_network_broadcast),
3957 DEFUN (if_ospf_network_non_broadcast),
3958 DEFUN (if_ospf_network_point_to_multipoint),
3959 DEFUN (if_ospf_network_point_to_point) functions are combined to
3960 DEFUN (if_ospf_network).
3961
39621999-06-18 Toshiaki Takada <takada@zebra.org>
3963
3964 * ospf_lsa.c: ospf_add_router_lsa (), ospf_add_network_lsa (),
3965 ospf_lsa_lookup (), ospf_lsa_count () Added.
3966
39671999-06-15 Toshiaki Takada <takada@zebra.org>
3968
3969 * DEFUN (ospf_debug_ism), DEFUN (ospf_debug_nsm),
3970 DEFUN (no_ospf_debug_ism), DEFUN (no_ospf_debug_nsm) Added.
3971 `debug ospf ism' command shows debug message.
3972 `debuf ospf nsm' command shows debug message.
3973
39741999-06-14 Toshiaki Takada <takada@zebra.org>
3975
3976 * ospf_lsa.c: ospf_network_lsa () Added.
3977 ospf_lsa_checksum () Added.
3978 * DEFUN (ospf_debug_packet), DEFUN (no_ospf_debug_packet) Added.
3979 `debug ospf packet' command shows debug message.
3980
39811999-06-13 Toshiaki Takada <takada@zebra.org>
3982
3983 * ospf_packet.h: Remove struct ospf_ls_req {}, ospf_ls_upd {},
3984 ospf_ls_ack {}.
3985
39861999-06-11 Toshiaki Takada <takada@zebra.org>
3987
3988 * ospf_dump.c: fix IP packet length treatment.
3989
39901999-06-10 Toshiaki Takada <takada@zebra.org>
3991
3992 * ospf_ism.h: Add OSPF_ISM_EVENT_EXECUTE() Macro Added.
3993 * ospf_nsm.h: Add OSPF_NSM_EVENT_EXECUTE() Macro Added.
3994
3995 * ospf_packet.c: ospf_db_desc (), ospf_db_desc_send () Added.
3996 ospf_make_hello (), ospf_make_db_desc () Added.
3997 ospf_db_desc_proc () Added.n
3998
3999 * Database Description packet can be processed.
4000
40011999-06-08 Toshiaki Takada <takada@zebra.org>
4002
4003 * ospf_lsa.c: New file.
4004
40051999-06-07 Toshiaki Takada <takada@zebra.org>
4006
4007 * ospf_neighbor.c: ospf_fully_adjacent_count () Added.
4008
40091999-06-07 Kunihiro Ishiguro <kunihiro@zebra.org>
4010
4011 * ospf_spf.[ch]: New file.
4012
40131999-05-30 Kunihiro Ishiguro <kunihiro@zebra.org>
4014
4015 * ospf_zebra.c: Changed to use lib/zclient.c routines.
4016
4017 * ospf_zebra.h (zebra_start): Remove struct zebra.
4018
40191999-05-29 Kunihiro Ishiguro <kunihiro@zebra.org>
4020
4021 * ospfd.c (ospf_config_write): Add cast (unsigned long int) to
4022 ntohl for sprintf warning.
4023
40241999-05-19 Toshiaki Takada <takada@zebra.org>
4025
4026 * ospf_ism.c (ospf_dr_election): Join AllDRouters Multicast group
4027 if interface state changes to DR or BDR.
4028
40291999-05-14 Stephen R. van den Berg <srb@cuci.nl>
4030
4031 * ospf_main.c (signal_init): SIGTERM call sigint.
4032 (sigint): Logging more better message.
4033
40341999-05-12 Toshiaki Takada <takada@zebra.org>
4035
4036 * ospfd.c: Fix bug of `no router ospf' statement, it will work.
4037
40381999-05-11 Toshiaki Takada <takada@zebra.org>
4039
4040 * ospf_neighbor.c: ospf_nbr_free () Added.
4041
40421999-05-10 Toshiaki Takada <takada@zebra.org>
4043
4044 * ospfd.h: struct ospf_area { }, struct ospf_network { } Changed.
4045 * Fix bug of `no network' statement, it will work.
4046
40471999-05-07 Toshiaki Takada <takada@zebra.org>
4048
4049 * ospf_interface.c, ospf_zebra.c: Fix bug of last interface is not
4050 updated by ospf_if_update ().
4051
40521999-04-30 Kunihiro Ishiguro <kunihiro@zebra.org>
4053
4054 * Makefile.am (noinst_HEADERS): Add ospf_lsa.h for distribution.
4055
40561999-04-25 Toshiaki Takada <takada@zebra.org>
4057
4058 * ospf_interface.c: DEFUN (no_if_ospf_cost),
4059 DEFUN (no_if_ospf_dead_interval),
4060 DEFUN (no_if_ospf_hello_interval),
4061 DEFUN (no_if_ospf_priority),
4062 DEFUN (no_if_ospf_retransmit_interval),
4063 DEFUN (no_if_ospf_transmit_delay) Added.
4064
4065 interface_config_write () suppress showing interface
4066 default values.
4067
40681999-04-25 Kunihiro Ishiguro <kunihiro@zebra.org>
4069
4070 * ospf_dump.c (ospf_timer_dump): If thread is NULL return "inactive".
4071
4072 * ospfd.c (ospf_if_update): Fix bug of using ospf_area { } instead
4073 of ospf_network { }. So `router ospf' statement in ospfd.conf
4074 works again.
4075 (ospf_if_update): Call ospf_get_router_id for updating router ID.
4076
40771999-04-25 Toshiaki Takada <takada@zebra.org>
4078
4079 * ospf_interface.c: DEFUN (if_ospf_network) deleted.
4080 DEFUN (if_ospf_network_broadcast),
4081 DEFUN (if_ospf_network_non_broadcast),
4082 DEFUN (if_ospf_network_point_to_multipoint),
4083 DEFUN (if_ospf_network_point_to_point),
4084 DEFUN (no_if_ospf_network) Added.
4085
40861999-04-23 Toshiaki Takada <takada@zebra.org>
4087
4088 * ospfd.h: struct area { } changed to struct ospf_network { }.
4089 Add struct ospf_area { }.
4090 * ospfd.c: Add ospf_area_lookup_by_area_id (), ospf_network_new (),
4091 and ospf_network_free ().
4092 DEFUN (area_authentication), DEFUN (no_area_authentication) Added.
4093
40941999-04-22 Toshiaki Takada <takada@zebra.org>
4095
4096 * ospf_lsa.h: New file.
4097 * ospf_packet.h: LSA related struct definition are moved to
4098 ospf_lsa.h.
4099 * ospf_packet.c: ospf_verify_header () Added.
4100
41011999-04-21 Toshiaki Takada <takada@zebra.org>
4102
4103 * ospf_ism.c: ospf_elect_dr () and related function is changed.
4104 DR Election bug fixed.
4105 * ospf_dump.c: ospf_nbr_state_message (), ospf_timer_dump () Added.
4106 * ospfd.c: DEFUN (show_ip_ospf_neighbor) Added.
4107
41081999-04-19 Kunihiro Ishiguro <kunihiro@zebra.org>
4109
4110 * ospf_main.c (main): access_list_init () is added for vty
4111 connection filtering.
4112
41131999-04-16 Toshiaki Takada <takada@zebra.org>
4114
4115 * ospfd.c: DEFUN (show_ip_ospf_interface) Added.
4116 * ospf_neighbor.c: ospf_nbr_count () Added.
4117
41181999-04-15 Toshiaki Takada <takada@zebra.org>
4119
4120 * ospfd.h: struct ospf { } Changed.
4121 * ospfd.c: ospf_lookup_by_process_id () Deleted.
4122 * ospf_ism.c: ospf_wait_timer () Added. WaitTimer will work.
4123
41241999-04-14 Toshiaki Takada <takada@zebra.org>
4125
4126 * ospf_ism.c: ospf_elect_dr () Added.
4127 * ospf_network.c: ospf_if_ipmulticast () Added.
4128
41291999-04-11 Toshiaki Takada <takada@zebra.org>
4130
4131 * ospf_interface.c: interface_config_write (),
4132 DEFUN (if_ip_ospf_cost),
4133 DEFUN (if_ip_ospf_dead_interval),
4134 DEFUN (if_ip_ospf_hello_interval),
4135 DEFUN (if_ip_ospf_priority),
4136 DEFUN (if_ip_ospf_retransmit_interval) and
4137 DEFUN (if_ip_ospf_transmit_delay) Added.
4138
41391999-04-08 Toshiaki Takada <takada@zebra.org>
4140
4141 * ospf_dump.c: ospf_packet_db_desc_dump () Added.
4142 * ospf_neighbor.c: ospf_nbr_bidirectional () Added.
4143 * ospf_nsm.c: nsm_twoway_received () Added.
4144
41451999-04-02 Toshiaki Takada <takada@zebra.org>
4146
4147 * ospf_neighbor.c: New file.
4148 * ospf_neighbor.h: New file.
4149 * ospf_nsm.c: New file.
4150 * ospf_nsm.h: New file.
4151 * ospf_packet.c: Add ospf_make_header (), ospf_hello () and
4152 ospf_hello_send (). Now OSPFd can receive Hello and send Hello.
4153
41541999-03-27 Kunihiro Ishiguro <kunihiro@zebra.org>
4155
4156 * ospf_packet.c: Add ospf_recv_packet (). Now OSPF Hello can receive.
4157
41581999-03-19 Toshiaki Takada <takada@zebra.org>
4159
4160 * ospf_packet.c: New file.
4161 * ospf_packet.h: New file.
4162 * ospf_network.c: New file.
4163 * ospf_network.h: New file.
4164 * ospfd.h: move OSPF message structure has moved to ospf_packet.h.
4165
41661999-03-17 Kunihiro Ishiguro <kunihiro@zebra.org>
4167
4168 * ospf_zebra.c (ospf_zebra_get_interface): Fix for IPv6 interface
4169 address.
4170
4171 * Makefile.am (install-sysconfDATA): Overwrite install-sysconfDATA
4172 for install ospfd.conf.sample as owner read only file.
4173
4174 * ospf_main.c (usage): Change to use ZEBRA_BUG_ADDRESS.
4175
41761999-03-15 Toshiaki Takada <takada@zebra.org>
4177
4178 * ospf_ism.c: New file.
4179 * ospf_ism.h: New file.
4180 * ospf_dump.c: New file.
4181 * ospf_dump.h: New file.
4182
4183 * ospfd.h: Add (struct ospf), (struct config_network),
4184 (struct message) structure.
4185
4186 * ospf_interface.c: Add ospf_if_match_network ().
4187 * ospf_interface.h (struct ospf_interface): Change struct members.
4188
4189 * ospfd.c: ospf_lookup_by_process_id (), ospf_network_new (),
4190 DEFUN (network_area): Added.
4191
4192 * ospfd.conf.sample: Change sample configuration.
4193
41941999-03-05 Toshiaki Takada <takada@zebra.org>
4195
4196 * ospf_interface.c: New file.
4197 * ospf_interface.h: New file.
4198 * ospf_zebra.h: New file.
4199 * ospf_zebra.c: Add interface function for zebra daemon.
4200 * ospfd.c: New file.
4201
42021999-02-23 Kunihiro Ishiguro <kunihiro@zebra.org>
4203
4204 * Move IPv6 codes and files to ospf6d directory.
4205
42061999-02-18 Peter Galbavy <Peter.Galbavy@knowledge.com>
4207
4208 * syslog support added
4209
42101998-12-22 Toshiaki Takada <takada@zebra.org>
4211
4212 * ospfd.h: New file.
4213 * ospf_lsa.h: New file.
4214
42151998-12-15 Kunihiro Ishiguro <kunihiro@zebra.org>
4216
4217 * Makefile.am: New file.
4218 * ospf_main.c: New file.
4219