blob: 7b77cb4e35be982d685864eb75a43e4e80427e8a [file] [log] [blame]
paulc8c15212005-11-04 12:31:39 +000012005-11-04 Paul Jakma <paul.jakma@sun.com>
2
3 * ospf_{dump,spf,vty}.c: Oops, use the internal tv_sub
4 function rather than unportable timersub.
5
paul484315f2005-11-03 09:08:29 +000062005-11-03 Paul Jakma <paul.jakma@sun.com>
7
8 * ospf_apiserver.c: (apiserver_sync_callback) stray semi-colon
9 * ospf_packet.c: include checksum.h, remove the in_cksum extern
10 * prototypes.
11 * ospf_te.h: Add braces, quell warning.
paul6d452762005-11-03 11:15:44 +000012 * ospf_packet.c: Change level of some warnings to
13 informational.
paulc8c15212005-11-04 12:31:39 +000014
paul88d6cf32005-10-29 12:50:09 +0000152005-10-29 Paul Jakma <paul.jakma@sun.com>
16
17 * (general) RFC3137 stub-router support
18 * ospfd.h: Add OSPF_OUTPUT_COST_INFINITE define.
19 (struct ospf_master) Add a OSPF_MASTER_SHUTDOWN flag for
20 options, to allow shutdown to distinguish between complete
21 shutdown and shutdown of a subset of ospf instances.
22 (struct ospf)
23 Add stub_router_{startup,shutdown_}time, configuration of startup
24 and shutdown time for stub-router.
25 Add t_graceful_shutdown struct thread, timer for graceful
26 shutdown, if needed.
27 (struct ospf_area) Add stub_router_state - run time state of
28 stub-router for an area. Add flags for ADMIN, IS and WAS
29 states.
30 Add t_stub_router, timer thread to resend router-lsa for an
31 area.
32 * ospf_lsa.c: (ospf_link_cost) new simple function to spit out
33 either the given lnks cost or infinite cost if stub-router is
34 in effect.
35 (lsa_link_{ptop,broadcast,virtuallink,ptomp}_set) use
36 previous function for transit-links.
37 (ospf_stub_router_timer) timer thread for end of startup stub
38 router. Change state as required for the area and setup
39 re-origination of router-lsa.
40 (ospf_stub_router_check) Check/do whether stub-router should be
41 enabled, and whether it requires timer to be setup.
42 (ospf_router_lsa_new) call previous function at top.
43 (ospf_router_lsa_originate) no external callers, made static.
44 * ospf_lsa.h: (ospf_router_lsa_originate) removed.
45 * ospf_main.c: (sigint) make static.
46 remove call to exit, as ospf_terminate now deals with
47 exiting.
48 * ospf_route.c: (ospf_terminate) removed, now in ospfd.c.
49 * ospf_vty.c: (show_ip_ospf_area) print out state of
50 stub-router, if active.
51 (show_ip_ospf) print out configuration of stub-router
52 support, and details of graceful-shutdown if the timer is
53 active.
54 ((no)?ospf_max_metric_router_lsa_{admin,startup,shutdown}) new
55 commands to (de-)?configure stub-router support.
56 (config_write_stub_router) write out config of stub-router.
57 (ospf_config_write) call previous.
58 (ospf_vty_init) install the new stub-router commands.
59 * ospfd.c: various functions made static.
60 (ospf_new) Set defaults for stub-router. Graceful shutdown
61 is made to default on, just to be adventerous.
62 (ospf_graceful_shutdown_finish) new function, final part of
63 shutdown.
64 (ospf_graceful_shutdown_timer) timer thread wrapper for
65 graceful-shutdown.
66 (ospf_graceful_shutdown_check) check whether to setup timer
67 for shutdown or proceed directly to final shutdown.
68 (ospf_terminate) moved here from ospf_route.c, call
69 ospf_finish for each instance.
70 (ospf_finish) renamed to ospf_finish_final and made static.
71 (ospf_finish) new function, exported wrapper around
72 ospf_graceful_shutdown_check.
73 (ospf_finish_final) complete shutdown of an instance.
74 Add missing TIMER_OFF's of two timer threads.
75 (ospf_area_free) opaque self lsa timer should be turned off.
76
paulb8ad39d2005-10-23 15:23:05 +0000772005-10-23 Paul Jakma <paul.jakma@sun.com>
78
paule029d442005-10-23 15:26:24 +000079 * ospf_apiserver.c: (ospf_apiserver_term) This function should
80 not have side-effects (eg segv) if no apiserver instances are
81 active, ie be robust.
paulb8ad39d2005-10-23 15:23:05 +000082 * ospf_vty.c: (show_ip_ospf) fix display of SPF timer if it
83 has not yet been run.
84
paulf9ad9372005-10-21 00:45:17 +0000852005-10-21 Paul Jakma <paul.jakma@sun.com>
86
paulea4ffc92005-10-21 20:04:41 +000087 * ospf_dump.c: (ospf_timeval_dump) fix ms adjustment, thanks to
88 Andrew Schorr.
89 * ospf_vty.c: (ospf_config_write) fix write out of spf timers
90 configuration.
91
922005-10-21 Paul Jakma <paul.jakma@sun.com>
93
pauld24f6e22005-10-21 09:23:12 +000094 * (general) SPF millisecond resolution timer with adaptive,
95 linear back-off holdtime. Prettification of ospf_timer_dump.
96 * ospf_dump.c: (ospf_timeval_dump) new function. The guts of
97 ospf_timer_dump, but made to be more dynamic in printing out
98 the relative timeval, sliding the precision printed out
99 according to the value.
100 (ospf_timer_dump) guts moved to ospf_timeval_dump.
101 * ospf_dump.h: export ospf_timeval_dump.
102 * ospf_flood.c: (ospf_flood) remove gettimeofday, use
103 the libzebra exported recent_time instead, as it's not
104 terribly critical to have time exactly right - the dropped
105 LSA will be retransmited to us if we don't ACK it.
106 * ospf_packet.c: (ospf_ls_upd_timer) Ditto, but here we're
107 not transmitting, just putting LSA back on update transmit list.
108 * ospfd.h: delay and holdtimes should be unsigned.
109 Add spf_max_holdtime and spf_hold_multiplier.
110 Update default defines for delay and hold time to be in msec.
111 (struct ospf) change the SPF timestamp to a struct timeval.
112 Remove ospf_timers_spf_(un)?set.
113 * ospfd.c: (ospf_timers_spf_{set,unset}) removed.
114 (ospf_new) initialise spf_max_holdtime and spf_hold_multiplier
115 * ospf_spf.c: (ospf_spf_calculate) SPF timestamp is a timeval
116 now, update with gettimeofday.
117 (ospf_spf_calculate_schedule) Change SPF timers to millisecond
118 resolution.
119 Make the holdtime be adaptive, with a linear increase in
120 holdtime ever consecutive SPF run which occurs within holdtime
121 of previous SPF, bounded by spf_max_holdtime.
122 * ospf_vty.c: Update spf timers commands.
123 (ospf_timers_spf_set) trivial helper.
124 (ospf_timers_throttle_spf_cmd) new command to set SPF delay,
125 initial hold and max hold times with millisecond resolution.
126 (ospf_timers_spf_cmd) Deprecated. Accept the old values,
127 convert to msec, truncate to new limits.
128 (no_ospf_timers_throttle_spf_cmd) set timers to defaults.
129 (no_ospf_timers_spf_cmd) deprecated form, same as previous.
130 (show_ip_ospf_cmd) Display SPF parameters and times.
131 (show_ip_ospf_neighbour_header) Centralise the 'sh ip os ne'
132 header.
133 (show_ip_ospf_neighbor_sub) Fix the field widths. Get rid of
134 the multiple spaces which were making the lines even longer.
135 (show_ip_ospf_neighbor_cmd) Use show_ip_ospf_neighbour_header
136 (show_ip_ospf_neighbor_all_cmd) ditto and fix the field
137 widths for NBMA neighbours.
138 (show_ip_ospf_neighbor_int) Use header function.
139 (show_ip_ospf_nbr_nbma_detail_sub) use sizeof for timebuf,
140 local array - safer.
141 (show_ip_ospf_neighbor_detail_sub) ditto
142 (ospf_vty_init) install the new SPF throttle timer commands.
143
1442005-10-21 Paul Jakma <paul.jakma@sun.com>
145
paulf9ad9372005-10-21 00:45:17 +0000146 * (general) OSPF fast, sub-second hello and 1s dead-interval
147 support.
148 * ospf_dump.c: (ospf_timer_dump) Print out milliseconds too.
149 Callers typically specify a length of 9, so most see
150 millisecs unless they specify the additional length.
151 * ospf_interface.h: (struct ospf_interface) new interface param,
152 fast_hello.
153 * ospf_interface.c: (ospf_if_table_lookup) add brackets,
154 gcc warning fix.
155 (ospf_new_if_params) Initialise fast_hello param.
156 (ospf_free_if_params) Check whether fast_hello is configured.
157 (ospf_if_new_hook) set fast_hello to default.
158 * ospf_ism.h: Wrap OSPF_ISM_TIMER_ON inside do {} while (0) to
159 prevent funny side-effects from its if statement when this
160 macro is used conditionally by other macros.
161 (OSPF_ISM_TIMER_MSEC_ON) new macro, set in milliseconds.
162 (OSPF_HELLO_TIMER_ON) new macro to set hello timer according
163 to whether fast_hello is set.
164 * ospf_ism.c: Update all setting of the hello timer to use
165 either OSPF_ISM_TIMER_MSEC_ON or OSPF_HELLO_TIMER_ON. The
166 former is used when hello is to be sent immediately.
167 * ospf_nsm.c: ditto
168 * ospf_packet.c: (ospf_hello) hello-interval is not checked
169 for mismatch if fast_hello is set.
170 (ospf_read) Annoying nit, fix "no ospf_interface" to be debug
171 rather than a warning, as it can be perfectly normal to
172 receive packets when logical subnets are used.
173 (ospf_make_hello) Set hello-interval to 0 if fast-hellos are
174 configured.
175 * ospf_vty.c: (ospf_auto_cost_reference_bandwidth) annoying
176 nit, don't vty_out if this command is given, it gets tired
177 quick.
178 (show_ip_ospf_interface_sub) Print the hello-interval
179 according to whether fast-hello is set or not.
180 Print the extra 5 millisec characters from (ospf_timer_dump)
181 if fast-hello is configured.
182 (ospf_vty_dead_interval_set) new function, common to all
183 forms of dead-interval command, to set dead-interval and
184 fast-hello correctly. If a dead-interval is given, unset
185 fast-hello, else if a hello-multiplier is set, set
186 dead-interval to 1 and fast-hello to given multiplier.
187 (ip_ospf_dead_interval_addr_cmd) use
188 ospf_vty_dead_interval_set().
189 (ip_ospf_dead_interval_minimal_addr_cmd) ditto.
190 (no_ip_ospf_dead_interval) Unset fast-hello.
191 (no_ip_ospf_hello_interval) Bug-fix, unset of hello-interval
192 should set it to OSPF_HELLO_INTERVAL_DEFAULT, not
193 OSPF_ROUTER_DEAD_INTERVAL_DEFAULT.
194 (config_write_interface) Write out fast-hello.
195 (ospf_config_write) Write a comment about
196 "auto-cost reference-bandwidth" having to be equal on all
197 routers. Hopefully just as noticeable as old practice of
198 writing to vty, but less annoying.
199 (ospf_vty_if_init) install the two new dead-interval
200 commands.
201 * ospfd.h: Add defines for OSPF_ROUTER_DEAD_INTERVAL_MINIMAL
202 and OSPF_FAST_HELLO_DEFAULT.
203
pauleb3da6d2005-10-18 04:20:33 +00002042005-10-18 Paul Jakma <paul.jakma@sun.com>
205
206 * (general) SPF memory management cleanup and fix for rare
207 double-free bug.
208 * ospf_spf.h: (struct vertex_parent) New struct to hold parent
209 specific data, eg the backlink and the parent vertex pointer,
210 and point to the appropriate general struct vertex_nexthop.
211 (struct vertex_nexthop) remove parent vertex pointer, so
212 this struct can be shared across vertices.
213 (struct vertex) rename list child to list children. Remove
214 list of nexthops, replace with list of vertex_parents.
215 * ospf_spf.c: (update_stat) trivial, remove cast from void *.
216 (vertex_nexthop_new) remove init of parent - field is gone
217 from struct vertex_nexthop.
218 (ospf_canonical_nexthops_free) Remove the canonical
219 vertex_nexthop memory objects. These are the vertex_nexthops
220 attached to the first level of router vertices from the root.
221 (vertex_parent_new) new function, create a vertex_parent.
222 (vertex_parent_free) ditto, but free it.
223 (ospf_vertex_new) Update to match changes to struct vertex.
224 (ospf_vertex_free) Recursively free a struct vertex and its
225 children. The parent list is used as a reference count.
226 vertex_nexthops must be free seperately, if required.
227 (ospf_vertex_dump) update to match struct vertex changes.
228 Print out backlink of parents too.
229 (ospf_vertex_add_parent) ditto.
230 (ospf_lsa_has_link) update comment.
231 (ospf_nexthop_add_unique) removed, not needed anymore.
232 (ospf_nexthop_merge) ditto.
233 (ospf_spf_consider_nexthop) renamed to ospf_spf_add_parent.
234 Simplified to just create vertex_parent and add it.
235 (ospf_spf_flush_parents) new function, flush out the parent
236 list.
237 (ospf_nexthop_calculation) Take the relevant route_lsa_link
238 as an argument, which simplifies things and removes the need
239 for the hack in ospf_nexthop_add_unique - ospf_spf_next
240 already knew exactly which link the cost calculated was for.
241 Update to match struct vertex changes too.
242 (ospf_spf_next) Don't create a vertex for W unnecessarily, if
243 it's there's a vertex already created for W, use it, and
244 hence there's no need to free it either.
245 Update some manipulation/comparisons of distance to match.
246 Flush the parent list if a lower cost path is found.
247 (ospf_spf_route_free) unused, removed.
248 (ospf_spf_dump) match the struct vertex changes, and dump the
249 ifname if possible.
250 (ospf_spf_calculate) At end of SPF, free the canonical nexthops
251 and call ospf_vertex_free on the root vertex to free the
252 entire tree.
253 * ospf_interface.c: (ospf_vl_set_params) match struct vertex
254 changes.
255 * ospf_route.c: (ospf_intra_route_add) ditto
256 (ospf_route_copy_nexthops_from_vertex) ditto
257
paul36238142005-10-11 04:12:54 +00002582005-10-11 Paul Jakma <paul.jakma@sun.com>
259
260 * ospf_api.c: sign warnings.
261 * ospf_apiserver.c: sign warning and convert all the struct
262 in_addr initialisations so as not to make assumptions about
263 how this struct is organised, initialise the s_addr member
264 explicitely.
265 * ospf_packet.c: Add const qualifier to auth_key.
266
vincent77df1f72005-10-06 07:46:22 +00002672005-10-06 Alain Ritoux <alain.ritoux@6wind.com>
268
269 * ospf_snmp.c: Avoid mixing interface and ospf_interface objects
270 which now allows snmpwalk to work with ospfIfTable and
271 also with ospfIfMetricTable
272
ajsf52d13c2005-10-01 17:38:06 +00002732005-10-01 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
274
275 * ospf_dump.c: Remove local hard-coded table ospf_redistributed_proto.
276 (ospf_redist_string) New function implemented using new library
277 function zebra_route_string(). Note that there are a few differences
278 in the output that will result: the new function returns strings
279 that are lower-case, whereas the old table was mixed case. Also,
280 the old table mapped ZEBRA_ROUTE_OSPF6 to "OSPFv3", whereas the
281 new function returns "ospf6".
282 * ospfd.h: Remove extern struct message ospf_redistributed_proto[],
283 and add extern const char *ospf_redist_string(u_int route_type)
284 instead.
285 * ospf_asbr.c: (ospf_external_info_add) In two messages, use
286 ospf_redist_string instead of LOOKUP(ospf_redistributed_proto).
287 * ospf_vty.c: Remove local hard-coded table distribute_str.
288 (config_write_ospf_redistribute,config_write_ospf_distribute): Use
289 new library function zebra_route_string() instead of distribute_str[].
290 * ospf_zebra.c: (ospf_redistribute_set,ospf_redistribute_unset,
291 ospf_redistribute_default_set,ospf_redistribute_check)
292 In debug messages, use ospf_redist_string() instead of
293 LOOKUP(ospf_redistributed_proto).
294
jardin6638c1a2005-10-01 00:08:54 +00002952005-09-30 Vincent Jardin <vincent.jardin@6wind.com>
296
297 * ospf_dump.c, ospf_ia.c, ospf_spf.c, ospf_ase.c:
298 remove unused DEBUG
299
vincentba682532005-09-29 13:52:57 +00003002005-09-29 Alain Ritoux <alain.ritoux@6wind.com>
301
vincent5e4914c2005-09-29 16:34:30 +0000302 * ospf_ism.c: generate SNMP traps on Interface state change
303 * ospf_nsm.c: generate SNMP traps on Neighbour state change
304 * ospf_snmp.[ch]: support for SNMP traps for interface and neighbours.
305
3062005-09-29 Alain Ritoux <alain.ritoux@6wind.com>
307
vincentba682532005-09-29 13:52:57 +0000308 * ospf_vty.c: forece default route LSA to be re_issued whenever
309 cost is changed ( [no] ip ospf area XXX default-cost YYY)
310 Support ignore-mtu option
311 * ospfd.h: define OSPF_MTU_IGNORE_DEFAULT
312 * ospf_packet.c: support ignore-mtu option
313 * ospf_interface.h: field added for skipping MTU check
314 * ospf_interface.c: fix memory leak in ospf_crypt_key_delete()
315 Set mtu_ignore field to default value
316 * ospf_abr.[ch]: export ospf_abr_announce_network_to_area()
317 * ospf_ism.h: add MACRO to convert internal ISM status into SNMP
318 correct values
319 * ospf_snmp.c: add sanity check on LSA type in lsdb_lookup_next()
320 convert OSPFIFSTATE internal status into SNMP values
321
vincentc1a03d42005-09-28 15:47:44 +00003222005-09-28 Alain Ritoux <alain.ritoux@6wind.com>
323
324 * ospf_packet.c: use new md5 API
325
ajs5339cfd2005-09-19 13:28:05 +00003262005-09-19 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
327
328 * ospf_lsa.h: (ospf_external_lsa_flush) Comment out the 5th argument
329 (nexthop) since it is not used in the function (except inside
330 some commented-out code).
331 * ospf_lsa.c: (ospf_external_lsa_flush,ospf_external_lsa_refresh)
332 Comment out the 5th argument to ospf_external_lsa_flush.
333 * ospf_asbr.c: (ospf_redistribute_withdraw) Comment out 5th arg
334 to ospf_external_lsa_flush.
335 * ospf_vty.c: (no_ospf_default_information_originate) Eliminate 5th
336 uninitialized nexthop arg to ospf_external_lsa_flush.
337 * ospf_zebra.c: (ospf_zebra_read_ipv4) Comment out 5th arg
338 to ospf_external_lsa_flush.
339 * ospfd.c: (ospf_network_set) Comment out 5th arg
340 to ospf_external_lsa_flush.
341
ajse6a0bf92005-09-17 18:53:38 +00003422005-09-17 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
343
344 * ospf_opaque.c:
345 (ospf_opaque_lsa_refresh_schedule,ospf_opaque_lsa_flush_schedule)
346 No need to call ospf_lookup(), just use lsa0->area->ospf instead.
347
hassobb5b7552005-08-21 20:01:15 +00003482005-08-21 Hasso Tepper <hasso at quagga.net>
349
350 * ospf_vty.c: Make "show ip ospf neighbor xxx" commands work.
351 Interface should be specified by name now.
352
hasso54bedb52005-08-17 13:31:47 +00003532005-08-17 Hasso Tepper <hasso at quagga.net>
354
355 * ospf_vty.c: Check carefully if interface exists before trying to
356 print info about it.
357
hasso01018ce2005-08-05 07:40:15 +00003582005-08-05 Hasso Tepper <hasso at quagga.net>
359
360 * ospf_zebra.c: Don't assert/stop before type == ZEBRA_ROUTE_MAX if
361 dealing with routemaps. There is ospf->route_map[ZEBRA_ROUTE_MAX]
362 for default-information.
363
paulc8987752005-07-26 06:07:22 +00003642005-07-26 Paul Jakma <paul.jakma@sun.com>
365
366 * ospf_abr.c: (ospf_abr_announce_network_to_area) SET_FLAG
367 should be on lsa not old, which may be freed for one thing,
368 obviously.
369
pauld57834f2005-07-12 20:04:22 +00003702005-07-12 Paul Jakma <paul.jakma@sun.com>
371
372 * ospfd.h: add OSPF_ABR_DEFAULT for convenience, make
373 OSPF_ABR_CISCO be the default ABR type.
374 * ospfd.c: (ospf_new) initialise abr_type to OSPF_ABR_DEFAULT
375 * ospf_vty.c: (no_ospf_abr_type_cmd) add standard as a negatable
376 abr_type. default abr_type should be OSPF_ABR_DEFAULT.
377 (ospf_config_write) test whether default abr_type against
378 OSPF_ABR_DEFAULT, rather than any specific ABR_TYPE.
379
hasso8469bd72005-06-20 20:50:10 +00003802005-06-20 Hasso Tepper <hasso at quagga.net>
hassof4833e92005-06-20 20:42:26 +0000381
382 * ospf_nsm.c: Make database exchange for NSSA database work.
383
paul7461d452005-06-13 13:57:16 +00003842005-06-13 Paul Jakma <paul.jakma@sun.com>
385
386 * ospf_spf.c: Try get more information on a SEGV under
387 ospf_spf_vertex_add_parent.
388 (ospf_vertex_free) NULL out the child and nexthop lists
389 (ospf_vertex_add_parent) nexthop and child can not be NULL
390 vertex_nexthop's parent->child list can not be NULL
391 (ospf_spf_next) w and cw are per-loop iteration variables, move
392 declarations into loop body.
393
hasso1ddd7292005-06-07 19:54:04 +00003942005-06-07 Hasso Tepper <hasso at quagga.net>
395
396 * ospf_apiserver.c: Fix obvious error in notifying clients about ISM
397 changes - oi->ifp->status doesn't give to us info about ISM,
398 oi->state does.
399
paul7e440862005-06-01 11:20:51 +00004002005-06-01 Akihiro Mizutani <mizutani@net-chef.net>
401
402 * ospf_ism.c (ospf_elect_bdr/ospf_elect_dr): Fix DR election bug.
403
paul500e4182005-05-26 17:11:13 +00004042005-05-26 Paul Jakma <paul.jakma@sun.com>
405
406 * ospf_abr.c: (ospf_abr_update_aggregate) Fix comment, cost bug itself
407 had been fixed long ago by Sowmini.
408
paula3387a42005-05-18 23:29:57 +00004092005-05-19 Paul Jakma <paul.jakma@sun.com>
410
411 * ospf_interface.c: (ospf_if_table_lookup) Fix a serious bug
412 a less serious one.
413 1: this function is supposed to lookup
414 entries in the oifs ospf_interface route_table and return either
415 an existing oi or NULL to indicate not found, its caller depends
416 on this, yet this function uses route_node_get which /always/
417 returns a route_node - one is created if none exists. Use
418 route_node_lookup instead. This should fix root cause of the
419 reports of the (ospf_add_to_if) assert being hit.
420 2: oi's are inserted into this table with prefixlength set to
421 /32 (indeed, it should be a hash table, not a route_table),
422 however prefixlength to lookup was not changed, if no valid entry
423 can be inserted other than /32, then nothng but /32 should be
424 looked up. This possibly only worked by fluke..
425 Fix confirmed by 2 reporters (one list, one IRC), definitely a
426 backport candidate once it has been incubated in HEAD for a while.
427 Thanks to Patrick Friedel and Ivan Warren for testing.
428
paul69310a62005-05-11 18:09:59 +00004292005-05-11 Paul Jakma <paul.jakma@sun.com>
430
431 * (general) Fix memory leaks in opaque AS-scope LSAs, reported and
432 with much debugging done by by scott collins <scollins@agile.tv>.
433 * ospf_lsa.c: (ospf_discard_from_db) dont call
434 ospf_ase_unregister_external_lsa for opaque-lsa's, opaques are
435 never registered with ase in the first place.
436 * ospf_packet.c: (general) Disabuse opaque related code of its
437 tendency to try gather up things into temporary lists.
438 (ospf_ls_upd) remove the temporary lists opaque uses, call
439 opaque functions inline, just like all other types.
440 (ospf_ls_ack) ditto.
441 (ospf_recv_packet) fixup sign warning.
442 * ospf_opaque.c: (general) fix the unneeded use of lists, and
443 untwist some of the logic.
444 (ospf_opaque_self_originated_lsa_received) take a single LSA
445 as argument, not a list of them. Remove the list loop. Logic
446 otherwise unchanged.
447 (ospf_opaque_ls_ack_received) Mostly ditto. But untwist the logic,
448 move the actions up into the switch block, remove the goto's and
449 sanitise the logic near the end a bit.
450 * ospf_opaque.h: Adjust definitions of aforementioned functions
451 in ospf_opaque.c to match.
452
paul42c98192005-05-07 02:22:51 +00004532005-05-07 Yar Tikhiy <yar@comp.chem.msu.su>
454
455 * ospf_network.c: Log ifindex on multicast membership leave/join
456 events.
457
paul4dadc292005-05-06 21:37:42 +00004582005-05-06 Paul Jakma <paul.jakma@sun.com>
459
460 * (general) extern and static qualifiers added.
461 unspecified arguments in definitions fixed, typically they should
462 be 'void'.
463 function casts added for callbacks.
464 Guards added to headers which lacked them.
465 Proper headers included rather than relying on incomplete
466 definitions.
467 gcc noreturn function attribute where appropriate.
468 * ospf_opaque.c: remove the private definition of ospf_lsa's
469 ospf_lsa_refresh_delay.
470 * ospf_lsa.h: export ospf_lsa_refresh_delay
471 * ospf_packet.c: (ospf_make_md5_digest) make *auth_key const,
472 correct thing to do - removes need for the casts later.
473 * ospf_vty.c: Use vty.h's VTY_GET_INTEGER rather than ospf_vty's
474 home-brewed versions, shuts up several warnings.
475 * ospf_vty.h: remove VTY_GET_UINT32. VTY_GET_IPV4_ADDRESS and
476 VTY_GET_IPV4_PREFIX moved to lib/vty.h.
477 * ospf_zebra.c: (ospf_distribute_list_update_timer) hacky
478 overloading of the THREAD_ARG pointer should at least use
479 uintptr_t.
480
paul9e67dc22005-04-15 12:10:17 +00004812005-04-15 Zhipeng Gong <zpgong@cdc.3upsystems.com>
482
483 * ospf_abr.c: (ospf_abr_announce_network_to_area) dont forget
484 to approve LSAs for the case where metric has changed, lsa gets
485 flushed otherwise. (backport candidate).
486
ajs634f9ea2005-04-11 15:51:40 +00004872005-04-11 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
488
489 * ospf_zebra.c (ospf_zebra_add): Call zclient_send_message instead
490 of writen.
491
ajsd2fc8892005-04-02 18:38:43 +00004922005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
493
ajse4319de2005-04-02 23:23:55 +0000494 * ospf_interface.h: (ospf_if_lookup_by_name) Remove declaration of a
495 function that does not exist.
496
4972005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
498
ajs21fefa92005-04-02 23:16:41 +0000499 * ospf_zebra.c: (zebra_interface_if_lookup) Must use
500 if_lookup_by_name_len.
501
5022005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
503
ajsa3491982005-04-02 22:50:38 +0000504 * ospf_interface.c: (ospf_vl_new) Use strnlen to fix call to if_create.
505
5062005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
507
ajsd2fc8892005-04-02 18:38:43 +0000508 * ospf_vty.c: (show_ip_ospf_interface_sub) Show ifindex and interface
509 flags to help with debugging.
510 * ospf_zebra.c: (ospf_interface_delete) After deleting, set ifp->ifindex
511 to IFINDEX_INTERNAL.
512 (zebra_interface_if_lookup) Make function static. Tighten up code.
513
ajsaca72fd2005-03-31 15:18:21 +00005142005-03-31 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
515
516 * ospf_dump.c: (show_debugging_ospf) Show if ospf event debugging
517 is turned on.
518
ajsfd651fa2005-03-29 16:08:16 +00005192005-03-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
520
ajsa608bbf2005-03-29 17:03:49 +0000521 * ospf_zebra.c: (ospf_interface_state_up) If the MTU of an operative
522 interface changes, print a debug message and call ospf_if_reset()
523 to simulate down/up on the interface.
524 * ospf_interface.h: Declare new function ospf_if_reset().
525 * ospf_interface.c: (ospf_if_reset) New function to call ospf_if_down
526 and ospf_if_up for all ospf interfaces attached to an interface.
527
5282005-03-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
529
ajs5dcbdf82005-03-29 16:13:49 +0000530 * ospf_packet.c: (ospf_write_frags) Enhance error message to
531 show MTU. Also make function static.
532 (ospf_write) Enhance error message to show interface name and MTU.
533 Also make function static.
534
5352005-03-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
536
537 * ospf_vty.c: (show_ip_ospf_interface_sub) Display interface MTU and
538 bandwidth; this is useful for debugging problems. Also, the function
539 should be static.
ajsfd651fa2005-03-29 16:08:16 +0000540
hasso1b639042005-03-27 13:32:25 +00005412005-03-27 Hasso Tepper <hasso at quagga.net>
542
543 * ospf_snmp.c: Don't crash in snmp query if ospf instance doesn't
544 exist at all.
545
hasso343f5cc2005-03-25 19:48:40 +00005462005-03-25 Hasso Tepper <hasso at quagga.net>
547
548 * ospfd.h: Include log.h, fixes compile with gcc-4.0.
549
ajs9dbc7972005-03-13 19:27:22 +00005502005-03-13 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
551
552 * ospf_lsa.c: (ospf_lsa_refresh_walker) If the system clock jumps
553 backward, then current time may be less than
554 ospf->lsa_refresher_started. This was causing invalid values
555 for ospf->lsa_refresh_queue.index resulting in infinite loops.
556 Problem fixed by casting the expression to unsigned before taking
557 the modulus.
558
ajs5c333492005-02-23 15:43:01 +00005592005-02-23 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
560
561 * ospfd.h: Add new field struct stream *ibuf to struct ospf.
562 * ospfd.c: (ospf_new) Check return code from ospf_sock_init.
563 Allocate ibuf using stream_new(OSPF_MAX_PACKET_SIZE+1).
564 (ospf_finish) Call stream_free(ospf->ibuf.
565 * ospf_packet.c: (ospf_read) Call stream_reset(ospf->ibuf) and then
566 pass it to ospf_recv_packet for use in receiving the packet
567 (instead of allocating a new stream for each packet received).
568 Eliminate all calls to stream_free(ibuf).
569 (ospf_recv_packet) The struct stream *ibuf is now passed in as
570 an argument. No need to use recvfrom to peek at the packet
571 header (to see how big it is), just use ospf->ibuf which is
572 always large enough (this eliminates a system call to recvfrom).
573 Therefore, no need to allocate a stream just for this packet,
574 and no need to free it when done.
575
hasso462f20d2005-02-23 11:29:02 +00005762005-02-23 Vincenzo Eramo <eramo at infocom.ing.uniroma1.it>
577
578 * ospf_lsa.h: New flag to the LSA structure for the SPF calculation.
579 * ospf_lsdb.h: Export ospf_lsdb_clean_stat() function.
580 * ospf_spf.h: Add link to the LSA stat structure into vertex.
581 * ospf_spf.c: New functions cmp() and update_stat() to manage
582 candidates. Remove ospf_spf_has_vertex(), ospf_vertex_lookup(),
583 ospf_install_candidate() and ospf_spf_register() functions not needed
584 any more. Update ospf_vertex_new(), ospf_spf_next() and
585 ospf_spf_calculate() functions to use pqueue instead of linked list.
586
hassoe40dcce2005-02-21 14:58:42 +00005872005-02-21 Hasso Tepper <hasso at quagga.net>
588
589 * ospf_ase.c: Don't show messages related to the ase calculations if
590 we are not debugging.
591
hasso306541b2005-02-19 17:58:40 +00005922005-02-19 Hasso Tepper <hasso at quagga.net>
593
594 * ospf_api.h: char isn't always signed, but it has to be it here.
595
paulfa81b712005-02-19 01:19:20 +00005962005-02-19 Paul Jakma <paul.jakma@sun.com>
597
598 * ospf_packet.c: (ospf_stream_copy) remove
599 (ospf_packet_dup) use stream_copy instead of ospf_stream_copy
600
ajs038163f2005-02-17 19:55:59 +00006012005-02-17 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
602
603 * ospf_packet.c: (ospf_recv_packet) If there is somehow a runt
604 packet in the queue, it must be discarded. Improve warning messages.
605 Fix scope to static.
606 (ospf_read) Fix bug: should reset the read thread in all cases
607 to make sure we continue to get incoming messages.
608
paul658b03a2005-02-15 10:10:55 +00006092005-02-15 Paul Jakma <paul.jakma@sun.com>
610
611 * ospf_packet.c: (ospf_recv_packet) Fix silly error wrt allocating
612 ibuf. Thanks Andrew.
613
paulbfdc44a2005-02-14 23:48:42 +00006142005-02-14 Paul Jakma <paul.jakma@sun.com>
615
616 * ospf_packet.c: (ospf_recv_packet) use stream_recvmsg.
617
hasso082253f2005-02-11 08:31:54 +00006182005-02-11 Hasso Tepper <hasso at quagga.net>
619
620 * ospf_lsdb.c: Fix sum of checksums calculation.
621
ajs083ee9d2005-02-09 15:35:50 +00006222005-02-09 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
623
624 * ospf_packet.c: (ospf_write) If sendmsg fails, give more info in the
625 error message.
626
ajsba6454e2005-02-08 15:37:30 +00006272005-02-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
628
ajs8cfde372005-02-08 15:59:16 +0000629 * ospf_interface.h: Reduce structure padding by putting new u_char
630 field multicast_memberships in a better spot (grouped with
631 other u_char fields type and state).
632
6332005-02-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
634
ajsba6454e2005-02-08 15:37:30 +0000635 * ospf_interface.h: Improve passive_interface comment. Add new
636 multicast_memberships bitmask to struct ospf_interface to track
637 active multicast subscriptions. Declare new function
638 ospf_if_set_multicast.
639 * ospf_interface.c: (ospf_if_set_multicast) New function to configure
640 multicast memberships properly based on the current
641 multicast_memberships status and the current values of the
642 ospf_interface state, type, and passive_interface status.
643 (ospf_if_up) Remove call to ospf_if_add_allspfrouters (this is
644 now handled by ism_change_state's call to ospf_if_set_multicast).
645 (ospf_if_down) Remove call to ospf_if_drop_allspfrouters (now
646 handled by ism_change_state).
647 * ospf_ism.c: (ospf_dr_election) Remove logic to join or leave
648 the DRouters multicast group (now handled by ism_change_state's call
649 to ospf_if_set_multicast).
650 (ism_change_state) Add call to ospf_if_set_multicast to change
651 multicast memberships as necessary to reflect the new interface state.
652 * ospf_packet.c: (ospf_hello) When a Hello packet is received on a
653 passive interface: 1. Increase the severity of the error message
654 from LOG_INFO to LOG_WARNING; 2. Add more information to the error
655 message (packet destination address and interface address);
656 and 3. If the packet was sent to ospf-all-routers, then try
657 to fix the multicast group memberships.
658 (ospf_read) When a packet is received on an interface whose state
659 is ISM_Down, enhance the warning message to show the packet
660 destination address, and try to update/fix the multicast group
661 memberships if the packet was sent to a multicast address.
662 When a packet is received for ospf-designated-routers, but the
663 current interface state is not DR or BDR, then increase the
664 severity level of the error message from LOG_INFO to LOG_WARNING,
665 and try to fix the multicast group memberships.
666 * ospf_vty.c: (ospf_passive_interface) Call ospf_if_set_multicast for
667 any ospf interface that may have changed from active to passive.
668 (no_ospf_passive_interface) Call ospf_if_set_multicast for
669 any ospf interface that may have changed from passive to active.
670 (show_ip_ospf_interface_sub) Show multicast group memberships.
671
paul3a9eb092005-02-08 11:29:41 +00006722005-02-08 Paul Jakma <paul@dishone.st>
673
674 * ospf_packet.c: (various) Remove unneeded stream_set_putp abuse.
675
ajs847947f2005-02-02 18:38:48 +00006762005-02-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
677
678 * ospf_packet.c: (ospf_read) Fix bug: must check for state ISM_Down,
679 not for event ISM_InterfaceDown. And improve the message by
680 adding the interface flags.
681
ajs0b7d97d2005-01-30 17:24:02 +00006822005-01-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
683
684 * ospf_network.c: (ospf_sock_init) Save errno before calling
685 ospfd_privs.change.
686
ajsc3eab872005-01-29 15:52:07 +00006872005-01-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
688
689 * ospf_packet.c: (ospf_packet_add) If oi->obuf is NULL, print
690 an error message and return.
691 (ospf_read) If the interface state is ISM_InterfaceDown, issue
692 a warning message and ignore the packet.
693
gdt86f1fd92005-01-10 14:20:43 +00006942005-01-10 Greg Troxel <gdt@fnord.ir.bbn.com>
695
696 * ospf_packet.h: Remove commented out definition of
697 OSPF_MAX_PACKET; neither it or the uncommented one are used any more.
698
699 * ospf_packet.c (ospf_make_ls_upd): Leave room for authentication
700 when deciding if an update will fit.
701 (ospf_packet_authspace): Factor out calculation of size required
702 for authentication.
703 (ospf_make_db_desc): Use ospf_max_packet, not OSPF_MAX_PACKET.
704 Don't confuse readers that there is a macro.
705
ajs3dc56b52004-12-30 15:11:19 +00007062004-12-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
707
708 * ospf_network.c: Improve all setsockopt error messages to give detailed
709 information on the arguments.
710
ajsb87f7722004-12-29 20:41:26 +00007112004-12-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
712
ajs17eaa722004-12-29 21:04:48 +0000713 * ospf_packet.c: (ospf_db_desc) Reduce severity of "Negotiation done"
714 messages from LOG_WARNING to LOG_INFO, since this seems to be
715 normal.
716
7172004-12-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
718
ajsb87f7722004-12-29 20:41:26 +0000719 * ospf_packet.c: (ospf_read) Always look up the interface if
720 ospf_recv_packet returns NULL ifp, since some platforms such
721 as Solaris 8 appear to support ifindex retrieval but don't.
722
hasso1d806282004-12-22 09:43:20 +00007232004-12-22 Hasso Tepper <hasso at quagga.net>
724
725 * ospf_dump.c: Show debug configuration in vtysh.
hassoc6b87812004-12-22 13:09:59 +0000726 * ospf_vty.c: Fix "show ip ospf" output. Router can't be elected in
727 any case if it's configured as "translate-never".
hassofe71a972004-12-22 16:16:02 +0000728 * ospf_lsdb.[ch]: New function to calculate sum of checksums.
729 * ospf_vty.c: Bugfix to show really number of AS external LSAs, not
730 number of all LSAs with AS scope, this includes opaque as LSAs as
731 well, show this number separately. Show numbers and sums of
732 checksums for each type of LSAs.
733 * ospf_lsa.c: Calculate checksum before putting LSA into database.
hasso1d806282004-12-22 09:43:20 +0000734
ajsbc18d612004-12-15 15:07:19 +00007352004-12-15 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
736
737 * ospf_interface.h: Declare new function ospf_default_iftype.
738 * ospf_interface.c: (ospf_default_iftype) New function to centralize
739 this logic in one place.
740 * ospf_zebra.c: (ospf_interface_add) Use new function
741 ospf_default_iftype.
742 * ospf_vty.c: (no_ip_ospf_network,config_write_interface) Fix logic
743 by using new function ospf_default_iftype.
744
ajs3aa8d5f2004-12-11 18:00:06 +00007452004-12-11 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
746
747 * ospf_packet.c: (ospf_db_desc) Should be static, not global.
748 (ospf_hello,ospf_db_desc,ospf_ls_upd,ospf_ls_ack) Improve warning
749 messages to include identifying information (e.g. router id).
750 * ospf_nsm.c: (nsm_change_state) Improve info message to include
751 router id and state names.
752
gdt91f3e522004-12-09 14:51:03 +00007532004-12-09 Greg Troxel <gdt@fnord.ir.bbn.com>
754
gdt3fb9de72004-12-09 16:30:04 +0000755 * ospf_apiserver.c (ospf_apiserver_term): Obtain struct
756 ospf_apiserver * from listnode. Remove unused variables. Follows
757 suggestion from Jay Fenlason.
gdt91f3e522004-12-09 14:51:03 +0000758
ajs9b0e25c2004-12-08 19:06:51 +00007592004-12-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
760
761 * *.c: Change level of debug messages to LOG_DEBUG.
762
ajs274a4a42004-12-07 15:39:31 +00007632004-12-07 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
764
765 * ospf_main.c: (main) The 2nd argument to openzlog has been removed.
766
ajs887c44a2004-12-03 16:36:46 +00007672004-12-03 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
768
ajs1210fa62004-12-03 16:43:24 +0000769 * ospf_packet.c: (ospf_db_desc) Reduce priority on a debug message
770 from LOG_NOTICE to LOG_DEBUG.
771
7722004-12-03 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
773
ajs887c44a2004-12-03 16:36:46 +0000774 * ospf_main.c: (sigint) Use zlog_notice for termination message.
775 (main) Issue a startup announcement using zlog_notice.
776
ajsbec595a2004-11-30 22:38:43 +00007772004-11-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
778
779 * ospf_packet.c: (ospf_db_desc_proc) Fix spelling of packet in warning
780 message and in comment.
781 (ospf_db_desc) Warning message that a packet is being discarded
782 should give the router id of the packet source. Fix spelling
783 of packet in two warning messages.
784 (ospf_ls_req) Warning message that a link state request is being
785 discarded should give the router id of the neighbor that sent it.
786
ajs5b85fac2004-11-26 19:36:42 +00007872004-11-26 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
788
789 * ospf_main.c: Remove #include "debug.h" (was not being used, and
790 lib/debug.h has now been deleted).
791
hassoc0652302004-11-25 19:33:48 +00007922004-11-25 Hasso Tepper <hasso at quagga.net>
793
794 * ospf_main.c: Make group to run as configurable.
795
gdt69e13252004-11-15 18:51:15 +00007962004-11-15 Greg Troxel <gdt@fnord.ir.bbn.com>
797
798 * ospf_packet.c (ospf_recv_packet): Assume CMSG_SPACE is present
799 and works (lib/zebra.h provides if OS doesn't).
800
paul788dab12004-11-15 11:48:37 +00008012004-11-15 Paul Jakma <paul@dishone.st>
802
803 * ospf_{apiserver,te}.c: ospf_lsa_free's should be ospf_lsa_unlock.
804
paul05e85fa2004-11-12 10:52:19 +00008052004-11-12 Paul Jakma <paul@dishone.st>
806
807 * ospf_ia.c: (process_summary_lsa) Only an ABR has any reason to
808 ignore stub area summary default. Even so it seems a strange
809 check, add a comment to that effect.
810
paulf3ae74c2004-11-04 20:35:31 +00008112004-11-04 Paul Jakma <paul@dishone.st>
812
813 * ospfd.c: (ospf_network_match_iface) revert to previous network
814 statement match behaviour.
815
paul62d8e962004-11-02 20:26:45 +00008162004-11-02 Paul Jakma <paul@dishone.st>
817
818 * ospf_packet.c: (ospf_write_frags) remove iov arg, msg already points
819 to it. Add convenience pointer to msg->msg_iov[1], and use this,
820 fixing the unfortunate borkenness introduced in moving of this code
821 to a function.
822 (ospf_write) remove iovp and fix up call to previous.
823 (ospf_ls_upd_packet_new) cast size to long int - unfortunately
824 glibc's size_t format modifier is not portable.
825
paul37ccfa32004-10-31 11:24:51 +00008262004-10-31 Paul Jakma <paul@dishone.st>
827
828 * ospf_packet.c: (ospf_write_frags) Add debug output
829 (ospf_write) set type early, so we can pass it to
830 ospf_write_frags.
831 (ospf_ls_upd_packet_new) print size in debug output when too large
832 packet is encountered.
paul64511f32004-10-31 18:01:13 +0000833 * ospf_zebra.c: (ospf_distribute_list_update_timer) Ugly misuse of
834 THREAD_ARG to store an integer, but it should at least use same
835 same type to retrieve the value. Assert value is sane.
paul37ccfa32004-10-31 11:24:51 +0000836
paulac191232004-10-22 12:05:17 +00008372004-10-22 Paul Jakma <paul@dishone.st>
838
839 * ospf_network.c: (ospf_sock_init) call neutral setsock_ifindex()
840 function.
841 * ospf_packet.c: (ospf_read) manually look up ifindex
paul4ccb2c42004-10-22 22:52:33 +0000842 if system could not have returned one, eg openbsd, thanks to Rivo
843 Nurges for highlighting problem and fix.
paul06f953f2004-10-22 17:00:38 +0000844 Change setsockopt_pktinfo to setsockopt_ifindex.
paulac191232004-10-22 12:05:17 +0000845
hasso3fb9cd62004-10-19 19:44:43 +00008462004-10-19 Andrew J. Schorr <aschorr@telemetry-investments.com>
847
848 * ospf_snmp.c: (ospf_snmp_if_update) Fix logic to handle PtP links
849 with dedicated subnets properly.
850 * ospf_lsa.c: (lsa_link_ptop_set) ditto.
851 * ospfd.c: (ospf_network_match_iface) ditto.
852 (ospf_network_run) ditto.
853 * ospf_interface.c: (ospf_if_is_configured) ditto.
854 (ospf_if_lookup_by_prefix) ditto.
855 (ospf_if_lookup_recv_if) ditto.
856 * ospf_vty.c: (show_ip_ospf_interface_sub) Display the peer or
857 broadcast address if present.
858
hassod68614d2004-10-13 09:32:48 +00008592004-10-13 Hasso Tepper <hasso at quagga.net>
860
861 * ospf_main.c: Unbreak compilation with ospfapi disabled.
hassoc75105a2004-10-13 10:33:26 +0000862 * ospf_snmp.c: Remove defaults used to initialize smux connection to
863 snmpd. Connection is initialized only if smux peer is configured.
hassod68614d2004-10-13 09:32:48 +0000864
hassof4d58ce2004-10-12 06:13:54 +00008652004-10-12 Hasso Tepper <hasso at quagga.net>
866
867 * ospf_main.c, ospf_opaque.c: Unbreak ospfclient compilation - move
868 static variable from ospf_main.c into ospf_opaque.c.
869
hassoc3abdb72004-10-11 16:27:03 +00008702004-10-11 Hasso Tepper <hasso at quagga.net>
871
872 * ospf_main.c, ospf_opaque.c: Disable ospfapi init by default. New
873 command line switch to enable it.
874
paul6b333612004-10-11 10:11:25 +00008752004-10-11 Paul Jakma <paul@dishone.st>
876
877 * ospf_dump.c: (ospf_ip_header_dump) Assume header is in host order
878 remove ntohs that should have dissappeared. Take struct ip
879 as argument, caller has to know there's an IP header at start of
880 stream anyway.
881 * ospf_dump.h: update declaration of ospf_ip_header_dump.
882 * ospf_packet.c: (ospf_write) correct call to
883 sockopt_iphdrincl_swab_htosys which was munging the header.
884 (ospf_recv_packet) ip_len is needed for old OpenBSD fixup.
885 (ospf_read) sockopt_iphdrincl_swab_systoh ip header as soon as
886 we have it.
paul6c835672004-10-11 11:00:30 +0000887 * (global) Const char update and signed/unsigned fixes.
888 * (various headers) size defines should be unsigned.
889 * ospf_interface.h: remove duplicated defines, include the
890 authoritative header - though, these defines should probably
891 be moved to a dedicated header, or ospfd.h.
892 * ospf_lsa.h: (struct lsa) ls_seqnum should be unsigned.
893 * ospf_packet.c: (ospf_write) cast result of shift to unsigned.
paul6b333612004-10-11 10:11:25 +0000894
hassoeb1ce602004-10-08 08:17:22 +00008952004-10-08 Hasso Tepper <hasso at quagga.net>
896
897 * *.[c|h]: Fix compiler warnings: make some strings const, signed ->
898 unsigned, remove unused variables etc.
899
gdt54ade992004-10-07 19:38:20 +00009002004-10-07 Greg Troxel <gdt@claude.ir.bbn.com>
901
902 * ospf_apiserver.c (ospf_apiserver_unregister_opaque_type): Don't
903 use of variable names 'node' and 'nextnode' to avoid possible
904 conflict with list macros. Move variable declaration inside for
905 loop after a statement to top of function.
906
paulaa20c6f2004-10-07 14:19:36 +00009072004-10-07 Paul Jakma <paul@dishone.st>
908
909 * ospf_snmp.c: Missed list typedef update
910 * ospf_dump.c: Include sockopt.h for header swab functions.
911
paul18b12c32004-10-05 14:38:29 +00009122004-10-05 Paul Jakma <paul@dishone.st>
913
914 * ospf_packet.c: replace ospf_swap_iph_to... with
915 sockopt_iphdrincl_swab_...
916
hasso18a6dce2004-10-03 18:18:34 +00009172004-10-03 James R. Leu <jleu at mindspring.com>
918
919 * ospf_zebra.c: Read router id related messages from zebra daemon.
920 Schedule router-id update thread if it's changed.
921 * ospfd.c: Remove own router-id selection function. Use router id from
922 zebra daemon if it isn't manually overriden in configuration.
923
paul68defd62004-09-27 07:27:13 +00009242004-09-27 Paul Jakma <paul@dishone.st>
925
paul6a99f832004-09-27 12:56:30 +0000926 * ospf_dump.c: (ospf_ip_header_dump) Use HAVE_IP_HDRINCL_BSD_ORDER
927 Apply to offset too. Print ip_cksum, lets not worry about
928 possible 2.0.37 compile problems.
929 * ospf_packet.c: (ospf_swap_iph_to{n,h}) Use
930 HAVE_IP_HDRINCL_BSD_ORDER.
931 (ospf_recv_packet) ditto.
932 (ospf_write) Fixup iov argument to ospf_write_frags.
933 (struct msghdr).msg_name is caddr_t on most platforms.
paul68defd62004-09-27 07:27:13 +0000934 (ospf_recv_packet) ditto. And msg_flags is not always there
935 memset struct then set fields we care about rather than
936 initialise all fields individually.
937
hassoc9e52be2004-09-26 16:09:34 +00009382004-09-26 Hasso Tepper <hasso at quagga.net>
939
940 * ospf_abr.c, ospf_dump.c, ospf_lsa.c, ospf_packet.c, ospf_vty.c,
941 ospf_zebra.c: Fix compiler warnings.
942
paul87d6f872004-09-24 08:01:38 +00009432004-09-24 Paul Jakma <paul@dishone.st>
944
945 * ospf_apiserver.{c,h}: lists typedef removal cleanup.
946 update some list loops to LIST_LOOP. some miscellaneous indent
947 fixups.
948 (ospf_apiserver_unregister_opaque_type) fix listnode_delete of
949 referenced node in loop.
paul1603c062004-09-24 08:23:24 +0000950 (ospf_apiserver_term) loops calling ospf_apiserver_free, which
951 deletes referenced nodes from apiserver_list, fixed.
paul87d6f872004-09-24 08:01:38 +0000952 * ospf_interface.h: lists typedef removal cleanup.
953 * ospf_opaque.{c,h}: lists typedef removal cleanup. update some list
954 loops to LIST_LOOP. miscellaneous style and indent fixups.
955 * ospf_te.{c,h}: ditto
956 * ospf_packet.c: lists typedef removal cleanup.
paula2570682004-09-24 08:09:57 +0000957 (ospf_write) ifdef fragmentation support. move actual
958 fragmentation out to a new, similarly ifdefed, function.
959 (ospf_write_frags) fragmented write support, moved from previous.
paul87d6f872004-09-24 08:01:38 +0000960
hasso52dc7ee2004-09-23 19:18:23 +00009612004-09-23 Hasso Tepper <hasso at quagga.net>
962
963 * *.[c|h]: list -> struct list *, listnode -> struct listnode *.
964
paul68b73392004-09-12 14:21:37 +00009652004-09-12 Paul Jakma <paul@dishone.st>
966
967 * ospf_packet.c: Fix bugzilla #107
968 (ospf_packet_max) get rid of the magic 88 constant
969 (ospf_swab_iph_ton) new function. set ip header to network order,
970 taking BSDisms into account.
971 (ospf_swab_iph_toh) the inverse.
972 (ospf_write) Add support for IP fragmentation, will only work on
973 linux though, other kernels make it impossible. get rid of the
974 magic 4 constant.
975 (ospf_make_ls_upd) Bound check to end of stream, not to
976 interface mtu.
977 (ospf_ls_upd_packet_new) New function, allocate upd packet
978 taking oversized LSAs into account.
979 (ospf_ls_upd_queue_send) use ospf_ls_upd_packet_new to allocate,
980 rather than statically allocating mtu sized packet buffer, which
981 actually was wrong - it didnt take ip header into account, which
982 should not be included in packet buffer.
983 (ospf_ls_upd_send_queue_event) minor tweaks and remove
984 TODO comment.
985
gdt630e4802004-08-31 17:28:41 +00009862004-08-31 David Wiggins <dwiggins@bbn.com>
987
988 * ospf_spf.c (ospf_spf_calculate): Many more comments and debug
989 print statements. New function ospf_vertex_dump used in debugging.
990
9912004-08-31 David Wiggins <dwiggins@bbn.com>
992
993 * ospf_spf.h (struct vertex): Comments for flags and structure members.
994
9952004-08-31 David Wiggins <dwiggins@bbn.com>
996
997 * ospf_route.c: When finding an alternate route, log cost as well.
998
9992004-08-31 David Wiggins <dwiggins@bbn.com>
1000
1001 * ospf_interface.c (ospf_lookup_if_params): Initialize af in
1002 struct prefix allocated on stack.
1003
10042004-08-31 David Wiggins <dwiggins@bbn.com>
1005
1006 * ospf_packet.c (ospf_ls_ack_send_delayed): In p2mp mode, send
1007 acks to AllSPFRouters, rather than All-DR.
1008
hasso7b901432004-08-31 13:37:42 +000010092004-08-27 Hasso Tepper <hasso at quagga.net>
1010
1011 * ospf_vty.c: Don't print ospf network type under interface only
1012 if interface is in broadcast mode and interface type really is
1013 broadcast. Fixes Bugzilla #108.
1014
gdtd7d93992004-08-27 12:03:42 +000010152004-08-27 David Wiggins <dwiggins@bbn.com>
1016
1017 * ospf_spf.c (ospf_nexthop_calculation): Initialize address family
1018 in on-stack struct prefix_ipv4. Fixes point-to-multipoint SPF
1019 calculation.
1020
gdtd0deca62004-08-26 13:14:07 +000010212004-08-26 Greg Troxel <gdt@fnord.ir.bbn.com>
1022
1023 * ospf_packet.c (ospf_recv_packet): adjust size declaration of
gdtd7d93992004-08-27 12:03:42 +00001024 buffer used to get interface index so that it compiles on other
1025 than Linux and includes the required alignment space. Probably
1026 this was only working on sparc/sparc64 because most of
1027 sockaddr_dl was not being written.
gdtd0deca62004-08-26 13:14:07 +00001028
paul863082d2004-08-19 04:43:43 +000010292004-08-19 Paul Jakma <paul@dishone.st>
1030
1031 * ospf_packet.c: update to match sockopt renames.
1032
paul75ee0b82004-08-05 09:10:31 +000010332004-08-04 Paul Jakma <paul@dishone.st>
1034
1035 * ospf_spf.c: (ospf_spf_consider_nexthop) Add comment about issue.
1036 Compare only against list head - all nexthops must be same cost
1037 anyway, fixes a reference-listnode-after-delete bug noted by
1038 Kir Kostuchenko.
1039 (ospf_nexthop_calculation) Use ospf_spf_consider_nexthop for all
1040 candidates attached to root.
1041
paul36c64ef2004-07-27 11:19:11 +000010422004-07-27 Paul Jakma <paul@dishone.st>
1043
paul48fe13b2004-07-27 17:40:44 +00001044 * ospf_packet.c: (ospf_ls_upd_send_queue_event) fix thinko from
1045 last fix for ospfd wedging due to oversize LSAs: dont list loop on
1046 ospf_ls_upd_queue_send() - guaranteed segfault.
1047
10482004-07-27 Paul Jakma <paul@dishone.st>
1049
paul36c64ef2004-07-27 11:19:11 +00001050 * ospf_opaque.c: (ospf_opaque_lsa_flush_schedule) do not NULL out
1051 the LSA as then free_opaque_info_per_id() can never unlock (and
1052 free) the LSA. Reported by Gunnar Stigen.
1053
paul2dd8bb42004-07-23 15:13:48 +000010542004-07-23 Paul Jakma <paul@dishone.st>
1055
1056 * ospf_network.c: Replace PKTINFO/RECVIF with call to
1057 setsockopt_pktinfo
1058 * ospf_packet.c: Use getsockopt_pktinfo_ifindex and
1059 SOPT_SIZE_CMSG_PKTINFO_IPV4.
1060
paul59ea14c2004-07-14 20:50:36 +000010612004-07-14 Paul Jakma <paul@dishone.st>
1062
1063 * ospf_packet.c: (ospf_ls_upd_send_queue_event) Partial fix for
1064 problem reported by Peter Frost amongst others, where function
1065 will spin indefinitely if update list contains LSAs greater than
1066 MTU-headers or other condition leading to update list never being
1067 cleared. Problem of what to do with these LSAs remains.
1068 (ospf_make_ls_upd) add comment about large LSA problem,
1069 indentation cleanup.
1070
gdtb2c1b282004-07-01 12:35:36 +000010712004-07-01 Greg Troxel <gdt@fnord.ir.bbn.com>
1072
1073 * Makefile.am (lib_LTLIBRARIES): make libospf shared
1074
gdt87efd642004-06-30 17:36:11 +000010752004-06-30 Greg Troxel <gdt@poblano.ir.bbn.com>
1076
1077 * Makefile.am: Add shlib support.
1078
hassobeebba72004-06-20 21:00:27 +000010792004-06-10 Hasso Tepper <hasso@estpak.ee>
1080
1081 * *: Removed ifdefs HAVE_NSSA.
1082
paul553ff112004-06-06 09:41:00 +000010832004-06-06 Paul Jakma <paul@dishone.st>
1084
1085 * ospf_dump.c,ospf_lsa.c: Fix typos of merge of previous.
1086 ospf_flood.c: (ospf_process_self_originated_lsa) fix zlog format
1087
paul0c2be262004-05-31 14:16:54 +000010882004-05-31 Sagun Shakya <sagun.shakya@sun.com>
1089
1090 * ospf_dump.c: (ospf_lsa_header_dump) LOOKUP can return null if
1091 index is out of range.
1092 ospf_flood.c: endianness fix
1093 ospf_lsa.c: Missing ntohl's on (struct lsa *)->data->ls_seqnum
1094 in various places.
1095
hassodd669bb2004-05-10 07:43:59 +000010962004-05-10 Hasso Tepper <hasso@estpak.ee>
1097
1098 * ospf_zebra.c, ospfd.c: Move ospf_prefix_list_update() function
1099 to ospf_zebra.c from ospfd.c and add redistribution updates if
1100 route-map is used in redistribution.
1101 * ospf_main.c: Remove now useless call to ospf_init().
1102
paul0a589352004-05-08 11:48:26 +000011032004-05-08 Paul Jakma <paul@dishone.st>
1104
1105 * ospf_zebra.c: Sync with lib/zclient changes
1106
pauld3f0d622004-05-05 15:27:15 +000011072004-05-05 Paul Jakma <paul@dishone.st>
1108
paul5bd41892004-05-05 17:29:24 +00001109 * ospf_network.c: (ospf_sock_init) Check whether IP_HDRINCL is
1110 defined. Warn at compile and runtime. Use
1111 IPTOS_PREC_INTERNETCONTROL otherwise.
pauld3f0d622004-05-05 15:27:15 +00001112 * ospf_packet.c: (ospf_associate_packet_vl) cleanup, move
1113 some of the checks up to ospf_read, return either a
1114 virtual link oi, or NULL.
1115 (ospf_read) Cleanup, make it responsible for checks. Remove
1116 the nbr lookup - moved to ospf_neighbor. Adjust all nbr
1117 lookups to use new wrappers exported by ospf_neighbor.
1118 * ospf_neighbor.h: Add ospf_neigbour_get and ospf_nbr_lookup.
1119 * ospf_neighbor.c: (ospf_neigbour_get) Index ospf_interface
1120 neighbour table by router-id for virtual-link ospf_interfaces,
1121 not by peer_addr (which breaks for asymmetric vlinks)
1122 (ospf_nbr_lookup) add a wrapper for nbr lookups to deal with
1123 above.
paulcd59da62004-05-05 17:26:55 +00001124 * ospf_interface.c: (ospf_vl_set_params) Catch changes of interface
1125 address for either end of a virtual-link, and hence potential cost
1126 changes.
1127
hassoa0a39762004-04-23 08:51:10 +000011282004-04-22 Hasso Tepper <hasso@estpak.ee>
1129
1130 * ospf_zebra.c: Don't ignore reject/bh routes, it's the only way
1131 to "summarize" routes in ASBR at the moment.
1132
hasso8585d4e2004-04-20 17:25:12 +000011332004-04-20 Hasso Tepper <hasso@estpak.ee>
1134
1135 * ospfd.c: Unset NP flag if area is going to be normal or stub.
1136 Fixes UNH OSPF_NSSA.1.2a comment.
1137 * ospf_abr.c: Originate default into stub/nssa area even if
1138 summaries are disabled.
1139 * ospf_zebra.c: Don't attempt to redistribute 127.0.0.0/8.
1140
hassoc266ac72004-04-19 17:31:00 +000011412004-04-19 Hasso Tepper <hasso@estpak.ee>
1142
1143 * ospf_vty.c: Don't warn that export- and import-list can't be
1144 configured to backbone area if they are applied and are working
1145 fine.
1146
hasso128d31d2004-04-04 12:52:33 +000011472004-02-19 Sowmini Varadhan <sowmini.varadhan@sun.com>
1148
1149 * ospf_packet.c: Don't drop packets in Solaris x86.
1150 [quagga-dev 1005].
1151
hasso0d85b992004-03-18 19:18:33 +000011522004-03-18 Amir Guindehi <amir@datacore.ch>
1153
1154 * ospf_opaque.c: Attempt to correct the incorrect behavior of
1155 Quagga's ospfd in the special situation that a node's opaque
1156 capability has changed as "ON -> OFF -> ON". [quagga-dev 843].
1157
paul7f352b82004-02-19 19:37:47 +000011582004-02-19 Sowmini Varadhan <sowmini.varadhan@sun.com>
1159
1160 * ospf_abr.c: (ospf_abr_update_aggregate) UNH 3.12b,c, address range
1161 should be configured with the highest cost path within the range,
1162 not lowest.
1163
paul940b01a2004-02-17 20:07:30 +000011642004-02-17 Paul Jakma <paul@dishone.st>
1165
1166 * ospf_zebra.c: (ospf_interface_delete) Do not delete the interface
1167 params, nor the interface structure, if an interface delete
1168 message is received from zebra.
1169 * ospf_interface.c: (ospf_if_delete_hook) Delete the interface
1170 params and interface, ie that which was previously removed in
1171 (ospf_interface_delete) above.
1172
hasso2db3d052004-02-11 21:52:13 +000011732004-02-11 Hasso Tepper <hasso@estpak.ee>
1174 * ospf_interface.c, ospf_zebra.c: Don't attempt to read path->oi->ifp
1175 if oi doesn't exist any more.
1176
hassocb05eb22004-02-11 21:10:19 +000011772004-02-11 Vadim Suraev <vadim.suraev@terayon.com>
1178 * ospf_packet.c (ospf_ls_upd): Router should flush received network
1179 LSA if it was originated with older router-id ([zebra 14710] #6).
1180
11812003-12-08 Mattias Amnefelt <mattiasa@kth.se>
paul239aecc2003-12-08 10:34:54 +00001182
1183 * ospf_packet.c: (ospf_recv_packet) OpenBSD now leaves iph.ip_len
1184 network byte order.
1185
gdt8f40e892003-12-05 14:01:43 +000011862003-12-05 Greg Troxel <gdt@poblano.ir.bbn.com>
1187
1188 * ospfd.c (ospf_network_match_iface): Rewrite code for clarity
1189 while trying not to change semantics. Add ifdefed-out code to
1190 avoid matching ppp interfaces whose destination address does not
1191 also match the prefix under consideration, to help out people with
1192 problems due to as-yet-unfixed bugs with p2p interfaces coming and
1193 going.
1194
paul736d3442003-07-24 23:22:57 +000011952003-07-25 kamatchi soundaram <kamatchi@tdd.sj.nec.com>
1196
1197 * ospf_packet.c (ospf_ls_upd_send_queue_event): get next route
1198 node in body of the loop to avoid chance that route node
1199 is unlocked and deleted before the next iteration tries to
1200 get next route node.
1201
paul0a825c72003-05-24 13:48:16 +000012022003-05-24 Kenji Yabuuchi
1203
1204 * ospf_interface.c(ospf_if_lookup_recv_if): Use the most specific
1205 match for interface lookup.
1206
paul551a8972003-05-18 15:22:55 +000012072003-05-18 Hasso Tepper <hasso@estpak.ee>
paul445f1432003-05-16 19:00:31 +00001208
paul551a8972003-05-18 15:22:55 +00001209 * ospf_vty.c: Show NSSA LSA route info in "show ip ospf database"
1210 output
paul445f1432003-05-16 19:00:31 +00001211
pauld7480322003-05-16 17:31:51 +000012122003-05-16 Hasso Tepper <hasso@estpak.ee>
1213
1214 * ospf_lsa.c: Fix handling of NSSA
1215
paul551a8972003-05-18 15:22:55 +000012162003-04-23 Hasso Tepper <hasso@estpak.ee>
1217
1218 * ospf_vty.c: fix "router xxx" node commands in vtysh
1219
paul445f1432003-05-16 19:00:31 +000012202003-04-19 Hasso Tepper <hasso@estpak.ee>
1221
1222 * {ospf_abr,ospfd}.c: area id's DECIMAL -> ADDRESS
1223 * ospf_routemap.c: sync daemon's route-map commands to have same
1224 syntax.
1225
12262003-04-19 Sergey Vyshnevetskiy <serg@vostok.net>
1227
1228 * ospf_packet.c: Add missing param to zlog
1229 * ospf_flood.c: remove unused vars
1230
12312003-04-17 Denis Ovsienko <zebra@pilot.org.ua>
1232
1233 * ospf_interface.c: fix incorrect memset
1234
paul28a13842003-05-16 20:30:37 +000012352003-04-10 Amir Guindehi <amir@datacore.ch>
paul445f1432003-05-16 19:00:31 +00001236
1237 * ospf_lsa.[ch]: opaque LSA fix, use ospf_lookup.
1238
12392003-04-03 David Watson <dwatson@eecs.umich.edu>
1240
1241 * ospf_lsa.c: byte order fix
1242
paul07661cb2003-03-18 00:03:05 +000012432002-03-17 Amir Guindehi <amir@datacore.ch>
1244
1245 * ospf_apiserver.[ch]: Merge Ralph Keller's OSPFAPI support.
1246 * ospf_api.[ch]: Merge Ralph Keller's OSPFAPI support.
1247 * ospfclient: OSPFAPI demonstration client.
1248
12492003-01-23 Masahiko Endo <endo@suri.co.jp>
1250
1251 * ospf_ism.c: NSM event schedule bug fix.
1252
12532002-10-30 Greg Troxel <gdt@ir.bbn.com>
1254
1255 * ospf_packet.c (ospf_make_md5_digest): MD5 length fix.
1256
paul718e3742002-12-13 20:15:29 +000012572002-10-23 endo@suri.co.jp (Masahiko Endo)
1258
1259 * ospf_opaque.c: Update Opaque LSA patch.
1260
12612002-10-23 Ralph Keller <keller@tik.ee.ethz.ch>
1262
1263 * ospf_vty.c (show_ip_ospf_database): Fix CLI parse.
1264
12652002-10-23 Juris Kalnins <juris@mt.lv>
1266
1267 * ospf_interface.c (ospf_if_stream_unset): When write queue
1268 becomes empty stop write timer.
1269
12702002-10-10 Greg Troxel <gdt@ir.bbn.com>
1271
1272 * ospf_packet.c (ospf_check_md5_digest): Change >= to > to make it
1273 conform to RFC.
1274
12752002-07-07 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1276
1277 * zebra-0.93 released.
1278
12792002-06-19 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1280
1281 * ospf_spf.c (ospf_nexthop_calculation): Add NULL set to oi and
1282 check of l2. Reported by: Daniel Drown <dan-zebra@drown.org>
1283 (ospf_lsa_has_link): LSA Length calculation fix. Reported by:
1284 Paul Jakma <paulj@alphyra.ie>.
1285
1286 * ospfd.c (ospf_if_update): Fix nextnode reference bug. Reported
1287 by: juris@mt.lv.
1288
12892002-01-21 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1290
1291 * ospfd.c: Merge [zebra 11445] Masahiko ENDO's Opaque-LSA support.
1292
12932001-08-27 Kunihiro Ishiguro <kunihiro@zebra.org>
1294
1295 * ospf_interface.c (ospf_add_to_if): Use /32 address to register
1296 OSPF interface information.
1297 (ospf_delete_from_if): Likewise.
1298
1299 * ospf_zebra.c (ospf_interface_address_delete): Likewise.
1300
13012001-08-23 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1302
1303 * ospf_zebra.c (ospf_redistribute_unset): When redistribute type
1304 is OSPF, do not unset redistribute flag.
1305
13062001-08-19 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1307
1308 * zebra-0.92a released.
1309
13102001-08-15 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1311
1312 * zebra-0.92 released.
1313
13142001-08-12 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1315
1316 * ospfd.c (ospf_config_write): auto-cost reference-bandwidth
1317 configuration display.
1318
13192001-07-24 David Watson <dwatson@eecs.umich.edu>
1320
1321 * ospf_spf.c (ospf_spf_next): Modify ospf_vertex_add_parent to
1322 check for an existing link before connecting the parent and child.
1323 ospf_nexthop_calculation is also modified to check for duplicate
1324 entries when copying from the parent. Finally, ospf_spf_next
1325 removes duplicates when it merges two equal cost candidates.
1326
13272001-07-23 itojun@iijlab.net
1328
1329 * ospfd.c (show_ip_ospf_neighbor): Check ospf_top before use it
1330 [zebra 8549].
1331
13322001-07-23 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1333
1334 * ospf_packet.c (ospf_write): Remove defined(__OpenBSD__) to make
1335 it work on OpenBSD.
1336
13372001-06-26 Kunihiro Ishiguro <kunihiro@zebra.org>
1338
1339 * ospf_zebra.c (config_write_ospf_default_metric): Display
1340 default-metric configuration.
1341
13422001-06-18 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1343
1344 * ospf_ia.h (OSPF_EXAMINE_SUMMARIES_ALL): Remove old macros.
1345
13462001-05-28 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1347
1348 * ospf_snmp.c (ospfIfEntry): Fix interface lookup bug to avoid
1349 crush.
1350 (ospfIfMetricEntry): Likewise.
1351
13522001-03-18 Kunihiro Ishiguro <kunihiro@zebra.org>
1353
1354 * ospf_packet.c (ospf_read): Fix typo. Reported by: "Jen B
1355 Lin'Kova" <jen@stack.net>.
1356
13572001-03-15 Gleb Natapov <gleb@nbase.co.il>
1358
1359 * ospf_interface.c (ip_ospf_network): Set interface parameter.
1360 (interface_config_write): Add check for OSPF_IFTYPE_LOOPBACK.
1361
1362 * ospf_zebra.c (ospf_interface_add): Set interface parameter.
1363
13642001-02-21 Kunihiro Ishiguro <kunihiro@zebra.org>
1365
1366 * ospf_packet.c (ospf_recv_packet): Solaris also need to add
1367 (iph.ip_hl << 2) to iph.ip_len.
1368
13692001-02-09 Kunihiro Ishiguro <kunihiro@zebra.org>
1370
1371 * ospfd.h (OSPF_LS_REFRESH_TIME): Fix OSPF_LS_REFRESH_TIME value.
1372 Suggested by: David Watson <dwatson@eecs.umich.edu>.
1373
1374 * ospf_zebra.c (zebra_init): Remove zebra node.
1375
1376 * ospfd.c (ospf_area_range_set): Function name is changed from
1377 ospf_ara_range_cmd.
1378 (ospf_area_range_unset): New function which separated from DEFUN.
1379 New commands are added:
1380 "no area A.B.C.D range A.B.C.D/M advertise"
1381 "no area <0-4294967295> range A.B.C.D/M advertise"
1382 "no area A.B.C.D range A.B.C.D/M not-advertise"
1383 "no area <0-4294967295> range A.B.C.D/M not-advertise"
1384
1385 * ospf_lsa.c (ospf_lsa_more_recent): Fix previous change.
1386
13872001-02-08 Matthew Grant <grantma@anathoth.gen.nz>
1388
1389 * ospf_network.c (ospf_if_add_allspfrouters): Use
1390 setsockopt_multicast_ipv4.
1391 (ospf_if_drop_allspfrouters): Likewise.
1392
1393 * ospf_lsa.c (ospf_router_lsa_install): Add rt_recalc flag.
1394 (ospf_network_lsa_install): Likewise.
1395 (ospf_summary_lsa_install): Likewise.
1396 (ospf_summary_asbr_lsa_install): Likewise.
1397 (ospf_external_lsa_install): Likewise.
1398 (ospf_lsa_install): Call ospf_lsa_different to check this LSA is
1399 new one or not.
1400
14012001-02-08 Kunihiro Ishiguro <kunihiro@zebra.org>
1402
1403 * ospf_zebra.c (ospf_interface_delete): Do not free interface
1404 structure when ospfd receive interface delete message to support
1405 pseudo interface.
1406
14072001-02-01 Dick Glasspool <dick@ipinfusion.com>
1408
1409 * ospfd.c (area_range_notadvertise): Change area range "suppress"
1410 command to "not-advertise".
1411
1412 * ospfd.h (OSPF_LS_REFRESH_TIME): Change OSPF_LS_REFRESH_TIME from
1413 1800 to 60.
1414
1415 * ospf_abr.c (ospf_abr_update_aggregate): When update_aggregate is
1416 updating the area-range, the lowest cost is now saved.
1417
1418 * ospf_lsa.c (ospf_lsa_more_recent): Routing to compare sequence
1419 numbers rather than creating overflow during calculation.
1420
14212001-02-01 Kunihiro Ishiguro <kunihiro@zebra.org>
1422
1423 * zebra-0.91 is released.
1424
14252001-01-31 Kunihiro Ishiguro <kunihiro@zebra.org>
1426
1427 * ospf_packet.c (ospf_db_desc_proc): Do not continue process when
1428 NSM_SeqNumberMismatch is scheduled.
1429 (ospf_ls_req): Free ls_upd when return from this function.
1430 (ospf_ls_upd_timer): When update list is empty do not call
1431 ospf_ls_upd_send(). Suggested by: endo@suri.co.jp (Masahiko
1432 Endo).
1433
14342001-01-26 Kunihiro Ishiguro <kunihiro@zebra.org>
1435
1436 * ospf_lsa.c (ospf_maxage_flood): Flood LSA when it reaches
1437 MaxAge. RFC2328 Section 14.
1438 (ospf_maxage_lsa_remover): Call above function during removing
1439 MaxAge LSA.
1440
14412001-01-26 Dick Glasspool <dick@ipinfusion.com>
1442
1443 * ospf_flood.c (ospf_flood_through_as): Function is updated for
1444 NSSA Translations now done at ospf_abr.c with no change in P-bit.
1445
1446 * ospf_lsa.c (ospf_get_nssa_ip): Get 1st IP connection for Forward
1447 Addr.
1448 (ospf_install_flood_nssa): Leave Type-7 LSA at Lock Count = 2.
1449
1450 * ospf_ase.c (ospf_ase_calculate_route): Add debug codes.
1451
1452 * ospf_abr.c (ospf_abr_translate_nssa): Recalculate LSA checksum.
1453
1454 * ospf_packet.h (OSPF_SEND_PACKET_LOOP): Added for test packet.
1455
1456 * ospf_dump.c (ospf_lsa_type_msg): Add OSPF_GROUP_MEMBER_LSA and
1457 OSPF_AS_NSSA_LSA.
1458
1459 * ospfd.c (data_injection): Function to inject LSA. This is
1460 debugging command.
1461
14622001-01-11 Kunihiro Ishiguro <kunihiro@zebra.org>
1463
1464 * ospf_route.c (ospf_route_match_same): Remove function.
1465 (ospf_route_match_same_new): Renamed to ospf_route_match_same.
1466
1467 * ospf_zebra.c (ospf_interface_address_delete): Add check for
1468 oi->address. Suggested by Matthew Grant
1469 <grantma@anathoth.gen.nz>.
1470 (ospf_zebra_add): Remove function.
1471 (ospf_zebra_add_multipath): Rename to ospf_zebra_add.
1472
1473 * ospf_interface.c: Remove HAVE_IF_PSEUDO part.
1474
1475 * ospf_zebra.c: Likewise.
1476
14772001-01-10 Kunihiro Ishiguro <kunihiro@zebra.org>
1478
1479 * ospf_ase.c: Remove OLD_RIB part.
1480
1481 * ospf_route.c: Likewise.
1482
1483 * zebra-0.90 is released.
1484
1485 * ospf_packet.c (ospf_recv_packet): Use ip_len adjestment code to
1486 NetBSD.
1487
14882001-01-09 Kunihiro Ishiguro <kunihiro@zebra.org>
1489
1490 * ospf_route.c (ospf_route_delete): Use
1491 ospf_zebra_delete_multipath.
1492
14932001-01-09 Matthew Grant <grantma@anathoth.gen.nz>
1494
1495 * ospf_interface.c (ospf_if_cleanup): Function name is renamed
1496 from ospf_if_free(). Rewrite whole procudure to support primary
1497 address deletion.
1498
1499 * ospf_zebra.c (ospf_interface_address_delete): Add primary
1500 address deletion process.
1501
15022001-01-09 Kunihiro Ishiguro <kunihiro@zebra.org>
1503
1504 * ospf_packet.c (ospf_recv_packet): OpenBSD has same ip_len
1505 treatment like FreeBSD.
1506
15072001-01-09 endo@suri.co.jp (Masahiko Endo)
1508
1509 * ospf_packet.c (ospf_recv_packet): FreeBSD kernel network code
1510 strips IP header size from receiving IP Packet. So we adjust
1511 ip_len to whole IP packet size by adding IP header size.
1512
15132001-01-08 endo@suri.co.jp (Masahiko Endo)
1514
1515 * ospf_network.c (ospf_serv_sock): When socket() is failed return
1516 immediately.
1517 (ospf_serv_sock): Close socket when it is not used.
1518
1519 * ospf_packet.c (ospf_write): Set sin_len when HAVE_SIN_LEN is
1520 defined.
1521 (ospf_write): When bind is fined, close sock.
1522
15232001-01-07 Gleb Natapov <gleb@nbase.co.il>
1524
1525 * ospf_zebra.c (ospf_interface_state_up): Fixes coredump that
1526 appears when you try to configure bandwidth on the ppp interface
1527 that is not yet configured in ospfd.
1528
15292001-01-07 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1530
1531 * ospf_route.c (show_ip_ospf_route_external): "show ip ospf route"
1532 will print nexthops for AS-external routes.
1533
1534 * ospf_ase.c (ospf_ase_route_match_same): New function to compare
1535 ASE route under multipath environment.
1536 (ospf_ase_compare_tables): Likewise.
1537
15382001-01-01 Kunihiro Ishiguro <kunihiro@zebra.org>
1539
1540 * ospfd.h (OSPF_VTYSH_PATH): Change "/tmp/ospfd" to "/tmp/.ospfd".
1541
15422000-12-28 Kunihiro Ishiguro <kunihiro@zebra.org>
1543
1544 * ospf_route.c (ospf_route_install): Install multipath information
1545 to zebra daemon.
1546
1547 * ospf_zebra.c (ospf_zebra_add_multipath): Function for passing
1548 multipath information to zebra daemon.
1549
15502000-12-25 Dick Glasspool <dick@ipinfusion.com>
1551
1552 * ospf_packet.c (ospf_write): Call ospf_packet_delete when sendto
1553 fail.
1554 (DISCARD_LSA): Add argument N for logging point of DISCARD_LSA is
1555 called.
1556
1557 * ospf_lsa.c (ospf_external_lsa_refresh): NSSA install_flood will
1558 leave Type-7 LSA at Lock Count = 2.
1559
1560 * ospf_flood.c (ospf_flood_through): Flood_though_as updated for
1561 NSSA no P-bit off during Area flooding, but P-bit is turned off
1562 for mulitple NSSA AS flooding.
1563
1564 * ospf_ase.c (ospf_ase_calculate_timer): Added calculations for
1565 Type-7 LSDB.
1566
1567 * ospf_abr.c (ospf_abr_translate_nssa): Removed one unlock call.
1568 (ospf_abr_announce_nssa_defaults): Corrected Debug from EVENT to
1569 NSSA.
1570
15712000-12-25 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1572
1573 * ospf_zebra.c (ospf_zebra_read_ipv4): Checking the age of the
1574 found LSA and if the LSA is MAXAGE we should call refresh instead
1575 of originate.
1576
15772000-12-18 Dick Glasspool <dick@ipinfusion.com>
1578
1579 * ospf_abr.c: Removed redundant "...flood" in
1580 announce_network_to_area(). Repaired nssa Unlock by using
1581 discard.
1582
1583 * ospf_packet.c: Removed old NSSA translate during mk_ls_update.
1584
1585 * ospfd.c: Free up all data bases including NSSA.
1586
1587 * ospf_lsa.c: Now allow removal of XLATE LSA's Check in
1588 discard_callback. Added routine to get ip addr from within the
1589 ifp.
1590
1591 * ospf_flood.c: Now set Forward Address for outgoing Type-7.
1592
1593 * ospf_lsa.h: Added prototype for the below. struct in_addr
1594 ospf_get_ip_from_ifp (struct interface *ifp).
1595
15962000-12-14 Gleb Natapov <gleb@nbase.co.il>
1597
1598 * ospf_packet.c (ospf_recv_packet): New OSPF pakcet read method.
1599 Now maximum packet length may be 65535 bytes (maximum IP packet
1600 length).
1601
1602 * ospf_interface.c (ospf_if_stream_set): Don't make input buffer.
1603
1604 * ospfd.c (config_write_network_area): Remove unnecessary area
1605 lookup code.
1606
16072000-12-13 Kunihiro Ishiguro <kunihiro@zebra.org>
1608
1609 * ospf_packet.c (ospf_read): Accept packet bigger than MTU value.
1610
16112000-12-13 Gleb Natapov <gleb@nbase.co.il>
1612
1613 * ospfd.c (config_write_network_area): Fix bug in
1614 config_write_network_area function.
1615
16162000-12-12 Gleb Natapov <gleb@nbase.co.il>
1617
1618 * ospf_abr.c (ospf_abr_announce_network_to_area): Make Summary
1619 LSA's origination and refreshment as same as other type of LSA.
1620
1621 * ospf_lsa.c (ospf_summary_lsa_refresh): Return struct ospf_lsa *.
1622
1623 * ospf_lsa.c (ospf_summary_asbr_lsa_refresh): Likewise.
1624
16252000-12-08 Dick Glasspool <dick@ipinfusion.com>
1626
1627 The bulk of NSSA changes are contained herein; This version will
1628 require manual setting of "always" for NSSA Translator, and will
1629 not perform aggregation yet.
1630
1631 * ospf_dump.c: "debug ospf nssa" is added.
1632
1633 * ospf_dump.h: Likewise.
1634
1635 * ospf_packet.c (ospf_hello): Display router ID on Bad NSSA Hello.
1636
1637 * ospfd.c: Discard_LSA to stay away from LOCAL_XLT Process NSSA
1638 'never, candidate, always'. Change "suppress" to "not-advertise".
1639
1640 * ospfd.h: Add TranslatorRole to struct ospf_area. Add anyNSSA to
1641 struct ospf.
1642
1643 * ospf_ase.c (ospf_ase_calculate_route): External to stay away
1644 from LOCAL_XLT
1645
1646 * ospf_nsm.c (ospf_db_summary_add): External to stay away from
1647 LOCAL_XLT
1648
1649 * ospf_abr.c: Major logic added for abr_nssa_task(). If ABR, and
1650 NSSA translator, then do it. Approve the global list, and flush
1651 any unapproved.
1652
1653 * ospf_lsa.h: New LSA flag OSPF_LSA_LOCAL_XLT to indicate that the
1654 Type-5 resulted from a Local Type-7 translation; not used for
1655 flooding, but used for flushing.
1656
1657 * ospf_flood.c: New NSSA flooding.
1658
16592000-12-08 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1660
1661 * ospfd.c (ospf_find_vl_data): New function for looking up virtual
1662 link data.
1663 (ospf_vl_set_security): Virtual link configuration with
1664 authentication.
1665 (ospf_vl_set_timers): Set timers for virtual link.
1666
1667 * New commands are added.
1668 "area A.B.C.D virtual-link A.B.C.D"
1669 "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>"
1670 "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"
1671 "area A.B.C.D virtual-link A.B.C.D authentication-key AUTH_KEY"
1672 "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"
1673 "area A.B.C.D virtual-link A.B.C.D message-digest-key <1-255> md5 KEY"
1674
1675 * ospf_packet.c (ospf_check_md5_digest): Add neighbor's
1676 cryptographic sequence number treatment.
1677 (ospf_check_auth): OSPF input buffer is added to argument.
1678 (ospf_read): Save neighbor's cryptographic sequence number.
1679
1680 * ospf_nsm.c (nsm_change_status): Clear cryptographic sequence
1681 number when neighbor status is changed to NSM down.
1682
1683 * ospf_neighbor.c (ospf_nbr_new): Set zero to crypt_seqnum.
1684
1685 * ospf_neighbor.h (struct ospf_neighbor): Add cryptographic
1686 sequence number to neighbor structure.
1687
16882000-11-29 Kunihiro Ishiguro <kunihiro@zebra.org>
1689
1690 * ospf_snmp.c (ospfIfLookup): OSPF MIB updates.
1691 (ospfExtLsdbEntry): Add OspfExtLsdbTable treatment.
1692
16932000-11-28 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1694
1695 * ospfd.c (ospf_interface_down): Clear a ls_upd_queue queue of the
1696 interface.
1697 (ospf_ls_upd_queue_empty): New function to empty ls update queue
1698 of the OSPF interface.
1699 (no_router_ospf): 'no router ospf' unregister redistribution
1700 requests from zebra.
1701
17022000-11-28 Kunihiro Ishiguro <kunihiro@zebra.org>
1703
1704 * ospf_ism.c (ism_change_status): Increment status change number.
1705
1706 * ospf_interface.h (struct ospf_interface): Add new member for
1707 status change statistics.
1708
1709 * Makefile.am: Update dependencies.
1710
1711 * ospf_zebra.c (ospf_interface_add): OSPF SNMP interface update.
1712 (ospf_interface_delete): OSPF SNMP interface delete.
1713
1714 * ospf_snmp.h: New file is added.
1715
17162000-11-23 Dick Glasspool <dick@ipinfusion.com>
1717
1718 * ospfd.h: Add new ospf_area structure member for
1719 NSSATranslatorRole and NSSATranslator state.
1720
1721 * ospfd.c: Provided for eventual commands to specify NSSA
1722 elections for "translator- ALWAYS/NEVER/CANDIDATE". Provided for
1723 decimal integer version of area-suppress.
1724
1725 * ospf_flood.c: Flood Type-7's only into NSSA (not AS).
1726
1727 * ospf_lsa.c: Undo some previous changes for NSSA. If NSSA
1728 translator, advertise Nt bit.
1729
1730 * ospf_route.c: 1st version of "sh ip os border-routers".
1731
17322000-11-23 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1733
1734 * ospfd.c (area_vlink): Virtual link can not configured in stub
1735 area.
1736
17372000-11-23 Gleb Natapov <gleb@nbase.co.il>
1738
1739 * ospf_packet.c (ospf_db_desc): In states Loading and Full the
1740 slave must resend its last Database Description packet in response
1741 to duplicate Database Description packets received from the
1742 master. For this reason the slave must wait RouterDeadInterval
1743 seconds before freeing the last Database Description packet.
1744 Reception of a Database Description packet from the master after
1745 this interval will generate a SeqNumberMismatch neighbor
1746 event. RFC2328 Section 10.8
1747 (ospf_make_db_desc): DD Master flag treatment.
1748
1749 * ospf_nsm.c (nsm_twoway_received): Move DD related procedure to
1750 nsm_change_status().
1751 (nsm_bad_ls_req): Likewise.
1752 (nsm_adj_ok): Likewise.
1753 (nsm_seq_number_mismatch): Likewise.
1754 (nsm_oneway_received): Likewise.
1755
1756 * ospf_neighbor.h (struct ospf_neighbor): New structure member
1757 last_send_ts for timestemp when last Database Description packet
1758 was sent.
1759
1760 * ospf_nsm.c (ospf_db_desc_timer): Make it sure nbr->last_send is
1761 there. Call ospf_db_desc_resend() in any case.
1762
17632000-11-16 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1764
1765 * ospf_lsa.c (lsa_link_broadcast_set): When there is no DR on
1766 network (suppose you have only one router with interface priority
1767 0). It's router LSA does not contain the link information about
1768 this network.
1769
1770 * ospf_nsm.c (nsm_timer_set): When you change a priority of
1771 interface from/to 0 ISM_NeighborChange event should be scheduled
1772 in order to elect new DR/BDR on the network.
1773
1774 * ospf_interface.c (ip_ospf_priority): Likewise.
1775
1776 * ospf_flood.c (ospf_ls_retransmit_add): When we add some LSA into
1777 retransmit list we need to check whether the present old LSA in
1778 retransmit list is not more recent than the new
1779 one.
1780
17812000-11-09 Dick Glasspool <dick@ipinfusion.com>
1782
1783 * ospf_packet.c: Allows for NSSA Type-7 LSA's throughout the NSSA
1784 area. Any that exit the NSSA area are translated to type-5 LSA's.
1785 The instantiated image is restored after translation.
1786 (ospf_ls_upd_send_list): Renamed to ospf_ls_upd_queu_send().
1787 (ospf_ls_upd_send): Old function which enclosed by #ifdef 0 is
1788 removed.
1789 (ospf_ls_ack_send): Likewise.
1790
1791 * ospf_flood.c: NSSA-LSA's without P-bit will be restricted to
1792 local area. Otherwise they are allowed out the area to be
1793 translated by ospf_packet.c.
1794
1795 * ospf_lsa.c: Undo some previous changes for NSSA.
1796
1797 * ospf_lsdb.h: New access for type 7.
1798
17992000-11-07 Kunihiro Ishiguro <kunihiro@zebra.org>
1800
1801 * ospf_route.c (ospf_path_exist): New function to check nexthop
1802 and interface are in current OSPF path or not.
1803 (ospf_route_copy_nexthops_from_vertex): Add nexthop to OSPF path
1804 when it is not there. Reported by Michael Rozhavsky
1805 <mrozhavsky@opticalaccess.com>
1806
18072000-11-06 Kunihiro Ishiguro <kunihiro@zebra.org>
1808
1809 * ospf_dump.c (config_write_debug): Add seventh string "detail" is
1810 added for flag is OSPF_DEBUG_SEND | OSPF_DEBUG_RECV |
1811 OSPF_DEBUG_DETAIL.
1812
18132000-11-06 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1814
1815 * ospf_lsa.c (router_lsa_flags): ASBR can't exit in stub area.
1816
18172000-11-06 Kunihiro Ishiguro <kunihiro@zebra.org>
1818
1819 * ospf_lsa.c (ospf_router_lsa_originate): Reduce unconditional
1820 logging.
1821
18222000-11-06 Dick Glasspool <dick@ipinfusion.com>
1823
1824 * ospfd.h: Add ait_ntoa function prototype.
1825
1826 * ospfd.c (ait_ntoa): New function for displaying area ID and
1827 Stub/NSSA status.
1828 (show_ip_ospf_interface_sub): Use ait_ntoa.
1829 (show_ip_ospf_nbr_static_detail_sub): Likewise.
1830 (show_ip_ospf_neighbor_detail_sub): Likewise.
1831
1832 * ospf_route.c (ospf_intra_route_add): Set external routing type
1833 to ospf route.
1834 (ospf_intra_add_router): Likewise.
1835 (ospf_intra_add_transit): Likewise.
1836 (ospf_intra_add_stub): Likewise.
1837 (ospf_add_discard_route): Likewise.
1838 (show_ip_ospf_route_network): Use ait_ntoa.
1839 (show_ip_ospf_route_network): Likewise.
1840 (show_ip_ospf_route_router): Likewise.
1841
1842 * ospf_lsa.c (show_lsa_detail): Use ait_ntoa.
1843 (show_lsa_detail_adv_router): Likewise.
1844 (show_ip_ospf_database_summary): Likewise.
1845
1846 * ospf_route.h (struct route_standard): Add new member
1847 external_routing.
1848
1849 * ospf_ia.c (process_summary_lsa): Set external routing tyep to ospf
1850 route.
1851 (ospf_update_network_route): Likewise.
1852 (ospf_update_router_route): Likewise.
1853
18542000-11-04 Kunihiro Ishiguro <kunihiro@zebra.org>
1855
1856 * ospf_flood.c (ospf_process_self_originated_lsa): Enclose
1857 OSPF_AS_NSSA_LSA treatment with #ifdef HAVE_NSSA.
1858
18592000-11-03 Kunihiro Ishiguro <kunihiro@zebra.org>
1860
1861 * Unconditional logging is enclosed with if (IS_DEBUG_OSPF_EVENT).
1862 Please specify "debug ospf event" for enable logging.
1863
1864 * ospf_ism.c: Do not extern debug flag varible. It is done by
1865 ospf_debug.h
1866 * ospf_asbr.c: Likewise.
1867 * ospf_lsa.c: Likewise.
1868 * ospf_nsm.c: Likewise.
1869 * ospf_zebra.c: Likewise.
1870
1871 * ospf_dump.c (debug_ospf_event): New command "debug ospf event"
1872 is added.
1873
1874 * ospfd.c (router_ospf): Change logging from vty_out() to
1875 zlog_info().
1876 (ospf_area_stub_cmd): Likewise.
1877
1878 * ospf_dump.h: Extern term_debug flags.
1879 (OSPF_DEBUG_EVENT): Add new flag.
1880 (IS_DEBUG_OSPF_EVENT): Add new macro.
1881
18822000-11-03 Dick Glasspool <dick@ipinfusion.com>
1883
1884 * ospf_flood.c (ospf_process_self_originated_lsa):
1885 OSPF_AS_NSSA_LSA is treated as same as OSPF_AS_EXTERNAL_LSA.
1886 (ospf_flood): Type-5's have no change. Type-7's can be received,
1887 and will Flood the AS as Type-5's They will also flood the local
1888 NSSA Area as Type-7's. The LSDB will be updated as Type-5's, and
1889 during re-fresh will be converted back to Type-7's (if within an
1890 NSSA).
1891 (ospf_flood_through): Incoming Type-7's were allowed here if our
1892 neighbor was an NSSA. So Flood our area with the Type-7 and also
1893 if we are an ABR, flood thru AS as Type-5.
1894
1895 * ospf_lsa.c (ospf_external_lsa_refresh): Flood NSSA both NSSA
1896 area and other area.
1897
1898 * ospf_packet.c (ospf_db_desc_proc): When AS External LSA is
1899 exists in DD packet, make it sure that this area is not stub.
1900 (ospf_ls_upd_list_lsa): When LSA type is NSSA then set lsa's area
1901 to NULL.
1902 (ospf_ls_upd): If the LSA is AS External LSA and the area is stub
1903 then discard the lsa. If the LSA is NSSA LSA and the area is not
1904 NSSA then discard the lsa.
1905
19062000-11-03 Kunihiro Ishiguro <kunihiro@zebra.org>
1907
1908 * ospfd.c (ospf_interface_run): Fix bug of Hello packet's option
1909 is not properly set when interface comes up.
1910
19112000-11-02 Kunihiro Ishiguro <kunihiro@zebra.org>
1912
1913 * ospfd.h (OSPF_OPTION_O): Add new hello header option.
1914
19152000-11-01 Dick Glasspool <dick@ipinfusion.com>
1916
1917 * ospf_lsa.h: Define OSPF_MAX_LSA to 8 when HAVE_NSSA is enabled.
1918 (OSPF_GROUP_MEMBER_LSA): Define OSPF_GROUP_MEMBER_LSA.
1919
1920 * ospf_lsa.c (show_database_desc): Add "Group Membership LSA"
1921 string.
1922
19232000-10-31 Dick Glasspool <dick@ipinfusion.com>
1924
1925 * ospf_lsa.h (OSPF_AS_NSSA_LSA): Define OSPF_AS_NSSA_LSA.
1926
1927 * ospf_lsa.c (show_ip_ospf_database): NSSA database display
1928 function is added. ALIASES which have "show ip ospf database
1929 nssa-external" is added.
1930 (show_ip_ospf_border_routers): New command "show ip ospf
1931 border-routers" is added.
1932
19332000-10-30 Dick Glasspool <dick@ipinfusion.com>
1934
1935 * ospfd.c (router_ospf): NSSA Enabled message is added for
1936 testing.
1937 (ospf_area_type_set): Are type set for NSSA area.
1938 (ospf_area_stub_cmd): Special translation of no_summary into NSSA
1939 and summary information. If NSSA is enabled pass the information
1940 to ospf_area_type_set().
1941 (area_nssa): New commands are added:
1942 "area A.B.C.D nssa"
1943 "area <0-4294967295> nssa"
1944 "area A.B.C.D nssa no-summary"
1945 "area <0-4294967295> nssa no-summary"
1946 (ospf_no_area_stub_cmd): Special translation of no_summary into
1947 NSSA and summary information. If external_routing is
1948 OSPF_AREA_NSSA unset area with ospf_area_type_set (area,
1949 OSPF_AREA_DEFAULT).
1950 (show_ip_ospf_area): Display NSSA status.
1951 (config_write_ospf_area): Show NSSA configuration.
1952
1953 * ospf_packet.c (ospf_hello): For NSSA support, ensure that NP is
1954 on and E is off.
1955
19562000-10-26 Gleb Natapov <gleb@nbase.co.il>
1957
1958 * ospf_lsa.c (ospf_network_lsa_body_set): The network-LSA lists
1959 those routers that are fully adjacent to the Designated Router;
1960 each fully adjacent router is identified by its OSPF Router ID.
1961 The Designated Router includes itself in this list. RFC2328,
1962 Section 12.4.2.
1963
19642000-10-23 Jochen Friedrich <jochen@scram.de>
1965
1966 * ospf_snmp.c: ospf_oid and ospfd_oid are used in smux_open after
1967 it is registered. So those variables must be static.
1968
19692000-10-18 K N Sridhar <sridhar@euler.ece.iisc.ernet.in>
1970
1971 * ospfd.c: Add area_default_cost_decimal_cmd and
1972 no_area_default_cost_decimal_cmd alias.
1973
19742000-10-05 Gleb Natapov <gleb@nbase.co.il>
1975
1976 * ospfd.c (ospf_network_new): Fix setting area format.
1977 (no_router_ospf): Check area existance when calling
1978 ospf_interface_down().
1979
1980 * ospf_flood.c (ospf_external_info_check): Fix bug of refreshing
1981 default route.
1982
19832000-10-02 Kunihiro Ishiguro <kunihiro@zebra.org>
1984
1985 * zebra-0.89 is released.
1986
19872000-09-29 Kunihiro Ishiguro <kunihiro@zebra.org>
1988
1989 * ospf_snmp.c (ospfHostEntry): OSPF Host MIB is implemented.
1990
1991 * ospfd.c (ospf_nbr_static_cmp): OSPF neighbor is sorted by it's
1992 address.
1993
19942000-09-28 Michael Rozhavsky <mike@nbase.co.il>
1995
1996 * ospf_interface.c (ospf_if_free): Fix deleting self neighbor twice.
1997
19982000-09-27 Kunihiro Ishiguro <kunihiro@zebra.org>
1999
2000 * ospf_packet.c (ospf_read): Solaris on x86 has ip_len with host
2001 byte order.
2002
20032000-09-25 Toshiaki Takada <takada@zebra.org>
2004
2005 * ospfd.c (ospf_compatible_rfc1583), (no_ospf_compatible_rfc1583):
2006 Add CISCO compatible command.
2007
20082000-09-25 Kunihiro Ishiguro <kunihiro@zebra.org>
2009
2010 * ospf_abr.c (ospf_area_range_lookup): New function is added for
2011 area range lookup in OSPF-MIB.
2012 (ospf_area_range_lookup_next): Likewise.
2013
20142000-09-22 Kunihiro Ishiguro <kunihiro@zebra.org>
2015
2016 * ospfd.c (no_router_ospf): Delete virtual link before deleting
2017 area structure.
2018
2019 * ospf_lsa.c (ospf_external_lsa_refresh_type): Check
2020 EXTERNAL_INFO(type).
2021
2022 * ospfd.c (no_router_ospf): Call ospf_vl_delete() instead of
2023 ospf_vl_data_free().
2024
2025 * ospf_interface.c (ospf_vl_shutdown): Execute ISM_InterfaceDown
2026 when ospf_vl_shutdown is called.
2027 (ospf_vl_delete): Call ospf_vl_shutdown() to delete virtual link
2028 interface's thread.
2029
20302000-09-21 Gleb Natapov <gleb@nbase.co.il>
2031
2032 * ospf_lsa.c: New implementation of OSPF refresh.
2033
20342000-09-20 Kunihiro Ishiguro <kunihiro@zebra.org>
2035
2036 * ospf_snmp.c (ospfLsdbLookup): Add LSDB MIB implementation.
2037
20382000-09-18 Kunihiro Ishiguro <kunihiro@zebra.org>
2039
2040 * ospf_snmp.c (ospfStubAreaEntry): Add OSPF stub area MIB.
2041
20422000-09-18 Gleb Natapov <gleb@nbase.co.il>
2043
2044 * ospf_route.h (route_standard): Change member from `struct area'
2045 to area_id.
2046
2047 * ospf_abr.c (ospf_abr_announce_network), (ospf_abr_should_announce),
2048 (ospf_abr_process_network_rt), (ospf_abr_announce_rtr),
2049 (ospf_abr_process_router_rt):
2050 * ospf_ase.c (ospf_find_asbr_route),
2051 (ospf_find_asbr_router_through_area),
2052 * ospf_ia.c (ospf_find_abr_route), (ospf_ia_router_route),
2053 (process_summary_lsa), (ospf_update_network_route),
2054 (ospf_update_router_route):
2055 * ospf_route.c (ospf_intra_route_add), (ospf_intra_add_router),
2056 (ospf_intra_add_transit), (ospf_intra_add_stub),
2057 (ospf_route_table_dump), (show_ip_ospf_route_network),
2058 (show_ip_ospf_route_router), (ospf_asbr_route_cmp),
2059 (ospf_prune_unreachable_routers):
2060 * ospf_spf.c (ospf_rtrs_print):
2061 * ospfd.c (ospf_rtrs_free): Fix the struct change above.
2062
20632000-09-14 Kunihiro Ishiguro <kunihiro@zebra.org>
2064
2065 * ospf_network.c (ospf_serv_sock_init): Enclose SO_BINDTODEVICE
2066 with ifdef.
2067
20682000-09-13 Gleb Natapov <gleb@nbase.co.il>
2069
2070 * ospf_ism.c (ospf_elect_dr), (ospf_elect_bdr): Fix DR election.
2071
2072 * ospf_network.c (ospf_serv_sock_init): Add socket option
2073 SO_BINDTODEVICE on read socket.
2074
2075 * ospf_packet.c (ospf_hello): Ignore Hello packet if E-bit does
2076 not match.
2077
2078 * ospfd.c (ospf_area_check_free), (ospf_area_get),
2079 (ospf_area_add_if): New function added.
2080
20812000-09-13 Kunihiro Ishiguro <kunihiro@zebra.org>
2082
2083 * ospf_route.c (ospf_intra_add_router): Update ABR and ASBR router
2084 count.
2085
2086 * ospf_spf.c (ospf_spf_init): Rest ABR and ASBR router count
2087 starting SPF calculation.
2088
2089 * ospfd.h (struct ospf_area): Add ABR and ASBR router count.
2090
20912000-09-12 Kunihiro Ishiguro <kunihiro@zebra.org>
2092
2093 * ospfd.c (ospf_area_id_cmp): New area structure is sorted by area
2094 ID.
2095
2096 * ospf_lsa.c (ospf_router_lsa_originate): For OSPF MIB update
2097 lsa_originate_count.
2098 (ospf_network_lsa_originate): Likewise.
2099 (ospf_summary_lsa_originate): Likewise.
2100 (ospf_summary_asbr_lsa_originate): Likewise.
2101 (ospf_external_lsa_originate): Likewise.
2102
21032000-09-11 Kunihiro Ishiguro <kunihiro@zebra.org>
2104
2105 * ospf_snmp.c (ospf_variables): ospfRouterID's type RouterID
2106 syntax is IpAddress.
2107 (ospf_admin_stat): New function for OSPF administrative status
2108 check.
2109
21102000-09-10 Jochen Friedrich <jochen@scram.de>
2111
2112 * ospf_snmp.c: Implement OSPF MIB skeleton.
2113
21142000-09-08 Kunihiro Ishiguro <kunihiro@zebra.org>
2115
2116 * ospf_snmp.c: New file is added.
2117
21182000-09-07 David Lipovkov <davidl@nbase.co.il>
2119
2120 * ospf_zebra.c (ospf_interface_delete): Add pseudo interface
2121 treatment.
2122
2123 * ospf_interface.c (interface_config_write): Likewise.
2124
21252000-08-17 Kunihiro Ishiguro <kunihiro@zebra.org>
2126
2127 * zebra-0.88 is released.
2128
21292000-08-17 Michael Rozhavsky <mike@nbase.co.il>
2130
2131 * ospfd.c (ospf_area_free): Remove virtual link configuration only
2132 when Area is removed.
2133
21342000-08-17 Kunihiro Ishiguro <kunihiro@zebra.org>
2135
2136 * ospfd.c (network_area): Revert check for EXTERNAL_INFO
2137 (ZEBRA_ROUTE_CONNECT).
2138 (no_network_area): Likewise.
2139
21402000-08-16 Kunihiro Ishiguro <kunihiro@zebra.org>
2141
2142 * ospfd.h (struct ospf): Add distance_table and
2143 distance_{all,intra,inter,external}.
2144
2145 * ospf_zebra.c: Add OSPF distance related functions.
2146
21472000-08-15 Gleb Natapov <gleb@nbase.co.il>
2148
2149 * ospf_asbr.c (ospf_external_info_find_lsa): New function added.
2150
2151 * ospf_lsa.c (ospf_default_external_info),
2152 (ospf_default_originate_timer), (ospf_external_lsa_refresh_default):
2153 New function added.
2154
2155 * ospf_zebra.c
2156 (ospf_default_information_originate_metric_type_routemap),
2157 (ospf_default_information_originate_always_metric_type_routemap):
2158 Change name and add route-map function.
2159 (ospf_default_information_originate_metric_routemap),
2160 (ospf_default_information_originate_routemap),
2161 (ospf_default_information_originate_type_metric_routemap):
2162 New DEFUN added.
2163
21642000-08-14 Kunihiro Ishiguro <kunihiro@zebra.org>
2165
2166 * ospf_zebra.c (zebra_interface_if_set_value): Change ifindex
2167 restore size from two octet to four.
2168
21692000-08-14 Michael Rozhavsky <mike@nbase.co.il>
2170
2171 * ospf_ase.c (ospf_ase_incremental_update): Implement incremental
2172 AS-external-LSA in 16.6 of RFC2328.
2173
21742000-08-14 Matthew Grant <grantma@anathoth.gen.nz>
2175
2176 * ospf_interface.c (ospf_if_get_output_cost): Change cost
2177 calculation algorithm.
2178
2179 * ospf_packet (ospf_ls_upd): Fix problem of LSA retransmitting.
2180
21812000-08-11 Michael Rozhavsky <mike@nbase.co.il>
2182
2183 * ospf_lsa.c (ospf_maxage_lsa_remover): Fix maxage remover for
2184 AS-external-LSAs.
2185
21862000-08-10 Toshiaki Takada <takada@zebra.org>
2187
2188 * ospfd.c (auto_cost_reference_bandwidth): New DEFUN added.
2189 `auto-cost reference-bandwidth' OSPF router command added.
2190
21912000-08-08 Gleb Natapov <gleb@nbase.co.il>
2192
2193 * ospf_routemap.c (ospf_route_map_update): New function added.
2194 Add route-map event hook.
2195
21962000-08-08 Toshiaki Takada <takada@zebra.org>
2197
2198 * ospf_zebra.c (ospf_distribute_check_connected): If redistribute
2199 prefix is connected route on OSPF enabled interface, suppress to
2200 announce it.
2201
22022000-08-08 Matthew Grant <grantma@anathoth.gen.nz>
2203
2204 * ospf_interface.c (ospf_if_get_output_cost):
2205 New function added. Handle bandwidth parameter for cost
2206 calculation.
2207
22082000-08-08 Michael Rozhavsky <mike@nbase.co.il>
2209
2210 * ospf_interface.c (interface_config_write): Show interface
2211 configuration regardless interface is down.
2212
2213 * ospf_ase.c (ospf_ase_caocluate_route): Whole rewritten external
2214 route calculate function.
2215
22162000-08-08 Gleb Natapov <gleb@nbase.co.il>
2217
2218 * ospf_routemap.c: New file added.
2219
2220 * ospf_asbr.c (ospf_reset_route_map_set_values),
2221 (ospf_route_map_set_compare): New function added.
2222
2223 * ospf_lsa.c (ospf_external_lsa_body_set): Set routemap metric
2224 with AS-external-LSA.
2225
22262000-08-05 Kunihiro Ishiguro <kunihiro@zebra.org>
2227
2228 * ospf_ase.c (ospf_ase_calculate_route_add): Pass new->cost to
2229 ospf_zebra_add as metric.
2230 (ospf_ase_calculate_route_add): Likewise.
2231
2232 * ospf_route.c (ospf_route_install): Pass or->cost to
2233 ospf_zebra_add as metric.
2234
2235 * ospf_zebra.c (ospf_zebra_add): Add metric arguemnt.
2236 (ospf_zebra_delete): Likewise.
2237
22382000-08-03 Matthew Grant <grantma@anathoth.gen.nz>
2239
2240 * ospf_flood.c (ospf_flood_delayed_lsa_ack): New function added.
2241 Dispatch delayed-ACK with flooding AS-external-LSA across virtual
2242 link.
2243
22442000-07-31 Matthew Grant <grantma@anathoth.gen.nz>
2245
2246 * ospfd.c (show_ip_ospf_area): Fix lack of VTY_NEWLINE when
2247 `show ip ospf'.
2248
2249 * ospf_interface.c (ospf_if_free): Fix bug of crash with
2250 Point-to-Point interface.
2251
22522000-07-27 Michael Rozhavsky <mike@nbase.co.il>
2253
2254 * ospf_flood.c (ospf_process_self_originated_lsa):
2255 Make sure to clear LSA->param (redistributed external information)
2256 before refreshment.
2257
22582000-07-27 Gleb Natapov <gleb@nbase.co.il>
2259
2260 * ospfd.c (refresh_group_limit), (refresh_per_slice),
2261 (refresh_age_diff): New defun added. Refresher related parameter
2262 can be configurable.
2263
22642000-07-27 Akihiro Mizutani <mizutani@dml.com>
2265
2266 * ospf_interface.c (interface_config_write): Print `description'
2267 config directive to work.
2268
22692000-07-24 Akihiro Mizutani <mizutani@dml.com>
2270
2271 * ospf_interface.c (ospf_if_init): Use install_default for
2272 INTERFACE_NODE.
2273
22742000-07-24 Gleb Natapov <gleb@nbase.co.il>
2275
2276 * ospf_packet.c (ospf_ls_upd_send_list), (ospf_ls_upd_send_event),
2277 (ospf_ls_ack_send_list), (ospf_ls_ack_send_event): New function added.
2278 This make sending always as many LS update/Ack combined in one ospf
2279 packet.
2280
22812000-07-24 Gleb Natapov <gleb@nbase.co.il>
2282
2283 * ospf_packet.c (ospf_ls_upd_list_lsa): Set NULL to lsa->area if
2284 LSA is AS-external-LSA.
2285
2286 * ospf_nsm.c (nsm_reset_nbr): Do not cancel Inactivity timer.
2287
22882000-07-21 Toshiaki Takada <takada@zebra.org>
2289
2290 * ospf_zebra.c (ospf_default_originate_timer): Set timer for
2291 `default-information originate'. Fix some default originate
2292 related functions.
2293
22942000-07-12 Toshiaki Takada <takada@zebra.org>
2295
2296 * ospf_lsa.c (stream_put_ospf_metric): New function added.
2297
22982000-07-12 Toshiaki Takada <takada@zebra.org>
2299
2300 * ospf_lsa.c (show_ip_ospf_database_router),
2301 (show_ip_ospf_database_network), (show_ip_ospf_database_summary),
2302 (show_ip_ospf_database_summary_asbr), (show_ip_ospf_database_externel),
2303 (show_router_lsa), (show_any_lsa), (show_router_lsa_self),
2304 (show_any_lsa_self): Functions removed.
2305
2306 (show_lsa_prefix_set), (show_lsa_detail_proc), (show_lsa_detail),
2307 (show_lsa_detail_adv_router_proc), (show_lsa_detail_adv_router):
2308 New functions added. Replace above functions.
2309
2310 (show_ip_ospf_database_all), (show_ip_ospf_database_self_originated):
2311 Functions removed.
2312 (show_ip_ospf_database_summary): New functions added. Replace
2313 above functions.
2314
2315 (show_ip_ospf_database_cmd): DEFUN rearranged.
2316 (show_ip_ospf_database_type_id_cmd),
2317 (show_ip_ospf_database_type_id_adv_router_cmd),
2318 (show_ip_ospf_database_type_is_self_cmd): New ALIASes added.
2319 (show_ip_ospf_database_type_adv_rotuer_cmd): New DEFUN added.
2320 (show_ip_ospf_database_type_self_cmd): New ALIAS added.
2321
23222000-07-11 Toshiaki Takada <takada@zebra.org>
2323
2324 * ospf_asbr.c (ospf_external_info_new),
2325 (ospf_external_info_free): New functions added.
2326
2327 * ospf_lsa.h (ospf_lsa): Add new member `void *param' to set
2328 origination parameter for external-LSA.
2329 Remove member `redistribute'.
2330
2331 * ospf_zebra.c (ospf_redistirbute_set): When `redistribute'
2332 command executed, metric and metric-type values are overridden.
2333 If one of those is changed refresh AS-external-LSAs for appropriate
2334 type.
2335
23362000-07-11 Michael Rozhavsky <mike@nbase.co.il>
2337
2338 * ospf_lsa.c (ospf_summary_lsa_refresh),
2339 (ospf_summary_asbr_lsa_refresh): Make sure to refresh summary-LSAs.
2340
2341 * ospf_abr.c (set_metric): New function added.
2342
23432000-07-07 Toshiaki Takada <takada@zebra.org>
2344
2345 * ospf_zebra.c (ospf_default_information_originate_metric_type),
2346 (ospf_default_information_originate_type_metric): New defun added.
2347 Metic and Metric type can be set to default route.
2348 (ospf_default_information_originate_always_metric_type):
2349 (ospf_default_information_originate_always_type_metric):
2350 New defun added. Metric and Metric type can be set to default
2351 always route.
2352
2353 * ospf_zebra.c (ospf_default_metric), (no_ospf_default_metric):
2354 New defun added.
2355
23562000-07-06 Gleb Natapov <gleb@nbase.co.il>
2357
2358 * ospf_flood.c (ospf_flood_through_area): Fix bug of considering
2359 on the same interface the LSA was received from.
2360
23612000-07-06 Michael Rozhavsky <mike@nbase.co.il>
2362
2363 * ospfd.c (ospf_config_write): Fix bug of printing `area stub'
2364 command with `write mem'.
2365
2366 * ospfd.c (no_router_ospf): Remove installed routes from zebra.
2367
2368 * ospf_zebra.c (ospf_interface_delete): Fix function to handle
2369 zebra interface delete event.
2370
23712000-07-06 Toshiaki Takada <takada@zebra.org>
2372
2373 * ospf_zebra.c (ospf_default_information_originate),
2374 (ospf_default_information_originate_always): New DEFUN added.
2375
23762000-07-05 Michael Rozhavsky <mike@nbase.co.il>
2377
2378 * ospf_route.c (ospf_terminate): Make sure to remove external route
2379 when SIGINT received.
2380
23812000-07-03 Gleb Natapov <gleb@nbase.co.il>
2382
2383 * ospf_flood.c, ospf_ism.c, ospf_lsa,c, ospfd.c: Make sure to free
2384 many structure with `no router ospf'.
2385
23862000-06-30 Gleb Natapov <gleb@nbase.co.il>
2387
2388 * ospf_neighbor.c (ospf_nbr_new),
2389 ospf_nsm.c (nsm_timer_set): Start LS update timer only
2390 when neighbor enters Exchange state.
2391
23922000-06-29 Gleb Natapov <gleb@nbase.co.il>
2393
2394 * ospf_nsm.c (nsm_timer_set), (nsm_exchange_done),
2395 ospf_packet.c (ospf_db_desc_proc):
2396 Do not cancel DD retransmit timer when Master.
2397
23982000-06-29 Gleb Natapov <gleb@nbase.co.il>
2399
2400 * ospf_abr.c (ospf_abr_announce_network_to_area),
2401 (ospf_abr_announce_rtr_to_area)
2402 ospf_ase.c (ospf_ase_rtrs_register_lsa),
2403 ospf_flood.c (ospf_process_self_originated_lsa),
2404 (ospf_flood_through_area), (ospf_ls_request_delete),
2405 ospf_interface.c (ospf_if_free),
2406 ospf_ism.c (ism_change_status),
2407 ospf_lsa.c (ospf_router_lsa_update_timer),
2408 (ospf_router_lsa_install), (ospf_network_lsa_install),
2409 (ospf_lsa_maxage_delete), (ospf_lsa_action),
2410 (ospf_schedule_lsa_flood_area),
2411 ospf_nsm.c (nsm_change_status),
2412 ospf_packet.c (ospf_make_ls_req_func), (ospf_make_ls_ack):
2413 Use ospf_lsa_{lock,unlock} for all looking-up of LSA.
2414
2415 * ospf_flood.c (ospf_ls_request_free): Function deleted.
2416
2417 * ospf_lsa.c (ospf_discard_from_db): New function added.
2418
24192000-06-26 Toshiaki Takada <takada@zebra.org>
2420
2421 * ospfd.h (ospf): struct member `external_lsa' name changed to
2422 `lsdb'.
2423
24242000-06-26 Toshiaki Takada <takada@zebra.org>
2425
2426 * ospf_lsa.c (ospf_lsa_install), (ospf_router_lsa_install),
2427 (ospf_network_lsa_install), (ospf_summary_lsa_install),
2428 (ospf_summary_asbr_lsa_install), (ospf_external_lsa_install):
2429 Functions re-arranged.
2430
2431 * ospf_lsa.c (IS_LSA_MAXAGE), (IS_LSA_SELF): Macro added.
2432
24332000-06-20 Michael Rozhavsky <mike@nbase.co.il>
2434
2435 * ospf_packet.c (ospf_ls_req), (ospf_ls_upd), (ospf_ls_ack): Add
2436 verification of LS type.
2437
24382000-06-20 Gleb Natapov <gleb@nbase.co.il>
2439
2440 * ospf_ase.c (ospf_ase_calculate_timer): Add more sanity check
2441 whether rn->info is NULL.
2442
24432000-06-20 Toshiaki Takada <takada@zebra.org>
2444
2445 * ospfd.c (show_ip_ospf_interface_sub): Show Router-ID of both
2446 DR and Backup correctly with `show ip ospf interface' command.
2447
24482000-06-20 Toshiaki Takada <takada@zebra.org>
2449
2450 * ospf_lsa.c (ospf_lsa_lock), (ospf_lsa_unlock),
2451 (ospf_lsa_discard): These functions are used for avoiding
2452 unexpected reference to freed LSAs.
2453
24542000-06-13 Kunihiro Ishiguro <kunihiro@zebra.org>
2455
2456 * ospf_packet.c (ospf_ls_upd): Initialize lsa by NULL to avoid
2457 warning.
2458
24592000-06-12 Kunihiro Ishiguro <kunihiro@zebra.org>
2460
2461 * ospf_ase.h (ospf_ase_rtrs_register_lsa): Add prototype.
2462
24632000-06-12 Toshiaki Takada <takada@zebra.org>
2464
2465 * ospf_lsa.c (ospf_external_lsa_install): Make sure to register
2466 LSA to rtrs_external when replacing AS-external-LSAs in LSDB.
2467 Fix core dump.
2468
24692000-06-10 Toshiaki Takada <takada@zebra.org>
2470
2471 * ospf_lsdb.c (id_to_prefix), (ospf_lsdb_hash_key),
2472 (ospf_lsdb_hash_cmp), (ospf_lsdb_new), (ospf_lsdb_iterator),
2473 (lsdb_free), (ospf_lsdb_free), (ospf_lsdb_add), (ospf_lsdb_delete),
2474 (find_lsa), (ospf_lsdb_lookup), (find_by_id),
2475 (ospf_lsdb_lookup_by_id), (ospf_lsdb_lookup_by_header): Functinos
2476 removed for migration to new_lsdb.
2477
2478 * ospf_lsa.c (ospf_summary_lsa_install),
2479 (ospf_summary_asbr_lsa_install), (ospf_maxage_lsa_remover),
2480 (ospf_lsa_maxage_walker), (ospf_lsa_lookup),
2481 (ospf_lsa_lookup_by_id): Use new_lsdb instead of ospf_lsdb.
2482 (count_lsa), (ospf_lsa_count_table), (ospf_lsa_count),
2483 (ospf_get_free_id_for_prefix): Funcitions removed.
2484
24852000-06-09 Gleb Natapov <gleb@nbase.co.il>
2486
2487 * ospf_ism.c (ism_interface_down): Prevent some unneeded DR changes.
2488
2489 * ospf_packet.c (ospf_db_desc_proc): Fix memory leak.
2490 (ospf_hello): Always copy router-ID when hello is received.
2491
24922000-06-08 Gleb Natapov <gleb@nbase.co.il>
2493
2494 * ospf_lsa.h (struct ospf_lsa): Add member of pointer to struct
2495 ospf_area.
2496
24972000-06-08 Michael Rozhavsky <mike@nbase.co.il>
2498
2499 * ospf_ase.c (ospf_asbr_route_same): New function added.
2500 This function makes sure external route calculation more
2501 precisely.
2502
25032000-06-07 Michael Rozhavsky <mike@nbase.co.il>
2504
2505 * ospf_ism.c (ism_change_status): Use ospf_lsa_flush_area for
2506 network-LSA deletion instead of using ospf_lsdb_delete.
2507 Also cancel network-LSA origination timer.
2508
25092000-06-07 Levi Harper <lharper@kennedytech.com>
2510
2511 * ospf_interface.c (ospf_if_down): Close read fd when an interface
2512 goes down.
2513
25142000-06-05 Kunihiro Ishiguro <kunihiro@zebra.org>
2515
2516 * ospf_asbr.c (ospf_external_info_lookup): Add explicit brace for
2517 avoid ambiguous else.
2518
2519 * ospf_flood.c (ospf_external_info_check): Likewise.
2520
25212000-06-05 Toshiaki Takada <takada@zebra.org>
2522
2523 * ospf_nsm.c (nsm_adj_ok): Fix bug of DR election.
2524
25252000-06-04 Toshiaki Takada <takada@zebra.org>
2526
2527 * ospf_zebra.c (ospf_default_information_originate),
2528 (no_ospf_default_information_originate): New DEFUN added.
2529
25302000-06-03 Toshiaki Takada <takada@zebra.org>
2531
2532 * ospf_lsa.h, ospf_asbr.h (external_info): Struct moved from
2533 ospf_lsa.h to ospf_asbr.h.
2534
2535 * ospf_lsa.c, ospf_asbr.c (ospf_external_info_add),
2536 (ospf_external_info_delete): Function moved from ospf_lsa.c
2537 to ospf_asbr.c.
2538
25392000-06-03 Toshiaki Takada <takada@zebra.org>
2540
2541 * ospf_flood.c (ospf_external_info_check): New function added.
2542 (ospf_process_self_orignated_lsa): Make sure to flush
2543 self-originated AS-external-LSA, when router reboot and no longer
2544 originate those AS-external-LSA.
2545
25462000-06-02 Toshiaki Takada <takada@zebra.org>
2547
2548 * ospf_network.c (ospf_serv_sock): Remove SO_DONTROUTE
2549 socket option.
2550
2551 * ospf_packet.c (ospf_write): Set MSG_DONTROUTE flag for
2552 unicast destination packets.
2553
25542000-06-02 Toshiaki Takada <takada@zebra.org>
2555
2556 * ospf_lsdb.c (new_lsdb_delete): Delete entry from LSDB only when
2557 specified LSA matches.
2558
25592000-06-02 Gleb Natapov <gleb@nbase.co.il>
2560
2561 * ospf_network.c (ospf_serv_sock): Set SO_DONTROUTE
2562 socket option.
2563
25642000-06-01 Akihiro Mizutani <mizutani@dml.com>
2565
2566 * ospf_dump.c: Replace string `Debugging functions\n' with DEBUG_STR.
2567 Replace string `OSPF information\n' with OSPF_STR.
2568
25692000-06-01 Toshiaki Takada <takada@zebra.org>
2570
2571 * ospf_lsdb.[ch]: Use new_lsdb struct for network-LSA instead of
2572 ospf_lsdb.
2573
25742000-06-01 Toshiaki Takada <takada@zebra.org>
2575
2576 * ospf_dump.c (config_debug_ospf_packet), (config_debug_ospf_event),
2577 (config_debug_ospf_ism), (config_debug_ospf_nsm),
2578 (config_debug_ospf_lsa), (config_debug_ospf_zebra),
2579 (term_debug_ospf_packet), (term_debug_ospf_event),
2580 (term_debug_ospf_ism), (term_debug_ospf_nsm),
2581 (term_debug_ospf_lsa), (term_debug_ospf_zebra): Repalce debug_ospf_*
2582 variable to use for debug option flags.
2583
2584 (debug_ospf_packet), (debug_ospf_ism), (debug_ospf_nsm),
2585 (debug_ospf_lsa), (debug_ospf_zebra): Set {config,term}_debug_*
2586 flags when vty->node is CONFIG_NODE, otherwise set only term_debug_*
2587 flags.
2588
2589 * ospf_dump.h (CONF_DEBUG_PACKET_ON), (CONF_DEBUG_PACKET_OFF),
2590 (TERM_DEBUG_PACKET_ON), (TERM_DEBUG_PACKET_OFF),
2591 (CONF_DEBUG_ON), (CONF_DEBUG_OFF), (IS_CONF_DEBUG_OSPF_PACKET),
2592 (IS_CONF_DEBUG_OSPF): New Macro added.
2593
25942000-05-31 Toshiaki Takada <takada@zebra.org>
2595
2596 * ospfd.c (clear_ip_ospf_neighbor): New DEFUN added.
2597 Currently this command is used for only debugging.
2598
2599 * ospf_nsm.c (nsm_change_status): Make sure thread cancellation
2600 for network-LSA when DR has no full neighbors.
2601
2602 * ospf_nsm.c (ospf_db_summary_clear): New function added.
2603
26042000-05-30 Toshiaki Takada <takada@zebra.org>
2605
2606 * ospf_lsdb.c (new_lsdb_insert): LSAs are always freed by
2607 maxage_lsa_remover when LSA is replaced.
2608
26092000-05-25 Gleb Natapov <gleb@nbase.co.il>
2610
2611 * ospf_flood.c (ospf_ls_retransmit_delete_nbr_all): Add argument
2612 `struct ospf_area' to remove LSA from Link State retransmission list
2613 of neighbor from only one Area.
2614
26152000-05-24 Michael Rozhavsky <mike@nbase.co.il>
2616
2617 * ospf_lsdb.c (ospf_lsdb_add): Preserve flags field when
2618 overriting old LSA with new LSA.
2619
26202000-05-24 Gleb Natapov <gleb@nbase.co.il>
2621
2622 * ospf_lsa.c (ospf_router_lsa_body_set): Fix bug of router-LSA
2623 size calculation.
2624
26252000-05-22 Michael Rozhavsky <mike@nbase.co.il>
2626
2627 * ospf_route.c (ospf_intra_add_stub):
2628 * ospf_spf.h (struct vertex): Use u_int32_t for distance (cost)
2629 value instead of u_int16_t.
2630
26312000-05-22 Axel Gerlach <agerlach@datus.datus.com>
2632
2633 * ospf_ia.c (ospf_ia_network_route): Fix bug of Inter-area route
2634 equal cost path calculation.
2635
26362000-05-21 Toshiaki Takada <takada@zebra.org>
2637
2638 * ospf_ase.c (ospf_ase_calculate_route_delete): New function added.
2639 Make sure, when rotuer route is deleted, related external routes
2640 are also deleted.
2641
26422000-05-20 Toshiaki Takada <takada@zebra.org>
2643
2644 * ospfd.c (ospf_interface_down): Make sure interface flag is disable
2645 and set fd to -1.
2646
26472000-05-16 Toshiaki Takada <takada@zebra.org>
2648
2649 * ospf_asbr.c (ospf_asbr_should_announce), (ospf_asbr_route_remove):
2650 Functions removed.
2651
2652 * ospfd.h (EXTERNAL_INFO): Macro added.
2653 Substitute `ospf_top->external_info[type]' with it.
2654
26552000-05-16 Toshiaki Takada <takada@zebra.org>
2656
2657 * ospf_lsa.c (ospf_rtrs_external_remove): New function added.
2658
26592000-05-14 Gleb Natapov <gleb@nbase.co.il>
2660
2661 * ospf_flood.c (ospf_ls_retransmit_delete_nbr_all)
2662 * ospf_lsdb.c (new_lsdb_insert)
2663 * ospf_packet.c (ospf_ls_ack): Fix database synchonization problem.
2664
26652000-05-14 Gleb Natapov <gleb@nbase.co.il>
2666
2667 * ospf_lsa.h (tv_adjust), (tv_ceil), (tv_floor), (int2tv),
2668 (tv_add), (tv_sub), (tv_cmp): Prototype definition added.
2669
2670 * ospf_nsm.h (ospf_db_summary_delete_all): Prototype definition added.
2671
26722000-05-13 Toshiaki Takada <takada@zebra.org>
2673
2674 * ospf_lsa.[ch] (ospf_lsa): struct timestamp type is changed from
2675 time_t to struct timeval.
2676 (tv_adjust), (tv_ceil), (tv_floor), (int2tv), (tv_add),
2677 (tv_sub), (tv_cmp): timeval utillity functions added.
2678
26792000-05-12 Toshiaki Takada <takada@zebra.org>
2680
2681 * ospf_lsa.[ch] (ospf_schedule_update_router_lsas): Delete function.
2682 Change to use macro OSPF_LSA_UPDATE_TIMER instead of using
2683 this function.
2684 router-LSA refresh timer related stuff is re-organized.
2685
26862000-05-10 Gleb Natapov <gleb@nbase.co.il>
2687
2688 * ospf_interface.c (ospf_vl_set_params):
2689 * ospf_packet.c (ospf_check_network_mask):
2690 * ospf_spf.[ch] (ospf_spf_next):
2691 Remove field address from `struct vertex', and search for peer
2692 address of virtual link in function `ospf_vl_set_params' instead.
2693
26942000-05-10 Gleb Natapov <gleb@nbase.co.il>
2695
2696 * ospf_packet.c (ospf_ls_upd): Fix some memory leak related LSA.
2697
26982000-05-08 Thomas Molkenbur <tmo@datus.com>
2699
2700 * ospf_packet.c (ospf_packet_dup): Replace ospf_steram_copy()
2701 with ospf_stream_dup() to fix memory leak.
2702
27032000-05-08 Michael Rozhavsky <mike@nbase.co.il>
2704
2705 * ospf_flood.c (ospf_flood_through_area): Fix the problem of
2706 LSA update without DROther.
2707
27082000-05-04 Gleb Natapov <gleb@nbase.co.il>
2709
2710 * ospf_spf.c (ospf_vertex_free): Fix memory leak of SPF calculation.
2711
27122000-05-03 Toshiaki Takada <takada@zebra.org>
2713
2714 * ospf_neighbor.c (ospf_db_summary_add): Use new_lsdb struct
2715 instead linked-list.
2716 (ospf_db_summary_count), (ospf_db_summary_isempty):
2717 New function added.
2718
2719 * ospf_lsa.c (ospf_rotuer_lsa): Re-arrange and divide functions.
2720
27212000-05-02 Gleb Natapov <gleb@nbase.co.il>
2722
2723 * ospf_lsdb.c (new_lsdb_cleanup): Fix memory leak. When LSDB are
2724 not needed any more, then free them.
2725
27262000-05-02 Toshiaki Takada <takada@zebra.org>
2727
2728 * ospfd.c (timers_spf), (no_timers_spf): New defun added.
2729 SPF calculation timers related stuff is rearranged.
2730
2731 * ospf_spf.c (ospf_spf_calculate_timer_add): Function removed.
2732 SPF timer is scheduled by SPF calculation delay and holdtime
2733 configuration variable.
2734
2735 * ospf_lsa.c (ospf_external_lsa_nexthop_get): Set AS-external-LSA's
2736 forwarding address when nexthop learned by other protocols is
2737 in the OSPF domain.
2738
2739 * ospf_zebra.c (ospf_redistribute_source_metric_type),
2740 (ospf_redistribute_source_type_metric): Re-arrange DEFUNs and
2741 ALIASes.
2742
27432000-05-01 Toshiaki Takada <takada@zebra.org>
2744
2745 * ospf_flood.c (ospf_ls_retransmit_count),
2746 (ospf_ls_retransmit_isempty): New function added.
2747
2748 (ospf_ls_retransmit_add), (ospf_ls_retransmit_delete),
2749 (ospf_ls_retransmit_clear), (ospf_ls_retransmit_lookup),
2750 (ospf_ls_retransmit_delete_all), (ospf_ls_retransmit_delete_nbr_all),
2751 (ospf_ls_retransmit_add_nbr_all): Replace these functions to use
2752 new_lsdb.
2753
27542000-04-29 Toshiaki Takada <takada@zebra.org>
2755
2756 * ospfd.c (no_network_area): Add check Area-ID whether specified
2757 Area-ID with prefix matches config.
2758
27592000-04-27 Toshiaki Takada <takada@zebra.org>
2760
2761 * ospf_lsa.c (ospf_maxage_lsa_remover): Fix problem of
2762 remaining withdrawn routes on zebra.
2763
27642000-04-25 Michael Rozhavsky <mike@nbase.co.il>
2765
2766 * ospf_nsm.c (nsm_kill_nbr), (nsm_ll_down), (nsm_change_status),
2767 (ospf_nsm_event): Fix network-LSA re-origination problem.
2768
27692000-04-24 Toshiaki Takada <takada@zebra.org>
2770
2771 * ospf_nsm.c (ospf_db_desc_timer): Fix bug of segmentation fault
2772 with DD retransmission.
2773
2774 * ospf_nsm.c (nsm_kill_nbr): Fix bug of re-origination when
2775 a neighbor disappears.
2776
27772000-04-23 Michael Rozhavsky <mike@nbase.co.il>
2778
2779 * ospf_abr.c (ospf_abr_announce_network_to_area): Fix bug of
2780 summary-LSAs reorigination. Correctly copy OSPF_LSA_APPROVED
2781 flag to new LSA. when summary-LSA is reoriginatd.
2782
2783 * ospf_flood.c (ospf_flood_through_area): Fix bug of flooding
2784 procedure. Change the condition of interface selection.
2785
27862000-04-21 Toshiaki Takada <takada@zebra.org>
2787
2788 * ospf_lsa.c (ospf_refresher_register_lsa): Fix bug of refresh never
2789 occurs.
2790
2791 * ospfd.c (show_ip_ospf_neighbor_id): New defun added.
2792 `show ip ospf neighbor' related commands are re-arranged.
2793
27942000-04-20 Toshiaki Takada <takada@zebra.org>
2795
2796 * ospf_dump.c (debug_ospf_zebra): New defun added.
2797 Suppress zebra related debug information.
2798
27992000-04-19 Toshiaki Takada <takada@zebra.org>
2800
2801 * ospf_zebra.c (ospf_distribute_list_update_timer),
2802 (ospf_distribute_list_update), (ospf_filter_update):
2803 New function added. Re-organize `distribute-list' router ospf
2804 command.
2805
28062000-04-13 Michael Rozhavsky <mike@nbase.co.il>
2807
2808 * ospf_packet.c (ospf_make_ls_upd): Add check for MAX_AGE.
2809
28102000-04-14 Michael Rozhavsky <mike@nbase.co.il>
2811
2812 * ospf_packet.c (ospf_make_ls_upd): Increment LS age by configured
2813 interface transmit_delay.
2814
28152000-04-14 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2816
2817 * ospf_interface.c (ip_ospf_cost), (no_ip_ospf_cost):
2818 Add to schedule router_lsa origination when the interface cost changes.
2819
28202000-04-12 Toshiaki Takada <takada@zebra.org>
2821
2822 * ospf_lsa.c (ospf_refresher_register_lsa),
2823 (ospf_refresher_unregister_lsa): Fix bug of core dumped.
2824
2825 * ospfd.c (no_router_ospf): Fix bug of core dumped.
2826
28272000-03-29 Toshiaki Takada <takada@zebra.org>
2828
2829 * ospf_nsm.c (nsm_oneway_received): Fix bug of MS flag unset.
2830
28312000-03-29 Michael Rozhavsky <mike@nbase.co.il>
2832
2833 * ospf_lsa.c (ospf_network_lsa):
2834 * ospf_nsm.c (ospf_nsm_event): Fix bug of Network-LSA originated
2835 in stub network.
2836
28372000-03-28 Toshiaki Takada <takada@zebra.org>
2838
2839 * ospf_nsm.c (nsm_bad_ls_req), (nsm_seq_number_mismatch),
2840 (nsm_oneway_received): Fix bug of NSM state flapping between
2841 ExStart and Exchange.
2842
28432000-03-28 Toshiaki Takada <takada@zebra.org>
2844
2845 * ospf_packet.h (strcut ospf_header): Fix the size of ospf_header,
2846 change u_int8_t to u_char.
2847
28482000-03-27 Toshiaki Takada <takada@zebra.org>
2849
2850 * ospf_lsa.c (ospf_lsa_checksum): Take care of BIGENDIAN architecture.
2851
28522000-03-27 Toshiaki Takada <takada@zebra.org>
2853
2854 * ospfd.c (ospf_interface_run): Make sure Address family matches.
2855
28562000-03-26 Love <lha@s3.kth.se>
2857
2858 * ospf_packet.c (ospf_write): Chack result of sendto().
2859
28602000-03-26 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2861
2862 * ospf_nsm.c (nsm_oneway_received): Fix bug of 1-WayReceived in NSM.
2863
28642000-03-23 Libor Pechacek <farco@clnet.cz>
2865
2866 * ospf_lsa.c (ospf_network_lsa)
2867 * ospf_lsdb.c (new_lsdb_insert): Fix bug of accessing to
2868 unallocated memory.
2869
28702000-03-23 Toshiaki Takada <takada@zebra.org>
2871
2872 * ospfd.c (ospf_config_write): Fix bug of duplicate line for
2873 `area A.B.C.D authentication'.
2874
28752000-03-22 Toshiaki Takada <takada@zebra.org>
2876
2877 * ospf_debug.c (debug_ospf_lsa), (no_debug_ospf_lsa): Defun added.
2878 Suppress all zlog related to LSAs with this config option.
2879
28802000-03-21 Kunihiro Ishiguro <kunihiro@zebra.org>
2881
2882 * ospf_nsm.c (ospf_nsm_event): Add check for NSM_InactivityTimer.
2883
28842000-03-21 Toshiaki Takada <takada@zebra.org>
2885
2886 * ospf_packet.c (ospf_ls_upd_timer), (ospf_ls_req):
2887 Fix bug of memory leak about linklist.
2888
2889 * ospf_flood.c (ospf_flood_through_area): Likewise.
2890
28912000-03-18 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2892
2893 * ospf_flood.c (ospf_ls_retransmit_lookup): Add checksum comparison
2894 to identify LSA uniquely. This fix routes lost.
2895
28962000-03-18 Toshiaki Takada <takada@zebra.org>
2897
2898 * ospf_ase.c (ospf_find_asbr_route): Add sanity check with router
2899 routing table.
2900
29012000-03-17 Alex Zinin <zinin@amt.ru>
2902
2903 * ospf_spf.[ch]: Bug fix.
2904 The 2nd stage of Dijkstra could consider one vertex
2905 more than once if there is more than one link
2906 between the routers, thus adding extra CPU overhead
2907 and extra next-hops.
2908 Fixed.
2909
29102000-03-15 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2911
2912 * ospf_nsm.c (nsm_inactivity_timer): Changed to call nsm_kill_nbr().
2913
29142000-03-14 Toshiaki Takada <takada@zebra.org>
2915
2916 * ospf_route.c (ospf_route_copy_nexthops): Fix bug of memory leak of
2917 ospf_path. Actually ignore merging ospf_route with completely same
2918 paths.
2919
29202000-03-12 Toshiaki Takada <takada@zebra.org>
2921
2922 * ospf_lsa.c (show_as_external_lsa_detail): fix bug of
2923 external route tag byte order.
2924
29252000-03-11 Toshiaki Takada <takada@zebra.org>
2926
2927 * ospf_lsdb.c (ospf_lsdb_insert): New function added.
2928
29292000-03-09 Toshiaki Takada <takada@zebra.org>
2930
2931 * ospf_lsa.c (ospf_external_lsa_install),
2932 (ospf_lsa_lookup), (show_ip_ospf_database_all),
2933 (show_ip_ospf_database_self_originate): Use struct new_lsdb for
2934 LSDB of AS-external-LSAs instead of ospf_lsdb.
2935
2936 * ospf_lsa.c (ospf_lsa_unique_id): New function added.
2937 Use for assigning Unique Link State ID instead of
2938 ospf_get_free_id_for_prefix().
2939
29402000-03-09 Toshiaki Takada <takada@zebra.org>
2941
2942 * ospf_ase.c (ospf_ase_calculate_timer): Fix bug of segmentation
2943 fault reported by George Bonser <george@siteROCK.com>.
2944
29452000-03-07 Libor Pechacek <farco@clnet.cz>
2946
2947 * ospfd.c (ospf_interface_down): Fix bug of segmentation fault.
2948
29492000-03-06 Toshiaki Takada <takada@zebra.org>
2950
2951 * ospf_route.c (ospf_route_cmp): Change meaning of return values.
2952
29532000-03-02 Alex Zinin <zinin@amt.ru>
2954 * ospfd.h, ospf_ia.h
2955 New Shortcut ABR code. Now area's flag can be configured
2956 with Default, Enable, and Disable values.
2957 More info will be in the new ver of I-D soon (see IETF web).
2958
29592000-02-25 Toshiaki Takada <takada@zebra.org>
2960
2961 * ospf_lsa.c (ospf_lsa_header_set), (ospf_external_lsa_body_set),
2962 (osfp_external_lsa_originate), (ospf_external_lsa_queue),
2963 (ospf_external_lsa_originate_from_queue): New function added.
2964 (ospf_external_lsa): Function removed.
2965
2966 * ospf_zebra.c (ospf_zebra_read_ipv4): Originate AS-external-LSA
2967 when listen a route from Zebra, instead creating external route.
2968
2969 * ospf_asbr.c (ospf_asbr_route_add_flood_lsa),
2970 (ospf_asbr_route_add_queue_lsa),
2971 (ospf_asbr_route_install_lsa), (ospf_asbr_route_add):
2972 Functions removed.
2973
2974 * ospf_ase.c (process_ase_lsa): Function will not be used.
2975 (ospf_ase_calculate), (ospf_ase_calculate_route_add),
2976 (ospf_ase_calculate_new_route), (ospf_ase_caluculate_asbr_route):
2977 process_ase_lsa () is separated to these functions.
2978
2979 OSPF AS-external-LSA origination is whole re-organized.
2980
29812000-02-18 Toshiaki Takada <takada@zebra.org>
2982
2983 * ospf_packet.c (ospf_ls_upd): Fix bug of OSPF LSA memory leak.
2984
2985 * ospf_asbr.c (ospf_asbr_route_add_flood_lsa),
2986 (ospf_asbr_route_add_queue_lsa): Fix bug of OSPF external route
2987 memory leak.
2988
29892000-02-12 Kunihiro Ishiguro <kunihiro@zebra.org>
2990
2991 * ospf_asbr.c (ospf_asbr_route_install_lsa): Re-calculate LSA
2992 checksum after change Advertised Router field.
2993
29942000-02-09 Toshiaki Takada <takada@zebra.org>
2995
2996 * ospf_asbr.c (ospf_external_route_lookup): Add new function.
2997
29982000-02-08 Toshiaki Takada <takada@zebra.org>
2999
3000 * ospfd.c (ospf_router_id_get), (ospf_router_id_update),
3001 (ospf_router_id_update_timer): Router ID decision algorithm is changed.
3002 Router ID is chosen from all of eligible interface addresses even if
3003 it is not enable to OSPF.
3004
30052000-02-08 Toshiaki Takada <takada@zebra.org>
3006
3007 * ospf_asbr.c (ospf_asbr_route_add): Function divided to
3008 ospf_asbr_route_add_flood_lsa, ospf_asbr_route_add_queue_lsa and
3009 ospf_asbr_route_install_lsa. If Router-ID is not set, then LSA is
3010 waited to install to LSDB.
3011 `0.0.0.0 adv_router' AS-external-LSA origination bug was fixed.
3012
30132000-02-01 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
3014
3015 * ospf_flood.c (ospf_ls_retransmit_lookup): Compare LS seqnum
3016 in the ACK before deleting.
3017
3018 * ospf_packet.c (ospf_hello): Reset the flags after a shutdown
3019 and no shutdown of the interface.
3020
30212000-01-31 Toshiaki Takada <takada@zebra.org>
3022
3023 * ospf_packet.c (ospf_ls_req): Send multiple Link State Update
3024 packets respond to a Link State Request packet.
3025
3026 * ospfd.c (show_ip_ospf_neighbor_detail_sub): Show thread state.
3027
3028 * ospf_interface.c (ospf_vl_new): Crash when backbone area
3029 is not configured and set virtual-link to no-backbone area,
3030 bug fixed.
3031
30322000-01-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3033
3034 * ospf_neighbor.h (struct ospf_neighbor): Add pointer to last send
3035 LS Request LSA.
3036
3037 * ospf_packet.c (ospf_ls_upd): Comment out LS request list
3038 treatment. That should be done in OSPF flooding procedure.
3039
3040 * ospf_flood.c (ospf_flood_through_area): Enclose
3041 ospf_check_nbr_loding inside if-else close.
3042
30432000-01-31 Toshiaki Takada <takada@zebra.org>
3044
3045 * ospf_packet.c (ospf_make_ls_upd): Fix bug of #LSAs counting.
3046
30472000-01-29 Toshiaki Takada <takada@zebra.org>
3048
3049 * ospf_packet.c (ospf_make_md5_digest): Fix bug of md5 authentication.
3050
30512000-01-28 Toshiaki Takada <takada@zebra.org>
3052
3053 * ospfd.c (show_ip_ospf): Show Number of ASE-LSAs.
3054
30552000-01-27 Kunihiro Ishiguro <kunihiro@zebra.org>
3056
3057 * ospf_packet.c (ospf_make_db_desc): Don't use rm_list for
3058 removing LSA from nbr->db_summary.
3059
30602000-01-27 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
3061
3062 * ospf_packet.c (ospf_ls_upd_send): Set AllSPFRouters to
3063 destination when the link is point-to-point.
3064 (ospf_ls_ack_send_delayed): Likewise.
3065
30662000-01-27 Kunihiro Ishiguro <kunihiro@zebra.org>
3067
3068 * ospf_flood.c (ospf_ls_request_delete_all): Fix bug of next
3069 pointer lookup after the node is freed.
3070
30712000-01-26 Kunihiro Ishiguro <kunihiro@zebra.org>
3072
3073 * ospf_asbr.c (ospf_asbr_route_add): Instead of scanning all AS
3074 external route, use ospf_top->external_self.
3075
30762000-01-27 Toshiaki Takada <takada@zebra.org>
3077
3078 * ospf_lsa.c (ospf_forward_address_get): New function added.
3079
3080 * ospf_asbr.c (ospf_asbr_check_lsas): Originate AS-external-LSA
3081 only when it should be replaced.
3082
30832000-01-25 Kunihiro Ishiguro <kunihiro@zebra.org>
3084
3085 * ospf_flood.c (ospf_ls_retransmit_clear): Delete list node.
3086
3087 * ospf_lsa.c (ospf_lsa_free): Reduce logging message using
3088 ospf_zlog value.
3089
3090 * ospf_ism.c (ism_change_status): Fix bug of DR -> non DR status
3091 change. Self originated LSA is freed but not deleted from lsdb.
3092
30932000-01-24 Kunihiro Ishiguro <kunihiro@zebra.org>
3094
3095 * ospf_ism.c (ism_interface_down): Don't use router_id for
3096 detecting self neighbor structure. Instead of that compare
3097 pointer itself.
3098
3099 * ospf_neighbor.c (ospf_nbr_free): Cancel all timer when neighbor
3100 is deleted.
3101 (ospf_nbr_free): Free last send packet.
3102
3103 * ospf_neighbor.h (struct ospf_neighbor): Remove host strucutre.
3104 Instead of that src is introduced.
3105
3106 * ospf_nsm.h: Enclose macro defenition with do {} while (0).
3107
31082000-01-17 Kunihiro Ishiguro <kunihiro@zebra.org>
3109
3110 * ospfd.c: Change part of passive interface implementation. For
3111 passive interface just disabling sending/receiving Hello on the
3112 interface.
3113
31142000-01-16 Kai Bankett <kai.bankett@vew-telnet.net>
3115
3116 * ospf_interface.h (OSPF_IF_PASSIVE): Add passive flag.
3117 * ospf_interface.c (ospf_if_lookup_by_name): Add new function.
3118 * ospf_lsa.c (ospf_router_lsa): Skip passive interface.
3119 * ospfd.c (passive_interface): New command passive-interface is
3120 added.
3121 (ospf_config_write): Print passive interface.
3122
31232000-01-15 Toshiaki Takada <takada@zebra.org>
3124
3125 * ospf_interface.h (crypt_key): New struct added to store
3126 multiple cryptographic autheitication keys.
3127 (ospf_interface): struct changed.
3128
3129 * ospf_interface.c: ospf_crypt_key_new, ospf_crypt_key_add,
3130 ospf_crypt_key_lookup, ospf_crypt_key_delete: new functions added.
3131
3132 * ospf_packet.c (ip_ospf_message_digest_key): Changed to store
3133 multiple cryptographic authentication keys.
3134
31352000-01-14 Toshiaki Takada <takada@zebra.org>
3136
3137 * ospf_interface.c: DEFUN (if_ospf_*) commands changed name to
3138 ip_ospf_* ().
3139 Old notation `ospf *' still remains backward compatibility.
3140
31411999-12-29 Alex Zinin <zinin@amt.ru>
3142 * ospf_lsa.c: ospf_lsa_more_recent() bug fix
3143 * ospf_nsm.c, ospf_packet.c: remove nbr data struct when
3144 int goes down, also check DD flags correctly (bug fix)
3145
31461999-12-28 Alex Zinin <zinin@amt.ru>
3147 * "redistribute <source> metric-type (1|2) metric <XXX>" added
3148
31491999-12-23 Alex Zinin <zinin@amt.ru>
3150 * added RFC1583Compatibility flag
3151 * added dynamic interface up/down functionality
3152
31531999-11-19 Toshiaki Takada <takada@zebra.org>
3154
3155 * ospf_neighbor.h (struct ospf_neighbor): Add member state_change
3156 for NSM state change statistics.
3157
31581999-11-19 Toshiaki Takada <takada@zebra.org>
3159
3160 * ospfd.c (show_ip_ospf_neighbor_detail),
3161 (show_ip_ospf_neighbor_int_detail): DEFUN Added.
3162
31631999-11-14 Kunihiro Ishiguro <kunihiro@zebra.org>
3164
3165 * ospf_asbr.c (ospf_asbr_check_lsas): Add check of
3166 lsa->refresh_list.
3167
31681999-11-11 Toshiaki Takada <takada@zebra.org>
3169
3170 * ospf_ia.[ch] (OSPF_EXAMINE_SUMMARIES_ALL): Macro added.
3171 This macro is expanded to ospf_examine_summaries ()
3172 for SUMMARY_LSA and SUMMARY_LSA_ASBR.
3173 (OSPF_EXAMINE_TRANSIT_SUMMARIES_ALL): Macro added.
3174 This macro is expanded to ospf_examine_transit_summaries ()
3175 for SUMMARY_LSA and SUMMARY_LSA_ASBR.
3176
31771999-11-11 Toshiaki Takada <takada@zebra.org>
3178
3179 * ospf_lsa.[ch] (ospf_find_self_summary_lsa_by_prefix): Changed to
3180 macro OSPF_SUMMARY_LSA_SELF_FIND_BY_PREFIX.
3181 (ospf_find_self_summary_asbr_lsa_by_prefix): Changed to
3182 macro OSPF_SUMMARY_ASBR_LSA_SELF_FIND_BY_PREFIX.
3183 (ospf_find_self_external_lsa_by_prefix): Changed to
3184 macro OSPF_EXTERNAL_LSA_SELF_FIND_BY_PREFIX.
3185
31861999-11-11 Toshiaki Takada <takada@zebra.org>
3187
3188 * ospfd.c (ospf_abr_type): ospf_abr_type_cisco, ospf_abr_type_ibm,
3189 ospf_abr_type_shortcut and ospf_abr_type_standard DEFUNs are
3190 combined.
3191 * ospfd.c (no_ospf_abr_type): no_ospf_abr_type_cisco,
3192 no_ospf_abr_type_ibm and no_ospf_abr_type_shortcut DEFUNS are
3193 combined.
3194
31951999-11-10 Toshiaki Takada <takada@zebra.org>
3196
3197 * ospf_route.c (ospf_lookup_int_by_prefix): Move function to
3198 ospf_interface.c and change name to ospf_if_lookup_by_prefix ().
3199
32001999-11-01 Alex Zinin <zinin@amt.ru>
3201 * ospf_packet.c
3202 some correction to LSU processing
3203
3204 * ospf_lsa.c ospfd.h
3205 randomize initial LSA refreshment interval
3206 and limit the size of LSA-group to 10
3207 to let randomization work more effectively.
3208
32091999-10-31 Alex Zinin <zinin@amt.ru>
3210 * ospf_interface.c
3211 cancel t_network_lsa_self
3212 when freeing int structure
3213
3214 * ospf_abr.c ospf_asbr.c ospf_flood.c ospf_lsa.c
3215 ospf_lsa.h ospf_lsdb.h ospfd.c ospfd.h
3216
3217 Summary and ASE LSA refreshment functions
3218 added---LSA refreshment is paced to 70 LSAs
3219 per sec to avoid link overflow. Refreshment events
3220 are further randomized within a 10 sec interval
3221 to avoid syncing.
3222
3223 Also the sigfault of memcmp() in ospf_lsa_is_different()
3224 is fixed.
3225
32261999-10-30 Alex Zinin <zinin@amt.ru>
3227 * ospf_nsm.c
3228 Fix the bug where MAX_AGE LSAs
3229 are included into the DB summary.
3230
3231 * ospf_interface.c
3232 allocate 2*MTU input buffer instead of just MTU
3233 for the cases when the other router mistakenly
3234 sends larger packets thus causing fragmentation, etc.
3235
3236 * ospf_nsm.c
3237 in nsm_reset_nbr() lists should be freed
3238 not when they are empty.
3239
32401999-10-29 Kunihiro Ishiguro <kunihiro@zebra.org>
3241
3242 * ospf_zebra.c (ospf_acl_hook): Move OSPF_IS_ASBR and OSPF_IS_ABR
3243 check inside of if (ospf_top).
3244
32451999-10-29 Alex Zinin <zinin@amt.ru>
3246 * ospf_lsa.c ospf_lsdb.c :
3247 add assertion in lsa and lsa->data alloc functions,
3248 as well as in lsdb_add for new->data
3249
3250 * ospf_lsdb.c: free hash table correctly
3251
32521999-10-28 John Capo <jc@irbs.com>
3253
3254 * ospf_packet.h (OSPF_PACKET_MAX): Correct MAX packet length
3255 calculation
3256
32571999-10-27 Kunihiro Ishiguro <kunihiro@zebra.org>
3258
3259 * OSPF-TRAP-MIB.txt: New file added. Edited version of RFC1850.
3260
3261 * OSPF-MIB.txt: New file added. Edited version of RFC1850.
3262
32631999-10-27 Alex Zinin <zinin@amt.ru>
3264 * ospfd, ospf_zebra, ospf_abr
3265 "area import-list" command is added.
3266 This command allows to filter the inter-area routes
3267 injected into an area. Access list hook function
3268 extended to invalidate area exp/imp lists.
3269
32701999-10-25 Yoshinobu Inoue <shin@nd.net.fujitsu.co.jp>
3271
3272 * ospfd.c (ospf_interface_run): Enable to detect P2P network
3273 on an OSPF interface.
3274
32751999-10-19 Jordan Mendelson <jordy@wserv.com>
3276
3277 * ospf_lsdb.c (ospf_lsdb_add): Fix bug of crash
3278 in ospf_ls_retransmit_lookup ().
3279
32801999-10-19 Vladimir B. Grebenschikov <vova@express.ru>
3281
3282 * ospf_route.c: Workaround about installation of OSPF routes into
3283 the zebra daemon. Add checking of existance routes. Free
3284 ospf_top->old_table if it exists.
3285
32861999-10-15 Jordan Mendelson <jordy@wserv.com>
3287
3288 * Add support for MD5 authentication.
3289
32901999-10-12 Alex Zinin <zinin@amt.ru>
3291 * ospfd.c, ospfd.h, ospf_abr.c:
3292 a new command "area export-list" was added, it allows
3293 the admin. to control which intra-area routes are
3294 announced to other areas by the ABR
3295
32961999-10-12 Alex Zinin <zinin@amt.ru>
3297 * ospf_asbr.c (ospf_asbr_check_lsas): Fix bug of coredump
3298 when "no redistribute" is used after a distribute list
3299 denying some networks was used
3300
33011999-10-05 Toshiaki Takada <takada@zebra.org>
3302
3303 * ospf_route.c (ospf_path_dup): New function added.
3304
33051999-10-05 Toshiaki Takada <takada@zebra.org>
3306
3307 * ospf_interface.[ch]: Some of VL related funciton name changed.
3308
33091999-09-27 Alex Zinin <zinin@amt.ru>
3310
3311 * ospf_zebra.c: Distribute-list functionality added
3312
33131999-09-27 Toshiaki Takada <takada@zebra.org>
3314
3315 * ospfd.c (show_ip_ospf): Fix bug of segmentation fault when no ospf
3316 instance exists.
3317
33181999-09-25 Kunihiro Ishiguro <kunihiro@zebra.org>
3319
3320 * ospfd.c (ospf_interface_down): Fix bug of misusing nextnode()
3321 instead of node->next. Reported by Hiroki Ishibashi
3322 <ishibasi@dcd.abk.nec.co.jp>.
3323
3324 * ospf_route.c (show_ip_ospf_route): Add check for ospf is enabled
3325 or not.
3326
33271999-09-23 Alex Zinin <zinin@amt.ru>
3328
3329 * stub area support added
3330
33311999-09-23 Alex Zinin <zinin@amt.ru>
3332
3333 * fwd_addr in ASE-LSAs is now set correctly
3334 * ASE routing changed to check the fwd_addr
3335 and skip the route if the addr points to one
3336 of our interfaces to avoid loops.
3337
33381999-09-22 Alex Zinin <zinin@amt.ru>
3339
3340 * ospf_interface:
3341 ospf_vls_in_area() added, it returns
3342 the number of VLs configured through the area
3343
3344 * ospf_interface.c ospf_lsa.c ospf_lsdb.c ospfd.c
3345 honor correct mem alloc
3346
33471999-09-22 Alex Zinin <zinin@amt.ru>
3348
3349 * memory.[ch]:
3350 Some OSPF mem types added,
3351 plus more info in "show mem"
3352
33531999-09-21 Alex Zinin <zinin@amt.ru>
3354
3355 * ospfd.c:
3356 "area range substitute" added.
3357 It can be used on NAT-enabled (IP-masquarade)
3358 routers to announce private networks
3359 from an area as public ones into the outside
3360 world (not in the RFC, btw :)
3361
33621999-09-21 Alex Zinin <zinin@amt.ru>
3363
3364 * ospfd.c:
3365 "area range suppress" added.
3366 This command allows to instruct the router
3367 to be silent about specific ranges, i.e.,
3368 it is a method of route filtering on area
3369 borders
3370
33711999-09-21 Alex Zinin <zinin@amt.ru>
3372
3373 * ospfd.c VLs removed when "no network area" executed
3374
33751999-09-20 Alex Zinin <zinin@amt.ru>
3376
3377 * ospf_ase.c bug fix for not-zero fwd_addr
3378 and directly connected routes.
3379
33801999-09-20 Yon Uriarte <yon@plannet.de>
3381
3382 * ospf_packet.c (ospf_make_ls_req): Introduce delta value for
3383 checking the length of OSPF packet exceeds MTU or not.
3384
3385 * ospf_lsa.c (ospf_lsa_different): Apply ntohs for checking
3386 l1->data->length.
3387
33881999-09-18 Alex Zinin <zinin@amt.ru>
3389
3390 * ospf_lsa.c bug fix for ospf_network_lsa() to
3391 include itself into the RID list
3392
33931999-09-10 Alex Zinin <zinin@amt.ru>
3394
3395 * Alternative ABR behaviors IBM/Cisco/Shortcut
3396 implemented
3397
33981999-09-10 Alex Zinin <zinin@amt.ru>
3399
3400 * router and network-LSA origination
3401 changed to honor MinLSInterval
3402
34031999-09-08 Alex Zinin <zinin@amt.ru>
3404
3405 * modified ABR behavior to honor VLs and transit
3406 areas
3407
34081999-09-07 Alex Zinin <zinin@amt.ru>
3409
3410 * completed VL functionality
3411
34121999-09-06 Kunihiro Ishiguro <kunihiro@zebra.org>
3413
3414 * ospf_asbr.c: New file.
3415 ospf_asbr.h: New file.
3416
3417 * ospf_zebra.c (ospf_redistribute_connected): Add redistribute
3418 related stuff.
3419
34201999-09-05 Kunihiro Ishiguro <kunihiro@zebra.org>
3421
3422 * ospfd.h (OSPF_FLAG_VIRTUAL_LINK): Change OSPF_FLAG_VEND to
3423 OSPF_FLAG_VIRTUAL_LINK for comprehensiveness.
3424
34251999-09-03 Kunihiro Ishiguro <kunihiro@zebra.org>
3426
3427 * ospf_spf.c (ospf_spf_register): Change name from
3428 ospf_spf_route_add() to ospf_spf_register().
3429 Include "ospfd/ospf_abr.h" for ospf_abr_task() prototype.
3430
34311999-09-02 Kunihiro Ishiguro <kunihiro@zebra.org>
3432
3433 * ospf_lsa.c (ospf_external_lsa_install): Change to update
3434 lsa->data rather than install new one, when same id lsa is already
3435 installed.
3436
34371999-09-01 Kunihiro Ishiguro <kunihiro@zebra.org>
3438
3439 * ospf_lsa.c (ospf_router_lsa_install): Return lsa value.
3440 (ospf_network_lsa_install): Likewise.
3441 (ospf_summary_lsa_install): Likewise.
3442 (ospf_summary_asbr_lsa_install): Likewise.
3443 (ospf_external_lsa_install): Likewise.
3444
3445 * ospf_spf.c (ospf_spf_calculate): Comment out debug function
3446 ospf_rtrs_print().
3447
34481999-08-31 Kunihiro Ishiguro <kunihiro@zebra.org>
3449
3450 * ospf_spf.c (ospf_rtrs_free): Add ospf_spf_calculate() for
3451 freeing rtrs.
3452
34531999-08-31 Toshiaki Takada <takada@zebra.org>
3454
3455 * ospf_lsa.c (show_ip_ospf_database_summary),
3456 (show_ip_ospf_database_summary_asbr),
3457 (show_ip_ospf_database_external): New function added.
3458 `show ip ospf database summary',
3459 `show ip ospf database asbr-summary'
3460 `show ip ospf database external' command can be used.
3461
3462 * ospf_lsa.c (ospf_lsa_count_table): New function added.
3463 (show_ip_ospf_database_all): show nothing if a type of LSA
3464 does not exist.
3465
34661999-08-31 Kunihiro Ishiguro <kunihiro@zebra.org>
3467
3468 * ospf_lsa.c (ospf_maxage_lsa_remover): Preserve next pointer when
3469 the node is deleted.
3470
34711999-08-31 Toshiaki Takada <takada@zebra.org>
3472
3473 * ospf_flood.c (ospf_ls_retransmit_lookup): change to return
3474 struct ospf_lsa *.
3475 (ospf_ls_request_new), (ospf_ls_request_free),
3476 (ospf_ls_request_add), (ospf_ls_request_delete),
3477 (ospf_ls_request_delete_all), (ospf_ls_request_lookup):
3478 New function added.
3479
3480 * ospf_packet.c (ospf_ls_upd_send_lsa): New function added.
3481
3482 * ospf_lsa.h (LS_AGE): Slightly change macro definition.
3483
3484 * ospf_lsa.c (ospf_lsa_more_recent), (ospf_lsa_diffrent):
3485 Use LS_AGE macro.
3486
34871999-08-30 Alex Zinin <zinin@amt.ru>
3488
3489 * ospfd.c
3490 fix a bug with area range config write
3491 added "show ip ospf" command, it will be enhanced later on
3492
34931999-08-30 Alex Zinin <zinin@amt.ru>
3494
3495 * ospf_lsa.c
3496 updated ospf_router_lsa() to honor flags (B-bit)
3497
34981999-08-30 Alex Zinin <zinin@amt.ru>
3499
3500 * ospf_abr.c
3501 wrote major functions implementing ABR activity
3502
35031999-08-30 Alex Zinin <zinin@amt.ru>
3504
3505 * ospf_ia.c ospf_route.c ospf_route.h
3506 fixed the bug with ospf_route.origin field.
3507 Now it holds pointer to lsa_header
3508
35091999-08-30 Alex Zinin <zinin@amt.ru>
3510
3511 * ospf_flood.c ospf_flood.h:
3512 transformed ospf_flood_if_select into ospf_flood_through_area()
3513 added new ospf_flood_if_select() and ospf_flood_through_as()
3514
35151999-08-30 Toshiaki Takada <takada@zebra.org>
3516
3517 * ospf_flood.[ch]: New file added.
3518
3519 * ospf_packet.c (ospf_lsa_flooding),
3520 (ospf_lsa_flooding_select_if): functions move to ospf_flood.c
3521
3522 * ospf_neighbor.c (ospf_put_lsa_on_retransm_list),
3523 (ospf_remove_lsa_from_retransm_list),
3524 (ospf_nbr_remove_all_lsas_from_retransm_list),
3525 (ospf_lsa_remove_from_ls_retransmit):
3526 (ospf_lsa_retransmit): functions move to
3527 ospf_flood.c, and change function's name:
3528
3529 ospf_put_lsa_on_retransm_list ()
3530 -> ospf_ls_retransmit_add ()
3531 ospf_remove_lsa_from_retransm_list ()
3532 -> ospf_ls_retransmit_delete ()
3533 ospf_nbr_remove_all_lsas_from_retransm_list ()
3534 -> ospf_ls_retransmit_clear ()
3535 ospf_lsa_remove_from_ls_retransmit ()
3536 -> ospf_ls_retransmit_delete_nbr_all ()
3537 ospf_lsa_retransmit ()
3538 -> ospf_ls_retransmit_add_nbr_all ()
3539
3540 * ospf_lsa.c (ospf_lsa_lookup_from_list): function move to
3541 ospf_flood.c, and change name to ospf_ls_retransmit_lookup ().
3542
35431999-08-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3544
3545 * ospf_neighbor.c (ospf_nbr_lookup_by_addr): Use
3546 route_node_lookup() instead of route_node_get().
3547
3548 * ospf_packet.c (ospf_ls_upd): Temporary comment out (6) check.
3549
35501999-08-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3551
3552 * ospf_route.c (ospf_lookup_int_by_prefix): Add check of
3553 oi->address.
3554
35551999-08-29 Alex Zinin <zinin@amt.ru>
3556 * ospf_lsa.c
3557 MaxAge LSA deletion functions added.
3558
35591999-08-29 Alex Zinin <zinin@amt.ru>
3560 * ospf_neighbor.c
3561 ospf_nbr_lookup_by_addr(): added route_unlock_node()
3562 when function returns NULL if (rn->info == NULL)
3563
35641999-08-29 Alex Zinin <zinin@amt.ru>
3565 * ospfd.c
3566 added a hack for area range deletion
3567
35681999-08-29 Alex Zinin <zinin@amt.ru>
3569 * ospf_lsa.h
3570 included lsdb field into struct ospf_lsa, to find
3571 LSDB easier when removing MaxAge LSAs.
3572
35731999-08-29 Alex Zinin <zinin@amt.ru>
3574 * ospf_lsa.c ospf_neighbor.c ospf_nsm.c
3575 ospf_packet.c changed to honor new retransmit list
3576 management functions
3577
35781999-08-29 Alex Zinin <zinin@amt.ru>
3579 * ospf_neighbor.c , .h added new retransmit list functions.
3580
35811999-08-29 Alex Zinin <zinin@amt.ru>
3582 * Makefile.in
3583 added ospf_ase, ospf_abr, ospf_ia
3584
35851999-08-29 Alex Zinin <zinin@amt.ru>
3586 * ospf_spf.c:
3587 - changed ospf_next_hop_calculation() to include interface
3588 and nexthop addr for directly connected routers---more informative
3589 and solves problem with route installation into the kernel
3590 - changed ospf_nexthop_out_if_addr() to support routers, not only
3591 transit networks
3592 - added ospf_process_stubs();
3593
35941999-08-29 Alex Zinin <zinin@amt.ru>
3595 * ospf_lsa.c:
3596 - changed ospf_router_lsa() to provide correct links
3597 for p-t-p interfaces;
3598 - changed ospf_summary_lsa_install() to support table
3599 of self-originated summary-LSAs;
3600 - added ospf_summary_asbr_lsa_install() and ospf_external_lsa_install()
3601 - changed ospf_lsa_install() accordingly
3602 - changed show_ip_ospf_database_router_links() to support p-t-p
3603
36041999-08-29 Kunihiro Ishiguro <kunihiro@zebra.org>
3605
3606 * ospf_packet.c (ospf_make_db_desc): Only master can clear more
3607 flag.
3608
36091999-08-29 Kunihiro Ishiguro <kunihiro@zebra.org>
3610
3611 * ospf_packet.c (ospf_read): Add check of IP src address.
3612
36131999-08-28 Alex Zinin <zinin@amt.ru>
3614 * ospf_neighbor.h
3615 added ospf_nbr_lookup_by_routerid()
3616
36171999-08-28 Alex Zinin <zinin@amt.ru>
3618 * ospfd.h
3619 added ABR/ASBR flag definitions and fields;
3620 added iflist field to area structure;
3621 summary_lsa_self and summary_lsa_asbr_self are changed
3622 to be route tables;
3623 added ranges field---configured area ranges;
3624 A separate Routers RT added;
3625 area range config commands and config write added
3626
3627
36281999-08-28 Alex Zinin <zinin@amt.ru>
3629 * ospf_route.c :
3630 ospf_route_free()--added code to free the list of paths;
3631 The following functions added:
3632 ospf_intra_add_router();
3633 ospf_intra_add_transit();
3634 ospf_intra_add_stub();
3635 the last function uses new ospf_int_lookup_by_prefix();
3636 show_ip_ospf_route_cmd()--changed to support new RT structure;
3637 added ospf_cmp_routes()--general route comparision function;
3638 added ospf_route_copy_nexthops() and ospf_route_copy_nexthops_from_vertex()
3639 they are used in ASE and IA routing;
3640 added ospf_subst_route() and ospf_add_route();
3641
36421999-08-28 Alex Zinin <zinin@amt.ru>
3643 * ospf_route.h :
3644 changed struct ospf_path to include output interface,
3645 changed struct ospf_route to support IA and ASE routing.
3646 added prototypes of the function used in IA and ASE modules.
3647
36481999-08-28 Alex Zinin <zinin@amt.ru>
3649 * ospf_lsa.h ospf_lsa.c :
3650 added ospf_my_lsa(), an interface independent version of
3651 ospf_lsa_is_self_originated(), it will be used in ASE and IA-routing.
3652
36531999-08-27 Kunihiro Ishiguro <kunihiro@zebra.org>
3654
3655 * ospf_interface.c (interface_config_write): Add check for
3656 oi->nbr_self.
3657
36581999-08-25 Toshiaki Takada <takada@zebra.org>
3659
3660 * ospf_lsa.c (ospf_lsa_dup): New function added.
3661
3662 * ospf_packet.c (ospf_write), (ospf_read): Print send/recv
3663 interface in debug message.
3664
36651999-08-25 Toshiaki Takada <takada@zebra.org>
3666
3667 * ospf_packet.c (ospf_ls_ack_send): The name is changed from
3668 `ospf_ls_ack_send'.
3669 (ospf_ls_ack_send_delayed) (ospf_ls_ack_timer): New function added.
3670 Delayed Link State Acknowledgment is scheduled by timer.
3671
36721999-08-25 Alex Zinin <zinin@amt.ru>
3673
3674 * ospf_lsa.c (ospf_router_lsa): Incorrectly included link to
3675 a stub network instead of link to a transit network into
3676 originated router-LSA, bug fixed.
3677
36781999-08-24 Toshiaki Takada <takada@zebra.org>
3679
3680 * ospfd.c (ospf_update_router_id): New function added.
3681
3682 * ospf_network.c (ospf_write): Create new socket per transmission.
3683 And select outgoing interface whether dst is unicast or multicast.
3684
3685 * ospf_packet.c: LSA flooding will work.
3686
36871999-08-24 VOP <vop@unity.net>
3688
3689 * ospf_route.c: Include "sockunion.h"
3690
36911999-08-24 Kunihiro Ishiguro <kunihiro@zebra.org>
3692
3693 * ospf_network.c (ospf_serv_sock_init): Enclose
3694 IPTOS_PREC_INTERNETCONTROL setting with #ifdef for OS which does
3695 not have the definition.
3696
36971999-08-23 Toshiaki Takada <takada@zebra.org>
3698
3699 * ospf_packet.c: Fix bug of DD processing.
3700
37011999-08-18 Toshiaki Takada <takada@zebra.org>
3702
3703 * ospf_lsa.c (show_ip_ospf_database): Show actual `LS age'.
3704
37051999-08-17 Toshiaki Takada <takada@zebra.org>
3706
3707 * ospf_lsa.h (OSPF_MAX_LSA): The value of OSPF_MAX_LSA is
3708 corrected. The bug of `mes_lookup' is fixed.
3709 This had been reported by Poul-Henning Kamp <phk@freebsd.org>.
3710
3711 * ospf_lsa.c (ospf_router_lsa_install): The name is changed from
3712 `ospf_add_router_lsa'.
3713 (ospf_network_lsa_install): The name is changed from
3714 `ospf_add_network_lsa'.
3715
3716 * ospf_interface.h (ospf_interface): Add member `nbr_self'.
3717
3718 * ospf_interface.c (ospf_if_is_enable): New function added.
3719
37201999-08-16 Toshiaki Takada <takada@zebra.org>
3721
3722 * ospf_lsa.h (struct lsa_header): The name is changed from
3723 `struct ospf_lsa'.
3724 (struct ospf_lsa): New struct added to control each LSA's aging
3725 and timers.
3726
3727 * ospf_lsa.c (ospf_lsa_data_free): The name is change from
3728 `ospf_lsa_free'.
3729 (ospf_lsa_data_new), (ospf_lsa_new), (ospf_lsa_free),
3730 (ospf_lsa_different), (ospf_lsa_install): New function added.
3731
3732 * ospf_packet.c (ospf_ls_upd_list_lsa): New function added.
3733
37341999-08-12 Toshiaki Takada <takada@zebra.org>
3735
3736 * ospf_nsm.c (nsm_reset_nbr): New function added.
3737 KillNbr and LLDown neighbor event call this function.
3738
37391999-08-10 Toshiaki Takada <takada@zebra.org>
3740
3741 * ospf_packet.c (ospf_ls_retransmit)
3742 (ospf_ls_upd_timer): New function added.
3743 Set retransmission timer for Link State Update.
3744
37451999-07-29 Toshiaki Takada <takada@zebra.org>
3746
3747 * ospf_ism.c (ospf_dr_election): Fix bug of DR election.
3748
37491999-07-28 Toshiaki Takada <takada@zebra.org>
3750
3751 * ospf_network.c (ospf_serv_sock_init): Set IP precedence field
3752 with IPTOS_PREC_INTERNET_CONTROL.
3753
3754 * ospf_nsm.c (nsm_change_status): Schedule NeighborChange event
3755 if NSM status change.
3756
3757 * ospf_packet.c (ospf_make_hello): Never include a neighbor in
3758 Hello packet, when the neighbor goes down.
3759
37601999-07-26 Kunihiro Ishiguro <kunihiro@zebra.org>
3761
3762 * Makefile.am (noinst_HEADERS): Add ospf_route.h.
3763
3764 * ospf_route.c (show_ip_ospf_route): Add `show ip ospf route'
3765 command.
3766
37671999-07-25 Toshiaki Takada <takada@zebra.org>
3768
3769 * ospf_lsa.c (ospf_router_lsa): Fix bug of LS sequence number
3770 assignement.
3771
37721999-07-25 Kunihiro Ishiguro <kunihiro@zebra.org>
3773
3774 * ospf_route.c (ospf_route_table_free): New function added.
3775
3776 * ospf_spf.c (ospf_spf_next): Free vertex w when cw's and w's
3777 distance is same.
3778
3779 * ospfd.h (struct ospf): Add old_table.
3780
3781 * ospf_main.c (sighup): Call of log_rotate () removed.
3782
3783 * ospf_lsa.c (ospf_lsa_is_self_originated): Fix bug of checking
3784 area->lsa as self LSA. This should be area->lsa_self.
3785
37861999-07-24 Kunihiro Ishiguro <kunihiro@zebra.org>
3787
3788 * ospf_zebra.c (ospf_zebra_add): ospf_zebra_add
3789 (),ospf_zebra_delete () added.
3790
3791 * ospf_spf.c (ospf_spf_calculate): Call ospf_intra_route_add ().
3792
37931999-07-24 Toshiaki Takada <takada@zebra.org>
3794
3795 * ospf_lsa.c: Change LS sequence number treatment.
3796 (ospf_lsa_is_self_originated): New function added.
3797 (show_ip_ospf_database_self_originated): New DEFUN added.
3798
37991999-07-23 Kunihiro Ishiguro <kunihiro@zebra.org>
3800
3801 * ospf_interface.c (ospf_if_lookup_by_addr): Add loopback check.
3802
38031999-07-22 Toshiaki Takada <takada@zebra.org>
3804
3805 * ospf_spf.c (ospf_nexthop_new), (ospf_nexthop_free),
3806 (ospf_nexthop_dup): function added.
3807 (ospf_nexthop_calculation): function changed.
3808
3809 * ospf_interface.c (ospf_if_lookup_by_addr): function added.
3810
38111999-07-21 Toshiaki Takada <takada@zebra.org>
3812
3813 * ospf_spf.c (ospf_spf_closest_vertex): function removed.
3814
38151999-07-21 Kunihiro Ishiguro <kunihiro@zebra.org>
3816
3817 * ospf_spf.c (ospf_spf_next): Apply ntohs for fetching metric.
3818
38191999-07-21 Toshiaki Takada <takada@zebra.org>
3820
3821 * ospf_neighbor.c (ospf_nbr_lookup_by_router_id): fundtion removed.
3822
3823 * ospf_lsa.c (show_ip_ospf_database_router): describe each
3824 connected link.
3825
38261999-07-21 Kunihiro Ishiguro <kunihiro@zebra.org>
3827
3828 * ospf_spf.c (ospf_spf_next): V is router LSA or network LSA so
3829 change behavior according to LSA type.
3830 (ospf_lsa_has_link): Link check function is added.
3831
38321999-07-20 Kunihiro Ishiguro <kunihiro@zebra.org>
3833
3834 * ospf_spf.c (ospf_spf_calculate_schedule): Add new function for
3835 SPF calcultion schedule addtition.
3836 (ospf_spf_calculate_timer_add): Rough 30 sec interval SPF calc
3837 timer is added.
3838 (ospf_spf_next_router): Delete ospf_spf_next_network ().
3839
3840 * ospf_lsa.c (show_ip_ospf_database_all): Network-LSA display
3841 header typo correction. Display of router LSA's #link added.
3842
38431999-07-19 Toshiaki Takada <takada@zebra.org>
3844
3845 * ospf_packet.c (ospf_check_network_mask): Added new function for
3846 receiving Raw IP packet on an appropriate interface.
3847
38481999-07-16 Toshiaki Takada <takada@zebra.org>
3849
3850 * ospfd.c (ospf_router_id): new DEFUN added.
3851
38521999-07-15 Toshiaki Takada <takada@zebra.org>
3853
3854 * ospf_spf.c (ospf_spf_init), (ospf_spf_free),
3855 (ospf_spf_has_vertex), (ospf_vertex_lookup),
3856 (ospf_spf_next_router), (ospf_spf_next_network),
3857 (ospf_spf_closest_vertex), (ospf_spf_calculate):
3858 function added.
3859
38601999-07-13 Toshiaki Takada <takada@zebra.org>
3861
3862 * ospf_ism.c: fix bug of DR Election.
3863
3864 * ospf_nsm.c: fix bug of adjacency forming.
3865
38661999-07-05 Kunihiro Ishiguro <kunihiro@zebra.org>
3867
3868 * ospfd.c (ospf_init): Change to use install_default.
3869
38701999-07-01 Rick Payne <rickp@rossfell.co.uk>
3871
3872 * ospf_zebra.c (zebra_init): Install standard commands to
3873 ZEBRA_NODE.
3874
38751999-06-30 Toshiaki Takada <takada@zebra.org>
3876
3877 * ospf_dump.c: Whole debug command is improved.
3878 (ISM|NSM) (events|status|timers) debug option added.
3879 (show_debugging_ospf): new DEFUN added.
3880
38811999-06-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3882
3883 * ospf_lsa.c (ospf_lsa_lookup_from_list): Change !IPV4_ADDR_CMP to
3884 IPV4_ADDR_SAME.
3885
38861999-06-29 Toshiaki Takada <takada@zebra.org>
3887
3888 * ospf_dump.c (ospf_summary_lsa_dump): Add summary-LSA dump routine.
3889 (ospf_as_external_lsa_dump): Add AS-external-LSA dump routine.
3890
3891 * ospf_nsm.c (nsm_twoway_received): fix condtion of adjacnet.
3892
3893 * ospf_ism.c (ospf_dr_election): fix DR Election.
3894
3895 * ospf_dump.c (ospf_nbr_state_message): fix `show ip ospf neighbor'
3896 command's state.
3897
38981999-06-29 Kunihiro Ishiguro <kunihiro@zebra.org>
3899
3900 * ospf_dump.c (ospf_router_lsa_dump): Add router-LSA dump routine.
3901
39021999-06-28 Toshiaki Takada <takada@zebra.org>
3903
3904 * ospf_lsa.c (show_ip_ospf_database_network): fix bug of
3905 `show ip ospf database network' command output.
3906
3907 * ospf_nsm.c (nsm_inactivity_timer): Clear list of Link State
3908 Retransmission, Database Summary and Link State Request.
3909
3910 * ospf_packet.c (ospf_ls_req_timer): New function added.
3911 Set Link State Request retransmission timer.
3912
39131999-06-27 Kunihiro Ishiguro <kunihiro@zebra.org>
3914
3915 * ospf_main.c (main): Change default output from ZLOG_SYSLOG to
3916 ZLOG_STDOUT.
3917
3918 * ospfd.c (ospf_init): Register show_ip_ospf_interface_cmd and
3919 show_ip_ospf_neighbor_cmd to VIEW_NODE.
3920
3921 * ospf_lsa.c (ospf_lsa_init): Register show_ip_ospf_database_cmd
3922 and show_ip_ospf_database_type_cmd to VIEW_NODE.
3923
39241999-06-25 Toshiaki Takada <takada@zebra.org>
3925
3926 * ospf_packet.c: fix bug of DD making.
3927 fix bug of LS-Update reading.
3928
39291999-06-23 Toshiaki Takada <takada@zebra.org>
3930
3931 * ospf_packet.c: All type of packets are changed to use
3932 fifo queue structure.
3933 (ospf_fill_header) function added.
3934
39351999-06-22 Toshiaki Takada <takada@zebra.org>
3936
3937 * ospf_packet.c (ospf_packet_new): New function added to handle
3938 sending ospf packet by fifo queue structure.
3939 (ospf_packet_free), (ospf_fifo_new), (ospf_fifo_push),
3940 (ospf_fifo_pop), (ospf_fifo_head), (ospf_fifo_flush),
3941 (ospf_fifo_free): Likewise.
3942
39431999-06-21 Toshiaki Takada <takada@zebra.org>
3944
3945 * ospf_nsm.c (ospf_db_desc_timer): function added.
3946 (nsm_timer_set) function added.
3947 * ospf_dump.c (ospf_option_dump): function added.
3948 * ospf_packet.c (ospf_ls_req) (ospf_make_ls_req): function added.
3949
39501999-06-20 Toshiaki Takada <takada@zebra.org>
3951
3952 * ospf_lsa.c (ospf_lsa_more_recent): function added.
3953 * ospf_neighbor.h (struct ospf_neighbor): Change member ms_flag
3954 to dd_flags.
3955
39561999-06-19 Toshiaki Takada <takada@zebra.org>
3957
3958 * ospf_lsa.c: DEFUN (show_ip_ospf_database) Added.
3959 * ospf_interface.c (if_ospf_cost), (if_ospf_dead_interval),
3960 (if_ospf_hello_interval), (if_ospf_priority),
3961 (if_ospf_retransmit_interval), (if_ospf_transmit_delay)
3962 argument changed from NUMBER to <range>.
3963 DEFUN (if_ospf_network_broadcast),
3964 DEFUN (if_ospf_network_non_broadcast),
3965 DEFUN (if_ospf_network_point_to_multipoint),
3966 DEFUN (if_ospf_network_point_to_point) functions are combined to
3967 DEFUN (if_ospf_network).
3968
39691999-06-18 Toshiaki Takada <takada@zebra.org>
3970
3971 * ospf_lsa.c: ospf_add_router_lsa (), ospf_add_network_lsa (),
3972 ospf_lsa_lookup (), ospf_lsa_count () Added.
3973
39741999-06-15 Toshiaki Takada <takada@zebra.org>
3975
3976 * DEFUN (ospf_debug_ism), DEFUN (ospf_debug_nsm),
3977 DEFUN (no_ospf_debug_ism), DEFUN (no_ospf_debug_nsm) Added.
3978 `debug ospf ism' command shows debug message.
3979 `debuf ospf nsm' command shows debug message.
3980
39811999-06-14 Toshiaki Takada <takada@zebra.org>
3982
3983 * ospf_lsa.c: ospf_network_lsa () Added.
3984 ospf_lsa_checksum () Added.
3985 * DEFUN (ospf_debug_packet), DEFUN (no_ospf_debug_packet) Added.
3986 `debug ospf packet' command shows debug message.
3987
39881999-06-13 Toshiaki Takada <takada@zebra.org>
3989
3990 * ospf_packet.h: Remove struct ospf_ls_req {}, ospf_ls_upd {},
3991 ospf_ls_ack {}.
3992
39931999-06-11 Toshiaki Takada <takada@zebra.org>
3994
3995 * ospf_dump.c: fix IP packet length treatment.
3996
39971999-06-10 Toshiaki Takada <takada@zebra.org>
3998
3999 * ospf_ism.h: Add OSPF_ISM_EVENT_EXECUTE() Macro Added.
4000 * ospf_nsm.h: Add OSPF_NSM_EVENT_EXECUTE() Macro Added.
4001
4002 * ospf_packet.c: ospf_db_desc (), ospf_db_desc_send () Added.
4003 ospf_make_hello (), ospf_make_db_desc () Added.
4004 ospf_db_desc_proc () Added.n
4005
4006 * Database Description packet can be processed.
4007
40081999-06-08 Toshiaki Takada <takada@zebra.org>
4009
4010 * ospf_lsa.c: New file.
4011
40121999-06-07 Toshiaki Takada <takada@zebra.org>
4013
4014 * ospf_neighbor.c: ospf_fully_adjacent_count () Added.
4015
40161999-06-07 Kunihiro Ishiguro <kunihiro@zebra.org>
4017
4018 * ospf_spf.[ch]: New file.
4019
40201999-05-30 Kunihiro Ishiguro <kunihiro@zebra.org>
4021
4022 * ospf_zebra.c: Changed to use lib/zclient.c routines.
4023
4024 * ospf_zebra.h (zebra_start): Remove struct zebra.
4025
40261999-05-29 Kunihiro Ishiguro <kunihiro@zebra.org>
4027
4028 * ospfd.c (ospf_config_write): Add cast (unsigned long int) to
4029 ntohl for sprintf warning.
4030
40311999-05-19 Toshiaki Takada <takada@zebra.org>
4032
4033 * ospf_ism.c (ospf_dr_election): Join AllDRouters Multicast group
4034 if interface state changes to DR or BDR.
4035
40361999-05-14 Stephen R. van den Berg <srb@cuci.nl>
4037
4038 * ospf_main.c (signal_init): SIGTERM call sigint.
4039 (sigint): Logging more better message.
4040
40411999-05-12 Toshiaki Takada <takada@zebra.org>
4042
4043 * ospfd.c: Fix bug of `no router ospf' statement, it will work.
4044
40451999-05-11 Toshiaki Takada <takada@zebra.org>
4046
4047 * ospf_neighbor.c: ospf_nbr_free () Added.
4048
40491999-05-10 Toshiaki Takada <takada@zebra.org>
4050
4051 * ospfd.h: struct ospf_area { }, struct ospf_network { } Changed.
4052 * Fix bug of `no network' statement, it will work.
4053
40541999-05-07 Toshiaki Takada <takada@zebra.org>
4055
4056 * ospf_interface.c, ospf_zebra.c: Fix bug of last interface is not
4057 updated by ospf_if_update ().
4058
40591999-04-30 Kunihiro Ishiguro <kunihiro@zebra.org>
4060
4061 * Makefile.am (noinst_HEADERS): Add ospf_lsa.h for distribution.
4062
40631999-04-25 Toshiaki Takada <takada@zebra.org>
4064
4065 * ospf_interface.c: DEFUN (no_if_ospf_cost),
4066 DEFUN (no_if_ospf_dead_interval),
4067 DEFUN (no_if_ospf_hello_interval),
4068 DEFUN (no_if_ospf_priority),
4069 DEFUN (no_if_ospf_retransmit_interval),
4070 DEFUN (no_if_ospf_transmit_delay) Added.
4071
4072 interface_config_write () suppress showing interface
4073 default values.
4074
40751999-04-25 Kunihiro Ishiguro <kunihiro@zebra.org>
4076
4077 * ospf_dump.c (ospf_timer_dump): If thread is NULL return "inactive".
4078
4079 * ospfd.c (ospf_if_update): Fix bug of using ospf_area { } instead
4080 of ospf_network { }. So `router ospf' statement in ospfd.conf
4081 works again.
4082 (ospf_if_update): Call ospf_get_router_id for updating router ID.
4083
40841999-04-25 Toshiaki Takada <takada@zebra.org>
4085
4086 * ospf_interface.c: DEFUN (if_ospf_network) deleted.
4087 DEFUN (if_ospf_network_broadcast),
4088 DEFUN (if_ospf_network_non_broadcast),
4089 DEFUN (if_ospf_network_point_to_multipoint),
4090 DEFUN (if_ospf_network_point_to_point),
4091 DEFUN (no_if_ospf_network) Added.
4092
40931999-04-23 Toshiaki Takada <takada@zebra.org>
4094
4095 * ospfd.h: struct area { } changed to struct ospf_network { }.
4096 Add struct ospf_area { }.
4097 * ospfd.c: Add ospf_area_lookup_by_area_id (), ospf_network_new (),
4098 and ospf_network_free ().
4099 DEFUN (area_authentication), DEFUN (no_area_authentication) Added.
4100
41011999-04-22 Toshiaki Takada <takada@zebra.org>
4102
4103 * ospf_lsa.h: New file.
4104 * ospf_packet.h: LSA related struct definition are moved to
4105 ospf_lsa.h.
4106 * ospf_packet.c: ospf_verify_header () Added.
4107
41081999-04-21 Toshiaki Takada <takada@zebra.org>
4109
4110 * ospf_ism.c: ospf_elect_dr () and related function is changed.
4111 DR Election bug fixed.
4112 * ospf_dump.c: ospf_nbr_state_message (), ospf_timer_dump () Added.
4113 * ospfd.c: DEFUN (show_ip_ospf_neighbor) Added.
4114
41151999-04-19 Kunihiro Ishiguro <kunihiro@zebra.org>
4116
4117 * ospf_main.c (main): access_list_init () is added for vty
4118 connection filtering.
4119
41201999-04-16 Toshiaki Takada <takada@zebra.org>
4121
4122 * ospfd.c: DEFUN (show_ip_ospf_interface) Added.
4123 * ospf_neighbor.c: ospf_nbr_count () Added.
4124
41251999-04-15 Toshiaki Takada <takada@zebra.org>
4126
4127 * ospfd.h: struct ospf { } Changed.
4128 * ospfd.c: ospf_lookup_by_process_id () Deleted.
4129 * ospf_ism.c: ospf_wait_timer () Added. WaitTimer will work.
4130
41311999-04-14 Toshiaki Takada <takada@zebra.org>
4132
4133 * ospf_ism.c: ospf_elect_dr () Added.
4134 * ospf_network.c: ospf_if_ipmulticast () Added.
4135
41361999-04-11 Toshiaki Takada <takada@zebra.org>
4137
4138 * ospf_interface.c: interface_config_write (),
4139 DEFUN (if_ip_ospf_cost),
4140 DEFUN (if_ip_ospf_dead_interval),
4141 DEFUN (if_ip_ospf_hello_interval),
4142 DEFUN (if_ip_ospf_priority),
4143 DEFUN (if_ip_ospf_retransmit_interval) and
4144 DEFUN (if_ip_ospf_transmit_delay) Added.
4145
41461999-04-08 Toshiaki Takada <takada@zebra.org>
4147
4148 * ospf_dump.c: ospf_packet_db_desc_dump () Added.
4149 * ospf_neighbor.c: ospf_nbr_bidirectional () Added.
4150 * ospf_nsm.c: nsm_twoway_received () Added.
4151
41521999-04-02 Toshiaki Takada <takada@zebra.org>
4153
4154 * ospf_neighbor.c: New file.
4155 * ospf_neighbor.h: New file.
4156 * ospf_nsm.c: New file.
4157 * ospf_nsm.h: New file.
4158 * ospf_packet.c: Add ospf_make_header (), ospf_hello () and
4159 ospf_hello_send (). Now OSPFd can receive Hello and send Hello.
4160
41611999-03-27 Kunihiro Ishiguro <kunihiro@zebra.org>
4162
4163 * ospf_packet.c: Add ospf_recv_packet (). Now OSPF Hello can receive.
4164
41651999-03-19 Toshiaki Takada <takada@zebra.org>
4166
4167 * ospf_packet.c: New file.
4168 * ospf_packet.h: New file.
4169 * ospf_network.c: New file.
4170 * ospf_network.h: New file.
4171 * ospfd.h: move OSPF message structure has moved to ospf_packet.h.
4172
41731999-03-17 Kunihiro Ishiguro <kunihiro@zebra.org>
4174
4175 * ospf_zebra.c (ospf_zebra_get_interface): Fix for IPv6 interface
4176 address.
4177
4178 * Makefile.am (install-sysconfDATA): Overwrite install-sysconfDATA
4179 for install ospfd.conf.sample as owner read only file.
4180
4181 * ospf_main.c (usage): Change to use ZEBRA_BUG_ADDRESS.
4182
41831999-03-15 Toshiaki Takada <takada@zebra.org>
4184
4185 * ospf_ism.c: New file.
4186 * ospf_ism.h: New file.
4187 * ospf_dump.c: New file.
4188 * ospf_dump.h: New file.
4189
4190 * ospfd.h: Add (struct ospf), (struct config_network),
4191 (struct message) structure.
4192
4193 * ospf_interface.c: Add ospf_if_match_network ().
4194 * ospf_interface.h (struct ospf_interface): Change struct members.
4195
4196 * ospfd.c: ospf_lookup_by_process_id (), ospf_network_new (),
4197 DEFUN (network_area): Added.
4198
4199 * ospfd.conf.sample: Change sample configuration.
4200
42011999-03-05 Toshiaki Takada <takada@zebra.org>
4202
4203 * ospf_interface.c: New file.
4204 * ospf_interface.h: New file.
4205 * ospf_zebra.h: New file.
4206 * ospf_zebra.c: Add interface function for zebra daemon.
4207 * ospfd.c: New file.
4208
42091999-02-23 Kunihiro Ishiguro <kunihiro@zebra.org>
4210
4211 * Move IPv6 codes and files to ospf6d directory.
4212
42131999-02-18 Peter Galbavy <Peter.Galbavy@knowledge.com>
4214
4215 * syslog support added
4216
42171998-12-22 Toshiaki Takada <takada@zebra.org>
4218
4219 * ospfd.h: New file.
4220 * ospf_lsa.h: New file.
4221
42221998-12-15 Kunihiro Ishiguro <kunihiro@zebra.org>
4223
4224 * Makefile.am: New file.
4225 * ospf_main.c: New file.
4226