blob: 76c220aa79e5fe5d9abb5831820d9cd9edf5a2f3 [file] [log] [blame]
paulf9ad9372005-10-21 00:45:17 +000012005-10-21 Paul Jakma <paul.jakma@sun.com>
2
pauld24f6e22005-10-21 09:23:12 +00003 * (general) SPF millisecond resolution timer with adaptive,
4 linear back-off holdtime. Prettification of ospf_timer_dump.
5 * ospf_dump.c: (ospf_timeval_dump) new function. The guts of
6 ospf_timer_dump, but made to be more dynamic in printing out
7 the relative timeval, sliding the precision printed out
8 according to the value.
9 (ospf_timer_dump) guts moved to ospf_timeval_dump.
10 * ospf_dump.h: export ospf_timeval_dump.
11 * ospf_flood.c: (ospf_flood) remove gettimeofday, use
12 the libzebra exported recent_time instead, as it's not
13 terribly critical to have time exactly right - the dropped
14 LSA will be retransmited to us if we don't ACK it.
15 * ospf_packet.c: (ospf_ls_upd_timer) Ditto, but here we're
16 not transmitting, just putting LSA back on update transmit list.
17 * ospfd.h: delay and holdtimes should be unsigned.
18 Add spf_max_holdtime and spf_hold_multiplier.
19 Update default defines for delay and hold time to be in msec.
20 (struct ospf) change the SPF timestamp to a struct timeval.
21 Remove ospf_timers_spf_(un)?set.
22 * ospfd.c: (ospf_timers_spf_{set,unset}) removed.
23 (ospf_new) initialise spf_max_holdtime and spf_hold_multiplier
24 * ospf_spf.c: (ospf_spf_calculate) SPF timestamp is a timeval
25 now, update with gettimeofday.
26 (ospf_spf_calculate_schedule) Change SPF timers to millisecond
27 resolution.
28 Make the holdtime be adaptive, with a linear increase in
29 holdtime ever consecutive SPF run which occurs within holdtime
30 of previous SPF, bounded by spf_max_holdtime.
31 * ospf_vty.c: Update spf timers commands.
32 (ospf_timers_spf_set) trivial helper.
33 (ospf_timers_throttle_spf_cmd) new command to set SPF delay,
34 initial hold and max hold times with millisecond resolution.
35 (ospf_timers_spf_cmd) Deprecated. Accept the old values,
36 convert to msec, truncate to new limits.
37 (no_ospf_timers_throttle_spf_cmd) set timers to defaults.
38 (no_ospf_timers_spf_cmd) deprecated form, same as previous.
39 (show_ip_ospf_cmd) Display SPF parameters and times.
40 (show_ip_ospf_neighbour_header) Centralise the 'sh ip os ne'
41 header.
42 (show_ip_ospf_neighbor_sub) Fix the field widths. Get rid of
43 the multiple spaces which were making the lines even longer.
44 (show_ip_ospf_neighbor_cmd) Use show_ip_ospf_neighbour_header
45 (show_ip_ospf_neighbor_all_cmd) ditto and fix the field
46 widths for NBMA neighbours.
47 (show_ip_ospf_neighbor_int) Use header function.
48 (show_ip_ospf_nbr_nbma_detail_sub) use sizeof for timebuf,
49 local array - safer.
50 (show_ip_ospf_neighbor_detail_sub) ditto
51 (ospf_vty_init) install the new SPF throttle timer commands.
52
532005-10-21 Paul Jakma <paul.jakma@sun.com>
54
paulf9ad9372005-10-21 00:45:17 +000055 * (general) OSPF fast, sub-second hello and 1s dead-interval
56 support.
57 * ospf_dump.c: (ospf_timer_dump) Print out milliseconds too.
58 Callers typically specify a length of 9, so most see
59 millisecs unless they specify the additional length.
60 * ospf_interface.h: (struct ospf_interface) new interface param,
61 fast_hello.
62 * ospf_interface.c: (ospf_if_table_lookup) add brackets,
63 gcc warning fix.
64 (ospf_new_if_params) Initialise fast_hello param.
65 (ospf_free_if_params) Check whether fast_hello is configured.
66 (ospf_if_new_hook) set fast_hello to default.
67 * ospf_ism.h: Wrap OSPF_ISM_TIMER_ON inside do {} while (0) to
68 prevent funny side-effects from its if statement when this
69 macro is used conditionally by other macros.
70 (OSPF_ISM_TIMER_MSEC_ON) new macro, set in milliseconds.
71 (OSPF_HELLO_TIMER_ON) new macro to set hello timer according
72 to whether fast_hello is set.
73 * ospf_ism.c: Update all setting of the hello timer to use
74 either OSPF_ISM_TIMER_MSEC_ON or OSPF_HELLO_TIMER_ON. The
75 former is used when hello is to be sent immediately.
76 * ospf_nsm.c: ditto
77 * ospf_packet.c: (ospf_hello) hello-interval is not checked
78 for mismatch if fast_hello is set.
79 (ospf_read) Annoying nit, fix "no ospf_interface" to be debug
80 rather than a warning, as it can be perfectly normal to
81 receive packets when logical subnets are used.
82 (ospf_make_hello) Set hello-interval to 0 if fast-hellos are
83 configured.
84 * ospf_vty.c: (ospf_auto_cost_reference_bandwidth) annoying
85 nit, don't vty_out if this command is given, it gets tired
86 quick.
87 (show_ip_ospf_interface_sub) Print the hello-interval
88 according to whether fast-hello is set or not.
89 Print the extra 5 millisec characters from (ospf_timer_dump)
90 if fast-hello is configured.
91 (ospf_vty_dead_interval_set) new function, common to all
92 forms of dead-interval command, to set dead-interval and
93 fast-hello correctly. If a dead-interval is given, unset
94 fast-hello, else if a hello-multiplier is set, set
95 dead-interval to 1 and fast-hello to given multiplier.
96 (ip_ospf_dead_interval_addr_cmd) use
97 ospf_vty_dead_interval_set().
98 (ip_ospf_dead_interval_minimal_addr_cmd) ditto.
99 (no_ip_ospf_dead_interval) Unset fast-hello.
100 (no_ip_ospf_hello_interval) Bug-fix, unset of hello-interval
101 should set it to OSPF_HELLO_INTERVAL_DEFAULT, not
102 OSPF_ROUTER_DEAD_INTERVAL_DEFAULT.
103 (config_write_interface) Write out fast-hello.
104 (ospf_config_write) Write a comment about
105 "auto-cost reference-bandwidth" having to be equal on all
106 routers. Hopefully just as noticeable as old practice of
107 writing to vty, but less annoying.
108 (ospf_vty_if_init) install the two new dead-interval
109 commands.
110 * ospfd.h: Add defines for OSPF_ROUTER_DEAD_INTERVAL_MINIMAL
111 and OSPF_FAST_HELLO_DEFAULT.
112
pauleb3da6d2005-10-18 04:20:33 +00001132005-10-18 Paul Jakma <paul.jakma@sun.com>
114
115 * (general) SPF memory management cleanup and fix for rare
116 double-free bug.
117 * ospf_spf.h: (struct vertex_parent) New struct to hold parent
118 specific data, eg the backlink and the parent vertex pointer,
119 and point to the appropriate general struct vertex_nexthop.
120 (struct vertex_nexthop) remove parent vertex pointer, so
121 this struct can be shared across vertices.
122 (struct vertex) rename list child to list children. Remove
123 list of nexthops, replace with list of vertex_parents.
124 * ospf_spf.c: (update_stat) trivial, remove cast from void *.
125 (vertex_nexthop_new) remove init of parent - field is gone
126 from struct vertex_nexthop.
127 (ospf_canonical_nexthops_free) Remove the canonical
128 vertex_nexthop memory objects. These are the vertex_nexthops
129 attached to the first level of router vertices from the root.
130 (vertex_parent_new) new function, create a vertex_parent.
131 (vertex_parent_free) ditto, but free it.
132 (ospf_vertex_new) Update to match changes to struct vertex.
133 (ospf_vertex_free) Recursively free a struct vertex and its
134 children. The parent list is used as a reference count.
135 vertex_nexthops must be free seperately, if required.
136 (ospf_vertex_dump) update to match struct vertex changes.
137 Print out backlink of parents too.
138 (ospf_vertex_add_parent) ditto.
139 (ospf_lsa_has_link) update comment.
140 (ospf_nexthop_add_unique) removed, not needed anymore.
141 (ospf_nexthop_merge) ditto.
142 (ospf_spf_consider_nexthop) renamed to ospf_spf_add_parent.
143 Simplified to just create vertex_parent and add it.
144 (ospf_spf_flush_parents) new function, flush out the parent
145 list.
146 (ospf_nexthop_calculation) Take the relevant route_lsa_link
147 as an argument, which simplifies things and removes the need
148 for the hack in ospf_nexthop_add_unique - ospf_spf_next
149 already knew exactly which link the cost calculated was for.
150 Update to match struct vertex changes too.
151 (ospf_spf_next) Don't create a vertex for W unnecessarily, if
152 it's there's a vertex already created for W, use it, and
153 hence there's no need to free it either.
154 Update some manipulation/comparisons of distance to match.
155 Flush the parent list if a lower cost path is found.
156 (ospf_spf_route_free) unused, removed.
157 (ospf_spf_dump) match the struct vertex changes, and dump the
158 ifname if possible.
159 (ospf_spf_calculate) At end of SPF, free the canonical nexthops
160 and call ospf_vertex_free on the root vertex to free the
161 entire tree.
162 * ospf_interface.c: (ospf_vl_set_params) match struct vertex
163 changes.
164 * ospf_route.c: (ospf_intra_route_add) ditto
165 (ospf_route_copy_nexthops_from_vertex) ditto
166
paul36238142005-10-11 04:12:54 +00001672005-10-11 Paul Jakma <paul.jakma@sun.com>
168
169 * ospf_api.c: sign warnings.
170 * ospf_apiserver.c: sign warning and convert all the struct
171 in_addr initialisations so as not to make assumptions about
172 how this struct is organised, initialise the s_addr member
173 explicitely.
174 * ospf_packet.c: Add const qualifier to auth_key.
175
vincent77df1f72005-10-06 07:46:22 +00001762005-10-06 Alain Ritoux <alain.ritoux@6wind.com>
177
178 * ospf_snmp.c: Avoid mixing interface and ospf_interface objects
179 which now allows snmpwalk to work with ospfIfTable and
180 also with ospfIfMetricTable
181
ajsf52d13c2005-10-01 17:38:06 +00001822005-10-01 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
183
184 * ospf_dump.c: Remove local hard-coded table ospf_redistributed_proto.
185 (ospf_redist_string) New function implemented using new library
186 function zebra_route_string(). Note that there are a few differences
187 in the output that will result: the new function returns strings
188 that are lower-case, whereas the old table was mixed case. Also,
189 the old table mapped ZEBRA_ROUTE_OSPF6 to "OSPFv3", whereas the
190 new function returns "ospf6".
191 * ospfd.h: Remove extern struct message ospf_redistributed_proto[],
192 and add extern const char *ospf_redist_string(u_int route_type)
193 instead.
194 * ospf_asbr.c: (ospf_external_info_add) In two messages, use
195 ospf_redist_string instead of LOOKUP(ospf_redistributed_proto).
196 * ospf_vty.c: Remove local hard-coded table distribute_str.
197 (config_write_ospf_redistribute,config_write_ospf_distribute): Use
198 new library function zebra_route_string() instead of distribute_str[].
199 * ospf_zebra.c: (ospf_redistribute_set,ospf_redistribute_unset,
200 ospf_redistribute_default_set,ospf_redistribute_check)
201 In debug messages, use ospf_redist_string() instead of
202 LOOKUP(ospf_redistributed_proto).
203
jardin6638c1a2005-10-01 00:08:54 +00002042005-09-30 Vincent Jardin <vincent.jardin@6wind.com>
205
206 * ospf_dump.c, ospf_ia.c, ospf_spf.c, ospf_ase.c:
207 remove unused DEBUG
208
vincentba682532005-09-29 13:52:57 +00002092005-09-29 Alain Ritoux <alain.ritoux@6wind.com>
210
vincent5e4914c2005-09-29 16:34:30 +0000211 * ospf_ism.c: generate SNMP traps on Interface state change
212 * ospf_nsm.c: generate SNMP traps on Neighbour state change
213 * ospf_snmp.[ch]: support for SNMP traps for interface and neighbours.
214
2152005-09-29 Alain Ritoux <alain.ritoux@6wind.com>
216
vincentba682532005-09-29 13:52:57 +0000217 * ospf_vty.c: forece default route LSA to be re_issued whenever
218 cost is changed ( [no] ip ospf area XXX default-cost YYY)
219 Support ignore-mtu option
220 * ospfd.h: define OSPF_MTU_IGNORE_DEFAULT
221 * ospf_packet.c: support ignore-mtu option
222 * ospf_interface.h: field added for skipping MTU check
223 * ospf_interface.c: fix memory leak in ospf_crypt_key_delete()
224 Set mtu_ignore field to default value
225 * ospf_abr.[ch]: export ospf_abr_announce_network_to_area()
226 * ospf_ism.h: add MACRO to convert internal ISM status into SNMP
227 correct values
228 * ospf_snmp.c: add sanity check on LSA type in lsdb_lookup_next()
229 convert OSPFIFSTATE internal status into SNMP values
230
vincentc1a03d42005-09-28 15:47:44 +00002312005-09-28 Alain Ritoux <alain.ritoux@6wind.com>
232
233 * ospf_packet.c: use new md5 API
234
ajs5339cfd2005-09-19 13:28:05 +00002352005-09-19 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
236
237 * ospf_lsa.h: (ospf_external_lsa_flush) Comment out the 5th argument
238 (nexthop) since it is not used in the function (except inside
239 some commented-out code).
240 * ospf_lsa.c: (ospf_external_lsa_flush,ospf_external_lsa_refresh)
241 Comment out the 5th argument to ospf_external_lsa_flush.
242 * ospf_asbr.c: (ospf_redistribute_withdraw) Comment out 5th arg
243 to ospf_external_lsa_flush.
244 * ospf_vty.c: (no_ospf_default_information_originate) Eliminate 5th
245 uninitialized nexthop arg to ospf_external_lsa_flush.
246 * ospf_zebra.c: (ospf_zebra_read_ipv4) Comment out 5th arg
247 to ospf_external_lsa_flush.
248 * ospfd.c: (ospf_network_set) Comment out 5th arg
249 to ospf_external_lsa_flush.
250
ajse6a0bf92005-09-17 18:53:38 +00002512005-09-17 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
252
253 * ospf_opaque.c:
254 (ospf_opaque_lsa_refresh_schedule,ospf_opaque_lsa_flush_schedule)
255 No need to call ospf_lookup(), just use lsa0->area->ospf instead.
256
hassobb5b7552005-08-21 20:01:15 +00002572005-08-21 Hasso Tepper <hasso at quagga.net>
258
259 * ospf_vty.c: Make "show ip ospf neighbor xxx" commands work.
260 Interface should be specified by name now.
261
hasso54bedb52005-08-17 13:31:47 +00002622005-08-17 Hasso Tepper <hasso at quagga.net>
263
264 * ospf_vty.c: Check carefully if interface exists before trying to
265 print info about it.
266
hasso01018ce2005-08-05 07:40:15 +00002672005-08-05 Hasso Tepper <hasso at quagga.net>
268
269 * ospf_zebra.c: Don't assert/stop before type == ZEBRA_ROUTE_MAX if
270 dealing with routemaps. There is ospf->route_map[ZEBRA_ROUTE_MAX]
271 for default-information.
272
paulc8987752005-07-26 06:07:22 +00002732005-07-26 Paul Jakma <paul.jakma@sun.com>
274
275 * ospf_abr.c: (ospf_abr_announce_network_to_area) SET_FLAG
276 should be on lsa not old, which may be freed for one thing,
277 obviously.
278
pauld57834f2005-07-12 20:04:22 +00002792005-07-12 Paul Jakma <paul.jakma@sun.com>
280
281 * ospfd.h: add OSPF_ABR_DEFAULT for convenience, make
282 OSPF_ABR_CISCO be the default ABR type.
283 * ospfd.c: (ospf_new) initialise abr_type to OSPF_ABR_DEFAULT
284 * ospf_vty.c: (no_ospf_abr_type_cmd) add standard as a negatable
285 abr_type. default abr_type should be OSPF_ABR_DEFAULT.
286 (ospf_config_write) test whether default abr_type against
287 OSPF_ABR_DEFAULT, rather than any specific ABR_TYPE.
288
hasso8469bd72005-06-20 20:50:10 +00002892005-06-20 Hasso Tepper <hasso at quagga.net>
hassof4833e92005-06-20 20:42:26 +0000290
291 * ospf_nsm.c: Make database exchange for NSSA database work.
292
paul7461d452005-06-13 13:57:16 +00002932005-06-13 Paul Jakma <paul.jakma@sun.com>
294
295 * ospf_spf.c: Try get more information on a SEGV under
296 ospf_spf_vertex_add_parent.
297 (ospf_vertex_free) NULL out the child and nexthop lists
298 (ospf_vertex_add_parent) nexthop and child can not be NULL
299 vertex_nexthop's parent->child list can not be NULL
300 (ospf_spf_next) w and cw are per-loop iteration variables, move
301 declarations into loop body.
302
hasso1ddd7292005-06-07 19:54:04 +00003032005-06-07 Hasso Tepper <hasso at quagga.net>
304
305 * ospf_apiserver.c: Fix obvious error in notifying clients about ISM
306 changes - oi->ifp->status doesn't give to us info about ISM,
307 oi->state does.
308
paul7e440862005-06-01 11:20:51 +00003092005-06-01 Akihiro Mizutani <mizutani@net-chef.net>
310
311 * ospf_ism.c (ospf_elect_bdr/ospf_elect_dr): Fix DR election bug.
312
paul500e4182005-05-26 17:11:13 +00003132005-05-26 Paul Jakma <paul.jakma@sun.com>
314
315 * ospf_abr.c: (ospf_abr_update_aggregate) Fix comment, cost bug itself
316 had been fixed long ago by Sowmini.
317
paula3387a42005-05-18 23:29:57 +00003182005-05-19 Paul Jakma <paul.jakma@sun.com>
319
320 * ospf_interface.c: (ospf_if_table_lookup) Fix a serious bug
321 a less serious one.
322 1: this function is supposed to lookup
323 entries in the oifs ospf_interface route_table and return either
324 an existing oi or NULL to indicate not found, its caller depends
325 on this, yet this function uses route_node_get which /always/
326 returns a route_node - one is created if none exists. Use
327 route_node_lookup instead. This should fix root cause of the
328 reports of the (ospf_add_to_if) assert being hit.
329 2: oi's are inserted into this table with prefixlength set to
330 /32 (indeed, it should be a hash table, not a route_table),
331 however prefixlength to lookup was not changed, if no valid entry
332 can be inserted other than /32, then nothng but /32 should be
333 looked up. This possibly only worked by fluke..
334 Fix confirmed by 2 reporters (one list, one IRC), definitely a
335 backport candidate once it has been incubated in HEAD for a while.
336 Thanks to Patrick Friedel and Ivan Warren for testing.
337
paul69310a62005-05-11 18:09:59 +00003382005-05-11 Paul Jakma <paul.jakma@sun.com>
339
340 * (general) Fix memory leaks in opaque AS-scope LSAs, reported and
341 with much debugging done by by scott collins <scollins@agile.tv>.
342 * ospf_lsa.c: (ospf_discard_from_db) dont call
343 ospf_ase_unregister_external_lsa for opaque-lsa's, opaques are
344 never registered with ase in the first place.
345 * ospf_packet.c: (general) Disabuse opaque related code of its
346 tendency to try gather up things into temporary lists.
347 (ospf_ls_upd) remove the temporary lists opaque uses, call
348 opaque functions inline, just like all other types.
349 (ospf_ls_ack) ditto.
350 (ospf_recv_packet) fixup sign warning.
351 * ospf_opaque.c: (general) fix the unneeded use of lists, and
352 untwist some of the logic.
353 (ospf_opaque_self_originated_lsa_received) take a single LSA
354 as argument, not a list of them. Remove the list loop. Logic
355 otherwise unchanged.
356 (ospf_opaque_ls_ack_received) Mostly ditto. But untwist the logic,
357 move the actions up into the switch block, remove the goto's and
358 sanitise the logic near the end a bit.
359 * ospf_opaque.h: Adjust definitions of aforementioned functions
360 in ospf_opaque.c to match.
361
paul42c98192005-05-07 02:22:51 +00003622005-05-07 Yar Tikhiy <yar@comp.chem.msu.su>
363
364 * ospf_network.c: Log ifindex on multicast membership leave/join
365 events.
366
paul4dadc292005-05-06 21:37:42 +00003672005-05-06 Paul Jakma <paul.jakma@sun.com>
368
369 * (general) extern and static qualifiers added.
370 unspecified arguments in definitions fixed, typically they should
371 be 'void'.
372 function casts added for callbacks.
373 Guards added to headers which lacked them.
374 Proper headers included rather than relying on incomplete
375 definitions.
376 gcc noreturn function attribute where appropriate.
377 * ospf_opaque.c: remove the private definition of ospf_lsa's
378 ospf_lsa_refresh_delay.
379 * ospf_lsa.h: export ospf_lsa_refresh_delay
380 * ospf_packet.c: (ospf_make_md5_digest) make *auth_key const,
381 correct thing to do - removes need for the casts later.
382 * ospf_vty.c: Use vty.h's VTY_GET_INTEGER rather than ospf_vty's
383 home-brewed versions, shuts up several warnings.
384 * ospf_vty.h: remove VTY_GET_UINT32. VTY_GET_IPV4_ADDRESS and
385 VTY_GET_IPV4_PREFIX moved to lib/vty.h.
386 * ospf_zebra.c: (ospf_distribute_list_update_timer) hacky
387 overloading of the THREAD_ARG pointer should at least use
388 uintptr_t.
389
paul9e67dc22005-04-15 12:10:17 +00003902005-04-15 Zhipeng Gong <zpgong@cdc.3upsystems.com>
391
392 * ospf_abr.c: (ospf_abr_announce_network_to_area) dont forget
393 to approve LSAs for the case where metric has changed, lsa gets
394 flushed otherwise. (backport candidate).
395
ajs634f9ea2005-04-11 15:51:40 +00003962005-04-11 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
397
398 * ospf_zebra.c (ospf_zebra_add): Call zclient_send_message instead
399 of writen.
400
ajsd2fc8892005-04-02 18:38:43 +00004012005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
402
ajse4319de2005-04-02 23:23:55 +0000403 * ospf_interface.h: (ospf_if_lookup_by_name) Remove declaration of a
404 function that does not exist.
405
4062005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
407
ajs21fefa92005-04-02 23:16:41 +0000408 * ospf_zebra.c: (zebra_interface_if_lookup) Must use
409 if_lookup_by_name_len.
410
4112005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
412
ajsa3491982005-04-02 22:50:38 +0000413 * ospf_interface.c: (ospf_vl_new) Use strnlen to fix call to if_create.
414
4152005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
416
ajsd2fc8892005-04-02 18:38:43 +0000417 * ospf_vty.c: (show_ip_ospf_interface_sub) Show ifindex and interface
418 flags to help with debugging.
419 * ospf_zebra.c: (ospf_interface_delete) After deleting, set ifp->ifindex
420 to IFINDEX_INTERNAL.
421 (zebra_interface_if_lookup) Make function static. Tighten up code.
422
ajsaca72fd2005-03-31 15:18:21 +00004232005-03-31 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
424
425 * ospf_dump.c: (show_debugging_ospf) Show if ospf event debugging
426 is turned on.
427
ajsfd651fa2005-03-29 16:08:16 +00004282005-03-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
429
ajsa608bbf2005-03-29 17:03:49 +0000430 * ospf_zebra.c: (ospf_interface_state_up) If the MTU of an operative
431 interface changes, print a debug message and call ospf_if_reset()
432 to simulate down/up on the interface.
433 * ospf_interface.h: Declare new function ospf_if_reset().
434 * ospf_interface.c: (ospf_if_reset) New function to call ospf_if_down
435 and ospf_if_up for all ospf interfaces attached to an interface.
436
4372005-03-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
438
ajs5dcbdf82005-03-29 16:13:49 +0000439 * ospf_packet.c: (ospf_write_frags) Enhance error message to
440 show MTU. Also make function static.
441 (ospf_write) Enhance error message to show interface name and MTU.
442 Also make function static.
443
4442005-03-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
445
446 * ospf_vty.c: (show_ip_ospf_interface_sub) Display interface MTU and
447 bandwidth; this is useful for debugging problems. Also, the function
448 should be static.
ajsfd651fa2005-03-29 16:08:16 +0000449
hasso1b639042005-03-27 13:32:25 +00004502005-03-27 Hasso Tepper <hasso at quagga.net>
451
452 * ospf_snmp.c: Don't crash in snmp query if ospf instance doesn't
453 exist at all.
454
hasso343f5cc2005-03-25 19:48:40 +00004552005-03-25 Hasso Tepper <hasso at quagga.net>
456
457 * ospfd.h: Include log.h, fixes compile with gcc-4.0.
458
ajs9dbc7972005-03-13 19:27:22 +00004592005-03-13 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
460
461 * ospf_lsa.c: (ospf_lsa_refresh_walker) If the system clock jumps
462 backward, then current time may be less than
463 ospf->lsa_refresher_started. This was causing invalid values
464 for ospf->lsa_refresh_queue.index resulting in infinite loops.
465 Problem fixed by casting the expression to unsigned before taking
466 the modulus.
467
ajs5c333492005-02-23 15:43:01 +00004682005-02-23 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
469
470 * ospfd.h: Add new field struct stream *ibuf to struct ospf.
471 * ospfd.c: (ospf_new) Check return code from ospf_sock_init.
472 Allocate ibuf using stream_new(OSPF_MAX_PACKET_SIZE+1).
473 (ospf_finish) Call stream_free(ospf->ibuf.
474 * ospf_packet.c: (ospf_read) Call stream_reset(ospf->ibuf) and then
475 pass it to ospf_recv_packet for use in receiving the packet
476 (instead of allocating a new stream for each packet received).
477 Eliminate all calls to stream_free(ibuf).
478 (ospf_recv_packet) The struct stream *ibuf is now passed in as
479 an argument. No need to use recvfrom to peek at the packet
480 header (to see how big it is), just use ospf->ibuf which is
481 always large enough (this eliminates a system call to recvfrom).
482 Therefore, no need to allocate a stream just for this packet,
483 and no need to free it when done.
484
hasso462f20d2005-02-23 11:29:02 +00004852005-02-23 Vincenzo Eramo <eramo at infocom.ing.uniroma1.it>
486
487 * ospf_lsa.h: New flag to the LSA structure for the SPF calculation.
488 * ospf_lsdb.h: Export ospf_lsdb_clean_stat() function.
489 * ospf_spf.h: Add link to the LSA stat structure into vertex.
490 * ospf_spf.c: New functions cmp() and update_stat() to manage
491 candidates. Remove ospf_spf_has_vertex(), ospf_vertex_lookup(),
492 ospf_install_candidate() and ospf_spf_register() functions not needed
493 any more. Update ospf_vertex_new(), ospf_spf_next() and
494 ospf_spf_calculate() functions to use pqueue instead of linked list.
495
hassoe40dcce2005-02-21 14:58:42 +00004962005-02-21 Hasso Tepper <hasso at quagga.net>
497
498 * ospf_ase.c: Don't show messages related to the ase calculations if
499 we are not debugging.
500
hasso306541b2005-02-19 17:58:40 +00005012005-02-19 Hasso Tepper <hasso at quagga.net>
502
503 * ospf_api.h: char isn't always signed, but it has to be it here.
504
paulfa81b712005-02-19 01:19:20 +00005052005-02-19 Paul Jakma <paul.jakma@sun.com>
506
507 * ospf_packet.c: (ospf_stream_copy) remove
508 (ospf_packet_dup) use stream_copy instead of ospf_stream_copy
509
ajs038163f2005-02-17 19:55:59 +00005102005-02-17 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
511
512 * ospf_packet.c: (ospf_recv_packet) If there is somehow a runt
513 packet in the queue, it must be discarded. Improve warning messages.
514 Fix scope to static.
515 (ospf_read) Fix bug: should reset the read thread in all cases
516 to make sure we continue to get incoming messages.
517
paul658b03a2005-02-15 10:10:55 +00005182005-02-15 Paul Jakma <paul.jakma@sun.com>
519
520 * ospf_packet.c: (ospf_recv_packet) Fix silly error wrt allocating
521 ibuf. Thanks Andrew.
522
paulbfdc44a2005-02-14 23:48:42 +00005232005-02-14 Paul Jakma <paul.jakma@sun.com>
524
525 * ospf_packet.c: (ospf_recv_packet) use stream_recvmsg.
526
hasso082253f2005-02-11 08:31:54 +00005272005-02-11 Hasso Tepper <hasso at quagga.net>
528
529 * ospf_lsdb.c: Fix sum of checksums calculation.
530
ajs083ee9d2005-02-09 15:35:50 +00005312005-02-09 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
532
533 * ospf_packet.c: (ospf_write) If sendmsg fails, give more info in the
534 error message.
535
ajsba6454e2005-02-08 15:37:30 +00005362005-02-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
537
ajs8cfde372005-02-08 15:59:16 +0000538 * ospf_interface.h: Reduce structure padding by putting new u_char
539 field multicast_memberships in a better spot (grouped with
540 other u_char fields type and state).
541
5422005-02-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
543
ajsba6454e2005-02-08 15:37:30 +0000544 * ospf_interface.h: Improve passive_interface comment. Add new
545 multicast_memberships bitmask to struct ospf_interface to track
546 active multicast subscriptions. Declare new function
547 ospf_if_set_multicast.
548 * ospf_interface.c: (ospf_if_set_multicast) New function to configure
549 multicast memberships properly based on the current
550 multicast_memberships status and the current values of the
551 ospf_interface state, type, and passive_interface status.
552 (ospf_if_up) Remove call to ospf_if_add_allspfrouters (this is
553 now handled by ism_change_state's call to ospf_if_set_multicast).
554 (ospf_if_down) Remove call to ospf_if_drop_allspfrouters (now
555 handled by ism_change_state).
556 * ospf_ism.c: (ospf_dr_election) Remove logic to join or leave
557 the DRouters multicast group (now handled by ism_change_state's call
558 to ospf_if_set_multicast).
559 (ism_change_state) Add call to ospf_if_set_multicast to change
560 multicast memberships as necessary to reflect the new interface state.
561 * ospf_packet.c: (ospf_hello) When a Hello packet is received on a
562 passive interface: 1. Increase the severity of the error message
563 from LOG_INFO to LOG_WARNING; 2. Add more information to the error
564 message (packet destination address and interface address);
565 and 3. If the packet was sent to ospf-all-routers, then try
566 to fix the multicast group memberships.
567 (ospf_read) When a packet is received on an interface whose state
568 is ISM_Down, enhance the warning message to show the packet
569 destination address, and try to update/fix the multicast group
570 memberships if the packet was sent to a multicast address.
571 When a packet is received for ospf-designated-routers, but the
572 current interface state is not DR or BDR, then increase the
573 severity level of the error message from LOG_INFO to LOG_WARNING,
574 and try to fix the multicast group memberships.
575 * ospf_vty.c: (ospf_passive_interface) Call ospf_if_set_multicast for
576 any ospf interface that may have changed from active to passive.
577 (no_ospf_passive_interface) Call ospf_if_set_multicast for
578 any ospf interface that may have changed from passive to active.
579 (show_ip_ospf_interface_sub) Show multicast group memberships.
580
paul3a9eb092005-02-08 11:29:41 +00005812005-02-08 Paul Jakma <paul@dishone.st>
582
583 * ospf_packet.c: (various) Remove unneeded stream_set_putp abuse.
584
ajs847947f2005-02-02 18:38:48 +00005852005-02-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
586
587 * ospf_packet.c: (ospf_read) Fix bug: must check for state ISM_Down,
588 not for event ISM_InterfaceDown. And improve the message by
589 adding the interface flags.
590
ajs0b7d97d2005-01-30 17:24:02 +00005912005-01-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
592
593 * ospf_network.c: (ospf_sock_init) Save errno before calling
594 ospfd_privs.change.
595
ajsc3eab872005-01-29 15:52:07 +00005962005-01-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
597
598 * ospf_packet.c: (ospf_packet_add) If oi->obuf is NULL, print
599 an error message and return.
600 (ospf_read) If the interface state is ISM_InterfaceDown, issue
601 a warning message and ignore the packet.
602
gdt86f1fd92005-01-10 14:20:43 +00006032005-01-10 Greg Troxel <gdt@fnord.ir.bbn.com>
604
605 * ospf_packet.h: Remove commented out definition of
606 OSPF_MAX_PACKET; neither it or the uncommented one are used any more.
607
608 * ospf_packet.c (ospf_make_ls_upd): Leave room for authentication
609 when deciding if an update will fit.
610 (ospf_packet_authspace): Factor out calculation of size required
611 for authentication.
612 (ospf_make_db_desc): Use ospf_max_packet, not OSPF_MAX_PACKET.
613 Don't confuse readers that there is a macro.
614
ajs3dc56b52004-12-30 15:11:19 +00006152004-12-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
616
617 * ospf_network.c: Improve all setsockopt error messages to give detailed
618 information on the arguments.
619
ajsb87f7722004-12-29 20:41:26 +00006202004-12-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
621
ajs17eaa722004-12-29 21:04:48 +0000622 * ospf_packet.c: (ospf_db_desc) Reduce severity of "Negotiation done"
623 messages from LOG_WARNING to LOG_INFO, since this seems to be
624 normal.
625
6262004-12-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
627
ajsb87f7722004-12-29 20:41:26 +0000628 * ospf_packet.c: (ospf_read) Always look up the interface if
629 ospf_recv_packet returns NULL ifp, since some platforms such
630 as Solaris 8 appear to support ifindex retrieval but don't.
631
hasso1d806282004-12-22 09:43:20 +00006322004-12-22 Hasso Tepper <hasso at quagga.net>
633
634 * ospf_dump.c: Show debug configuration in vtysh.
hassoc6b87812004-12-22 13:09:59 +0000635 * ospf_vty.c: Fix "show ip ospf" output. Router can't be elected in
636 any case if it's configured as "translate-never".
hassofe71a972004-12-22 16:16:02 +0000637 * ospf_lsdb.[ch]: New function to calculate sum of checksums.
638 * ospf_vty.c: Bugfix to show really number of AS external LSAs, not
639 number of all LSAs with AS scope, this includes opaque as LSAs as
640 well, show this number separately. Show numbers and sums of
641 checksums for each type of LSAs.
642 * ospf_lsa.c: Calculate checksum before putting LSA into database.
hasso1d806282004-12-22 09:43:20 +0000643
ajsbc18d612004-12-15 15:07:19 +00006442004-12-15 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
645
646 * ospf_interface.h: Declare new function ospf_default_iftype.
647 * ospf_interface.c: (ospf_default_iftype) New function to centralize
648 this logic in one place.
649 * ospf_zebra.c: (ospf_interface_add) Use new function
650 ospf_default_iftype.
651 * ospf_vty.c: (no_ip_ospf_network,config_write_interface) Fix logic
652 by using new function ospf_default_iftype.
653
ajs3aa8d5f2004-12-11 18:00:06 +00006542004-12-11 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
655
656 * ospf_packet.c: (ospf_db_desc) Should be static, not global.
657 (ospf_hello,ospf_db_desc,ospf_ls_upd,ospf_ls_ack) Improve warning
658 messages to include identifying information (e.g. router id).
659 * ospf_nsm.c: (nsm_change_state) Improve info message to include
660 router id and state names.
661
gdt91f3e522004-12-09 14:51:03 +00006622004-12-09 Greg Troxel <gdt@fnord.ir.bbn.com>
663
gdt3fb9de72004-12-09 16:30:04 +0000664 * ospf_apiserver.c (ospf_apiserver_term): Obtain struct
665 ospf_apiserver * from listnode. Remove unused variables. Follows
666 suggestion from Jay Fenlason.
gdt91f3e522004-12-09 14:51:03 +0000667
ajs9b0e25c2004-12-08 19:06:51 +00006682004-12-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
669
670 * *.c: Change level of debug messages to LOG_DEBUG.
671
ajs274a4a42004-12-07 15:39:31 +00006722004-12-07 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
673
674 * ospf_main.c: (main) The 2nd argument to openzlog has been removed.
675
ajs887c44a2004-12-03 16:36:46 +00006762004-12-03 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
677
ajs1210fa62004-12-03 16:43:24 +0000678 * ospf_packet.c: (ospf_db_desc) Reduce priority on a debug message
679 from LOG_NOTICE to LOG_DEBUG.
680
6812004-12-03 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
682
ajs887c44a2004-12-03 16:36:46 +0000683 * ospf_main.c: (sigint) Use zlog_notice for termination message.
684 (main) Issue a startup announcement using zlog_notice.
685
ajsbec595a2004-11-30 22:38:43 +00006862004-11-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
687
688 * ospf_packet.c: (ospf_db_desc_proc) Fix spelling of packet in warning
689 message and in comment.
690 (ospf_db_desc) Warning message that a packet is being discarded
691 should give the router id of the packet source. Fix spelling
692 of packet in two warning messages.
693 (ospf_ls_req) Warning message that a link state request is being
694 discarded should give the router id of the neighbor that sent it.
695
ajs5b85fac2004-11-26 19:36:42 +00006962004-11-26 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
697
698 * ospf_main.c: Remove #include "debug.h" (was not being used, and
699 lib/debug.h has now been deleted).
700
hassoc0652302004-11-25 19:33:48 +00007012004-11-25 Hasso Tepper <hasso at quagga.net>
702
703 * ospf_main.c: Make group to run as configurable.
704
gdt69e13252004-11-15 18:51:15 +00007052004-11-15 Greg Troxel <gdt@fnord.ir.bbn.com>
706
707 * ospf_packet.c (ospf_recv_packet): Assume CMSG_SPACE is present
708 and works (lib/zebra.h provides if OS doesn't).
709
paul788dab12004-11-15 11:48:37 +00007102004-11-15 Paul Jakma <paul@dishone.st>
711
712 * ospf_{apiserver,te}.c: ospf_lsa_free's should be ospf_lsa_unlock.
713
paul05e85fa2004-11-12 10:52:19 +00007142004-11-12 Paul Jakma <paul@dishone.st>
715
716 * ospf_ia.c: (process_summary_lsa) Only an ABR has any reason to
717 ignore stub area summary default. Even so it seems a strange
718 check, add a comment to that effect.
719
paulf3ae74c2004-11-04 20:35:31 +00007202004-11-04 Paul Jakma <paul@dishone.st>
721
722 * ospfd.c: (ospf_network_match_iface) revert to previous network
723 statement match behaviour.
724
paul62d8e962004-11-02 20:26:45 +00007252004-11-02 Paul Jakma <paul@dishone.st>
726
727 * ospf_packet.c: (ospf_write_frags) remove iov arg, msg already points
728 to it. Add convenience pointer to msg->msg_iov[1], and use this,
729 fixing the unfortunate borkenness introduced in moving of this code
730 to a function.
731 (ospf_write) remove iovp and fix up call to previous.
732 (ospf_ls_upd_packet_new) cast size to long int - unfortunately
733 glibc's size_t format modifier is not portable.
734
paul37ccfa32004-10-31 11:24:51 +00007352004-10-31 Paul Jakma <paul@dishone.st>
736
737 * ospf_packet.c: (ospf_write_frags) Add debug output
738 (ospf_write) set type early, so we can pass it to
739 ospf_write_frags.
740 (ospf_ls_upd_packet_new) print size in debug output when too large
741 packet is encountered.
paul64511f32004-10-31 18:01:13 +0000742 * ospf_zebra.c: (ospf_distribute_list_update_timer) Ugly misuse of
743 THREAD_ARG to store an integer, but it should at least use same
744 same type to retrieve the value. Assert value is sane.
paul37ccfa32004-10-31 11:24:51 +0000745
paulac191232004-10-22 12:05:17 +00007462004-10-22 Paul Jakma <paul@dishone.st>
747
748 * ospf_network.c: (ospf_sock_init) call neutral setsock_ifindex()
749 function.
750 * ospf_packet.c: (ospf_read) manually look up ifindex
paul4ccb2c42004-10-22 22:52:33 +0000751 if system could not have returned one, eg openbsd, thanks to Rivo
752 Nurges for highlighting problem and fix.
paul06f953f2004-10-22 17:00:38 +0000753 Change setsockopt_pktinfo to setsockopt_ifindex.
paulac191232004-10-22 12:05:17 +0000754
hasso3fb9cd62004-10-19 19:44:43 +00007552004-10-19 Andrew J. Schorr <aschorr@telemetry-investments.com>
756
757 * ospf_snmp.c: (ospf_snmp_if_update) Fix logic to handle PtP links
758 with dedicated subnets properly.
759 * ospf_lsa.c: (lsa_link_ptop_set) ditto.
760 * ospfd.c: (ospf_network_match_iface) ditto.
761 (ospf_network_run) ditto.
762 * ospf_interface.c: (ospf_if_is_configured) ditto.
763 (ospf_if_lookup_by_prefix) ditto.
764 (ospf_if_lookup_recv_if) ditto.
765 * ospf_vty.c: (show_ip_ospf_interface_sub) Display the peer or
766 broadcast address if present.
767
hassod68614d2004-10-13 09:32:48 +00007682004-10-13 Hasso Tepper <hasso at quagga.net>
769
770 * ospf_main.c: Unbreak compilation with ospfapi disabled.
hassoc75105a2004-10-13 10:33:26 +0000771 * ospf_snmp.c: Remove defaults used to initialize smux connection to
772 snmpd. Connection is initialized only if smux peer is configured.
hassod68614d2004-10-13 09:32:48 +0000773
hassof4d58ce2004-10-12 06:13:54 +00007742004-10-12 Hasso Tepper <hasso at quagga.net>
775
776 * ospf_main.c, ospf_opaque.c: Unbreak ospfclient compilation - move
777 static variable from ospf_main.c into ospf_opaque.c.
778
hassoc3abdb72004-10-11 16:27:03 +00007792004-10-11 Hasso Tepper <hasso at quagga.net>
780
781 * ospf_main.c, ospf_opaque.c: Disable ospfapi init by default. New
782 command line switch to enable it.
783
paul6b333612004-10-11 10:11:25 +00007842004-10-11 Paul Jakma <paul@dishone.st>
785
786 * ospf_dump.c: (ospf_ip_header_dump) Assume header is in host order
787 remove ntohs that should have dissappeared. Take struct ip
788 as argument, caller has to know there's an IP header at start of
789 stream anyway.
790 * ospf_dump.h: update declaration of ospf_ip_header_dump.
791 * ospf_packet.c: (ospf_write) correct call to
792 sockopt_iphdrincl_swab_htosys which was munging the header.
793 (ospf_recv_packet) ip_len is needed for old OpenBSD fixup.
794 (ospf_read) sockopt_iphdrincl_swab_systoh ip header as soon as
795 we have it.
paul6c835672004-10-11 11:00:30 +0000796 * (global) Const char update and signed/unsigned fixes.
797 * (various headers) size defines should be unsigned.
798 * ospf_interface.h: remove duplicated defines, include the
799 authoritative header - though, these defines should probably
800 be moved to a dedicated header, or ospfd.h.
801 * ospf_lsa.h: (struct lsa) ls_seqnum should be unsigned.
802 * ospf_packet.c: (ospf_write) cast result of shift to unsigned.
paul6b333612004-10-11 10:11:25 +0000803
hassoeb1ce602004-10-08 08:17:22 +00008042004-10-08 Hasso Tepper <hasso at quagga.net>
805
806 * *.[c|h]: Fix compiler warnings: make some strings const, signed ->
807 unsigned, remove unused variables etc.
808
gdt54ade992004-10-07 19:38:20 +00008092004-10-07 Greg Troxel <gdt@claude.ir.bbn.com>
810
811 * ospf_apiserver.c (ospf_apiserver_unregister_opaque_type): Don't
812 use of variable names 'node' and 'nextnode' to avoid possible
813 conflict with list macros. Move variable declaration inside for
814 loop after a statement to top of function.
815
paulaa20c6f2004-10-07 14:19:36 +00008162004-10-07 Paul Jakma <paul@dishone.st>
817
818 * ospf_snmp.c: Missed list typedef update
819 * ospf_dump.c: Include sockopt.h for header swab functions.
820
paul18b12c32004-10-05 14:38:29 +00008212004-10-05 Paul Jakma <paul@dishone.st>
822
823 * ospf_packet.c: replace ospf_swap_iph_to... with
824 sockopt_iphdrincl_swab_...
825
hasso18a6dce2004-10-03 18:18:34 +00008262004-10-03 James R. Leu <jleu at mindspring.com>
827
828 * ospf_zebra.c: Read router id related messages from zebra daemon.
829 Schedule router-id update thread if it's changed.
830 * ospfd.c: Remove own router-id selection function. Use router id from
831 zebra daemon if it isn't manually overriden in configuration.
832
paul68defd62004-09-27 07:27:13 +00008332004-09-27 Paul Jakma <paul@dishone.st>
834
paul6a99f832004-09-27 12:56:30 +0000835 * ospf_dump.c: (ospf_ip_header_dump) Use HAVE_IP_HDRINCL_BSD_ORDER
836 Apply to offset too. Print ip_cksum, lets not worry about
837 possible 2.0.37 compile problems.
838 * ospf_packet.c: (ospf_swap_iph_to{n,h}) Use
839 HAVE_IP_HDRINCL_BSD_ORDER.
840 (ospf_recv_packet) ditto.
841 (ospf_write) Fixup iov argument to ospf_write_frags.
842 (struct msghdr).msg_name is caddr_t on most platforms.
paul68defd62004-09-27 07:27:13 +0000843 (ospf_recv_packet) ditto. And msg_flags is not always there
844 memset struct then set fields we care about rather than
845 initialise all fields individually.
846
hassoc9e52be2004-09-26 16:09:34 +00008472004-09-26 Hasso Tepper <hasso at quagga.net>
848
849 * ospf_abr.c, ospf_dump.c, ospf_lsa.c, ospf_packet.c, ospf_vty.c,
850 ospf_zebra.c: Fix compiler warnings.
851
paul87d6f872004-09-24 08:01:38 +00008522004-09-24 Paul Jakma <paul@dishone.st>
853
854 * ospf_apiserver.{c,h}: lists typedef removal cleanup.
855 update some list loops to LIST_LOOP. some miscellaneous indent
856 fixups.
857 (ospf_apiserver_unregister_opaque_type) fix listnode_delete of
858 referenced node in loop.
paul1603c062004-09-24 08:23:24 +0000859 (ospf_apiserver_term) loops calling ospf_apiserver_free, which
860 deletes referenced nodes from apiserver_list, fixed.
paul87d6f872004-09-24 08:01:38 +0000861 * ospf_interface.h: lists typedef removal cleanup.
862 * ospf_opaque.{c,h}: lists typedef removal cleanup. update some list
863 loops to LIST_LOOP. miscellaneous style and indent fixups.
864 * ospf_te.{c,h}: ditto
865 * ospf_packet.c: lists typedef removal cleanup.
paula2570682004-09-24 08:09:57 +0000866 (ospf_write) ifdef fragmentation support. move actual
867 fragmentation out to a new, similarly ifdefed, function.
868 (ospf_write_frags) fragmented write support, moved from previous.
paul87d6f872004-09-24 08:01:38 +0000869
hasso52dc7ee2004-09-23 19:18:23 +00008702004-09-23 Hasso Tepper <hasso at quagga.net>
871
872 * *.[c|h]: list -> struct list *, listnode -> struct listnode *.
873
paul68b73392004-09-12 14:21:37 +00008742004-09-12 Paul Jakma <paul@dishone.st>
875
876 * ospf_packet.c: Fix bugzilla #107
877 (ospf_packet_max) get rid of the magic 88 constant
878 (ospf_swab_iph_ton) new function. set ip header to network order,
879 taking BSDisms into account.
880 (ospf_swab_iph_toh) the inverse.
881 (ospf_write) Add support for IP fragmentation, will only work on
882 linux though, other kernels make it impossible. get rid of the
883 magic 4 constant.
884 (ospf_make_ls_upd) Bound check to end of stream, not to
885 interface mtu.
886 (ospf_ls_upd_packet_new) New function, allocate upd packet
887 taking oversized LSAs into account.
888 (ospf_ls_upd_queue_send) use ospf_ls_upd_packet_new to allocate,
889 rather than statically allocating mtu sized packet buffer, which
890 actually was wrong - it didnt take ip header into account, which
891 should not be included in packet buffer.
892 (ospf_ls_upd_send_queue_event) minor tweaks and remove
893 TODO comment.
894
gdt630e4802004-08-31 17:28:41 +00008952004-08-31 David Wiggins <dwiggins@bbn.com>
896
897 * ospf_spf.c (ospf_spf_calculate): Many more comments and debug
898 print statements. New function ospf_vertex_dump used in debugging.
899
9002004-08-31 David Wiggins <dwiggins@bbn.com>
901
902 * ospf_spf.h (struct vertex): Comments for flags and structure members.
903
9042004-08-31 David Wiggins <dwiggins@bbn.com>
905
906 * ospf_route.c: When finding an alternate route, log cost as well.
907
9082004-08-31 David Wiggins <dwiggins@bbn.com>
909
910 * ospf_interface.c (ospf_lookup_if_params): Initialize af in
911 struct prefix allocated on stack.
912
9132004-08-31 David Wiggins <dwiggins@bbn.com>
914
915 * ospf_packet.c (ospf_ls_ack_send_delayed): In p2mp mode, send
916 acks to AllSPFRouters, rather than All-DR.
917
hasso7b901432004-08-31 13:37:42 +00009182004-08-27 Hasso Tepper <hasso at quagga.net>
919
920 * ospf_vty.c: Don't print ospf network type under interface only
921 if interface is in broadcast mode and interface type really is
922 broadcast. Fixes Bugzilla #108.
923
gdtd7d93992004-08-27 12:03:42 +00009242004-08-27 David Wiggins <dwiggins@bbn.com>
925
926 * ospf_spf.c (ospf_nexthop_calculation): Initialize address family
927 in on-stack struct prefix_ipv4. Fixes point-to-multipoint SPF
928 calculation.
929
gdtd0deca62004-08-26 13:14:07 +00009302004-08-26 Greg Troxel <gdt@fnord.ir.bbn.com>
931
932 * ospf_packet.c (ospf_recv_packet): adjust size declaration of
gdtd7d93992004-08-27 12:03:42 +0000933 buffer used to get interface index so that it compiles on other
934 than Linux and includes the required alignment space. Probably
935 this was only working on sparc/sparc64 because most of
936 sockaddr_dl was not being written.
gdtd0deca62004-08-26 13:14:07 +0000937
paul863082d2004-08-19 04:43:43 +00009382004-08-19 Paul Jakma <paul@dishone.st>
939
940 * ospf_packet.c: update to match sockopt renames.
941
paul75ee0b82004-08-05 09:10:31 +00009422004-08-04 Paul Jakma <paul@dishone.st>
943
944 * ospf_spf.c: (ospf_spf_consider_nexthop) Add comment about issue.
945 Compare only against list head - all nexthops must be same cost
946 anyway, fixes a reference-listnode-after-delete bug noted by
947 Kir Kostuchenko.
948 (ospf_nexthop_calculation) Use ospf_spf_consider_nexthop for all
949 candidates attached to root.
950
paul36c64ef2004-07-27 11:19:11 +00009512004-07-27 Paul Jakma <paul@dishone.st>
952
paul48fe13b2004-07-27 17:40:44 +0000953 * ospf_packet.c: (ospf_ls_upd_send_queue_event) fix thinko from
954 last fix for ospfd wedging due to oversize LSAs: dont list loop on
955 ospf_ls_upd_queue_send() - guaranteed segfault.
956
9572004-07-27 Paul Jakma <paul@dishone.st>
958
paul36c64ef2004-07-27 11:19:11 +0000959 * ospf_opaque.c: (ospf_opaque_lsa_flush_schedule) do not NULL out
960 the LSA as then free_opaque_info_per_id() can never unlock (and
961 free) the LSA. Reported by Gunnar Stigen.
962
paul2dd8bb42004-07-23 15:13:48 +00009632004-07-23 Paul Jakma <paul@dishone.st>
964
965 * ospf_network.c: Replace PKTINFO/RECVIF with call to
966 setsockopt_pktinfo
967 * ospf_packet.c: Use getsockopt_pktinfo_ifindex and
968 SOPT_SIZE_CMSG_PKTINFO_IPV4.
969
paul59ea14c2004-07-14 20:50:36 +00009702004-07-14 Paul Jakma <paul@dishone.st>
971
972 * ospf_packet.c: (ospf_ls_upd_send_queue_event) Partial fix for
973 problem reported by Peter Frost amongst others, where function
974 will spin indefinitely if update list contains LSAs greater than
975 MTU-headers or other condition leading to update list never being
976 cleared. Problem of what to do with these LSAs remains.
977 (ospf_make_ls_upd) add comment about large LSA problem,
978 indentation cleanup.
979
gdtb2c1b282004-07-01 12:35:36 +00009802004-07-01 Greg Troxel <gdt@fnord.ir.bbn.com>
981
982 * Makefile.am (lib_LTLIBRARIES): make libospf shared
983
gdt87efd642004-06-30 17:36:11 +00009842004-06-30 Greg Troxel <gdt@poblano.ir.bbn.com>
985
986 * Makefile.am: Add shlib support.
987
hassobeebba72004-06-20 21:00:27 +00009882004-06-10 Hasso Tepper <hasso@estpak.ee>
989
990 * *: Removed ifdefs HAVE_NSSA.
991
paul553ff112004-06-06 09:41:00 +00009922004-06-06 Paul Jakma <paul@dishone.st>
993
994 * ospf_dump.c,ospf_lsa.c: Fix typos of merge of previous.
995 ospf_flood.c: (ospf_process_self_originated_lsa) fix zlog format
996
paul0c2be262004-05-31 14:16:54 +00009972004-05-31 Sagun Shakya <sagun.shakya@sun.com>
998
999 * ospf_dump.c: (ospf_lsa_header_dump) LOOKUP can return null if
1000 index is out of range.
1001 ospf_flood.c: endianness fix
1002 ospf_lsa.c: Missing ntohl's on (struct lsa *)->data->ls_seqnum
1003 in various places.
1004
hassodd669bb2004-05-10 07:43:59 +000010052004-05-10 Hasso Tepper <hasso@estpak.ee>
1006
1007 * ospf_zebra.c, ospfd.c: Move ospf_prefix_list_update() function
1008 to ospf_zebra.c from ospfd.c and add redistribution updates if
1009 route-map is used in redistribution.
1010 * ospf_main.c: Remove now useless call to ospf_init().
1011
paul0a589352004-05-08 11:48:26 +000010122004-05-08 Paul Jakma <paul@dishone.st>
1013
1014 * ospf_zebra.c: Sync with lib/zclient changes
1015
pauld3f0d622004-05-05 15:27:15 +000010162004-05-05 Paul Jakma <paul@dishone.st>
1017
paul5bd41892004-05-05 17:29:24 +00001018 * ospf_network.c: (ospf_sock_init) Check whether IP_HDRINCL is
1019 defined. Warn at compile and runtime. Use
1020 IPTOS_PREC_INTERNETCONTROL otherwise.
pauld3f0d622004-05-05 15:27:15 +00001021 * ospf_packet.c: (ospf_associate_packet_vl) cleanup, move
1022 some of the checks up to ospf_read, return either a
1023 virtual link oi, or NULL.
1024 (ospf_read) Cleanup, make it responsible for checks. Remove
1025 the nbr lookup - moved to ospf_neighbor. Adjust all nbr
1026 lookups to use new wrappers exported by ospf_neighbor.
1027 * ospf_neighbor.h: Add ospf_neigbour_get and ospf_nbr_lookup.
1028 * ospf_neighbor.c: (ospf_neigbour_get) Index ospf_interface
1029 neighbour table by router-id for virtual-link ospf_interfaces,
1030 not by peer_addr (which breaks for asymmetric vlinks)
1031 (ospf_nbr_lookup) add a wrapper for nbr lookups to deal with
1032 above.
paulcd59da62004-05-05 17:26:55 +00001033 * ospf_interface.c: (ospf_vl_set_params) Catch changes of interface
1034 address for either end of a virtual-link, and hence potential cost
1035 changes.
1036
hassoa0a39762004-04-23 08:51:10 +000010372004-04-22 Hasso Tepper <hasso@estpak.ee>
1038
1039 * ospf_zebra.c: Don't ignore reject/bh routes, it's the only way
1040 to "summarize" routes in ASBR at the moment.
1041
hasso8585d4e2004-04-20 17:25:12 +000010422004-04-20 Hasso Tepper <hasso@estpak.ee>
1043
1044 * ospfd.c: Unset NP flag if area is going to be normal or stub.
1045 Fixes UNH OSPF_NSSA.1.2a comment.
1046 * ospf_abr.c: Originate default into stub/nssa area even if
1047 summaries are disabled.
1048 * ospf_zebra.c: Don't attempt to redistribute 127.0.0.0/8.
1049
hassoc266ac72004-04-19 17:31:00 +000010502004-04-19 Hasso Tepper <hasso@estpak.ee>
1051
1052 * ospf_vty.c: Don't warn that export- and import-list can't be
1053 configured to backbone area if they are applied and are working
1054 fine.
1055
hasso128d31d2004-04-04 12:52:33 +000010562004-02-19 Sowmini Varadhan <sowmini.varadhan@sun.com>
1057
1058 * ospf_packet.c: Don't drop packets in Solaris x86.
1059 [quagga-dev 1005].
1060
hasso0d85b992004-03-18 19:18:33 +000010612004-03-18 Amir Guindehi <amir@datacore.ch>
1062
1063 * ospf_opaque.c: Attempt to correct the incorrect behavior of
1064 Quagga's ospfd in the special situation that a node's opaque
1065 capability has changed as "ON -> OFF -> ON". [quagga-dev 843].
1066
paul7f352b82004-02-19 19:37:47 +000010672004-02-19 Sowmini Varadhan <sowmini.varadhan@sun.com>
1068
1069 * ospf_abr.c: (ospf_abr_update_aggregate) UNH 3.12b,c, address range
1070 should be configured with the highest cost path within the range,
1071 not lowest.
1072
paul940b01a2004-02-17 20:07:30 +000010732004-02-17 Paul Jakma <paul@dishone.st>
1074
1075 * ospf_zebra.c: (ospf_interface_delete) Do not delete the interface
1076 params, nor the interface structure, if an interface delete
1077 message is received from zebra.
1078 * ospf_interface.c: (ospf_if_delete_hook) Delete the interface
1079 params and interface, ie that which was previously removed in
1080 (ospf_interface_delete) above.
1081
hasso2db3d052004-02-11 21:52:13 +000010822004-02-11 Hasso Tepper <hasso@estpak.ee>
1083 * ospf_interface.c, ospf_zebra.c: Don't attempt to read path->oi->ifp
1084 if oi doesn't exist any more.
1085
hassocb05eb22004-02-11 21:10:19 +000010862004-02-11 Vadim Suraev <vadim.suraev@terayon.com>
1087 * ospf_packet.c (ospf_ls_upd): Router should flush received network
1088 LSA if it was originated with older router-id ([zebra 14710] #6).
1089
10902003-12-08 Mattias Amnefelt <mattiasa@kth.se>
paul239aecc2003-12-08 10:34:54 +00001091
1092 * ospf_packet.c: (ospf_recv_packet) OpenBSD now leaves iph.ip_len
1093 network byte order.
1094
gdt8f40e892003-12-05 14:01:43 +000010952003-12-05 Greg Troxel <gdt@poblano.ir.bbn.com>
1096
1097 * ospfd.c (ospf_network_match_iface): Rewrite code for clarity
1098 while trying not to change semantics. Add ifdefed-out code to
1099 avoid matching ppp interfaces whose destination address does not
1100 also match the prefix under consideration, to help out people with
1101 problems due to as-yet-unfixed bugs with p2p interfaces coming and
1102 going.
1103
paul736d3442003-07-24 23:22:57 +000011042003-07-25 kamatchi soundaram <kamatchi@tdd.sj.nec.com>
1105
1106 * ospf_packet.c (ospf_ls_upd_send_queue_event): get next route
1107 node in body of the loop to avoid chance that route node
1108 is unlocked and deleted before the next iteration tries to
1109 get next route node.
1110
paul0a825c72003-05-24 13:48:16 +000011112003-05-24 Kenji Yabuuchi
1112
1113 * ospf_interface.c(ospf_if_lookup_recv_if): Use the most specific
1114 match for interface lookup.
1115
paul551a8972003-05-18 15:22:55 +000011162003-05-18 Hasso Tepper <hasso@estpak.ee>
paul445f1432003-05-16 19:00:31 +00001117
paul551a8972003-05-18 15:22:55 +00001118 * ospf_vty.c: Show NSSA LSA route info in "show ip ospf database"
1119 output
paul445f1432003-05-16 19:00:31 +00001120
pauld7480322003-05-16 17:31:51 +000011212003-05-16 Hasso Tepper <hasso@estpak.ee>
1122
1123 * ospf_lsa.c: Fix handling of NSSA
1124
paul551a8972003-05-18 15:22:55 +000011252003-04-23 Hasso Tepper <hasso@estpak.ee>
1126
1127 * ospf_vty.c: fix "router xxx" node commands in vtysh
1128
paul445f1432003-05-16 19:00:31 +000011292003-04-19 Hasso Tepper <hasso@estpak.ee>
1130
1131 * {ospf_abr,ospfd}.c: area id's DECIMAL -> ADDRESS
1132 * ospf_routemap.c: sync daemon's route-map commands to have same
1133 syntax.
1134
11352003-04-19 Sergey Vyshnevetskiy <serg@vostok.net>
1136
1137 * ospf_packet.c: Add missing param to zlog
1138 * ospf_flood.c: remove unused vars
1139
11402003-04-17 Denis Ovsienko <zebra@pilot.org.ua>
1141
1142 * ospf_interface.c: fix incorrect memset
1143
paul28a13842003-05-16 20:30:37 +000011442003-04-10 Amir Guindehi <amir@datacore.ch>
paul445f1432003-05-16 19:00:31 +00001145
1146 * ospf_lsa.[ch]: opaque LSA fix, use ospf_lookup.
1147
11482003-04-03 David Watson <dwatson@eecs.umich.edu>
1149
1150 * ospf_lsa.c: byte order fix
1151
paul07661cb2003-03-18 00:03:05 +000011522002-03-17 Amir Guindehi <amir@datacore.ch>
1153
1154 * ospf_apiserver.[ch]: Merge Ralph Keller's OSPFAPI support.
1155 * ospf_api.[ch]: Merge Ralph Keller's OSPFAPI support.
1156 * ospfclient: OSPFAPI demonstration client.
1157
11582003-01-23 Masahiko Endo <endo@suri.co.jp>
1159
1160 * ospf_ism.c: NSM event schedule bug fix.
1161
11622002-10-30 Greg Troxel <gdt@ir.bbn.com>
1163
1164 * ospf_packet.c (ospf_make_md5_digest): MD5 length fix.
1165
paul718e3742002-12-13 20:15:29 +000011662002-10-23 endo@suri.co.jp (Masahiko Endo)
1167
1168 * ospf_opaque.c: Update Opaque LSA patch.
1169
11702002-10-23 Ralph Keller <keller@tik.ee.ethz.ch>
1171
1172 * ospf_vty.c (show_ip_ospf_database): Fix CLI parse.
1173
11742002-10-23 Juris Kalnins <juris@mt.lv>
1175
1176 * ospf_interface.c (ospf_if_stream_unset): When write queue
1177 becomes empty stop write timer.
1178
11792002-10-10 Greg Troxel <gdt@ir.bbn.com>
1180
1181 * ospf_packet.c (ospf_check_md5_digest): Change >= to > to make it
1182 conform to RFC.
1183
11842002-07-07 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1185
1186 * zebra-0.93 released.
1187
11882002-06-19 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1189
1190 * ospf_spf.c (ospf_nexthop_calculation): Add NULL set to oi and
1191 check of l2. Reported by: Daniel Drown <dan-zebra@drown.org>
1192 (ospf_lsa_has_link): LSA Length calculation fix. Reported by:
1193 Paul Jakma <paulj@alphyra.ie>.
1194
1195 * ospfd.c (ospf_if_update): Fix nextnode reference bug. Reported
1196 by: juris@mt.lv.
1197
11982002-01-21 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1199
1200 * ospfd.c: Merge [zebra 11445] Masahiko ENDO's Opaque-LSA support.
1201
12022001-08-27 Kunihiro Ishiguro <kunihiro@zebra.org>
1203
1204 * ospf_interface.c (ospf_add_to_if): Use /32 address to register
1205 OSPF interface information.
1206 (ospf_delete_from_if): Likewise.
1207
1208 * ospf_zebra.c (ospf_interface_address_delete): Likewise.
1209
12102001-08-23 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1211
1212 * ospf_zebra.c (ospf_redistribute_unset): When redistribute type
1213 is OSPF, do not unset redistribute flag.
1214
12152001-08-19 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1216
1217 * zebra-0.92a released.
1218
12192001-08-15 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1220
1221 * zebra-0.92 released.
1222
12232001-08-12 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1224
1225 * ospfd.c (ospf_config_write): auto-cost reference-bandwidth
1226 configuration display.
1227
12282001-07-24 David Watson <dwatson@eecs.umich.edu>
1229
1230 * ospf_spf.c (ospf_spf_next): Modify ospf_vertex_add_parent to
1231 check for an existing link before connecting the parent and child.
1232 ospf_nexthop_calculation is also modified to check for duplicate
1233 entries when copying from the parent. Finally, ospf_spf_next
1234 removes duplicates when it merges two equal cost candidates.
1235
12362001-07-23 itojun@iijlab.net
1237
1238 * ospfd.c (show_ip_ospf_neighbor): Check ospf_top before use it
1239 [zebra 8549].
1240
12412001-07-23 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1242
1243 * ospf_packet.c (ospf_write): Remove defined(__OpenBSD__) to make
1244 it work on OpenBSD.
1245
12462001-06-26 Kunihiro Ishiguro <kunihiro@zebra.org>
1247
1248 * ospf_zebra.c (config_write_ospf_default_metric): Display
1249 default-metric configuration.
1250
12512001-06-18 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1252
1253 * ospf_ia.h (OSPF_EXAMINE_SUMMARIES_ALL): Remove old macros.
1254
12552001-05-28 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1256
1257 * ospf_snmp.c (ospfIfEntry): Fix interface lookup bug to avoid
1258 crush.
1259 (ospfIfMetricEntry): Likewise.
1260
12612001-03-18 Kunihiro Ishiguro <kunihiro@zebra.org>
1262
1263 * ospf_packet.c (ospf_read): Fix typo. Reported by: "Jen B
1264 Lin'Kova" <jen@stack.net>.
1265
12662001-03-15 Gleb Natapov <gleb@nbase.co.il>
1267
1268 * ospf_interface.c (ip_ospf_network): Set interface parameter.
1269 (interface_config_write): Add check for OSPF_IFTYPE_LOOPBACK.
1270
1271 * ospf_zebra.c (ospf_interface_add): Set interface parameter.
1272
12732001-02-21 Kunihiro Ishiguro <kunihiro@zebra.org>
1274
1275 * ospf_packet.c (ospf_recv_packet): Solaris also need to add
1276 (iph.ip_hl << 2) to iph.ip_len.
1277
12782001-02-09 Kunihiro Ishiguro <kunihiro@zebra.org>
1279
1280 * ospfd.h (OSPF_LS_REFRESH_TIME): Fix OSPF_LS_REFRESH_TIME value.
1281 Suggested by: David Watson <dwatson@eecs.umich.edu>.
1282
1283 * ospf_zebra.c (zebra_init): Remove zebra node.
1284
1285 * ospfd.c (ospf_area_range_set): Function name is changed from
1286 ospf_ara_range_cmd.
1287 (ospf_area_range_unset): New function which separated from DEFUN.
1288 New commands are added:
1289 "no area A.B.C.D range A.B.C.D/M advertise"
1290 "no area <0-4294967295> range A.B.C.D/M advertise"
1291 "no area A.B.C.D range A.B.C.D/M not-advertise"
1292 "no area <0-4294967295> range A.B.C.D/M not-advertise"
1293
1294 * ospf_lsa.c (ospf_lsa_more_recent): Fix previous change.
1295
12962001-02-08 Matthew Grant <grantma@anathoth.gen.nz>
1297
1298 * ospf_network.c (ospf_if_add_allspfrouters): Use
1299 setsockopt_multicast_ipv4.
1300 (ospf_if_drop_allspfrouters): Likewise.
1301
1302 * ospf_lsa.c (ospf_router_lsa_install): Add rt_recalc flag.
1303 (ospf_network_lsa_install): Likewise.
1304 (ospf_summary_lsa_install): Likewise.
1305 (ospf_summary_asbr_lsa_install): Likewise.
1306 (ospf_external_lsa_install): Likewise.
1307 (ospf_lsa_install): Call ospf_lsa_different to check this LSA is
1308 new one or not.
1309
13102001-02-08 Kunihiro Ishiguro <kunihiro@zebra.org>
1311
1312 * ospf_zebra.c (ospf_interface_delete): Do not free interface
1313 structure when ospfd receive interface delete message to support
1314 pseudo interface.
1315
13162001-02-01 Dick Glasspool <dick@ipinfusion.com>
1317
1318 * ospfd.c (area_range_notadvertise): Change area range "suppress"
1319 command to "not-advertise".
1320
1321 * ospfd.h (OSPF_LS_REFRESH_TIME): Change OSPF_LS_REFRESH_TIME from
1322 1800 to 60.
1323
1324 * ospf_abr.c (ospf_abr_update_aggregate): When update_aggregate is
1325 updating the area-range, the lowest cost is now saved.
1326
1327 * ospf_lsa.c (ospf_lsa_more_recent): Routing to compare sequence
1328 numbers rather than creating overflow during calculation.
1329
13302001-02-01 Kunihiro Ishiguro <kunihiro@zebra.org>
1331
1332 * zebra-0.91 is released.
1333
13342001-01-31 Kunihiro Ishiguro <kunihiro@zebra.org>
1335
1336 * ospf_packet.c (ospf_db_desc_proc): Do not continue process when
1337 NSM_SeqNumberMismatch is scheduled.
1338 (ospf_ls_req): Free ls_upd when return from this function.
1339 (ospf_ls_upd_timer): When update list is empty do not call
1340 ospf_ls_upd_send(). Suggested by: endo@suri.co.jp (Masahiko
1341 Endo).
1342
13432001-01-26 Kunihiro Ishiguro <kunihiro@zebra.org>
1344
1345 * ospf_lsa.c (ospf_maxage_flood): Flood LSA when it reaches
1346 MaxAge. RFC2328 Section 14.
1347 (ospf_maxage_lsa_remover): Call above function during removing
1348 MaxAge LSA.
1349
13502001-01-26 Dick Glasspool <dick@ipinfusion.com>
1351
1352 * ospf_flood.c (ospf_flood_through_as): Function is updated for
1353 NSSA Translations now done at ospf_abr.c with no change in P-bit.
1354
1355 * ospf_lsa.c (ospf_get_nssa_ip): Get 1st IP connection for Forward
1356 Addr.
1357 (ospf_install_flood_nssa): Leave Type-7 LSA at Lock Count = 2.
1358
1359 * ospf_ase.c (ospf_ase_calculate_route): Add debug codes.
1360
1361 * ospf_abr.c (ospf_abr_translate_nssa): Recalculate LSA checksum.
1362
1363 * ospf_packet.h (OSPF_SEND_PACKET_LOOP): Added for test packet.
1364
1365 * ospf_dump.c (ospf_lsa_type_msg): Add OSPF_GROUP_MEMBER_LSA and
1366 OSPF_AS_NSSA_LSA.
1367
1368 * ospfd.c (data_injection): Function to inject LSA. This is
1369 debugging command.
1370
13712001-01-11 Kunihiro Ishiguro <kunihiro@zebra.org>
1372
1373 * ospf_route.c (ospf_route_match_same): Remove function.
1374 (ospf_route_match_same_new): Renamed to ospf_route_match_same.
1375
1376 * ospf_zebra.c (ospf_interface_address_delete): Add check for
1377 oi->address. Suggested by Matthew Grant
1378 <grantma@anathoth.gen.nz>.
1379 (ospf_zebra_add): Remove function.
1380 (ospf_zebra_add_multipath): Rename to ospf_zebra_add.
1381
1382 * ospf_interface.c: Remove HAVE_IF_PSEUDO part.
1383
1384 * ospf_zebra.c: Likewise.
1385
13862001-01-10 Kunihiro Ishiguro <kunihiro@zebra.org>
1387
1388 * ospf_ase.c: Remove OLD_RIB part.
1389
1390 * ospf_route.c: Likewise.
1391
1392 * zebra-0.90 is released.
1393
1394 * ospf_packet.c (ospf_recv_packet): Use ip_len adjestment code to
1395 NetBSD.
1396
13972001-01-09 Kunihiro Ishiguro <kunihiro@zebra.org>
1398
1399 * ospf_route.c (ospf_route_delete): Use
1400 ospf_zebra_delete_multipath.
1401
14022001-01-09 Matthew Grant <grantma@anathoth.gen.nz>
1403
1404 * ospf_interface.c (ospf_if_cleanup): Function name is renamed
1405 from ospf_if_free(). Rewrite whole procudure to support primary
1406 address deletion.
1407
1408 * ospf_zebra.c (ospf_interface_address_delete): Add primary
1409 address deletion process.
1410
14112001-01-09 Kunihiro Ishiguro <kunihiro@zebra.org>
1412
1413 * ospf_packet.c (ospf_recv_packet): OpenBSD has same ip_len
1414 treatment like FreeBSD.
1415
14162001-01-09 endo@suri.co.jp (Masahiko Endo)
1417
1418 * ospf_packet.c (ospf_recv_packet): FreeBSD kernel network code
1419 strips IP header size from receiving IP Packet. So we adjust
1420 ip_len to whole IP packet size by adding IP header size.
1421
14222001-01-08 endo@suri.co.jp (Masahiko Endo)
1423
1424 * ospf_network.c (ospf_serv_sock): When socket() is failed return
1425 immediately.
1426 (ospf_serv_sock): Close socket when it is not used.
1427
1428 * ospf_packet.c (ospf_write): Set sin_len when HAVE_SIN_LEN is
1429 defined.
1430 (ospf_write): When bind is fined, close sock.
1431
14322001-01-07 Gleb Natapov <gleb@nbase.co.il>
1433
1434 * ospf_zebra.c (ospf_interface_state_up): Fixes coredump that
1435 appears when you try to configure bandwidth on the ppp interface
1436 that is not yet configured in ospfd.
1437
14382001-01-07 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1439
1440 * ospf_route.c (show_ip_ospf_route_external): "show ip ospf route"
1441 will print nexthops for AS-external routes.
1442
1443 * ospf_ase.c (ospf_ase_route_match_same): New function to compare
1444 ASE route under multipath environment.
1445 (ospf_ase_compare_tables): Likewise.
1446
14472001-01-01 Kunihiro Ishiguro <kunihiro@zebra.org>
1448
1449 * ospfd.h (OSPF_VTYSH_PATH): Change "/tmp/ospfd" to "/tmp/.ospfd".
1450
14512000-12-28 Kunihiro Ishiguro <kunihiro@zebra.org>
1452
1453 * ospf_route.c (ospf_route_install): Install multipath information
1454 to zebra daemon.
1455
1456 * ospf_zebra.c (ospf_zebra_add_multipath): Function for passing
1457 multipath information to zebra daemon.
1458
14592000-12-25 Dick Glasspool <dick@ipinfusion.com>
1460
1461 * ospf_packet.c (ospf_write): Call ospf_packet_delete when sendto
1462 fail.
1463 (DISCARD_LSA): Add argument N for logging point of DISCARD_LSA is
1464 called.
1465
1466 * ospf_lsa.c (ospf_external_lsa_refresh): NSSA install_flood will
1467 leave Type-7 LSA at Lock Count = 2.
1468
1469 * ospf_flood.c (ospf_flood_through): Flood_though_as updated for
1470 NSSA no P-bit off during Area flooding, but P-bit is turned off
1471 for mulitple NSSA AS flooding.
1472
1473 * ospf_ase.c (ospf_ase_calculate_timer): Added calculations for
1474 Type-7 LSDB.
1475
1476 * ospf_abr.c (ospf_abr_translate_nssa): Removed one unlock call.
1477 (ospf_abr_announce_nssa_defaults): Corrected Debug from EVENT to
1478 NSSA.
1479
14802000-12-25 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1481
1482 * ospf_zebra.c (ospf_zebra_read_ipv4): Checking the age of the
1483 found LSA and if the LSA is MAXAGE we should call refresh instead
1484 of originate.
1485
14862000-12-18 Dick Glasspool <dick@ipinfusion.com>
1487
1488 * ospf_abr.c: Removed redundant "...flood" in
1489 announce_network_to_area(). Repaired nssa Unlock by using
1490 discard.
1491
1492 * ospf_packet.c: Removed old NSSA translate during mk_ls_update.
1493
1494 * ospfd.c: Free up all data bases including NSSA.
1495
1496 * ospf_lsa.c: Now allow removal of XLATE LSA's Check in
1497 discard_callback. Added routine to get ip addr from within the
1498 ifp.
1499
1500 * ospf_flood.c: Now set Forward Address for outgoing Type-7.
1501
1502 * ospf_lsa.h: Added prototype for the below. struct in_addr
1503 ospf_get_ip_from_ifp (struct interface *ifp).
1504
15052000-12-14 Gleb Natapov <gleb@nbase.co.il>
1506
1507 * ospf_packet.c (ospf_recv_packet): New OSPF pakcet read method.
1508 Now maximum packet length may be 65535 bytes (maximum IP packet
1509 length).
1510
1511 * ospf_interface.c (ospf_if_stream_set): Don't make input buffer.
1512
1513 * ospfd.c (config_write_network_area): Remove unnecessary area
1514 lookup code.
1515
15162000-12-13 Kunihiro Ishiguro <kunihiro@zebra.org>
1517
1518 * ospf_packet.c (ospf_read): Accept packet bigger than MTU value.
1519
15202000-12-13 Gleb Natapov <gleb@nbase.co.il>
1521
1522 * ospfd.c (config_write_network_area): Fix bug in
1523 config_write_network_area function.
1524
15252000-12-12 Gleb Natapov <gleb@nbase.co.il>
1526
1527 * ospf_abr.c (ospf_abr_announce_network_to_area): Make Summary
1528 LSA's origination and refreshment as same as other type of LSA.
1529
1530 * ospf_lsa.c (ospf_summary_lsa_refresh): Return struct ospf_lsa *.
1531
1532 * ospf_lsa.c (ospf_summary_asbr_lsa_refresh): Likewise.
1533
15342000-12-08 Dick Glasspool <dick@ipinfusion.com>
1535
1536 The bulk of NSSA changes are contained herein; This version will
1537 require manual setting of "always" for NSSA Translator, and will
1538 not perform aggregation yet.
1539
1540 * ospf_dump.c: "debug ospf nssa" is added.
1541
1542 * ospf_dump.h: Likewise.
1543
1544 * ospf_packet.c (ospf_hello): Display router ID on Bad NSSA Hello.
1545
1546 * ospfd.c: Discard_LSA to stay away from LOCAL_XLT Process NSSA
1547 'never, candidate, always'. Change "suppress" to "not-advertise".
1548
1549 * ospfd.h: Add TranslatorRole to struct ospf_area. Add anyNSSA to
1550 struct ospf.
1551
1552 * ospf_ase.c (ospf_ase_calculate_route): External to stay away
1553 from LOCAL_XLT
1554
1555 * ospf_nsm.c (ospf_db_summary_add): External to stay away from
1556 LOCAL_XLT
1557
1558 * ospf_abr.c: Major logic added for abr_nssa_task(). If ABR, and
1559 NSSA translator, then do it. Approve the global list, and flush
1560 any unapproved.
1561
1562 * ospf_lsa.h: New LSA flag OSPF_LSA_LOCAL_XLT to indicate that the
1563 Type-5 resulted from a Local Type-7 translation; not used for
1564 flooding, but used for flushing.
1565
1566 * ospf_flood.c: New NSSA flooding.
1567
15682000-12-08 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1569
1570 * ospfd.c (ospf_find_vl_data): New function for looking up virtual
1571 link data.
1572 (ospf_vl_set_security): Virtual link configuration with
1573 authentication.
1574 (ospf_vl_set_timers): Set timers for virtual link.
1575
1576 * New commands are added.
1577 "area A.B.C.D virtual-link A.B.C.D"
1578 "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>"
1579 "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"
1580 "area A.B.C.D virtual-link A.B.C.D authentication-key AUTH_KEY"
1581 "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"
1582 "area A.B.C.D virtual-link A.B.C.D message-digest-key <1-255> md5 KEY"
1583
1584 * ospf_packet.c (ospf_check_md5_digest): Add neighbor's
1585 cryptographic sequence number treatment.
1586 (ospf_check_auth): OSPF input buffer is added to argument.
1587 (ospf_read): Save neighbor's cryptographic sequence number.
1588
1589 * ospf_nsm.c (nsm_change_status): Clear cryptographic sequence
1590 number when neighbor status is changed to NSM down.
1591
1592 * ospf_neighbor.c (ospf_nbr_new): Set zero to crypt_seqnum.
1593
1594 * ospf_neighbor.h (struct ospf_neighbor): Add cryptographic
1595 sequence number to neighbor structure.
1596
15972000-11-29 Kunihiro Ishiguro <kunihiro@zebra.org>
1598
1599 * ospf_snmp.c (ospfIfLookup): OSPF MIB updates.
1600 (ospfExtLsdbEntry): Add OspfExtLsdbTable treatment.
1601
16022000-11-28 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1603
1604 * ospfd.c (ospf_interface_down): Clear a ls_upd_queue queue of the
1605 interface.
1606 (ospf_ls_upd_queue_empty): New function to empty ls update queue
1607 of the OSPF interface.
1608 (no_router_ospf): 'no router ospf' unregister redistribution
1609 requests from zebra.
1610
16112000-11-28 Kunihiro Ishiguro <kunihiro@zebra.org>
1612
1613 * ospf_ism.c (ism_change_status): Increment status change number.
1614
1615 * ospf_interface.h (struct ospf_interface): Add new member for
1616 status change statistics.
1617
1618 * Makefile.am: Update dependencies.
1619
1620 * ospf_zebra.c (ospf_interface_add): OSPF SNMP interface update.
1621 (ospf_interface_delete): OSPF SNMP interface delete.
1622
1623 * ospf_snmp.h: New file is added.
1624
16252000-11-23 Dick Glasspool <dick@ipinfusion.com>
1626
1627 * ospfd.h: Add new ospf_area structure member for
1628 NSSATranslatorRole and NSSATranslator state.
1629
1630 * ospfd.c: Provided for eventual commands to specify NSSA
1631 elections for "translator- ALWAYS/NEVER/CANDIDATE". Provided for
1632 decimal integer version of area-suppress.
1633
1634 * ospf_flood.c: Flood Type-7's only into NSSA (not AS).
1635
1636 * ospf_lsa.c: Undo some previous changes for NSSA. If NSSA
1637 translator, advertise Nt bit.
1638
1639 * ospf_route.c: 1st version of "sh ip os border-routers".
1640
16412000-11-23 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1642
1643 * ospfd.c (area_vlink): Virtual link can not configured in stub
1644 area.
1645
16462000-11-23 Gleb Natapov <gleb@nbase.co.il>
1647
1648 * ospf_packet.c (ospf_db_desc): In states Loading and Full the
1649 slave must resend its last Database Description packet in response
1650 to duplicate Database Description packets received from the
1651 master. For this reason the slave must wait RouterDeadInterval
1652 seconds before freeing the last Database Description packet.
1653 Reception of a Database Description packet from the master after
1654 this interval will generate a SeqNumberMismatch neighbor
1655 event. RFC2328 Section 10.8
1656 (ospf_make_db_desc): DD Master flag treatment.
1657
1658 * ospf_nsm.c (nsm_twoway_received): Move DD related procedure to
1659 nsm_change_status().
1660 (nsm_bad_ls_req): Likewise.
1661 (nsm_adj_ok): Likewise.
1662 (nsm_seq_number_mismatch): Likewise.
1663 (nsm_oneway_received): Likewise.
1664
1665 * ospf_neighbor.h (struct ospf_neighbor): New structure member
1666 last_send_ts for timestemp when last Database Description packet
1667 was sent.
1668
1669 * ospf_nsm.c (ospf_db_desc_timer): Make it sure nbr->last_send is
1670 there. Call ospf_db_desc_resend() in any case.
1671
16722000-11-16 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1673
1674 * ospf_lsa.c (lsa_link_broadcast_set): When there is no DR on
1675 network (suppose you have only one router with interface priority
1676 0). It's router LSA does not contain the link information about
1677 this network.
1678
1679 * ospf_nsm.c (nsm_timer_set): When you change a priority of
1680 interface from/to 0 ISM_NeighborChange event should be scheduled
1681 in order to elect new DR/BDR on the network.
1682
1683 * ospf_interface.c (ip_ospf_priority): Likewise.
1684
1685 * ospf_flood.c (ospf_ls_retransmit_add): When we add some LSA into
1686 retransmit list we need to check whether the present old LSA in
1687 retransmit list is not more recent than the new
1688 one.
1689
16902000-11-09 Dick Glasspool <dick@ipinfusion.com>
1691
1692 * ospf_packet.c: Allows for NSSA Type-7 LSA's throughout the NSSA
1693 area. Any that exit the NSSA area are translated to type-5 LSA's.
1694 The instantiated image is restored after translation.
1695 (ospf_ls_upd_send_list): Renamed to ospf_ls_upd_queu_send().
1696 (ospf_ls_upd_send): Old function which enclosed by #ifdef 0 is
1697 removed.
1698 (ospf_ls_ack_send): Likewise.
1699
1700 * ospf_flood.c: NSSA-LSA's without P-bit will be restricted to
1701 local area. Otherwise they are allowed out the area to be
1702 translated by ospf_packet.c.
1703
1704 * ospf_lsa.c: Undo some previous changes for NSSA.
1705
1706 * ospf_lsdb.h: New access for type 7.
1707
17082000-11-07 Kunihiro Ishiguro <kunihiro@zebra.org>
1709
1710 * ospf_route.c (ospf_path_exist): New function to check nexthop
1711 and interface are in current OSPF path or not.
1712 (ospf_route_copy_nexthops_from_vertex): Add nexthop to OSPF path
1713 when it is not there. Reported by Michael Rozhavsky
1714 <mrozhavsky@opticalaccess.com>
1715
17162000-11-06 Kunihiro Ishiguro <kunihiro@zebra.org>
1717
1718 * ospf_dump.c (config_write_debug): Add seventh string "detail" is
1719 added for flag is OSPF_DEBUG_SEND | OSPF_DEBUG_RECV |
1720 OSPF_DEBUG_DETAIL.
1721
17222000-11-06 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1723
1724 * ospf_lsa.c (router_lsa_flags): ASBR can't exit in stub area.
1725
17262000-11-06 Kunihiro Ishiguro <kunihiro@zebra.org>
1727
1728 * ospf_lsa.c (ospf_router_lsa_originate): Reduce unconditional
1729 logging.
1730
17312000-11-06 Dick Glasspool <dick@ipinfusion.com>
1732
1733 * ospfd.h: Add ait_ntoa function prototype.
1734
1735 * ospfd.c (ait_ntoa): New function for displaying area ID and
1736 Stub/NSSA status.
1737 (show_ip_ospf_interface_sub): Use ait_ntoa.
1738 (show_ip_ospf_nbr_static_detail_sub): Likewise.
1739 (show_ip_ospf_neighbor_detail_sub): Likewise.
1740
1741 * ospf_route.c (ospf_intra_route_add): Set external routing type
1742 to ospf route.
1743 (ospf_intra_add_router): Likewise.
1744 (ospf_intra_add_transit): Likewise.
1745 (ospf_intra_add_stub): Likewise.
1746 (ospf_add_discard_route): Likewise.
1747 (show_ip_ospf_route_network): Use ait_ntoa.
1748 (show_ip_ospf_route_network): Likewise.
1749 (show_ip_ospf_route_router): Likewise.
1750
1751 * ospf_lsa.c (show_lsa_detail): Use ait_ntoa.
1752 (show_lsa_detail_adv_router): Likewise.
1753 (show_ip_ospf_database_summary): Likewise.
1754
1755 * ospf_route.h (struct route_standard): Add new member
1756 external_routing.
1757
1758 * ospf_ia.c (process_summary_lsa): Set external routing tyep to ospf
1759 route.
1760 (ospf_update_network_route): Likewise.
1761 (ospf_update_router_route): Likewise.
1762
17632000-11-04 Kunihiro Ishiguro <kunihiro@zebra.org>
1764
1765 * ospf_flood.c (ospf_process_self_originated_lsa): Enclose
1766 OSPF_AS_NSSA_LSA treatment with #ifdef HAVE_NSSA.
1767
17682000-11-03 Kunihiro Ishiguro <kunihiro@zebra.org>
1769
1770 * Unconditional logging is enclosed with if (IS_DEBUG_OSPF_EVENT).
1771 Please specify "debug ospf event" for enable logging.
1772
1773 * ospf_ism.c: Do not extern debug flag varible. It is done by
1774 ospf_debug.h
1775 * ospf_asbr.c: Likewise.
1776 * ospf_lsa.c: Likewise.
1777 * ospf_nsm.c: Likewise.
1778 * ospf_zebra.c: Likewise.
1779
1780 * ospf_dump.c (debug_ospf_event): New command "debug ospf event"
1781 is added.
1782
1783 * ospfd.c (router_ospf): Change logging from vty_out() to
1784 zlog_info().
1785 (ospf_area_stub_cmd): Likewise.
1786
1787 * ospf_dump.h: Extern term_debug flags.
1788 (OSPF_DEBUG_EVENT): Add new flag.
1789 (IS_DEBUG_OSPF_EVENT): Add new macro.
1790
17912000-11-03 Dick Glasspool <dick@ipinfusion.com>
1792
1793 * ospf_flood.c (ospf_process_self_originated_lsa):
1794 OSPF_AS_NSSA_LSA is treated as same as OSPF_AS_EXTERNAL_LSA.
1795 (ospf_flood): Type-5's have no change. Type-7's can be received,
1796 and will Flood the AS as Type-5's They will also flood the local
1797 NSSA Area as Type-7's. The LSDB will be updated as Type-5's, and
1798 during re-fresh will be converted back to Type-7's (if within an
1799 NSSA).
1800 (ospf_flood_through): Incoming Type-7's were allowed here if our
1801 neighbor was an NSSA. So Flood our area with the Type-7 and also
1802 if we are an ABR, flood thru AS as Type-5.
1803
1804 * ospf_lsa.c (ospf_external_lsa_refresh): Flood NSSA both NSSA
1805 area and other area.
1806
1807 * ospf_packet.c (ospf_db_desc_proc): When AS External LSA is
1808 exists in DD packet, make it sure that this area is not stub.
1809 (ospf_ls_upd_list_lsa): When LSA type is NSSA then set lsa's area
1810 to NULL.
1811 (ospf_ls_upd): If the LSA is AS External LSA and the area is stub
1812 then discard the lsa. If the LSA is NSSA LSA and the area is not
1813 NSSA then discard the lsa.
1814
18152000-11-03 Kunihiro Ishiguro <kunihiro@zebra.org>
1816
1817 * ospfd.c (ospf_interface_run): Fix bug of Hello packet's option
1818 is not properly set when interface comes up.
1819
18202000-11-02 Kunihiro Ishiguro <kunihiro@zebra.org>
1821
1822 * ospfd.h (OSPF_OPTION_O): Add new hello header option.
1823
18242000-11-01 Dick Glasspool <dick@ipinfusion.com>
1825
1826 * ospf_lsa.h: Define OSPF_MAX_LSA to 8 when HAVE_NSSA is enabled.
1827 (OSPF_GROUP_MEMBER_LSA): Define OSPF_GROUP_MEMBER_LSA.
1828
1829 * ospf_lsa.c (show_database_desc): Add "Group Membership LSA"
1830 string.
1831
18322000-10-31 Dick Glasspool <dick@ipinfusion.com>
1833
1834 * ospf_lsa.h (OSPF_AS_NSSA_LSA): Define OSPF_AS_NSSA_LSA.
1835
1836 * ospf_lsa.c (show_ip_ospf_database): NSSA database display
1837 function is added. ALIASES which have "show ip ospf database
1838 nssa-external" is added.
1839 (show_ip_ospf_border_routers): New command "show ip ospf
1840 border-routers" is added.
1841
18422000-10-30 Dick Glasspool <dick@ipinfusion.com>
1843
1844 * ospfd.c (router_ospf): NSSA Enabled message is added for
1845 testing.
1846 (ospf_area_type_set): Are type set for NSSA area.
1847 (ospf_area_stub_cmd): Special translation of no_summary into NSSA
1848 and summary information. If NSSA is enabled pass the information
1849 to ospf_area_type_set().
1850 (area_nssa): New commands are added:
1851 "area A.B.C.D nssa"
1852 "area <0-4294967295> nssa"
1853 "area A.B.C.D nssa no-summary"
1854 "area <0-4294967295> nssa no-summary"
1855 (ospf_no_area_stub_cmd): Special translation of no_summary into
1856 NSSA and summary information. If external_routing is
1857 OSPF_AREA_NSSA unset area with ospf_area_type_set (area,
1858 OSPF_AREA_DEFAULT).
1859 (show_ip_ospf_area): Display NSSA status.
1860 (config_write_ospf_area): Show NSSA configuration.
1861
1862 * ospf_packet.c (ospf_hello): For NSSA support, ensure that NP is
1863 on and E is off.
1864
18652000-10-26 Gleb Natapov <gleb@nbase.co.il>
1866
1867 * ospf_lsa.c (ospf_network_lsa_body_set): The network-LSA lists
1868 those routers that are fully adjacent to the Designated Router;
1869 each fully adjacent router is identified by its OSPF Router ID.
1870 The Designated Router includes itself in this list. RFC2328,
1871 Section 12.4.2.
1872
18732000-10-23 Jochen Friedrich <jochen@scram.de>
1874
1875 * ospf_snmp.c: ospf_oid and ospfd_oid are used in smux_open after
1876 it is registered. So those variables must be static.
1877
18782000-10-18 K N Sridhar <sridhar@euler.ece.iisc.ernet.in>
1879
1880 * ospfd.c: Add area_default_cost_decimal_cmd and
1881 no_area_default_cost_decimal_cmd alias.
1882
18832000-10-05 Gleb Natapov <gleb@nbase.co.il>
1884
1885 * ospfd.c (ospf_network_new): Fix setting area format.
1886 (no_router_ospf): Check area existance when calling
1887 ospf_interface_down().
1888
1889 * ospf_flood.c (ospf_external_info_check): Fix bug of refreshing
1890 default route.
1891
18922000-10-02 Kunihiro Ishiguro <kunihiro@zebra.org>
1893
1894 * zebra-0.89 is released.
1895
18962000-09-29 Kunihiro Ishiguro <kunihiro@zebra.org>
1897
1898 * ospf_snmp.c (ospfHostEntry): OSPF Host MIB is implemented.
1899
1900 * ospfd.c (ospf_nbr_static_cmp): OSPF neighbor is sorted by it's
1901 address.
1902
19032000-09-28 Michael Rozhavsky <mike@nbase.co.il>
1904
1905 * ospf_interface.c (ospf_if_free): Fix deleting self neighbor twice.
1906
19072000-09-27 Kunihiro Ishiguro <kunihiro@zebra.org>
1908
1909 * ospf_packet.c (ospf_read): Solaris on x86 has ip_len with host
1910 byte order.
1911
19122000-09-25 Toshiaki Takada <takada@zebra.org>
1913
1914 * ospfd.c (ospf_compatible_rfc1583), (no_ospf_compatible_rfc1583):
1915 Add CISCO compatible command.
1916
19172000-09-25 Kunihiro Ishiguro <kunihiro@zebra.org>
1918
1919 * ospf_abr.c (ospf_area_range_lookup): New function is added for
1920 area range lookup in OSPF-MIB.
1921 (ospf_area_range_lookup_next): Likewise.
1922
19232000-09-22 Kunihiro Ishiguro <kunihiro@zebra.org>
1924
1925 * ospfd.c (no_router_ospf): Delete virtual link before deleting
1926 area structure.
1927
1928 * ospf_lsa.c (ospf_external_lsa_refresh_type): Check
1929 EXTERNAL_INFO(type).
1930
1931 * ospfd.c (no_router_ospf): Call ospf_vl_delete() instead of
1932 ospf_vl_data_free().
1933
1934 * ospf_interface.c (ospf_vl_shutdown): Execute ISM_InterfaceDown
1935 when ospf_vl_shutdown is called.
1936 (ospf_vl_delete): Call ospf_vl_shutdown() to delete virtual link
1937 interface's thread.
1938
19392000-09-21 Gleb Natapov <gleb@nbase.co.il>
1940
1941 * ospf_lsa.c: New implementation of OSPF refresh.
1942
19432000-09-20 Kunihiro Ishiguro <kunihiro@zebra.org>
1944
1945 * ospf_snmp.c (ospfLsdbLookup): Add LSDB MIB implementation.
1946
19472000-09-18 Kunihiro Ishiguro <kunihiro@zebra.org>
1948
1949 * ospf_snmp.c (ospfStubAreaEntry): Add OSPF stub area MIB.
1950
19512000-09-18 Gleb Natapov <gleb@nbase.co.il>
1952
1953 * ospf_route.h (route_standard): Change member from `struct area'
1954 to area_id.
1955
1956 * ospf_abr.c (ospf_abr_announce_network), (ospf_abr_should_announce),
1957 (ospf_abr_process_network_rt), (ospf_abr_announce_rtr),
1958 (ospf_abr_process_router_rt):
1959 * ospf_ase.c (ospf_find_asbr_route),
1960 (ospf_find_asbr_router_through_area),
1961 * ospf_ia.c (ospf_find_abr_route), (ospf_ia_router_route),
1962 (process_summary_lsa), (ospf_update_network_route),
1963 (ospf_update_router_route):
1964 * ospf_route.c (ospf_intra_route_add), (ospf_intra_add_router),
1965 (ospf_intra_add_transit), (ospf_intra_add_stub),
1966 (ospf_route_table_dump), (show_ip_ospf_route_network),
1967 (show_ip_ospf_route_router), (ospf_asbr_route_cmp),
1968 (ospf_prune_unreachable_routers):
1969 * ospf_spf.c (ospf_rtrs_print):
1970 * ospfd.c (ospf_rtrs_free): Fix the struct change above.
1971
19722000-09-14 Kunihiro Ishiguro <kunihiro@zebra.org>
1973
1974 * ospf_network.c (ospf_serv_sock_init): Enclose SO_BINDTODEVICE
1975 with ifdef.
1976
19772000-09-13 Gleb Natapov <gleb@nbase.co.il>
1978
1979 * ospf_ism.c (ospf_elect_dr), (ospf_elect_bdr): Fix DR election.
1980
1981 * ospf_network.c (ospf_serv_sock_init): Add socket option
1982 SO_BINDTODEVICE on read socket.
1983
1984 * ospf_packet.c (ospf_hello): Ignore Hello packet if E-bit does
1985 not match.
1986
1987 * ospfd.c (ospf_area_check_free), (ospf_area_get),
1988 (ospf_area_add_if): New function added.
1989
19902000-09-13 Kunihiro Ishiguro <kunihiro@zebra.org>
1991
1992 * ospf_route.c (ospf_intra_add_router): Update ABR and ASBR router
1993 count.
1994
1995 * ospf_spf.c (ospf_spf_init): Rest ABR and ASBR router count
1996 starting SPF calculation.
1997
1998 * ospfd.h (struct ospf_area): Add ABR and ASBR router count.
1999
20002000-09-12 Kunihiro Ishiguro <kunihiro@zebra.org>
2001
2002 * ospfd.c (ospf_area_id_cmp): New area structure is sorted by area
2003 ID.
2004
2005 * ospf_lsa.c (ospf_router_lsa_originate): For OSPF MIB update
2006 lsa_originate_count.
2007 (ospf_network_lsa_originate): Likewise.
2008 (ospf_summary_lsa_originate): Likewise.
2009 (ospf_summary_asbr_lsa_originate): Likewise.
2010 (ospf_external_lsa_originate): Likewise.
2011
20122000-09-11 Kunihiro Ishiguro <kunihiro@zebra.org>
2013
2014 * ospf_snmp.c (ospf_variables): ospfRouterID's type RouterID
2015 syntax is IpAddress.
2016 (ospf_admin_stat): New function for OSPF administrative status
2017 check.
2018
20192000-09-10 Jochen Friedrich <jochen@scram.de>
2020
2021 * ospf_snmp.c: Implement OSPF MIB skeleton.
2022
20232000-09-08 Kunihiro Ishiguro <kunihiro@zebra.org>
2024
2025 * ospf_snmp.c: New file is added.
2026
20272000-09-07 David Lipovkov <davidl@nbase.co.il>
2028
2029 * ospf_zebra.c (ospf_interface_delete): Add pseudo interface
2030 treatment.
2031
2032 * ospf_interface.c (interface_config_write): Likewise.
2033
20342000-08-17 Kunihiro Ishiguro <kunihiro@zebra.org>
2035
2036 * zebra-0.88 is released.
2037
20382000-08-17 Michael Rozhavsky <mike@nbase.co.il>
2039
2040 * ospfd.c (ospf_area_free): Remove virtual link configuration only
2041 when Area is removed.
2042
20432000-08-17 Kunihiro Ishiguro <kunihiro@zebra.org>
2044
2045 * ospfd.c (network_area): Revert check for EXTERNAL_INFO
2046 (ZEBRA_ROUTE_CONNECT).
2047 (no_network_area): Likewise.
2048
20492000-08-16 Kunihiro Ishiguro <kunihiro@zebra.org>
2050
2051 * ospfd.h (struct ospf): Add distance_table and
2052 distance_{all,intra,inter,external}.
2053
2054 * ospf_zebra.c: Add OSPF distance related functions.
2055
20562000-08-15 Gleb Natapov <gleb@nbase.co.il>
2057
2058 * ospf_asbr.c (ospf_external_info_find_lsa): New function added.
2059
2060 * ospf_lsa.c (ospf_default_external_info),
2061 (ospf_default_originate_timer), (ospf_external_lsa_refresh_default):
2062 New function added.
2063
2064 * ospf_zebra.c
2065 (ospf_default_information_originate_metric_type_routemap),
2066 (ospf_default_information_originate_always_metric_type_routemap):
2067 Change name and add route-map function.
2068 (ospf_default_information_originate_metric_routemap),
2069 (ospf_default_information_originate_routemap),
2070 (ospf_default_information_originate_type_metric_routemap):
2071 New DEFUN added.
2072
20732000-08-14 Kunihiro Ishiguro <kunihiro@zebra.org>
2074
2075 * ospf_zebra.c (zebra_interface_if_set_value): Change ifindex
2076 restore size from two octet to four.
2077
20782000-08-14 Michael Rozhavsky <mike@nbase.co.il>
2079
2080 * ospf_ase.c (ospf_ase_incremental_update): Implement incremental
2081 AS-external-LSA in 16.6 of RFC2328.
2082
20832000-08-14 Matthew Grant <grantma@anathoth.gen.nz>
2084
2085 * ospf_interface.c (ospf_if_get_output_cost): Change cost
2086 calculation algorithm.
2087
2088 * ospf_packet (ospf_ls_upd): Fix problem of LSA retransmitting.
2089
20902000-08-11 Michael Rozhavsky <mike@nbase.co.il>
2091
2092 * ospf_lsa.c (ospf_maxage_lsa_remover): Fix maxage remover for
2093 AS-external-LSAs.
2094
20952000-08-10 Toshiaki Takada <takada@zebra.org>
2096
2097 * ospfd.c (auto_cost_reference_bandwidth): New DEFUN added.
2098 `auto-cost reference-bandwidth' OSPF router command added.
2099
21002000-08-08 Gleb Natapov <gleb@nbase.co.il>
2101
2102 * ospf_routemap.c (ospf_route_map_update): New function added.
2103 Add route-map event hook.
2104
21052000-08-08 Toshiaki Takada <takada@zebra.org>
2106
2107 * ospf_zebra.c (ospf_distribute_check_connected): If redistribute
2108 prefix is connected route on OSPF enabled interface, suppress to
2109 announce it.
2110
21112000-08-08 Matthew Grant <grantma@anathoth.gen.nz>
2112
2113 * ospf_interface.c (ospf_if_get_output_cost):
2114 New function added. Handle bandwidth parameter for cost
2115 calculation.
2116
21172000-08-08 Michael Rozhavsky <mike@nbase.co.il>
2118
2119 * ospf_interface.c (interface_config_write): Show interface
2120 configuration regardless interface is down.
2121
2122 * ospf_ase.c (ospf_ase_caocluate_route): Whole rewritten external
2123 route calculate function.
2124
21252000-08-08 Gleb Natapov <gleb@nbase.co.il>
2126
2127 * ospf_routemap.c: New file added.
2128
2129 * ospf_asbr.c (ospf_reset_route_map_set_values),
2130 (ospf_route_map_set_compare): New function added.
2131
2132 * ospf_lsa.c (ospf_external_lsa_body_set): Set routemap metric
2133 with AS-external-LSA.
2134
21352000-08-05 Kunihiro Ishiguro <kunihiro@zebra.org>
2136
2137 * ospf_ase.c (ospf_ase_calculate_route_add): Pass new->cost to
2138 ospf_zebra_add as metric.
2139 (ospf_ase_calculate_route_add): Likewise.
2140
2141 * ospf_route.c (ospf_route_install): Pass or->cost to
2142 ospf_zebra_add as metric.
2143
2144 * ospf_zebra.c (ospf_zebra_add): Add metric arguemnt.
2145 (ospf_zebra_delete): Likewise.
2146
21472000-08-03 Matthew Grant <grantma@anathoth.gen.nz>
2148
2149 * ospf_flood.c (ospf_flood_delayed_lsa_ack): New function added.
2150 Dispatch delayed-ACK with flooding AS-external-LSA across virtual
2151 link.
2152
21532000-07-31 Matthew Grant <grantma@anathoth.gen.nz>
2154
2155 * ospfd.c (show_ip_ospf_area): Fix lack of VTY_NEWLINE when
2156 `show ip ospf'.
2157
2158 * ospf_interface.c (ospf_if_free): Fix bug of crash with
2159 Point-to-Point interface.
2160
21612000-07-27 Michael Rozhavsky <mike@nbase.co.il>
2162
2163 * ospf_flood.c (ospf_process_self_originated_lsa):
2164 Make sure to clear LSA->param (redistributed external information)
2165 before refreshment.
2166
21672000-07-27 Gleb Natapov <gleb@nbase.co.il>
2168
2169 * ospfd.c (refresh_group_limit), (refresh_per_slice),
2170 (refresh_age_diff): New defun added. Refresher related parameter
2171 can be configurable.
2172
21732000-07-27 Akihiro Mizutani <mizutani@dml.com>
2174
2175 * ospf_interface.c (interface_config_write): Print `description'
2176 config directive to work.
2177
21782000-07-24 Akihiro Mizutani <mizutani@dml.com>
2179
2180 * ospf_interface.c (ospf_if_init): Use install_default for
2181 INTERFACE_NODE.
2182
21832000-07-24 Gleb Natapov <gleb@nbase.co.il>
2184
2185 * ospf_packet.c (ospf_ls_upd_send_list), (ospf_ls_upd_send_event),
2186 (ospf_ls_ack_send_list), (ospf_ls_ack_send_event): New function added.
2187 This make sending always as many LS update/Ack combined in one ospf
2188 packet.
2189
21902000-07-24 Gleb Natapov <gleb@nbase.co.il>
2191
2192 * ospf_packet.c (ospf_ls_upd_list_lsa): Set NULL to lsa->area if
2193 LSA is AS-external-LSA.
2194
2195 * ospf_nsm.c (nsm_reset_nbr): Do not cancel Inactivity timer.
2196
21972000-07-21 Toshiaki Takada <takada@zebra.org>
2198
2199 * ospf_zebra.c (ospf_default_originate_timer): Set timer for
2200 `default-information originate'. Fix some default originate
2201 related functions.
2202
22032000-07-12 Toshiaki Takada <takada@zebra.org>
2204
2205 * ospf_lsa.c (stream_put_ospf_metric): New function added.
2206
22072000-07-12 Toshiaki Takada <takada@zebra.org>
2208
2209 * ospf_lsa.c (show_ip_ospf_database_router),
2210 (show_ip_ospf_database_network), (show_ip_ospf_database_summary),
2211 (show_ip_ospf_database_summary_asbr), (show_ip_ospf_database_externel),
2212 (show_router_lsa), (show_any_lsa), (show_router_lsa_self),
2213 (show_any_lsa_self): Functions removed.
2214
2215 (show_lsa_prefix_set), (show_lsa_detail_proc), (show_lsa_detail),
2216 (show_lsa_detail_adv_router_proc), (show_lsa_detail_adv_router):
2217 New functions added. Replace above functions.
2218
2219 (show_ip_ospf_database_all), (show_ip_ospf_database_self_originated):
2220 Functions removed.
2221 (show_ip_ospf_database_summary): New functions added. Replace
2222 above functions.
2223
2224 (show_ip_ospf_database_cmd): DEFUN rearranged.
2225 (show_ip_ospf_database_type_id_cmd),
2226 (show_ip_ospf_database_type_id_adv_router_cmd),
2227 (show_ip_ospf_database_type_is_self_cmd): New ALIASes added.
2228 (show_ip_ospf_database_type_adv_rotuer_cmd): New DEFUN added.
2229 (show_ip_ospf_database_type_self_cmd): New ALIAS added.
2230
22312000-07-11 Toshiaki Takada <takada@zebra.org>
2232
2233 * ospf_asbr.c (ospf_external_info_new),
2234 (ospf_external_info_free): New functions added.
2235
2236 * ospf_lsa.h (ospf_lsa): Add new member `void *param' to set
2237 origination parameter for external-LSA.
2238 Remove member `redistribute'.
2239
2240 * ospf_zebra.c (ospf_redistirbute_set): When `redistribute'
2241 command executed, metric and metric-type values are overridden.
2242 If one of those is changed refresh AS-external-LSAs for appropriate
2243 type.
2244
22452000-07-11 Michael Rozhavsky <mike@nbase.co.il>
2246
2247 * ospf_lsa.c (ospf_summary_lsa_refresh),
2248 (ospf_summary_asbr_lsa_refresh): Make sure to refresh summary-LSAs.
2249
2250 * ospf_abr.c (set_metric): New function added.
2251
22522000-07-07 Toshiaki Takada <takada@zebra.org>
2253
2254 * ospf_zebra.c (ospf_default_information_originate_metric_type),
2255 (ospf_default_information_originate_type_metric): New defun added.
2256 Metic and Metric type can be set to default route.
2257 (ospf_default_information_originate_always_metric_type):
2258 (ospf_default_information_originate_always_type_metric):
2259 New defun added. Metric and Metric type can be set to default
2260 always route.
2261
2262 * ospf_zebra.c (ospf_default_metric), (no_ospf_default_metric):
2263 New defun added.
2264
22652000-07-06 Gleb Natapov <gleb@nbase.co.il>
2266
2267 * ospf_flood.c (ospf_flood_through_area): Fix bug of considering
2268 on the same interface the LSA was received from.
2269
22702000-07-06 Michael Rozhavsky <mike@nbase.co.il>
2271
2272 * ospfd.c (ospf_config_write): Fix bug of printing `area stub'
2273 command with `write mem'.
2274
2275 * ospfd.c (no_router_ospf): Remove installed routes from zebra.
2276
2277 * ospf_zebra.c (ospf_interface_delete): Fix function to handle
2278 zebra interface delete event.
2279
22802000-07-06 Toshiaki Takada <takada@zebra.org>
2281
2282 * ospf_zebra.c (ospf_default_information_originate),
2283 (ospf_default_information_originate_always): New DEFUN added.
2284
22852000-07-05 Michael Rozhavsky <mike@nbase.co.il>
2286
2287 * ospf_route.c (ospf_terminate): Make sure to remove external route
2288 when SIGINT received.
2289
22902000-07-03 Gleb Natapov <gleb@nbase.co.il>
2291
2292 * ospf_flood.c, ospf_ism.c, ospf_lsa,c, ospfd.c: Make sure to free
2293 many structure with `no router ospf'.
2294
22952000-06-30 Gleb Natapov <gleb@nbase.co.il>
2296
2297 * ospf_neighbor.c (ospf_nbr_new),
2298 ospf_nsm.c (nsm_timer_set): Start LS update timer only
2299 when neighbor enters Exchange state.
2300
23012000-06-29 Gleb Natapov <gleb@nbase.co.il>
2302
2303 * ospf_nsm.c (nsm_timer_set), (nsm_exchange_done),
2304 ospf_packet.c (ospf_db_desc_proc):
2305 Do not cancel DD retransmit timer when Master.
2306
23072000-06-29 Gleb Natapov <gleb@nbase.co.il>
2308
2309 * ospf_abr.c (ospf_abr_announce_network_to_area),
2310 (ospf_abr_announce_rtr_to_area)
2311 ospf_ase.c (ospf_ase_rtrs_register_lsa),
2312 ospf_flood.c (ospf_process_self_originated_lsa),
2313 (ospf_flood_through_area), (ospf_ls_request_delete),
2314 ospf_interface.c (ospf_if_free),
2315 ospf_ism.c (ism_change_status),
2316 ospf_lsa.c (ospf_router_lsa_update_timer),
2317 (ospf_router_lsa_install), (ospf_network_lsa_install),
2318 (ospf_lsa_maxage_delete), (ospf_lsa_action),
2319 (ospf_schedule_lsa_flood_area),
2320 ospf_nsm.c (nsm_change_status),
2321 ospf_packet.c (ospf_make_ls_req_func), (ospf_make_ls_ack):
2322 Use ospf_lsa_{lock,unlock} for all looking-up of LSA.
2323
2324 * ospf_flood.c (ospf_ls_request_free): Function deleted.
2325
2326 * ospf_lsa.c (ospf_discard_from_db): New function added.
2327
23282000-06-26 Toshiaki Takada <takada@zebra.org>
2329
2330 * ospfd.h (ospf): struct member `external_lsa' name changed to
2331 `lsdb'.
2332
23332000-06-26 Toshiaki Takada <takada@zebra.org>
2334
2335 * ospf_lsa.c (ospf_lsa_install), (ospf_router_lsa_install),
2336 (ospf_network_lsa_install), (ospf_summary_lsa_install),
2337 (ospf_summary_asbr_lsa_install), (ospf_external_lsa_install):
2338 Functions re-arranged.
2339
2340 * ospf_lsa.c (IS_LSA_MAXAGE), (IS_LSA_SELF): Macro added.
2341
23422000-06-20 Michael Rozhavsky <mike@nbase.co.il>
2343
2344 * ospf_packet.c (ospf_ls_req), (ospf_ls_upd), (ospf_ls_ack): Add
2345 verification of LS type.
2346
23472000-06-20 Gleb Natapov <gleb@nbase.co.il>
2348
2349 * ospf_ase.c (ospf_ase_calculate_timer): Add more sanity check
2350 whether rn->info is NULL.
2351
23522000-06-20 Toshiaki Takada <takada@zebra.org>
2353
2354 * ospfd.c (show_ip_ospf_interface_sub): Show Router-ID of both
2355 DR and Backup correctly with `show ip ospf interface' command.
2356
23572000-06-20 Toshiaki Takada <takada@zebra.org>
2358
2359 * ospf_lsa.c (ospf_lsa_lock), (ospf_lsa_unlock),
2360 (ospf_lsa_discard): These functions are used for avoiding
2361 unexpected reference to freed LSAs.
2362
23632000-06-13 Kunihiro Ishiguro <kunihiro@zebra.org>
2364
2365 * ospf_packet.c (ospf_ls_upd): Initialize lsa by NULL to avoid
2366 warning.
2367
23682000-06-12 Kunihiro Ishiguro <kunihiro@zebra.org>
2369
2370 * ospf_ase.h (ospf_ase_rtrs_register_lsa): Add prototype.
2371
23722000-06-12 Toshiaki Takada <takada@zebra.org>
2373
2374 * ospf_lsa.c (ospf_external_lsa_install): Make sure to register
2375 LSA to rtrs_external when replacing AS-external-LSAs in LSDB.
2376 Fix core dump.
2377
23782000-06-10 Toshiaki Takada <takada@zebra.org>
2379
2380 * ospf_lsdb.c (id_to_prefix), (ospf_lsdb_hash_key),
2381 (ospf_lsdb_hash_cmp), (ospf_lsdb_new), (ospf_lsdb_iterator),
2382 (lsdb_free), (ospf_lsdb_free), (ospf_lsdb_add), (ospf_lsdb_delete),
2383 (find_lsa), (ospf_lsdb_lookup), (find_by_id),
2384 (ospf_lsdb_lookup_by_id), (ospf_lsdb_lookup_by_header): Functinos
2385 removed for migration to new_lsdb.
2386
2387 * ospf_lsa.c (ospf_summary_lsa_install),
2388 (ospf_summary_asbr_lsa_install), (ospf_maxage_lsa_remover),
2389 (ospf_lsa_maxage_walker), (ospf_lsa_lookup),
2390 (ospf_lsa_lookup_by_id): Use new_lsdb instead of ospf_lsdb.
2391 (count_lsa), (ospf_lsa_count_table), (ospf_lsa_count),
2392 (ospf_get_free_id_for_prefix): Funcitions removed.
2393
23942000-06-09 Gleb Natapov <gleb@nbase.co.il>
2395
2396 * ospf_ism.c (ism_interface_down): Prevent some unneeded DR changes.
2397
2398 * ospf_packet.c (ospf_db_desc_proc): Fix memory leak.
2399 (ospf_hello): Always copy router-ID when hello is received.
2400
24012000-06-08 Gleb Natapov <gleb@nbase.co.il>
2402
2403 * ospf_lsa.h (struct ospf_lsa): Add member of pointer to struct
2404 ospf_area.
2405
24062000-06-08 Michael Rozhavsky <mike@nbase.co.il>
2407
2408 * ospf_ase.c (ospf_asbr_route_same): New function added.
2409 This function makes sure external route calculation more
2410 precisely.
2411
24122000-06-07 Michael Rozhavsky <mike@nbase.co.il>
2413
2414 * ospf_ism.c (ism_change_status): Use ospf_lsa_flush_area for
2415 network-LSA deletion instead of using ospf_lsdb_delete.
2416 Also cancel network-LSA origination timer.
2417
24182000-06-07 Levi Harper <lharper@kennedytech.com>
2419
2420 * ospf_interface.c (ospf_if_down): Close read fd when an interface
2421 goes down.
2422
24232000-06-05 Kunihiro Ishiguro <kunihiro@zebra.org>
2424
2425 * ospf_asbr.c (ospf_external_info_lookup): Add explicit brace for
2426 avoid ambiguous else.
2427
2428 * ospf_flood.c (ospf_external_info_check): Likewise.
2429
24302000-06-05 Toshiaki Takada <takada@zebra.org>
2431
2432 * ospf_nsm.c (nsm_adj_ok): Fix bug of DR election.
2433
24342000-06-04 Toshiaki Takada <takada@zebra.org>
2435
2436 * ospf_zebra.c (ospf_default_information_originate),
2437 (no_ospf_default_information_originate): New DEFUN added.
2438
24392000-06-03 Toshiaki Takada <takada@zebra.org>
2440
2441 * ospf_lsa.h, ospf_asbr.h (external_info): Struct moved from
2442 ospf_lsa.h to ospf_asbr.h.
2443
2444 * ospf_lsa.c, ospf_asbr.c (ospf_external_info_add),
2445 (ospf_external_info_delete): Function moved from ospf_lsa.c
2446 to ospf_asbr.c.
2447
24482000-06-03 Toshiaki Takada <takada@zebra.org>
2449
2450 * ospf_flood.c (ospf_external_info_check): New function added.
2451 (ospf_process_self_orignated_lsa): Make sure to flush
2452 self-originated AS-external-LSA, when router reboot and no longer
2453 originate those AS-external-LSA.
2454
24552000-06-02 Toshiaki Takada <takada@zebra.org>
2456
2457 * ospf_network.c (ospf_serv_sock): Remove SO_DONTROUTE
2458 socket option.
2459
2460 * ospf_packet.c (ospf_write): Set MSG_DONTROUTE flag for
2461 unicast destination packets.
2462
24632000-06-02 Toshiaki Takada <takada@zebra.org>
2464
2465 * ospf_lsdb.c (new_lsdb_delete): Delete entry from LSDB only when
2466 specified LSA matches.
2467
24682000-06-02 Gleb Natapov <gleb@nbase.co.il>
2469
2470 * ospf_network.c (ospf_serv_sock): Set SO_DONTROUTE
2471 socket option.
2472
24732000-06-01 Akihiro Mizutani <mizutani@dml.com>
2474
2475 * ospf_dump.c: Replace string `Debugging functions\n' with DEBUG_STR.
2476 Replace string `OSPF information\n' with OSPF_STR.
2477
24782000-06-01 Toshiaki Takada <takada@zebra.org>
2479
2480 * ospf_lsdb.[ch]: Use new_lsdb struct for network-LSA instead of
2481 ospf_lsdb.
2482
24832000-06-01 Toshiaki Takada <takada@zebra.org>
2484
2485 * ospf_dump.c (config_debug_ospf_packet), (config_debug_ospf_event),
2486 (config_debug_ospf_ism), (config_debug_ospf_nsm),
2487 (config_debug_ospf_lsa), (config_debug_ospf_zebra),
2488 (term_debug_ospf_packet), (term_debug_ospf_event),
2489 (term_debug_ospf_ism), (term_debug_ospf_nsm),
2490 (term_debug_ospf_lsa), (term_debug_ospf_zebra): Repalce debug_ospf_*
2491 variable to use for debug option flags.
2492
2493 (debug_ospf_packet), (debug_ospf_ism), (debug_ospf_nsm),
2494 (debug_ospf_lsa), (debug_ospf_zebra): Set {config,term}_debug_*
2495 flags when vty->node is CONFIG_NODE, otherwise set only term_debug_*
2496 flags.
2497
2498 * ospf_dump.h (CONF_DEBUG_PACKET_ON), (CONF_DEBUG_PACKET_OFF),
2499 (TERM_DEBUG_PACKET_ON), (TERM_DEBUG_PACKET_OFF),
2500 (CONF_DEBUG_ON), (CONF_DEBUG_OFF), (IS_CONF_DEBUG_OSPF_PACKET),
2501 (IS_CONF_DEBUG_OSPF): New Macro added.
2502
25032000-05-31 Toshiaki Takada <takada@zebra.org>
2504
2505 * ospfd.c (clear_ip_ospf_neighbor): New DEFUN added.
2506 Currently this command is used for only debugging.
2507
2508 * ospf_nsm.c (nsm_change_status): Make sure thread cancellation
2509 for network-LSA when DR has no full neighbors.
2510
2511 * ospf_nsm.c (ospf_db_summary_clear): New function added.
2512
25132000-05-30 Toshiaki Takada <takada@zebra.org>
2514
2515 * ospf_lsdb.c (new_lsdb_insert): LSAs are always freed by
2516 maxage_lsa_remover when LSA is replaced.
2517
25182000-05-25 Gleb Natapov <gleb@nbase.co.il>
2519
2520 * ospf_flood.c (ospf_ls_retransmit_delete_nbr_all): Add argument
2521 `struct ospf_area' to remove LSA from Link State retransmission list
2522 of neighbor from only one Area.
2523
25242000-05-24 Michael Rozhavsky <mike@nbase.co.il>
2525
2526 * ospf_lsdb.c (ospf_lsdb_add): Preserve flags field when
2527 overriting old LSA with new LSA.
2528
25292000-05-24 Gleb Natapov <gleb@nbase.co.il>
2530
2531 * ospf_lsa.c (ospf_router_lsa_body_set): Fix bug of router-LSA
2532 size calculation.
2533
25342000-05-22 Michael Rozhavsky <mike@nbase.co.il>
2535
2536 * ospf_route.c (ospf_intra_add_stub):
2537 * ospf_spf.h (struct vertex): Use u_int32_t for distance (cost)
2538 value instead of u_int16_t.
2539
25402000-05-22 Axel Gerlach <agerlach@datus.datus.com>
2541
2542 * ospf_ia.c (ospf_ia_network_route): Fix bug of Inter-area route
2543 equal cost path calculation.
2544
25452000-05-21 Toshiaki Takada <takada@zebra.org>
2546
2547 * ospf_ase.c (ospf_ase_calculate_route_delete): New function added.
2548 Make sure, when rotuer route is deleted, related external routes
2549 are also deleted.
2550
25512000-05-20 Toshiaki Takada <takada@zebra.org>
2552
2553 * ospfd.c (ospf_interface_down): Make sure interface flag is disable
2554 and set fd to -1.
2555
25562000-05-16 Toshiaki Takada <takada@zebra.org>
2557
2558 * ospf_asbr.c (ospf_asbr_should_announce), (ospf_asbr_route_remove):
2559 Functions removed.
2560
2561 * ospfd.h (EXTERNAL_INFO): Macro added.
2562 Substitute `ospf_top->external_info[type]' with it.
2563
25642000-05-16 Toshiaki Takada <takada@zebra.org>
2565
2566 * ospf_lsa.c (ospf_rtrs_external_remove): New function added.
2567
25682000-05-14 Gleb Natapov <gleb@nbase.co.il>
2569
2570 * ospf_flood.c (ospf_ls_retransmit_delete_nbr_all)
2571 * ospf_lsdb.c (new_lsdb_insert)
2572 * ospf_packet.c (ospf_ls_ack): Fix database synchonization problem.
2573
25742000-05-14 Gleb Natapov <gleb@nbase.co.il>
2575
2576 * ospf_lsa.h (tv_adjust), (tv_ceil), (tv_floor), (int2tv),
2577 (tv_add), (tv_sub), (tv_cmp): Prototype definition added.
2578
2579 * ospf_nsm.h (ospf_db_summary_delete_all): Prototype definition added.
2580
25812000-05-13 Toshiaki Takada <takada@zebra.org>
2582
2583 * ospf_lsa.[ch] (ospf_lsa): struct timestamp type is changed from
2584 time_t to struct timeval.
2585 (tv_adjust), (tv_ceil), (tv_floor), (int2tv), (tv_add),
2586 (tv_sub), (tv_cmp): timeval utillity functions added.
2587
25882000-05-12 Toshiaki Takada <takada@zebra.org>
2589
2590 * ospf_lsa.[ch] (ospf_schedule_update_router_lsas): Delete function.
2591 Change to use macro OSPF_LSA_UPDATE_TIMER instead of using
2592 this function.
2593 router-LSA refresh timer related stuff is re-organized.
2594
25952000-05-10 Gleb Natapov <gleb@nbase.co.il>
2596
2597 * ospf_interface.c (ospf_vl_set_params):
2598 * ospf_packet.c (ospf_check_network_mask):
2599 * ospf_spf.[ch] (ospf_spf_next):
2600 Remove field address from `struct vertex', and search for peer
2601 address of virtual link in function `ospf_vl_set_params' instead.
2602
26032000-05-10 Gleb Natapov <gleb@nbase.co.il>
2604
2605 * ospf_packet.c (ospf_ls_upd): Fix some memory leak related LSA.
2606
26072000-05-08 Thomas Molkenbur <tmo@datus.com>
2608
2609 * ospf_packet.c (ospf_packet_dup): Replace ospf_steram_copy()
2610 with ospf_stream_dup() to fix memory leak.
2611
26122000-05-08 Michael Rozhavsky <mike@nbase.co.il>
2613
2614 * ospf_flood.c (ospf_flood_through_area): Fix the problem of
2615 LSA update without DROther.
2616
26172000-05-04 Gleb Natapov <gleb@nbase.co.il>
2618
2619 * ospf_spf.c (ospf_vertex_free): Fix memory leak of SPF calculation.
2620
26212000-05-03 Toshiaki Takada <takada@zebra.org>
2622
2623 * ospf_neighbor.c (ospf_db_summary_add): Use new_lsdb struct
2624 instead linked-list.
2625 (ospf_db_summary_count), (ospf_db_summary_isempty):
2626 New function added.
2627
2628 * ospf_lsa.c (ospf_rotuer_lsa): Re-arrange and divide functions.
2629
26302000-05-02 Gleb Natapov <gleb@nbase.co.il>
2631
2632 * ospf_lsdb.c (new_lsdb_cleanup): Fix memory leak. When LSDB are
2633 not needed any more, then free them.
2634
26352000-05-02 Toshiaki Takada <takada@zebra.org>
2636
2637 * ospfd.c (timers_spf), (no_timers_spf): New defun added.
2638 SPF calculation timers related stuff is rearranged.
2639
2640 * ospf_spf.c (ospf_spf_calculate_timer_add): Function removed.
2641 SPF timer is scheduled by SPF calculation delay and holdtime
2642 configuration variable.
2643
2644 * ospf_lsa.c (ospf_external_lsa_nexthop_get): Set AS-external-LSA's
2645 forwarding address when nexthop learned by other protocols is
2646 in the OSPF domain.
2647
2648 * ospf_zebra.c (ospf_redistribute_source_metric_type),
2649 (ospf_redistribute_source_type_metric): Re-arrange DEFUNs and
2650 ALIASes.
2651
26522000-05-01 Toshiaki Takada <takada@zebra.org>
2653
2654 * ospf_flood.c (ospf_ls_retransmit_count),
2655 (ospf_ls_retransmit_isempty): New function added.
2656
2657 (ospf_ls_retransmit_add), (ospf_ls_retransmit_delete),
2658 (ospf_ls_retransmit_clear), (ospf_ls_retransmit_lookup),
2659 (ospf_ls_retransmit_delete_all), (ospf_ls_retransmit_delete_nbr_all),
2660 (ospf_ls_retransmit_add_nbr_all): Replace these functions to use
2661 new_lsdb.
2662
26632000-04-29 Toshiaki Takada <takada@zebra.org>
2664
2665 * ospfd.c (no_network_area): Add check Area-ID whether specified
2666 Area-ID with prefix matches config.
2667
26682000-04-27 Toshiaki Takada <takada@zebra.org>
2669
2670 * ospf_lsa.c (ospf_maxage_lsa_remover): Fix problem of
2671 remaining withdrawn routes on zebra.
2672
26732000-04-25 Michael Rozhavsky <mike@nbase.co.il>
2674
2675 * ospf_nsm.c (nsm_kill_nbr), (nsm_ll_down), (nsm_change_status),
2676 (ospf_nsm_event): Fix network-LSA re-origination problem.
2677
26782000-04-24 Toshiaki Takada <takada@zebra.org>
2679
2680 * ospf_nsm.c (ospf_db_desc_timer): Fix bug of segmentation fault
2681 with DD retransmission.
2682
2683 * ospf_nsm.c (nsm_kill_nbr): Fix bug of re-origination when
2684 a neighbor disappears.
2685
26862000-04-23 Michael Rozhavsky <mike@nbase.co.il>
2687
2688 * ospf_abr.c (ospf_abr_announce_network_to_area): Fix bug of
2689 summary-LSAs reorigination. Correctly copy OSPF_LSA_APPROVED
2690 flag to new LSA. when summary-LSA is reoriginatd.
2691
2692 * ospf_flood.c (ospf_flood_through_area): Fix bug of flooding
2693 procedure. Change the condition of interface selection.
2694
26952000-04-21 Toshiaki Takada <takada@zebra.org>
2696
2697 * ospf_lsa.c (ospf_refresher_register_lsa): Fix bug of refresh never
2698 occurs.
2699
2700 * ospfd.c (show_ip_ospf_neighbor_id): New defun added.
2701 `show ip ospf neighbor' related commands are re-arranged.
2702
27032000-04-20 Toshiaki Takada <takada@zebra.org>
2704
2705 * ospf_dump.c (debug_ospf_zebra): New defun added.
2706 Suppress zebra related debug information.
2707
27082000-04-19 Toshiaki Takada <takada@zebra.org>
2709
2710 * ospf_zebra.c (ospf_distribute_list_update_timer),
2711 (ospf_distribute_list_update), (ospf_filter_update):
2712 New function added. Re-organize `distribute-list' router ospf
2713 command.
2714
27152000-04-13 Michael Rozhavsky <mike@nbase.co.il>
2716
2717 * ospf_packet.c (ospf_make_ls_upd): Add check for MAX_AGE.
2718
27192000-04-14 Michael Rozhavsky <mike@nbase.co.il>
2720
2721 * ospf_packet.c (ospf_make_ls_upd): Increment LS age by configured
2722 interface transmit_delay.
2723
27242000-04-14 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2725
2726 * ospf_interface.c (ip_ospf_cost), (no_ip_ospf_cost):
2727 Add to schedule router_lsa origination when the interface cost changes.
2728
27292000-04-12 Toshiaki Takada <takada@zebra.org>
2730
2731 * ospf_lsa.c (ospf_refresher_register_lsa),
2732 (ospf_refresher_unregister_lsa): Fix bug of core dumped.
2733
2734 * ospfd.c (no_router_ospf): Fix bug of core dumped.
2735
27362000-03-29 Toshiaki Takada <takada@zebra.org>
2737
2738 * ospf_nsm.c (nsm_oneway_received): Fix bug of MS flag unset.
2739
27402000-03-29 Michael Rozhavsky <mike@nbase.co.il>
2741
2742 * ospf_lsa.c (ospf_network_lsa):
2743 * ospf_nsm.c (ospf_nsm_event): Fix bug of Network-LSA originated
2744 in stub network.
2745
27462000-03-28 Toshiaki Takada <takada@zebra.org>
2747
2748 * ospf_nsm.c (nsm_bad_ls_req), (nsm_seq_number_mismatch),
2749 (nsm_oneway_received): Fix bug of NSM state flapping between
2750 ExStart and Exchange.
2751
27522000-03-28 Toshiaki Takada <takada@zebra.org>
2753
2754 * ospf_packet.h (strcut ospf_header): Fix the size of ospf_header,
2755 change u_int8_t to u_char.
2756
27572000-03-27 Toshiaki Takada <takada@zebra.org>
2758
2759 * ospf_lsa.c (ospf_lsa_checksum): Take care of BIGENDIAN architecture.
2760
27612000-03-27 Toshiaki Takada <takada@zebra.org>
2762
2763 * ospfd.c (ospf_interface_run): Make sure Address family matches.
2764
27652000-03-26 Love <lha@s3.kth.se>
2766
2767 * ospf_packet.c (ospf_write): Chack result of sendto().
2768
27692000-03-26 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2770
2771 * ospf_nsm.c (nsm_oneway_received): Fix bug of 1-WayReceived in NSM.
2772
27732000-03-23 Libor Pechacek <farco@clnet.cz>
2774
2775 * ospf_lsa.c (ospf_network_lsa)
2776 * ospf_lsdb.c (new_lsdb_insert): Fix bug of accessing to
2777 unallocated memory.
2778
27792000-03-23 Toshiaki Takada <takada@zebra.org>
2780
2781 * ospfd.c (ospf_config_write): Fix bug of duplicate line for
2782 `area A.B.C.D authentication'.
2783
27842000-03-22 Toshiaki Takada <takada@zebra.org>
2785
2786 * ospf_debug.c (debug_ospf_lsa), (no_debug_ospf_lsa): Defun added.
2787 Suppress all zlog related to LSAs with this config option.
2788
27892000-03-21 Kunihiro Ishiguro <kunihiro@zebra.org>
2790
2791 * ospf_nsm.c (ospf_nsm_event): Add check for NSM_InactivityTimer.
2792
27932000-03-21 Toshiaki Takada <takada@zebra.org>
2794
2795 * ospf_packet.c (ospf_ls_upd_timer), (ospf_ls_req):
2796 Fix bug of memory leak about linklist.
2797
2798 * ospf_flood.c (ospf_flood_through_area): Likewise.
2799
28002000-03-18 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2801
2802 * ospf_flood.c (ospf_ls_retransmit_lookup): Add checksum comparison
2803 to identify LSA uniquely. This fix routes lost.
2804
28052000-03-18 Toshiaki Takada <takada@zebra.org>
2806
2807 * ospf_ase.c (ospf_find_asbr_route): Add sanity check with router
2808 routing table.
2809
28102000-03-17 Alex Zinin <zinin@amt.ru>
2811
2812 * ospf_spf.[ch]: Bug fix.
2813 The 2nd stage of Dijkstra could consider one vertex
2814 more than once if there is more than one link
2815 between the routers, thus adding extra CPU overhead
2816 and extra next-hops.
2817 Fixed.
2818
28192000-03-15 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2820
2821 * ospf_nsm.c (nsm_inactivity_timer): Changed to call nsm_kill_nbr().
2822
28232000-03-14 Toshiaki Takada <takada@zebra.org>
2824
2825 * ospf_route.c (ospf_route_copy_nexthops): Fix bug of memory leak of
2826 ospf_path. Actually ignore merging ospf_route with completely same
2827 paths.
2828
28292000-03-12 Toshiaki Takada <takada@zebra.org>
2830
2831 * ospf_lsa.c (show_as_external_lsa_detail): fix bug of
2832 external route tag byte order.
2833
28342000-03-11 Toshiaki Takada <takada@zebra.org>
2835
2836 * ospf_lsdb.c (ospf_lsdb_insert): New function added.
2837
28382000-03-09 Toshiaki Takada <takada@zebra.org>
2839
2840 * ospf_lsa.c (ospf_external_lsa_install),
2841 (ospf_lsa_lookup), (show_ip_ospf_database_all),
2842 (show_ip_ospf_database_self_originate): Use struct new_lsdb for
2843 LSDB of AS-external-LSAs instead of ospf_lsdb.
2844
2845 * ospf_lsa.c (ospf_lsa_unique_id): New function added.
2846 Use for assigning Unique Link State ID instead of
2847 ospf_get_free_id_for_prefix().
2848
28492000-03-09 Toshiaki Takada <takada@zebra.org>
2850
2851 * ospf_ase.c (ospf_ase_calculate_timer): Fix bug of segmentation
2852 fault reported by George Bonser <george@siteROCK.com>.
2853
28542000-03-07 Libor Pechacek <farco@clnet.cz>
2855
2856 * ospfd.c (ospf_interface_down): Fix bug of segmentation fault.
2857
28582000-03-06 Toshiaki Takada <takada@zebra.org>
2859
2860 * ospf_route.c (ospf_route_cmp): Change meaning of return values.
2861
28622000-03-02 Alex Zinin <zinin@amt.ru>
2863 * ospfd.h, ospf_ia.h
2864 New Shortcut ABR code. Now area's flag can be configured
2865 with Default, Enable, and Disable values.
2866 More info will be in the new ver of I-D soon (see IETF web).
2867
28682000-02-25 Toshiaki Takada <takada@zebra.org>
2869
2870 * ospf_lsa.c (ospf_lsa_header_set), (ospf_external_lsa_body_set),
2871 (osfp_external_lsa_originate), (ospf_external_lsa_queue),
2872 (ospf_external_lsa_originate_from_queue): New function added.
2873 (ospf_external_lsa): Function removed.
2874
2875 * ospf_zebra.c (ospf_zebra_read_ipv4): Originate AS-external-LSA
2876 when listen a route from Zebra, instead creating external route.
2877
2878 * ospf_asbr.c (ospf_asbr_route_add_flood_lsa),
2879 (ospf_asbr_route_add_queue_lsa),
2880 (ospf_asbr_route_install_lsa), (ospf_asbr_route_add):
2881 Functions removed.
2882
2883 * ospf_ase.c (process_ase_lsa): Function will not be used.
2884 (ospf_ase_calculate), (ospf_ase_calculate_route_add),
2885 (ospf_ase_calculate_new_route), (ospf_ase_caluculate_asbr_route):
2886 process_ase_lsa () is separated to these functions.
2887
2888 OSPF AS-external-LSA origination is whole re-organized.
2889
28902000-02-18 Toshiaki Takada <takada@zebra.org>
2891
2892 * ospf_packet.c (ospf_ls_upd): Fix bug of OSPF LSA memory leak.
2893
2894 * ospf_asbr.c (ospf_asbr_route_add_flood_lsa),
2895 (ospf_asbr_route_add_queue_lsa): Fix bug of OSPF external route
2896 memory leak.
2897
28982000-02-12 Kunihiro Ishiguro <kunihiro@zebra.org>
2899
2900 * ospf_asbr.c (ospf_asbr_route_install_lsa): Re-calculate LSA
2901 checksum after change Advertised Router field.
2902
29032000-02-09 Toshiaki Takada <takada@zebra.org>
2904
2905 * ospf_asbr.c (ospf_external_route_lookup): Add new function.
2906
29072000-02-08 Toshiaki Takada <takada@zebra.org>
2908
2909 * ospfd.c (ospf_router_id_get), (ospf_router_id_update),
2910 (ospf_router_id_update_timer): Router ID decision algorithm is changed.
2911 Router ID is chosen from all of eligible interface addresses even if
2912 it is not enable to OSPF.
2913
29142000-02-08 Toshiaki Takada <takada@zebra.org>
2915
2916 * ospf_asbr.c (ospf_asbr_route_add): Function divided to
2917 ospf_asbr_route_add_flood_lsa, ospf_asbr_route_add_queue_lsa and
2918 ospf_asbr_route_install_lsa. If Router-ID is not set, then LSA is
2919 waited to install to LSDB.
2920 `0.0.0.0 adv_router' AS-external-LSA origination bug was fixed.
2921
29222000-02-01 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2923
2924 * ospf_flood.c (ospf_ls_retransmit_lookup): Compare LS seqnum
2925 in the ACK before deleting.
2926
2927 * ospf_packet.c (ospf_hello): Reset the flags after a shutdown
2928 and no shutdown of the interface.
2929
29302000-01-31 Toshiaki Takada <takada@zebra.org>
2931
2932 * ospf_packet.c (ospf_ls_req): Send multiple Link State Update
2933 packets respond to a Link State Request packet.
2934
2935 * ospfd.c (show_ip_ospf_neighbor_detail_sub): Show thread state.
2936
2937 * ospf_interface.c (ospf_vl_new): Crash when backbone area
2938 is not configured and set virtual-link to no-backbone area,
2939 bug fixed.
2940
29412000-01-30 Kunihiro Ishiguro <kunihiro@zebra.org>
2942
2943 * ospf_neighbor.h (struct ospf_neighbor): Add pointer to last send
2944 LS Request LSA.
2945
2946 * ospf_packet.c (ospf_ls_upd): Comment out LS request list
2947 treatment. That should be done in OSPF flooding procedure.
2948
2949 * ospf_flood.c (ospf_flood_through_area): Enclose
2950 ospf_check_nbr_loding inside if-else close.
2951
29522000-01-31 Toshiaki Takada <takada@zebra.org>
2953
2954 * ospf_packet.c (ospf_make_ls_upd): Fix bug of #LSAs counting.
2955
29562000-01-29 Toshiaki Takada <takada@zebra.org>
2957
2958 * ospf_packet.c (ospf_make_md5_digest): Fix bug of md5 authentication.
2959
29602000-01-28 Toshiaki Takada <takada@zebra.org>
2961
2962 * ospfd.c (show_ip_ospf): Show Number of ASE-LSAs.
2963
29642000-01-27 Kunihiro Ishiguro <kunihiro@zebra.org>
2965
2966 * ospf_packet.c (ospf_make_db_desc): Don't use rm_list for
2967 removing LSA from nbr->db_summary.
2968
29692000-01-27 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2970
2971 * ospf_packet.c (ospf_ls_upd_send): Set AllSPFRouters to
2972 destination when the link is point-to-point.
2973 (ospf_ls_ack_send_delayed): Likewise.
2974
29752000-01-27 Kunihiro Ishiguro <kunihiro@zebra.org>
2976
2977 * ospf_flood.c (ospf_ls_request_delete_all): Fix bug of next
2978 pointer lookup after the node is freed.
2979
29802000-01-26 Kunihiro Ishiguro <kunihiro@zebra.org>
2981
2982 * ospf_asbr.c (ospf_asbr_route_add): Instead of scanning all AS
2983 external route, use ospf_top->external_self.
2984
29852000-01-27 Toshiaki Takada <takada@zebra.org>
2986
2987 * ospf_lsa.c (ospf_forward_address_get): New function added.
2988
2989 * ospf_asbr.c (ospf_asbr_check_lsas): Originate AS-external-LSA
2990 only when it should be replaced.
2991
29922000-01-25 Kunihiro Ishiguro <kunihiro@zebra.org>
2993
2994 * ospf_flood.c (ospf_ls_retransmit_clear): Delete list node.
2995
2996 * ospf_lsa.c (ospf_lsa_free): Reduce logging message using
2997 ospf_zlog value.
2998
2999 * ospf_ism.c (ism_change_status): Fix bug of DR -> non DR status
3000 change. Self originated LSA is freed but not deleted from lsdb.
3001
30022000-01-24 Kunihiro Ishiguro <kunihiro@zebra.org>
3003
3004 * ospf_ism.c (ism_interface_down): Don't use router_id for
3005 detecting self neighbor structure. Instead of that compare
3006 pointer itself.
3007
3008 * ospf_neighbor.c (ospf_nbr_free): Cancel all timer when neighbor
3009 is deleted.
3010 (ospf_nbr_free): Free last send packet.
3011
3012 * ospf_neighbor.h (struct ospf_neighbor): Remove host strucutre.
3013 Instead of that src is introduced.
3014
3015 * ospf_nsm.h: Enclose macro defenition with do {} while (0).
3016
30172000-01-17 Kunihiro Ishiguro <kunihiro@zebra.org>
3018
3019 * ospfd.c: Change part of passive interface implementation. For
3020 passive interface just disabling sending/receiving Hello on the
3021 interface.
3022
30232000-01-16 Kai Bankett <kai.bankett@vew-telnet.net>
3024
3025 * ospf_interface.h (OSPF_IF_PASSIVE): Add passive flag.
3026 * ospf_interface.c (ospf_if_lookup_by_name): Add new function.
3027 * ospf_lsa.c (ospf_router_lsa): Skip passive interface.
3028 * ospfd.c (passive_interface): New command passive-interface is
3029 added.
3030 (ospf_config_write): Print passive interface.
3031
30322000-01-15 Toshiaki Takada <takada@zebra.org>
3033
3034 * ospf_interface.h (crypt_key): New struct added to store
3035 multiple cryptographic autheitication keys.
3036 (ospf_interface): struct changed.
3037
3038 * ospf_interface.c: ospf_crypt_key_new, ospf_crypt_key_add,
3039 ospf_crypt_key_lookup, ospf_crypt_key_delete: new functions added.
3040
3041 * ospf_packet.c (ip_ospf_message_digest_key): Changed to store
3042 multiple cryptographic authentication keys.
3043
30442000-01-14 Toshiaki Takada <takada@zebra.org>
3045
3046 * ospf_interface.c: DEFUN (if_ospf_*) commands changed name to
3047 ip_ospf_* ().
3048 Old notation `ospf *' still remains backward compatibility.
3049
30501999-12-29 Alex Zinin <zinin@amt.ru>
3051 * ospf_lsa.c: ospf_lsa_more_recent() bug fix
3052 * ospf_nsm.c, ospf_packet.c: remove nbr data struct when
3053 int goes down, also check DD flags correctly (bug fix)
3054
30551999-12-28 Alex Zinin <zinin@amt.ru>
3056 * "redistribute <source> metric-type (1|2) metric <XXX>" added
3057
30581999-12-23 Alex Zinin <zinin@amt.ru>
3059 * added RFC1583Compatibility flag
3060 * added dynamic interface up/down functionality
3061
30621999-11-19 Toshiaki Takada <takada@zebra.org>
3063
3064 * ospf_neighbor.h (struct ospf_neighbor): Add member state_change
3065 for NSM state change statistics.
3066
30671999-11-19 Toshiaki Takada <takada@zebra.org>
3068
3069 * ospfd.c (show_ip_ospf_neighbor_detail),
3070 (show_ip_ospf_neighbor_int_detail): DEFUN Added.
3071
30721999-11-14 Kunihiro Ishiguro <kunihiro@zebra.org>
3073
3074 * ospf_asbr.c (ospf_asbr_check_lsas): Add check of
3075 lsa->refresh_list.
3076
30771999-11-11 Toshiaki Takada <takada@zebra.org>
3078
3079 * ospf_ia.[ch] (OSPF_EXAMINE_SUMMARIES_ALL): Macro added.
3080 This macro is expanded to ospf_examine_summaries ()
3081 for SUMMARY_LSA and SUMMARY_LSA_ASBR.
3082 (OSPF_EXAMINE_TRANSIT_SUMMARIES_ALL): Macro added.
3083 This macro is expanded to ospf_examine_transit_summaries ()
3084 for SUMMARY_LSA and SUMMARY_LSA_ASBR.
3085
30861999-11-11 Toshiaki Takada <takada@zebra.org>
3087
3088 * ospf_lsa.[ch] (ospf_find_self_summary_lsa_by_prefix): Changed to
3089 macro OSPF_SUMMARY_LSA_SELF_FIND_BY_PREFIX.
3090 (ospf_find_self_summary_asbr_lsa_by_prefix): Changed to
3091 macro OSPF_SUMMARY_ASBR_LSA_SELF_FIND_BY_PREFIX.
3092 (ospf_find_self_external_lsa_by_prefix): Changed to
3093 macro OSPF_EXTERNAL_LSA_SELF_FIND_BY_PREFIX.
3094
30951999-11-11 Toshiaki Takada <takada@zebra.org>
3096
3097 * ospfd.c (ospf_abr_type): ospf_abr_type_cisco, ospf_abr_type_ibm,
3098 ospf_abr_type_shortcut and ospf_abr_type_standard DEFUNs are
3099 combined.
3100 * ospfd.c (no_ospf_abr_type): no_ospf_abr_type_cisco,
3101 no_ospf_abr_type_ibm and no_ospf_abr_type_shortcut DEFUNS are
3102 combined.
3103
31041999-11-10 Toshiaki Takada <takada@zebra.org>
3105
3106 * ospf_route.c (ospf_lookup_int_by_prefix): Move function to
3107 ospf_interface.c and change name to ospf_if_lookup_by_prefix ().
3108
31091999-11-01 Alex Zinin <zinin@amt.ru>
3110 * ospf_packet.c
3111 some correction to LSU processing
3112
3113 * ospf_lsa.c ospfd.h
3114 randomize initial LSA refreshment interval
3115 and limit the size of LSA-group to 10
3116 to let randomization work more effectively.
3117
31181999-10-31 Alex Zinin <zinin@amt.ru>
3119 * ospf_interface.c
3120 cancel t_network_lsa_self
3121 when freeing int structure
3122
3123 * ospf_abr.c ospf_asbr.c ospf_flood.c ospf_lsa.c
3124 ospf_lsa.h ospf_lsdb.h ospfd.c ospfd.h
3125
3126 Summary and ASE LSA refreshment functions
3127 added---LSA refreshment is paced to 70 LSAs
3128 per sec to avoid link overflow. Refreshment events
3129 are further randomized within a 10 sec interval
3130 to avoid syncing.
3131
3132 Also the sigfault of memcmp() in ospf_lsa_is_different()
3133 is fixed.
3134
31351999-10-30 Alex Zinin <zinin@amt.ru>
3136 * ospf_nsm.c
3137 Fix the bug where MAX_AGE LSAs
3138 are included into the DB summary.
3139
3140 * ospf_interface.c
3141 allocate 2*MTU input buffer instead of just MTU
3142 for the cases when the other router mistakenly
3143 sends larger packets thus causing fragmentation, etc.
3144
3145 * ospf_nsm.c
3146 in nsm_reset_nbr() lists should be freed
3147 not when they are empty.
3148
31491999-10-29 Kunihiro Ishiguro <kunihiro@zebra.org>
3150
3151 * ospf_zebra.c (ospf_acl_hook): Move OSPF_IS_ASBR and OSPF_IS_ABR
3152 check inside of if (ospf_top).
3153
31541999-10-29 Alex Zinin <zinin@amt.ru>
3155 * ospf_lsa.c ospf_lsdb.c :
3156 add assertion in lsa and lsa->data alloc functions,
3157 as well as in lsdb_add for new->data
3158
3159 * ospf_lsdb.c: free hash table correctly
3160
31611999-10-28 John Capo <jc@irbs.com>
3162
3163 * ospf_packet.h (OSPF_PACKET_MAX): Correct MAX packet length
3164 calculation
3165
31661999-10-27 Kunihiro Ishiguro <kunihiro@zebra.org>
3167
3168 * OSPF-TRAP-MIB.txt: New file added. Edited version of RFC1850.
3169
3170 * OSPF-MIB.txt: New file added. Edited version of RFC1850.
3171
31721999-10-27 Alex Zinin <zinin@amt.ru>
3173 * ospfd, ospf_zebra, ospf_abr
3174 "area import-list" command is added.
3175 This command allows to filter the inter-area routes
3176 injected into an area. Access list hook function
3177 extended to invalidate area exp/imp lists.
3178
31791999-10-25 Yoshinobu Inoue <shin@nd.net.fujitsu.co.jp>
3180
3181 * ospfd.c (ospf_interface_run): Enable to detect P2P network
3182 on an OSPF interface.
3183
31841999-10-19 Jordan Mendelson <jordy@wserv.com>
3185
3186 * ospf_lsdb.c (ospf_lsdb_add): Fix bug of crash
3187 in ospf_ls_retransmit_lookup ().
3188
31891999-10-19 Vladimir B. Grebenschikov <vova@express.ru>
3190
3191 * ospf_route.c: Workaround about installation of OSPF routes into
3192 the zebra daemon. Add checking of existance routes. Free
3193 ospf_top->old_table if it exists.
3194
31951999-10-15 Jordan Mendelson <jordy@wserv.com>
3196
3197 * Add support for MD5 authentication.
3198
31991999-10-12 Alex Zinin <zinin@amt.ru>
3200 * ospfd.c, ospfd.h, ospf_abr.c:
3201 a new command "area export-list" was added, it allows
3202 the admin. to control which intra-area routes are
3203 announced to other areas by the ABR
3204
32051999-10-12 Alex Zinin <zinin@amt.ru>
3206 * ospf_asbr.c (ospf_asbr_check_lsas): Fix bug of coredump
3207 when "no redistribute" is used after a distribute list
3208 denying some networks was used
3209
32101999-10-05 Toshiaki Takada <takada@zebra.org>
3211
3212 * ospf_route.c (ospf_path_dup): New function added.
3213
32141999-10-05 Toshiaki Takada <takada@zebra.org>
3215
3216 * ospf_interface.[ch]: Some of VL related funciton name changed.
3217
32181999-09-27 Alex Zinin <zinin@amt.ru>
3219
3220 * ospf_zebra.c: Distribute-list functionality added
3221
32221999-09-27 Toshiaki Takada <takada@zebra.org>
3223
3224 * ospfd.c (show_ip_ospf): Fix bug of segmentation fault when no ospf
3225 instance exists.
3226
32271999-09-25 Kunihiro Ishiguro <kunihiro@zebra.org>
3228
3229 * ospfd.c (ospf_interface_down): Fix bug of misusing nextnode()
3230 instead of node->next. Reported by Hiroki Ishibashi
3231 <ishibasi@dcd.abk.nec.co.jp>.
3232
3233 * ospf_route.c (show_ip_ospf_route): Add check for ospf is enabled
3234 or not.
3235
32361999-09-23 Alex Zinin <zinin@amt.ru>
3237
3238 * stub area support added
3239
32401999-09-23 Alex Zinin <zinin@amt.ru>
3241
3242 * fwd_addr in ASE-LSAs is now set correctly
3243 * ASE routing changed to check the fwd_addr
3244 and skip the route if the addr points to one
3245 of our interfaces to avoid loops.
3246
32471999-09-22 Alex Zinin <zinin@amt.ru>
3248
3249 * ospf_interface:
3250 ospf_vls_in_area() added, it returns
3251 the number of VLs configured through the area
3252
3253 * ospf_interface.c ospf_lsa.c ospf_lsdb.c ospfd.c
3254 honor correct mem alloc
3255
32561999-09-22 Alex Zinin <zinin@amt.ru>
3257
3258 * memory.[ch]:
3259 Some OSPF mem types added,
3260 plus more info in "show mem"
3261
32621999-09-21 Alex Zinin <zinin@amt.ru>
3263
3264 * ospfd.c:
3265 "area range substitute" added.
3266 It can be used on NAT-enabled (IP-masquarade)
3267 routers to announce private networks
3268 from an area as public ones into the outside
3269 world (not in the RFC, btw :)
3270
32711999-09-21 Alex Zinin <zinin@amt.ru>
3272
3273 * ospfd.c:
3274 "area range suppress" added.
3275 This command allows to instruct the router
3276 to be silent about specific ranges, i.e.,
3277 it is a method of route filtering on area
3278 borders
3279
32801999-09-21 Alex Zinin <zinin@amt.ru>
3281
3282 * ospfd.c VLs removed when "no network area" executed
3283
32841999-09-20 Alex Zinin <zinin@amt.ru>
3285
3286 * ospf_ase.c bug fix for not-zero fwd_addr
3287 and directly connected routes.
3288
32891999-09-20 Yon Uriarte <yon@plannet.de>
3290
3291 * ospf_packet.c (ospf_make_ls_req): Introduce delta value for
3292 checking the length of OSPF packet exceeds MTU or not.
3293
3294 * ospf_lsa.c (ospf_lsa_different): Apply ntohs for checking
3295 l1->data->length.
3296
32971999-09-18 Alex Zinin <zinin@amt.ru>
3298
3299 * ospf_lsa.c bug fix for ospf_network_lsa() to
3300 include itself into the RID list
3301
33021999-09-10 Alex Zinin <zinin@amt.ru>
3303
3304 * Alternative ABR behaviors IBM/Cisco/Shortcut
3305 implemented
3306
33071999-09-10 Alex Zinin <zinin@amt.ru>
3308
3309 * router and network-LSA origination
3310 changed to honor MinLSInterval
3311
33121999-09-08 Alex Zinin <zinin@amt.ru>
3313
3314 * modified ABR behavior to honor VLs and transit
3315 areas
3316
33171999-09-07 Alex Zinin <zinin@amt.ru>
3318
3319 * completed VL functionality
3320
33211999-09-06 Kunihiro Ishiguro <kunihiro@zebra.org>
3322
3323 * ospf_asbr.c: New file.
3324 ospf_asbr.h: New file.
3325
3326 * ospf_zebra.c (ospf_redistribute_connected): Add redistribute
3327 related stuff.
3328
33291999-09-05 Kunihiro Ishiguro <kunihiro@zebra.org>
3330
3331 * ospfd.h (OSPF_FLAG_VIRTUAL_LINK): Change OSPF_FLAG_VEND to
3332 OSPF_FLAG_VIRTUAL_LINK for comprehensiveness.
3333
33341999-09-03 Kunihiro Ishiguro <kunihiro@zebra.org>
3335
3336 * ospf_spf.c (ospf_spf_register): Change name from
3337 ospf_spf_route_add() to ospf_spf_register().
3338 Include "ospfd/ospf_abr.h" for ospf_abr_task() prototype.
3339
33401999-09-02 Kunihiro Ishiguro <kunihiro@zebra.org>
3341
3342 * ospf_lsa.c (ospf_external_lsa_install): Change to update
3343 lsa->data rather than install new one, when same id lsa is already
3344 installed.
3345
33461999-09-01 Kunihiro Ishiguro <kunihiro@zebra.org>
3347
3348 * ospf_lsa.c (ospf_router_lsa_install): Return lsa value.
3349 (ospf_network_lsa_install): Likewise.
3350 (ospf_summary_lsa_install): Likewise.
3351 (ospf_summary_asbr_lsa_install): Likewise.
3352 (ospf_external_lsa_install): Likewise.
3353
3354 * ospf_spf.c (ospf_spf_calculate): Comment out debug function
3355 ospf_rtrs_print().
3356
33571999-08-31 Kunihiro Ishiguro <kunihiro@zebra.org>
3358
3359 * ospf_spf.c (ospf_rtrs_free): Add ospf_spf_calculate() for
3360 freeing rtrs.
3361
33621999-08-31 Toshiaki Takada <takada@zebra.org>
3363
3364 * ospf_lsa.c (show_ip_ospf_database_summary),
3365 (show_ip_ospf_database_summary_asbr),
3366 (show_ip_ospf_database_external): New function added.
3367 `show ip ospf database summary',
3368 `show ip ospf database asbr-summary'
3369 `show ip ospf database external' command can be used.
3370
3371 * ospf_lsa.c (ospf_lsa_count_table): New function added.
3372 (show_ip_ospf_database_all): show nothing if a type of LSA
3373 does not exist.
3374
33751999-08-31 Kunihiro Ishiguro <kunihiro@zebra.org>
3376
3377 * ospf_lsa.c (ospf_maxage_lsa_remover): Preserve next pointer when
3378 the node is deleted.
3379
33801999-08-31 Toshiaki Takada <takada@zebra.org>
3381
3382 * ospf_flood.c (ospf_ls_retransmit_lookup): change to return
3383 struct ospf_lsa *.
3384 (ospf_ls_request_new), (ospf_ls_request_free),
3385 (ospf_ls_request_add), (ospf_ls_request_delete),
3386 (ospf_ls_request_delete_all), (ospf_ls_request_lookup):
3387 New function added.
3388
3389 * ospf_packet.c (ospf_ls_upd_send_lsa): New function added.
3390
3391 * ospf_lsa.h (LS_AGE): Slightly change macro definition.
3392
3393 * ospf_lsa.c (ospf_lsa_more_recent), (ospf_lsa_diffrent):
3394 Use LS_AGE macro.
3395
33961999-08-30 Alex Zinin <zinin@amt.ru>
3397
3398 * ospfd.c
3399 fix a bug with area range config write
3400 added "show ip ospf" command, it will be enhanced later on
3401
34021999-08-30 Alex Zinin <zinin@amt.ru>
3403
3404 * ospf_lsa.c
3405 updated ospf_router_lsa() to honor flags (B-bit)
3406
34071999-08-30 Alex Zinin <zinin@amt.ru>
3408
3409 * ospf_abr.c
3410 wrote major functions implementing ABR activity
3411
34121999-08-30 Alex Zinin <zinin@amt.ru>
3413
3414 * ospf_ia.c ospf_route.c ospf_route.h
3415 fixed the bug with ospf_route.origin field.
3416 Now it holds pointer to lsa_header
3417
34181999-08-30 Alex Zinin <zinin@amt.ru>
3419
3420 * ospf_flood.c ospf_flood.h:
3421 transformed ospf_flood_if_select into ospf_flood_through_area()
3422 added new ospf_flood_if_select() and ospf_flood_through_as()
3423
34241999-08-30 Toshiaki Takada <takada@zebra.org>
3425
3426 * ospf_flood.[ch]: New file added.
3427
3428 * ospf_packet.c (ospf_lsa_flooding),
3429 (ospf_lsa_flooding_select_if): functions move to ospf_flood.c
3430
3431 * ospf_neighbor.c (ospf_put_lsa_on_retransm_list),
3432 (ospf_remove_lsa_from_retransm_list),
3433 (ospf_nbr_remove_all_lsas_from_retransm_list),
3434 (ospf_lsa_remove_from_ls_retransmit):
3435 (ospf_lsa_retransmit): functions move to
3436 ospf_flood.c, and change function's name:
3437
3438 ospf_put_lsa_on_retransm_list ()
3439 -> ospf_ls_retransmit_add ()
3440 ospf_remove_lsa_from_retransm_list ()
3441 -> ospf_ls_retransmit_delete ()
3442 ospf_nbr_remove_all_lsas_from_retransm_list ()
3443 -> ospf_ls_retransmit_clear ()
3444 ospf_lsa_remove_from_ls_retransmit ()
3445 -> ospf_ls_retransmit_delete_nbr_all ()
3446 ospf_lsa_retransmit ()
3447 -> ospf_ls_retransmit_add_nbr_all ()
3448
3449 * ospf_lsa.c (ospf_lsa_lookup_from_list): function move to
3450 ospf_flood.c, and change name to ospf_ls_retransmit_lookup ().
3451
34521999-08-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3453
3454 * ospf_neighbor.c (ospf_nbr_lookup_by_addr): Use
3455 route_node_lookup() instead of route_node_get().
3456
3457 * ospf_packet.c (ospf_ls_upd): Temporary comment out (6) check.
3458
34591999-08-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3460
3461 * ospf_route.c (ospf_lookup_int_by_prefix): Add check of
3462 oi->address.
3463
34641999-08-29 Alex Zinin <zinin@amt.ru>
3465 * ospf_lsa.c
3466 MaxAge LSA deletion functions added.
3467
34681999-08-29 Alex Zinin <zinin@amt.ru>
3469 * ospf_neighbor.c
3470 ospf_nbr_lookup_by_addr(): added route_unlock_node()
3471 when function returns NULL if (rn->info == NULL)
3472
34731999-08-29 Alex Zinin <zinin@amt.ru>
3474 * ospfd.c
3475 added a hack for area range deletion
3476
34771999-08-29 Alex Zinin <zinin@amt.ru>
3478 * ospf_lsa.h
3479 included lsdb field into struct ospf_lsa, to find
3480 LSDB easier when removing MaxAge LSAs.
3481
34821999-08-29 Alex Zinin <zinin@amt.ru>
3483 * ospf_lsa.c ospf_neighbor.c ospf_nsm.c
3484 ospf_packet.c changed to honor new retransmit list
3485 management functions
3486
34871999-08-29 Alex Zinin <zinin@amt.ru>
3488 * ospf_neighbor.c , .h added new retransmit list functions.
3489
34901999-08-29 Alex Zinin <zinin@amt.ru>
3491 * Makefile.in
3492 added ospf_ase, ospf_abr, ospf_ia
3493
34941999-08-29 Alex Zinin <zinin@amt.ru>
3495 * ospf_spf.c:
3496 - changed ospf_next_hop_calculation() to include interface
3497 and nexthop addr for directly connected routers---more informative
3498 and solves problem with route installation into the kernel
3499 - changed ospf_nexthop_out_if_addr() to support routers, not only
3500 transit networks
3501 - added ospf_process_stubs();
3502
35031999-08-29 Alex Zinin <zinin@amt.ru>
3504 * ospf_lsa.c:
3505 - changed ospf_router_lsa() to provide correct links
3506 for p-t-p interfaces;
3507 - changed ospf_summary_lsa_install() to support table
3508 of self-originated summary-LSAs;
3509 - added ospf_summary_asbr_lsa_install() and ospf_external_lsa_install()
3510 - changed ospf_lsa_install() accordingly
3511 - changed show_ip_ospf_database_router_links() to support p-t-p
3512
35131999-08-29 Kunihiro Ishiguro <kunihiro@zebra.org>
3514
3515 * ospf_packet.c (ospf_make_db_desc): Only master can clear more
3516 flag.
3517
35181999-08-29 Kunihiro Ishiguro <kunihiro@zebra.org>
3519
3520 * ospf_packet.c (ospf_read): Add check of IP src address.
3521
35221999-08-28 Alex Zinin <zinin@amt.ru>
3523 * ospf_neighbor.h
3524 added ospf_nbr_lookup_by_routerid()
3525
35261999-08-28 Alex Zinin <zinin@amt.ru>
3527 * ospfd.h
3528 added ABR/ASBR flag definitions and fields;
3529 added iflist field to area structure;
3530 summary_lsa_self and summary_lsa_asbr_self are changed
3531 to be route tables;
3532 added ranges field---configured area ranges;
3533 A separate Routers RT added;
3534 area range config commands and config write added
3535
3536
35371999-08-28 Alex Zinin <zinin@amt.ru>
3538 * ospf_route.c :
3539 ospf_route_free()--added code to free the list of paths;
3540 The following functions added:
3541 ospf_intra_add_router();
3542 ospf_intra_add_transit();
3543 ospf_intra_add_stub();
3544 the last function uses new ospf_int_lookup_by_prefix();
3545 show_ip_ospf_route_cmd()--changed to support new RT structure;
3546 added ospf_cmp_routes()--general route comparision function;
3547 added ospf_route_copy_nexthops() and ospf_route_copy_nexthops_from_vertex()
3548 they are used in ASE and IA routing;
3549 added ospf_subst_route() and ospf_add_route();
3550
35511999-08-28 Alex Zinin <zinin@amt.ru>
3552 * ospf_route.h :
3553 changed struct ospf_path to include output interface,
3554 changed struct ospf_route to support IA and ASE routing.
3555 added prototypes of the function used in IA and ASE modules.
3556
35571999-08-28 Alex Zinin <zinin@amt.ru>
3558 * ospf_lsa.h ospf_lsa.c :
3559 added ospf_my_lsa(), an interface independent version of
3560 ospf_lsa_is_self_originated(), it will be used in ASE and IA-routing.
3561
35621999-08-27 Kunihiro Ishiguro <kunihiro@zebra.org>
3563
3564 * ospf_interface.c (interface_config_write): Add check for
3565 oi->nbr_self.
3566
35671999-08-25 Toshiaki Takada <takada@zebra.org>
3568
3569 * ospf_lsa.c (ospf_lsa_dup): New function added.
3570
3571 * ospf_packet.c (ospf_write), (ospf_read): Print send/recv
3572 interface in debug message.
3573
35741999-08-25 Toshiaki Takada <takada@zebra.org>
3575
3576 * ospf_packet.c (ospf_ls_ack_send): The name is changed from
3577 `ospf_ls_ack_send'.
3578 (ospf_ls_ack_send_delayed) (ospf_ls_ack_timer): New function added.
3579 Delayed Link State Acknowledgment is scheduled by timer.
3580
35811999-08-25 Alex Zinin <zinin@amt.ru>
3582
3583 * ospf_lsa.c (ospf_router_lsa): Incorrectly included link to
3584 a stub network instead of link to a transit network into
3585 originated router-LSA, bug fixed.
3586
35871999-08-24 Toshiaki Takada <takada@zebra.org>
3588
3589 * ospfd.c (ospf_update_router_id): New function added.
3590
3591 * ospf_network.c (ospf_write): Create new socket per transmission.
3592 And select outgoing interface whether dst is unicast or multicast.
3593
3594 * ospf_packet.c: LSA flooding will work.
3595
35961999-08-24 VOP <vop@unity.net>
3597
3598 * ospf_route.c: Include "sockunion.h"
3599
36001999-08-24 Kunihiro Ishiguro <kunihiro@zebra.org>
3601
3602 * ospf_network.c (ospf_serv_sock_init): Enclose
3603 IPTOS_PREC_INTERNETCONTROL setting with #ifdef for OS which does
3604 not have the definition.
3605
36061999-08-23 Toshiaki Takada <takada@zebra.org>
3607
3608 * ospf_packet.c: Fix bug of DD processing.
3609
36101999-08-18 Toshiaki Takada <takada@zebra.org>
3611
3612 * ospf_lsa.c (show_ip_ospf_database): Show actual `LS age'.
3613
36141999-08-17 Toshiaki Takada <takada@zebra.org>
3615
3616 * ospf_lsa.h (OSPF_MAX_LSA): The value of OSPF_MAX_LSA is
3617 corrected. The bug of `mes_lookup' is fixed.
3618 This had been reported by Poul-Henning Kamp <phk@freebsd.org>.
3619
3620 * ospf_lsa.c (ospf_router_lsa_install): The name is changed from
3621 `ospf_add_router_lsa'.
3622 (ospf_network_lsa_install): The name is changed from
3623 `ospf_add_network_lsa'.
3624
3625 * ospf_interface.h (ospf_interface): Add member `nbr_self'.
3626
3627 * ospf_interface.c (ospf_if_is_enable): New function added.
3628
36291999-08-16 Toshiaki Takada <takada@zebra.org>
3630
3631 * ospf_lsa.h (struct lsa_header): The name is changed from
3632 `struct ospf_lsa'.
3633 (struct ospf_lsa): New struct added to control each LSA's aging
3634 and timers.
3635
3636 * ospf_lsa.c (ospf_lsa_data_free): The name is change from
3637 `ospf_lsa_free'.
3638 (ospf_lsa_data_new), (ospf_lsa_new), (ospf_lsa_free),
3639 (ospf_lsa_different), (ospf_lsa_install): New function added.
3640
3641 * ospf_packet.c (ospf_ls_upd_list_lsa): New function added.
3642
36431999-08-12 Toshiaki Takada <takada@zebra.org>
3644
3645 * ospf_nsm.c (nsm_reset_nbr): New function added.
3646 KillNbr and LLDown neighbor event call this function.
3647
36481999-08-10 Toshiaki Takada <takada@zebra.org>
3649
3650 * ospf_packet.c (ospf_ls_retransmit)
3651 (ospf_ls_upd_timer): New function added.
3652 Set retransmission timer for Link State Update.
3653
36541999-07-29 Toshiaki Takada <takada@zebra.org>
3655
3656 * ospf_ism.c (ospf_dr_election): Fix bug of DR election.
3657
36581999-07-28 Toshiaki Takada <takada@zebra.org>
3659
3660 * ospf_network.c (ospf_serv_sock_init): Set IP precedence field
3661 with IPTOS_PREC_INTERNET_CONTROL.
3662
3663 * ospf_nsm.c (nsm_change_status): Schedule NeighborChange event
3664 if NSM status change.
3665
3666 * ospf_packet.c (ospf_make_hello): Never include a neighbor in
3667 Hello packet, when the neighbor goes down.
3668
36691999-07-26 Kunihiro Ishiguro <kunihiro@zebra.org>
3670
3671 * Makefile.am (noinst_HEADERS): Add ospf_route.h.
3672
3673 * ospf_route.c (show_ip_ospf_route): Add `show ip ospf route'
3674 command.
3675
36761999-07-25 Toshiaki Takada <takada@zebra.org>
3677
3678 * ospf_lsa.c (ospf_router_lsa): Fix bug of LS sequence number
3679 assignement.
3680
36811999-07-25 Kunihiro Ishiguro <kunihiro@zebra.org>
3682
3683 * ospf_route.c (ospf_route_table_free): New function added.
3684
3685 * ospf_spf.c (ospf_spf_next): Free vertex w when cw's and w's
3686 distance is same.
3687
3688 * ospfd.h (struct ospf): Add old_table.
3689
3690 * ospf_main.c (sighup): Call of log_rotate () removed.
3691
3692 * ospf_lsa.c (ospf_lsa_is_self_originated): Fix bug of checking
3693 area->lsa as self LSA. This should be area->lsa_self.
3694
36951999-07-24 Kunihiro Ishiguro <kunihiro@zebra.org>
3696
3697 * ospf_zebra.c (ospf_zebra_add): ospf_zebra_add
3698 (),ospf_zebra_delete () added.
3699
3700 * ospf_spf.c (ospf_spf_calculate): Call ospf_intra_route_add ().
3701
37021999-07-24 Toshiaki Takada <takada@zebra.org>
3703
3704 * ospf_lsa.c: Change LS sequence number treatment.
3705 (ospf_lsa_is_self_originated): New function added.
3706 (show_ip_ospf_database_self_originated): New DEFUN added.
3707
37081999-07-23 Kunihiro Ishiguro <kunihiro@zebra.org>
3709
3710 * ospf_interface.c (ospf_if_lookup_by_addr): Add loopback check.
3711
37121999-07-22 Toshiaki Takada <takada@zebra.org>
3713
3714 * ospf_spf.c (ospf_nexthop_new), (ospf_nexthop_free),
3715 (ospf_nexthop_dup): function added.
3716 (ospf_nexthop_calculation): function changed.
3717
3718 * ospf_interface.c (ospf_if_lookup_by_addr): function added.
3719
37201999-07-21 Toshiaki Takada <takada@zebra.org>
3721
3722 * ospf_spf.c (ospf_spf_closest_vertex): function removed.
3723
37241999-07-21 Kunihiro Ishiguro <kunihiro@zebra.org>
3725
3726 * ospf_spf.c (ospf_spf_next): Apply ntohs for fetching metric.
3727
37281999-07-21 Toshiaki Takada <takada@zebra.org>
3729
3730 * ospf_neighbor.c (ospf_nbr_lookup_by_router_id): fundtion removed.
3731
3732 * ospf_lsa.c (show_ip_ospf_database_router): describe each
3733 connected link.
3734
37351999-07-21 Kunihiro Ishiguro <kunihiro@zebra.org>
3736
3737 * ospf_spf.c (ospf_spf_next): V is router LSA or network LSA so
3738 change behavior according to LSA type.
3739 (ospf_lsa_has_link): Link check function is added.
3740
37411999-07-20 Kunihiro Ishiguro <kunihiro@zebra.org>
3742
3743 * ospf_spf.c (ospf_spf_calculate_schedule): Add new function for
3744 SPF calcultion schedule addtition.
3745 (ospf_spf_calculate_timer_add): Rough 30 sec interval SPF calc
3746 timer is added.
3747 (ospf_spf_next_router): Delete ospf_spf_next_network ().
3748
3749 * ospf_lsa.c (show_ip_ospf_database_all): Network-LSA display
3750 header typo correction. Display of router LSA's #link added.
3751
37521999-07-19 Toshiaki Takada <takada@zebra.org>
3753
3754 * ospf_packet.c (ospf_check_network_mask): Added new function for
3755 receiving Raw IP packet on an appropriate interface.
3756
37571999-07-16 Toshiaki Takada <takada@zebra.org>
3758
3759 * ospfd.c (ospf_router_id): new DEFUN added.
3760
37611999-07-15 Toshiaki Takada <takada@zebra.org>
3762
3763 * ospf_spf.c (ospf_spf_init), (ospf_spf_free),
3764 (ospf_spf_has_vertex), (ospf_vertex_lookup),
3765 (ospf_spf_next_router), (ospf_spf_next_network),
3766 (ospf_spf_closest_vertex), (ospf_spf_calculate):
3767 function added.
3768
37691999-07-13 Toshiaki Takada <takada@zebra.org>
3770
3771 * ospf_ism.c: fix bug of DR Election.
3772
3773 * ospf_nsm.c: fix bug of adjacency forming.
3774
37751999-07-05 Kunihiro Ishiguro <kunihiro@zebra.org>
3776
3777 * ospfd.c (ospf_init): Change to use install_default.
3778
37791999-07-01 Rick Payne <rickp@rossfell.co.uk>
3780
3781 * ospf_zebra.c (zebra_init): Install standard commands to
3782 ZEBRA_NODE.
3783
37841999-06-30 Toshiaki Takada <takada@zebra.org>
3785
3786 * ospf_dump.c: Whole debug command is improved.
3787 (ISM|NSM) (events|status|timers) debug option added.
3788 (show_debugging_ospf): new DEFUN added.
3789
37901999-06-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3791
3792 * ospf_lsa.c (ospf_lsa_lookup_from_list): Change !IPV4_ADDR_CMP to
3793 IPV4_ADDR_SAME.
3794
37951999-06-29 Toshiaki Takada <takada@zebra.org>
3796
3797 * ospf_dump.c (ospf_summary_lsa_dump): Add summary-LSA dump routine.
3798 (ospf_as_external_lsa_dump): Add AS-external-LSA dump routine.
3799
3800 * ospf_nsm.c (nsm_twoway_received): fix condtion of adjacnet.
3801
3802 * ospf_ism.c (ospf_dr_election): fix DR Election.
3803
3804 * ospf_dump.c (ospf_nbr_state_message): fix `show ip ospf neighbor'
3805 command's state.
3806
38071999-06-29 Kunihiro Ishiguro <kunihiro@zebra.org>
3808
3809 * ospf_dump.c (ospf_router_lsa_dump): Add router-LSA dump routine.
3810
38111999-06-28 Toshiaki Takada <takada@zebra.org>
3812
3813 * ospf_lsa.c (show_ip_ospf_database_network): fix bug of
3814 `show ip ospf database network' command output.
3815
3816 * ospf_nsm.c (nsm_inactivity_timer): Clear list of Link State
3817 Retransmission, Database Summary and Link State Request.
3818
3819 * ospf_packet.c (ospf_ls_req_timer): New function added.
3820 Set Link State Request retransmission timer.
3821
38221999-06-27 Kunihiro Ishiguro <kunihiro@zebra.org>
3823
3824 * ospf_main.c (main): Change default output from ZLOG_SYSLOG to
3825 ZLOG_STDOUT.
3826
3827 * ospfd.c (ospf_init): Register show_ip_ospf_interface_cmd and
3828 show_ip_ospf_neighbor_cmd to VIEW_NODE.
3829
3830 * ospf_lsa.c (ospf_lsa_init): Register show_ip_ospf_database_cmd
3831 and show_ip_ospf_database_type_cmd to VIEW_NODE.
3832
38331999-06-25 Toshiaki Takada <takada@zebra.org>
3834
3835 * ospf_packet.c: fix bug of DD making.
3836 fix bug of LS-Update reading.
3837
38381999-06-23 Toshiaki Takada <takada@zebra.org>
3839
3840 * ospf_packet.c: All type of packets are changed to use
3841 fifo queue structure.
3842 (ospf_fill_header) function added.
3843
38441999-06-22 Toshiaki Takada <takada@zebra.org>
3845
3846 * ospf_packet.c (ospf_packet_new): New function added to handle
3847 sending ospf packet by fifo queue structure.
3848 (ospf_packet_free), (ospf_fifo_new), (ospf_fifo_push),
3849 (ospf_fifo_pop), (ospf_fifo_head), (ospf_fifo_flush),
3850 (ospf_fifo_free): Likewise.
3851
38521999-06-21 Toshiaki Takada <takada@zebra.org>
3853
3854 * ospf_nsm.c (ospf_db_desc_timer): function added.
3855 (nsm_timer_set) function added.
3856 * ospf_dump.c (ospf_option_dump): function added.
3857 * ospf_packet.c (ospf_ls_req) (ospf_make_ls_req): function added.
3858
38591999-06-20 Toshiaki Takada <takada@zebra.org>
3860
3861 * ospf_lsa.c (ospf_lsa_more_recent): function added.
3862 * ospf_neighbor.h (struct ospf_neighbor): Change member ms_flag
3863 to dd_flags.
3864
38651999-06-19 Toshiaki Takada <takada@zebra.org>
3866
3867 * ospf_lsa.c: DEFUN (show_ip_ospf_database) Added.
3868 * ospf_interface.c (if_ospf_cost), (if_ospf_dead_interval),
3869 (if_ospf_hello_interval), (if_ospf_priority),
3870 (if_ospf_retransmit_interval), (if_ospf_transmit_delay)
3871 argument changed from NUMBER to <range>.
3872 DEFUN (if_ospf_network_broadcast),
3873 DEFUN (if_ospf_network_non_broadcast),
3874 DEFUN (if_ospf_network_point_to_multipoint),
3875 DEFUN (if_ospf_network_point_to_point) functions are combined to
3876 DEFUN (if_ospf_network).
3877
38781999-06-18 Toshiaki Takada <takada@zebra.org>
3879
3880 * ospf_lsa.c: ospf_add_router_lsa (), ospf_add_network_lsa (),
3881 ospf_lsa_lookup (), ospf_lsa_count () Added.
3882
38831999-06-15 Toshiaki Takada <takada@zebra.org>
3884
3885 * DEFUN (ospf_debug_ism), DEFUN (ospf_debug_nsm),
3886 DEFUN (no_ospf_debug_ism), DEFUN (no_ospf_debug_nsm) Added.
3887 `debug ospf ism' command shows debug message.
3888 `debuf ospf nsm' command shows debug message.
3889
38901999-06-14 Toshiaki Takada <takada@zebra.org>
3891
3892 * ospf_lsa.c: ospf_network_lsa () Added.
3893 ospf_lsa_checksum () Added.
3894 * DEFUN (ospf_debug_packet), DEFUN (no_ospf_debug_packet) Added.
3895 `debug ospf packet' command shows debug message.
3896
38971999-06-13 Toshiaki Takada <takada@zebra.org>
3898
3899 * ospf_packet.h: Remove struct ospf_ls_req {}, ospf_ls_upd {},
3900 ospf_ls_ack {}.
3901
39021999-06-11 Toshiaki Takada <takada@zebra.org>
3903
3904 * ospf_dump.c: fix IP packet length treatment.
3905
39061999-06-10 Toshiaki Takada <takada@zebra.org>
3907
3908 * ospf_ism.h: Add OSPF_ISM_EVENT_EXECUTE() Macro Added.
3909 * ospf_nsm.h: Add OSPF_NSM_EVENT_EXECUTE() Macro Added.
3910
3911 * ospf_packet.c: ospf_db_desc (), ospf_db_desc_send () Added.
3912 ospf_make_hello (), ospf_make_db_desc () Added.
3913 ospf_db_desc_proc () Added.n
3914
3915 * Database Description packet can be processed.
3916
39171999-06-08 Toshiaki Takada <takada@zebra.org>
3918
3919 * ospf_lsa.c: New file.
3920
39211999-06-07 Toshiaki Takada <takada@zebra.org>
3922
3923 * ospf_neighbor.c: ospf_fully_adjacent_count () Added.
3924
39251999-06-07 Kunihiro Ishiguro <kunihiro@zebra.org>
3926
3927 * ospf_spf.[ch]: New file.
3928
39291999-05-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3930
3931 * ospf_zebra.c: Changed to use lib/zclient.c routines.
3932
3933 * ospf_zebra.h (zebra_start): Remove struct zebra.
3934
39351999-05-29 Kunihiro Ishiguro <kunihiro@zebra.org>
3936
3937 * ospfd.c (ospf_config_write): Add cast (unsigned long int) to
3938 ntohl for sprintf warning.
3939
39401999-05-19 Toshiaki Takada <takada@zebra.org>
3941
3942 * ospf_ism.c (ospf_dr_election): Join AllDRouters Multicast group
3943 if interface state changes to DR or BDR.
3944
39451999-05-14 Stephen R. van den Berg <srb@cuci.nl>
3946
3947 * ospf_main.c (signal_init): SIGTERM call sigint.
3948 (sigint): Logging more better message.
3949
39501999-05-12 Toshiaki Takada <takada@zebra.org>
3951
3952 * ospfd.c: Fix bug of `no router ospf' statement, it will work.
3953
39541999-05-11 Toshiaki Takada <takada@zebra.org>
3955
3956 * ospf_neighbor.c: ospf_nbr_free () Added.
3957
39581999-05-10 Toshiaki Takada <takada@zebra.org>
3959
3960 * ospfd.h: struct ospf_area { }, struct ospf_network { } Changed.
3961 * Fix bug of `no network' statement, it will work.
3962
39631999-05-07 Toshiaki Takada <takada@zebra.org>
3964
3965 * ospf_interface.c, ospf_zebra.c: Fix bug of last interface is not
3966 updated by ospf_if_update ().
3967
39681999-04-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3969
3970 * Makefile.am (noinst_HEADERS): Add ospf_lsa.h for distribution.
3971
39721999-04-25 Toshiaki Takada <takada@zebra.org>
3973
3974 * ospf_interface.c: DEFUN (no_if_ospf_cost),
3975 DEFUN (no_if_ospf_dead_interval),
3976 DEFUN (no_if_ospf_hello_interval),
3977 DEFUN (no_if_ospf_priority),
3978 DEFUN (no_if_ospf_retransmit_interval),
3979 DEFUN (no_if_ospf_transmit_delay) Added.
3980
3981 interface_config_write () suppress showing interface
3982 default values.
3983
39841999-04-25 Kunihiro Ishiguro <kunihiro@zebra.org>
3985
3986 * ospf_dump.c (ospf_timer_dump): If thread is NULL return "inactive".
3987
3988 * ospfd.c (ospf_if_update): Fix bug of using ospf_area { } instead
3989 of ospf_network { }. So `router ospf' statement in ospfd.conf
3990 works again.
3991 (ospf_if_update): Call ospf_get_router_id for updating router ID.
3992
39931999-04-25 Toshiaki Takada <takada@zebra.org>
3994
3995 * ospf_interface.c: DEFUN (if_ospf_network) deleted.
3996 DEFUN (if_ospf_network_broadcast),
3997 DEFUN (if_ospf_network_non_broadcast),
3998 DEFUN (if_ospf_network_point_to_multipoint),
3999 DEFUN (if_ospf_network_point_to_point),
4000 DEFUN (no_if_ospf_network) Added.
4001
40021999-04-23 Toshiaki Takada <takada@zebra.org>
4003
4004 * ospfd.h: struct area { } changed to struct ospf_network { }.
4005 Add struct ospf_area { }.
4006 * ospfd.c: Add ospf_area_lookup_by_area_id (), ospf_network_new (),
4007 and ospf_network_free ().
4008 DEFUN (area_authentication), DEFUN (no_area_authentication) Added.
4009
40101999-04-22 Toshiaki Takada <takada@zebra.org>
4011
4012 * ospf_lsa.h: New file.
4013 * ospf_packet.h: LSA related struct definition are moved to
4014 ospf_lsa.h.
4015 * ospf_packet.c: ospf_verify_header () Added.
4016
40171999-04-21 Toshiaki Takada <takada@zebra.org>
4018
4019 * ospf_ism.c: ospf_elect_dr () and related function is changed.
4020 DR Election bug fixed.
4021 * ospf_dump.c: ospf_nbr_state_message (), ospf_timer_dump () Added.
4022 * ospfd.c: DEFUN (show_ip_ospf_neighbor) Added.
4023
40241999-04-19 Kunihiro Ishiguro <kunihiro@zebra.org>
4025
4026 * ospf_main.c (main): access_list_init () is added for vty
4027 connection filtering.
4028
40291999-04-16 Toshiaki Takada <takada@zebra.org>
4030
4031 * ospfd.c: DEFUN (show_ip_ospf_interface) Added.
4032 * ospf_neighbor.c: ospf_nbr_count () Added.
4033
40341999-04-15 Toshiaki Takada <takada@zebra.org>
4035
4036 * ospfd.h: struct ospf { } Changed.
4037 * ospfd.c: ospf_lookup_by_process_id () Deleted.
4038 * ospf_ism.c: ospf_wait_timer () Added. WaitTimer will work.
4039
40401999-04-14 Toshiaki Takada <takada@zebra.org>
4041
4042 * ospf_ism.c: ospf_elect_dr () Added.
4043 * ospf_network.c: ospf_if_ipmulticast () Added.
4044
40451999-04-11 Toshiaki Takada <takada@zebra.org>
4046
4047 * ospf_interface.c: interface_config_write (),
4048 DEFUN (if_ip_ospf_cost),
4049 DEFUN (if_ip_ospf_dead_interval),
4050 DEFUN (if_ip_ospf_hello_interval),
4051 DEFUN (if_ip_ospf_priority),
4052 DEFUN (if_ip_ospf_retransmit_interval) and
4053 DEFUN (if_ip_ospf_transmit_delay) Added.
4054
40551999-04-08 Toshiaki Takada <takada@zebra.org>
4056
4057 * ospf_dump.c: ospf_packet_db_desc_dump () Added.
4058 * ospf_neighbor.c: ospf_nbr_bidirectional () Added.
4059 * ospf_nsm.c: nsm_twoway_received () Added.
4060
40611999-04-02 Toshiaki Takada <takada@zebra.org>
4062
4063 * ospf_neighbor.c: New file.
4064 * ospf_neighbor.h: New file.
4065 * ospf_nsm.c: New file.
4066 * ospf_nsm.h: New file.
4067 * ospf_packet.c: Add ospf_make_header (), ospf_hello () and
4068 ospf_hello_send (). Now OSPFd can receive Hello and send Hello.
4069
40701999-03-27 Kunihiro Ishiguro <kunihiro@zebra.org>
4071
4072 * ospf_packet.c: Add ospf_recv_packet (). Now OSPF Hello can receive.
4073
40741999-03-19 Toshiaki Takada <takada@zebra.org>
4075
4076 * ospf_packet.c: New file.
4077 * ospf_packet.h: New file.
4078 * ospf_network.c: New file.
4079 * ospf_network.h: New file.
4080 * ospfd.h: move OSPF message structure has moved to ospf_packet.h.
4081
40821999-03-17 Kunihiro Ishiguro <kunihiro@zebra.org>
4083
4084 * ospf_zebra.c (ospf_zebra_get_interface): Fix for IPv6 interface
4085 address.
4086
4087 * Makefile.am (install-sysconfDATA): Overwrite install-sysconfDATA
4088 for install ospfd.conf.sample as owner read only file.
4089
4090 * ospf_main.c (usage): Change to use ZEBRA_BUG_ADDRESS.
4091
40921999-03-15 Toshiaki Takada <takada@zebra.org>
4093
4094 * ospf_ism.c: New file.
4095 * ospf_ism.h: New file.
4096 * ospf_dump.c: New file.
4097 * ospf_dump.h: New file.
4098
4099 * ospfd.h: Add (struct ospf), (struct config_network),
4100 (struct message) structure.
4101
4102 * ospf_interface.c: Add ospf_if_match_network ().
4103 * ospf_interface.h (struct ospf_interface): Change struct members.
4104
4105 * ospfd.c: ospf_lookup_by_process_id (), ospf_network_new (),
4106 DEFUN (network_area): Added.
4107
4108 * ospfd.conf.sample: Change sample configuration.
4109
41101999-03-05 Toshiaki Takada <takada@zebra.org>
4111
4112 * ospf_interface.c: New file.
4113 * ospf_interface.h: New file.
4114 * ospf_zebra.h: New file.
4115 * ospf_zebra.c: Add interface function for zebra daemon.
4116 * ospfd.c: New file.
4117
41181999-02-23 Kunihiro Ishiguro <kunihiro@zebra.org>
4119
4120 * Move IPv6 codes and files to ospf6d directory.
4121
41221999-02-18 Peter Galbavy <Peter.Galbavy@knowledge.com>
4123
4124 * syslog support added
4125
41261998-12-22 Toshiaki Takada <takada@zebra.org>
4127
4128 * ospfd.h: New file.
4129 * ospf_lsa.h: New file.
4130
41311998-12-15 Kunihiro Ishiguro <kunihiro@zebra.org>
4132
4133 * Makefile.am: New file.
4134 * ospf_main.c: New file.
4135