blob: b4f7d3e74b90ed2574b802c8a353a85167029dca [file] [log] [blame]
Paul Jakmaaa2737a2006-07-06 11:12:39 +000012006-07-06 Paul Jakma <paul.jakma@sun.com>
2
3 * ospf_nsm.c: (ospf_nsm_event) LLDown event also results in nbr
4 being deleted, requires early-return too. Likely explains
5 some crash reports after interface events.
6
Paul Jakmaf7a76ab2006-07-04 13:57:49 +000072006-07-04 Paul Jakma <paul.jakma@sun.com>
8
9 * ospf_nsm.c: (general) Various small cleanups from Andrew's
10 review of last set of patches.
11 (nsm_timer_set) Loading, Full and default can share
12 same code too.
13 (nsm_should_adj) Can just be one big OR.
14 (nsm_twoway_received) Collapse into return statement.
15
Paul Jakmad7b0fb62006-07-04 13:35:24 +0000162006-07-02 Paul Jakma <paul.jakma@sun.com>
17
18 * ospf_nsm.c: (nsm_should_adj) New function, just consolidate the
19 10.4 adjacency check from nsm_twoway_received/nsm_adj_ok.
20 (nsm_twoway_received/nsm_adj_ok) Use former.
Paul Jakmad1b1cd82006-07-04 13:50:44 +000021 (nsm_clear_adj) clear adjacency related state for a
22 neighbour, needed for some state changes from > ExStart down
23 to ExStart or less, which need not go through nsm_reset_nbr.
24 (nsm_reset_nbr) move code to former. Should be static.
Paul Jakmaba0beb42006-07-04 13:44:19 +000025 (ospf_nsm_event) Don't allow action functions to change
26 next_state if the NSM tables do not indicate next_state is
27 conditional, log warning if one tries - existing code
28 appears fine though.
Paul Jakmad1b1cd82006-07-04 13:50:44 +000029 Remove long dead code.
30 Use nsm_clear_adj for state changes that take down
31 adjacencies to TwoWay/ExStart.
Paul Jakmae55dd532006-07-04 13:46:14 +000032 (nsm_timer_set) ls_req timer should be OFF in early states.
33 Compact several identical sections.
34 Set inactivity timer to OFF for Down, for documentary
35 purposes.
Paul Jakmad1b1cd82006-07-04 13:50:44 +000036 (nsm_kill_nbr) Oops, action function shouldn't try return
37 1 for error.
Paul Jakma5db95bc2006-07-04 13:52:29 +000038 * ospf_lsa.c: (ospf_translated_nssa_refresh) CID #13.
Paul Jakmad7b0fb62006-07-04 13:35:24 +000039
Andrew J. Schorr1c066bf2006-06-30 16:53:47 +0000402006-06-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
41
42 * ospf_vty.c: (show_ip_ospf_neighbor_id) Should show all instances
43 of that neighbor (since it may appear on multiple interfaces)
44 instead of bailing out after showing the first match.
45
Andrew J. Schorr76947872006-06-30 03:21:05 +0000462006-06-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
47
48 * ospf_nsm.c: (nsm_twoway_received) When deciding whether to
49 change from state Init to ExStart, the test for whether the
50 neighboring router is DR or BDR should be against the
51 local router's notion of DR/BDR, not the neighbor's view.
52
Andrew J. Schorrd7e60dd2006-06-29 20:20:52 +0000532006-06-28 Erik Muller <erikm@internap.com>
54
55 * ospfd.h: Define 2 new struct ospf config flags:
56 OSPF_LOG_ADJACENCY_CHANGES and OSPF_LOG_ADJACENCY_DETAIL
57 * ospf_nsm.c (nsm_change_state): Log adjacency changes if
58 requested.
59 * ospf_vty.c (ospf_log_adjacency_changes): New command function
60 to implement ospf subcommand "log-adjacency-changes [detail]".
61 (no_ospf_log_adjacency_changes) Turn off log-adjacency-changes.
62 (show_ip_ospf) Show whether adjacency changes are logged.
63 (ospf_config_write) Add "log-adjacency-changes [detail]" to config.
64 (ospf_vty_init) Add ospf_log_adjacency_changes and
65 no_ospf_log_adjacency_changes.
66
Paul Jakma9560fa82006-06-26 12:50:06 +0000672006-06-26 Paul Jakma <paul.jakma@sun.com>
68
69 * ospf_abr.c: (general) NSSA translate-candidate ABRs need to
70 be ASBRs, or other routers may rightfully refuse to install
71 translated type-5s LSAs. reported by dendroot@gmail.com.
72 (ospf_abr_nssa_check_status) Detect change in translator
73 state when ABR, and inc/dec redistribute count as when we
74 leave/enter the disabled state - so that translate-enabled
75 ABR properly sets ASBR bit on non-NSSA areas.
76 Run the resulting function through indent to clean it up.
77 * ospf_lsa.c: (router_lsa_flags) For purposes of ASBR bit,
78 NSSA area is same as stub area.
79
Andrew J. Schorr0ffb7092006-06-24 19:40:13 +0000802006-06-24 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
81
Andrew J. Schorr9aecfae2006-06-24 20:05:02 +000082 * ospf_snmp.c: (ospfTrapNbrStateChange, ospfTrapIfStateChange) Improve
83 info log message to indicate why the trap is being sent.
84
852006-06-24 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
86
Andrew J. Schorr0ffb7092006-06-24 19:40:13 +000087 * ospf_dump.c: (config_write_debug) Fix typo to show debug ospf nsm
88 status properly (not ism status).
89
Andrew J. Schorr6e72cb62006-06-18 00:45:48 +0000902006-06-17 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
91
92 * ospf_vty.c: ({no_,}ospf_passive_interface) Replace if_lookup_by_name
93 with a call to if_get_by_name -- if the interface does not exist
94 already, it should be created. And remove the obsolete warning
95 message.
96
Paul Jakma429ac782006-06-15 18:40:49 +0000972006-06-15 Paul Jakma <paul.jakma@sun.com>
98
99 * ospf_interface.h: (struct ospf_if_info) Add reference counts
100 for multicast group memberships. Add various macros to help
101 manipulate/check membership state.
102 * ospf_interface.c: (ospf_if_set_multicast) Maintain the
103 ospf_if_info reference counts, and only actually drop
104 memberships if it hits 0, to avoid losing membership when
105 OSPF is disabled on an interface with multiple active OSPF
106 interfaces.
107 * ospf_packet.c: (ospf_{hello,read}) Use the new macros to
108 check/set
109 multicast membership.
110 * ospf_vty.c: (show_ip_ospf_interface_sub) ditto.
111
Paul Jakmaac904de2006-06-15 12:04:57 +00001122006-05-31 Paul Jakma <paul.jakma@sun.com>
113
114 * ospf_lsdb.c: (ospf_lsdb_delete) robustify against NULL arguments,
115 print warning.
116 * ospf_lsa.c: (ospf_discard_from_db) ditto.
117 (ospf_maxage_lsa_remover) Check lsa->lsdb for validity, possible
118 mitigation (but not solution) for bug #269.
119
Paul Jakma88871b12006-06-15 11:41:19 +00001202006-05-30 Paul Jakma <paul.jakma@sun.com>
121
122 * ospf_packet.c: (ospf_read) Debug message about packets
123 received on unenabled interfaces should be conditional on
124 debug being set.
125
Paul Jakmad1c65c22006-06-27 08:01:43 +00001262006-05-23 Paul Jakma <paul.jakma@sun.com>
127
128 * ospf_vty.c: (general) Replace in-place route redistribution
129 command and help strings with the new auto-generated defines
130 from lib/route_types.h
131
Paul Jakmaae128052006-05-12 23:15:30 +00001322006-05-13 Paul Jakma <paul.jakma@sun.com>
133
134 * ospf_lsa.c: (ospf_translated_nssa_refresh) fix the sanity
135 check to match the assert, small error in CID #13 fix.
136
Paul Jakma70461d72006-05-12 22:57:57 +00001372006-05-12 Paul Jakma <paul.jakma@sun.com>
138
139 * ospf_lsa.c: (ospf_lsa_action) Get rid of the ospf_lookup
140 call, which is not checked for NULL return, by stripping out
141 functionality which is never used, hence fixing Coverity CID
142 #29.
143 (struct lsa_action) remove unused member.
Paul Jakmae54e6e52006-05-12 23:11:14 +0000144 (ospf_translated_nssa_refresh) Add non-assert sanity check,
145 in case DEBUG isn't defined.
146 Debug message when no type7 exists should print the ID from
147 the type5, not the type7, fixes CID #13.
148 * ospf_interface.c: (ospf_if_exists) Fix missing NULL return
Paul Jakmae43be0e2006-05-12 23:00:06 +0000149 check on ospf_lookup, CID #27.
Paul Jakma6db3a6f2006-05-12 23:02:46 +0000150 * ospf_asbr.c: (ospf_redistribute_withdraw) remove ospf_lookup
151 call by taking the struct ospf * as argument, which the
152 caller has, fixing CID #28.
153 * ospf_asbr.h: (ospf_redistribute_withdraw) update declaration
154 * ospf_zebra.c: (ospf_redistribute_unset) update call to
155 ospf_redistribute_withdraw to match.
Paul Jakmabfd7c7d2006-05-12 23:04:45 +0000156 * ospf_ia.c: (ospf_update_router_route) ospf->backbone could be
157 NULL when passed to ospf_find_asbr_route_through_area,
158 check for NULL first, CID #14.
Paul Jakmadeb15612006-05-12 23:07:27 +0000159 * ospf_ism.c: (ism_change_state) NULL check on oi->area is
160 useless, it's always valid. Only possibility where it
161 couldn't be is if there is a race between abr_task and
162 cleaning up oi's, in which case a NULL check here isn't going
163 to do anything. Fixes CID #15.
Paul Jakma70461d72006-05-12 22:57:57 +0000164
Paul Jakmacac3b5c2006-05-11 13:31:11 +00001652006-05-11 Paul Jakma <paul.jakma@sun.com>
166
167 * ospf_vty.c: (general) Audit ospf_lookup calls in commands,
168 ensure check for NULL result, make vty messages consistent.
169 (show_ip_ospf_interface) Missing NULL check on ospf_lookup
170 result, fixes Coverity CID #70.
Paul Jakma1a8ec2b2006-05-11 13:34:08 +0000171 (no_ospf_area_filter_list) Check NULL result from
172 ospf_area_lookup_by_area_id, fixes Coverity CID #69
Paul Jakma894f8b62006-05-12 22:50:40 +0000173 * ospf_route.c: (ospf_route_delete_same_ext) Fix deref before
174 NULL check by moving into check-protected block, fix CID #49.
Paul Jakma214a4452006-05-12 22:51:49 +0000175 * ospf_abr.c: (ospf_area_range_cost_set) Shouldn't create a new
176 range, should just lookup to see if one exists, the new range
177 is just leaked. Fixes CID #46.
Paul Jakma4021b602006-05-12 22:55:41 +0000178 * ospf_lsa.c: (ospf_default_originate_timer) Let the thread
179 take (struct ospf *) as thread argument, rather than (struct
180 ospf *)->default_originate, thus avoiding having to call
181 ospf_lookup.
182 * ospf_zebra.c: (ospf_redistribute_default_set) change setup
183 of ospf_default_originate_timer thread to match.
184 * ospfd.c: (ospf_router_id_update) ditto.
Paul Jakmacac3b5c2006-05-11 13:31:11 +0000185
Paul Jakma9c27ef92006-05-04 07:32:57 +00001862006-04-24 Paul Jakma <paul.jakma@sun.com>
187
188 * (general) More Virtual-link fixes, again with much help in
189 testing / debug from Juergen Kammer. Primarily in SPF.
190 * ospf_spf.h: Add guard. ospf_interface.h will include this
191 header.
192 * ospf_interface.h: Modify ospf_vl_lookup definition to take
193 struct ospf as argument, so as to allow for NULL area
194 argument.
195 (struct ospf_vl_data) Remove out_oi, instead add a struct
196 vertex_nexthop, to use as initial nexthop for backbone paths
197 through a vlink.
198 * ospf_interface.c: (ospf_vl_lookup) Modified to allow
199 NULL area to be passed to indicate "any" (first) area.
200 Add extra debug.
201 (ospf_vl_set_params) vl_oi -> nexthop. Add extra debug.
202 (ospf_vl_up_check) Fix debug, inet_ntoa returns a static
203 buffer..
204 * ospf_route.c: (ospf_intra_add_router) Vlinks dont go through
205 backbone, don't bother checking.
206 * ospf_spf.c: (static struct list vertex_list) Record vertices
207 that will need to be freed.
208 (cmp) Order network before router vertices, as required,
209 wasn't implemented.
210 (vertex_nexthop_free) Mild additional robustness check.
211 (vertex_parent_free) Take void argument, as this function
212 is passed as list deconstructor for vertex parent list.
213 (ospf_vertex_new) More debug. Set deconstructor for parent
214 list. Track allocated vertices on the vertex_list.
215 (ospf_vertex_free) Get rid of the tricky recursive cleanup of
216 vertices. Now frees only the given vertex.
217 (ospf_vertex_add_parent) Fix assert.
218 (ospf_nexthop_calculation) Fix calculation of nexthop for
219 VLink vertices, lookup the vl_data and use its previously
220 recorded nexthop information.
221 (ospf_spf_calculate) Vertices are freed simply by deleting
222 vertex_list nodes and letting ospf_vertex_free as deconstructor
223 work per-node.
224 (ospf_spf_calculate_timer) Trivial optimisation, leave
225 backbone SPF calculation till last to reduce SPF churn on
226 VLink updates.
227 * ospf_vty.c: (ospf_find_vl_data) update call to ospf_vl_lookup
228 (no_ospf_area_vlink_cmd) ditto.
229 (show_ip_ospf_interface_sub) For Vlinks, the peer address is
230 more interesting than the output interface.
231
Paul Jakma478aab92006-04-03 21:25:32 +00002322006-04-03 Paul Jakma <paul.jakma@sun.com>
233
234 * (general) Fix issues with handling of Vlinks and entries
235 in the nbrs route-table which were highlighted by the
236 nsm/nbr_self fixes from bug #234. Many thanks to Juergen
237 Kammer for his help and efforts in testing out debug patches to
238 pinpoint the issue.
239 * ospf_interface.c: (ospf_vl_new) Add nbr_self for Vlink.
240 * ospf_neighbor.c: (ospf_nbr_key) new static function, helper
241 to create key in nbrs table for a given nbr.
242 (ospf_nbr_delete) Use ospf_nbr_key. Add an assert() to
243 document an expected state.
244 (ospf_nbr_add_self) Ditto.
245 (ospf_nbr_lookup_by_addr) Add an assert.
246 * ospf_nsm.c: (nsm_kill_nbr) Can never kill the nbr_self
247 psuedo-neighbour.
248
Paul Jakma075c2012006-03-30 14:34:31 +00002492006-03-27 Paul Jakma <paul.jakma@sun.com>
250
251 * ospf_lsa.c: (ospf_lsa_checksum) Add an explicit cast to avoid
252 the ambiguities of ANSI and C99 C with respect to type
253 conversion. Detailed problem report and test case with
254 example data supplied by Dmitry Ivanov <dimss@telecentrs.lv>.
255
Paul Jakma1a8ee0e2006-03-30 14:20:00 +00002562006-03-25 Paul Jakma <paul.jakma@sun.com>
257
258 * ospf_interface.c: (ospf_if_lookup_recv_if) Ignore loopbacks,
259 we can never ever receive packets on those. Should fix
260 case where CARP is run with address in same subnet as real
261 interface. Problem report and diagnosis thanks to:
262 Landon Fuller <landonf@opendarwin.org>.
263 However, ospf_read() still can't deal deterministically with
264 multiple interfaces in same subnet.
265
Paul Jakmac2b478d2006-03-30 14:16:11 +00002662006-03-23 Steve Lawson <steve.lawson@aheadcomusa.com>
267
268 * ospf_lsa.c: (ospf_lsa_install) Fix incorrect byte-order
269 conversion of OSPF_MAX_SEQUENCE_NUMBER
270
paule8e19462006-01-19 20:16:55 +00002712006-01-19 Paul Jakma <paul.jakma@sun.com>
272
273 * (general) various miscellaneous compiler warning fixes.
274 Remove redundant break statements from switch clauses
275 which return.
276 return from main, not exit, cause it annoys SOS.
277 Remove stray semi-colons which cause empty-statement
278 warnings.
279
paul779adb02006-01-18 15:07:38 +00002802006-01-18 Juergen Kammer <j.kammer@eurodata.de>
281
282 * ospf_lsa.c: (ospf_router_lsa_new) dont take reference to the
283 stream data until it is constructed, data reference is
284 volatile due to the potential resize in link_info_set
285
2862006-01-18 Paul Jakma <paul.jakma@sun.com>
287
288 * ospf_lsa.c: (link_info_set) Resize the stream if required and
289 possible. Return number of links added.
290 (lsa_link_*_set) use return value from previous.
291 * ospf_lsa.h: Add OSPF_ROUTER_LSA_LINK_SIZE define.
292
paulc6371712006-01-17 17:49:53 +00002932006-01-17 Paul Jakma <paul.jakma@sun.com>
294
295 * ospf_packet.c: (ospf_verify_header) print out the types
296 involved if there's a mismatch.
297 * ospf_zebra.c: (ospf_zebra_add) Adjust to new zserv format.
298
paul818e56c2006-01-10 23:27:05 +00002992006-01-10 Len Sorensen <lennartsorensen@ruggedcom.com>
300
301 * (general) Bug #234, see also [quagga-dev 3902].
302 Fix problem with nbr_self not being properly reinitialised
303 when an interface comes up, after having been down.
paul1a643f82006-01-11 01:08:19 +0000304 Some re-arrangement done by Paul Jakma, any bugs introduced
305 on top of Len's suggested changes are his.
paul818e56c2006-01-10 23:27:05 +0000306 * ospf_neighbor.c: (ospf_nbr_add_self) centralise
307 initialisation of nbr_self parameters here.
308 * ospf_interface.c: (ospf_if_new) deleting initialisation of
309 parameters of nbr_self, just rely on call to
310 ospf_nbr_add_self.
311 (ospf_if_cleanup) ditto.
312 * ospfd.c: (ospf_network_run) ditto.
313
paul98429f62006-01-10 22:11:54 +00003142006-01-10 Juris Kalnins <juris@mt.lv>
315
316 * ospf_zebra.c: (ospf_interface_address_delete) fix rare leak of
317 struct connected in an error case.
paul818e56c2006-01-10 23:27:05 +0000318 * ospf_packet.c: (ospf_make_md5_digest) fix odd, if not
319 undefined effect, assignment of an increment expression.
paul98429f62006-01-10 22:11:54 +0000320
paul86752842006-01-10 20:34:46 +00003212006-01-10 Paul Jakma <paul.jakma@sun.com>
322
323 * ospfd.c: (ospf_network_run) checking to see if router-id
324 is set should be on ospf->router_id, not router_id_static.
325 This was causing ospfd to not start if router-id had not
326 been configured statically.
327 (ospf_if_update) ditto.
paulc42c1772006-01-10 20:36:49 +0000328 * ospf_vty.c: (config_write_ospf_distribute) trim down
329 redundant strings.
paul86752842006-01-10 20:34:46 +0000330
paul00c290e2005-11-26 09:21:43 +00003312005-11-26 Paul Jakma <paul.jakma@sun.com>
332
333 * ospf_api.c: (struct opaque_lsa) change from gcc zero-length
334 array to C99 incomplete type array.
paulc9c93d52005-11-26 13:31:11 +0000335 * (general) s/graceful/deferred/ in all files, the former term
336 is confusing wrt OSPF Graceful-Restart.
337 * ospfd.c: (ospf_deferred_shutdown_check) dont return
338 a function which returns void. SOS complains about this.
339 (ospf_finish)
paul00c290e2005-11-26 09:21:43 +0000340
paulb29800a2005-11-20 14:50:45 +00003412005-11-20 Paul Jakma <paul.jakma@sun.com>
342
343 * ospfd.h: remove the OSPF_ROUTER_ID_UPDATE_DELAY define
344 (struct ospf) remove the router_id timer thread.
345 remove export of ospf_router_id_update_timer.
346 * ospfd.c: (ospf_router_id_update) call ospf_if_update to
347 poke interfaces into action after ID has been configured.
348 (ospf_router_id_update_timer) removed.
349 (ospf_finish_final) t_router_id_update timer is gone.
350 (ospf_network_run) router-id update timer gone.
351 call ospf_router_id_update directly if ID not configured.
352 In the per-iface loop, don't ospf_if_up interfaces if
353 ID is still not configured. The update function will call
354 ospf_if_update anyway.
355 (ospf_if_update) ID update timer is gone. Just return if no
356 ID is set.
357 * ospf_vty.c: (ospf_router_id) call ospf_router_id_update, no
358 timer needed.
359 * ospf_zebra.c: (ospf_router_id_update_zebra) call
360 ospf_router_id_update directly, not via timer.
paulc24d6022005-11-20 14:54:12 +0000361 * ospf_abr.c: (ospf_abr_announce_network_to_area) check
362 returned LSA of ospf_summary_lsa_refresh and print warning if
363 it failed.
364 (ospf_abr_announce_network_to_area) similar
365 (ospf_abr_announce_rtr_to_area) similar
366 * ospf_lsa.c: (ospf_router_lsa_new) check LSA returned is valid.
367 (ospf_router_lsa_originate) similar
368 (ospf_router_lsa_refresh, ospf_network_lsa_new) similar
369 (ospf_summary_lsa_new) Check ID is valid.
370 (ospf_summary_lsa_originate) ditto, and check returned LSA from
371 previous function is !NULL.
372 (ospf_summary_lsa_refresh) check ospf_summary_lsa_new return
373 is !NULL.
374 (ospf_summary_asbr_lsa_new) ID valid check.
375 (ospf_summary_asbr_lsa_originate) similar.
paulb29800a2005-11-20 14:50:45 +0000376
ajs70cd3472005-11-16 19:33:22 +00003772005-11-16 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
378
ajs649654a2005-11-16 20:17:52 +0000379 * ospf_dump.h: Define OSPF_TIME_DUMP_SIZE as appropriate buffer size
380 for use with ospf_timer_dump and ospf_timeval_dump.
381 * ospf_vty.c: Change all buffer sizes used with ospf_timer_dump and
382 ospf_timeval_dump to have size OSPF_TIME_DUMP_SIZE.
383 (show_ip_ospf_interface_sub) Fix possible buffer overflow in
384 call to ospf_timer_dump.
385
3862005-11-16 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
387
ajs70cd3472005-11-16 19:33:22 +0000388 * ospf_ism.h: (OSPF_ISM_TIMER_OFF) Improve macro syntax by enclosing
389 in 'do {...} while(0)'.
390
paul31a59762005-11-14 11:11:11 +00003912005-11-14 Paul Jakma <paul.jakma@sun.com>
392
393 * ospfd.c: (ospf_new) stub-shutdown should just default to
394 unconfigured, too strange otherwise.
395 (ospf_finish_final) t_opaque_lsa_self TIMER_OFF should be
396 preprocessor conditional on HAVE_OPAQUE_LSA.
397 * ospfd.h: (struct ospf) remove the SHUTDOWN_DEFAULT define.
398 no longer used, plus it wasn't in range that the command
399 accepted.
400 * ospf_zebra.h: Depends on vty.h, include it.
401
paul58e1bef2005-11-11 12:10:03 +00004022005-11-11 Paul Jakma <paul.jakma@sun.com>
403
404 * ospf_spf.c: (ospf_canonical_nexthops_free) Free only
405 the nexthops pointing to the root vertex. We may visit a
406 vertex twice or the vertex may have some inherited nexthops,
407 if we free other nexthops we could crash.
408
paulc8c15212005-11-04 12:31:39 +00004092005-11-04 Paul Jakma <paul.jakma@sun.com>
410
411 * ospf_{dump,spf,vty}.c: Oops, use the internal tv_sub
412 function rather than unportable timersub.
413
paul484315f2005-11-03 09:08:29 +00004142005-11-03 Paul Jakma <paul.jakma@sun.com>
415
416 * ospf_apiserver.c: (apiserver_sync_callback) stray semi-colon
417 * ospf_packet.c: include checksum.h, remove the in_cksum extern
418 * prototypes.
419 * ospf_te.h: Add braces, quell warning.
paul6d452762005-11-03 11:15:44 +0000420 * ospf_packet.c: Change level of some warnings to
421 informational.
paulc8c15212005-11-04 12:31:39 +0000422
paul88d6cf32005-10-29 12:50:09 +00004232005-10-29 Paul Jakma <paul.jakma@sun.com>
424
425 * (general) RFC3137 stub-router support
426 * ospfd.h: Add OSPF_OUTPUT_COST_INFINITE define.
427 (struct ospf_master) Add a OSPF_MASTER_SHUTDOWN flag for
428 options, to allow shutdown to distinguish between complete
429 shutdown and shutdown of a subset of ospf instances.
430 (struct ospf)
431 Add stub_router_{startup,shutdown_}time, configuration of startup
432 and shutdown time for stub-router.
433 Add t_graceful_shutdown struct thread, timer for graceful
434 shutdown, if needed.
435 (struct ospf_area) Add stub_router_state - run time state of
436 stub-router for an area. Add flags for ADMIN, IS and WAS
437 states.
438 Add t_stub_router, timer thread to resend router-lsa for an
439 area.
440 * ospf_lsa.c: (ospf_link_cost) new simple function to spit out
441 either the given lnks cost or infinite cost if stub-router is
442 in effect.
443 (lsa_link_{ptop,broadcast,virtuallink,ptomp}_set) use
444 previous function for transit-links.
445 (ospf_stub_router_timer) timer thread for end of startup stub
446 router. Change state as required for the area and setup
447 re-origination of router-lsa.
448 (ospf_stub_router_check) Check/do whether stub-router should be
449 enabled, and whether it requires timer to be setup.
450 (ospf_router_lsa_new) call previous function at top.
451 (ospf_router_lsa_originate) no external callers, made static.
452 * ospf_lsa.h: (ospf_router_lsa_originate) removed.
453 * ospf_main.c: (sigint) make static.
454 remove call to exit, as ospf_terminate now deals with
455 exiting.
456 * ospf_route.c: (ospf_terminate) removed, now in ospfd.c.
457 * ospf_vty.c: (show_ip_ospf_area) print out state of
458 stub-router, if active.
459 (show_ip_ospf) print out configuration of stub-router
460 support, and details of graceful-shutdown if the timer is
461 active.
462 ((no)?ospf_max_metric_router_lsa_{admin,startup,shutdown}) new
463 commands to (de-)?configure stub-router support.
464 (config_write_stub_router) write out config of stub-router.
465 (ospf_config_write) call previous.
466 (ospf_vty_init) install the new stub-router commands.
467 * ospfd.c: various functions made static.
468 (ospf_new) Set defaults for stub-router. Graceful shutdown
469 is made to default on, just to be adventerous.
470 (ospf_graceful_shutdown_finish) new function, final part of
471 shutdown.
472 (ospf_graceful_shutdown_timer) timer thread wrapper for
473 graceful-shutdown.
474 (ospf_graceful_shutdown_check) check whether to setup timer
475 for shutdown or proceed directly to final shutdown.
476 (ospf_terminate) moved here from ospf_route.c, call
477 ospf_finish for each instance.
478 (ospf_finish) renamed to ospf_finish_final and made static.
479 (ospf_finish) new function, exported wrapper around
480 ospf_graceful_shutdown_check.
481 (ospf_finish_final) complete shutdown of an instance.
482 Add missing TIMER_OFF's of two timer threads.
483 (ospf_area_free) opaque self lsa timer should be turned off.
484
paulb8ad39d2005-10-23 15:23:05 +00004852005-10-23 Paul Jakma <paul.jakma@sun.com>
486
paule029d442005-10-23 15:26:24 +0000487 * ospf_apiserver.c: (ospf_apiserver_term) This function should
488 not have side-effects (eg segv) if no apiserver instances are
489 active, ie be robust.
paulb8ad39d2005-10-23 15:23:05 +0000490 * ospf_vty.c: (show_ip_ospf) fix display of SPF timer if it
491 has not yet been run.
492
paulf9ad9372005-10-21 00:45:17 +00004932005-10-21 Paul Jakma <paul.jakma@sun.com>
494
paulea4ffc92005-10-21 20:04:41 +0000495 * ospf_dump.c: (ospf_timeval_dump) fix ms adjustment, thanks to
496 Andrew Schorr.
497 * ospf_vty.c: (ospf_config_write) fix write out of spf timers
498 configuration.
499
5002005-10-21 Paul Jakma <paul.jakma@sun.com>
501
pauld24f6e22005-10-21 09:23:12 +0000502 * (general) SPF millisecond resolution timer with adaptive,
503 linear back-off holdtime. Prettification of ospf_timer_dump.
504 * ospf_dump.c: (ospf_timeval_dump) new function. The guts of
505 ospf_timer_dump, but made to be more dynamic in printing out
506 the relative timeval, sliding the precision printed out
507 according to the value.
508 (ospf_timer_dump) guts moved to ospf_timeval_dump.
509 * ospf_dump.h: export ospf_timeval_dump.
510 * ospf_flood.c: (ospf_flood) remove gettimeofday, use
511 the libzebra exported recent_time instead, as it's not
512 terribly critical to have time exactly right - the dropped
513 LSA will be retransmited to us if we don't ACK it.
514 * ospf_packet.c: (ospf_ls_upd_timer) Ditto, but here we're
515 not transmitting, just putting LSA back on update transmit list.
516 * ospfd.h: delay and holdtimes should be unsigned.
517 Add spf_max_holdtime and spf_hold_multiplier.
518 Update default defines for delay and hold time to be in msec.
519 (struct ospf) change the SPF timestamp to a struct timeval.
520 Remove ospf_timers_spf_(un)?set.
521 * ospfd.c: (ospf_timers_spf_{set,unset}) removed.
522 (ospf_new) initialise spf_max_holdtime and spf_hold_multiplier
523 * ospf_spf.c: (ospf_spf_calculate) SPF timestamp is a timeval
524 now, update with gettimeofday.
525 (ospf_spf_calculate_schedule) Change SPF timers to millisecond
526 resolution.
527 Make the holdtime be adaptive, with a linear increase in
528 holdtime ever consecutive SPF run which occurs within holdtime
529 of previous SPF, bounded by spf_max_holdtime.
530 * ospf_vty.c: Update spf timers commands.
531 (ospf_timers_spf_set) trivial helper.
532 (ospf_timers_throttle_spf_cmd) new command to set SPF delay,
533 initial hold and max hold times with millisecond resolution.
534 (ospf_timers_spf_cmd) Deprecated. Accept the old values,
535 convert to msec, truncate to new limits.
536 (no_ospf_timers_throttle_spf_cmd) set timers to defaults.
537 (no_ospf_timers_spf_cmd) deprecated form, same as previous.
538 (show_ip_ospf_cmd) Display SPF parameters and times.
539 (show_ip_ospf_neighbour_header) Centralise the 'sh ip os ne'
540 header.
541 (show_ip_ospf_neighbor_sub) Fix the field widths. Get rid of
542 the multiple spaces which were making the lines even longer.
543 (show_ip_ospf_neighbor_cmd) Use show_ip_ospf_neighbour_header
544 (show_ip_ospf_neighbor_all_cmd) ditto and fix the field
545 widths for NBMA neighbours.
546 (show_ip_ospf_neighbor_int) Use header function.
547 (show_ip_ospf_nbr_nbma_detail_sub) use sizeof for timebuf,
548 local array - safer.
549 (show_ip_ospf_neighbor_detail_sub) ditto
550 (ospf_vty_init) install the new SPF throttle timer commands.
551
5522005-10-21 Paul Jakma <paul.jakma@sun.com>
553
paulf9ad9372005-10-21 00:45:17 +0000554 * (general) OSPF fast, sub-second hello and 1s dead-interval
555 support.
556 * ospf_dump.c: (ospf_timer_dump) Print out milliseconds too.
557 Callers typically specify a length of 9, so most see
558 millisecs unless they specify the additional length.
559 * ospf_interface.h: (struct ospf_interface) new interface param,
560 fast_hello.
561 * ospf_interface.c: (ospf_if_table_lookup) add brackets,
562 gcc warning fix.
563 (ospf_new_if_params) Initialise fast_hello param.
564 (ospf_free_if_params) Check whether fast_hello is configured.
565 (ospf_if_new_hook) set fast_hello to default.
566 * ospf_ism.h: Wrap OSPF_ISM_TIMER_ON inside do {} while (0) to
567 prevent funny side-effects from its if statement when this
568 macro is used conditionally by other macros.
569 (OSPF_ISM_TIMER_MSEC_ON) new macro, set in milliseconds.
570 (OSPF_HELLO_TIMER_ON) new macro to set hello timer according
571 to whether fast_hello is set.
572 * ospf_ism.c: Update all setting of the hello timer to use
573 either OSPF_ISM_TIMER_MSEC_ON or OSPF_HELLO_TIMER_ON. The
574 former is used when hello is to be sent immediately.
575 * ospf_nsm.c: ditto
576 * ospf_packet.c: (ospf_hello) hello-interval is not checked
577 for mismatch if fast_hello is set.
578 (ospf_read) Annoying nit, fix "no ospf_interface" to be debug
579 rather than a warning, as it can be perfectly normal to
580 receive packets when logical subnets are used.
581 (ospf_make_hello) Set hello-interval to 0 if fast-hellos are
582 configured.
583 * ospf_vty.c: (ospf_auto_cost_reference_bandwidth) annoying
584 nit, don't vty_out if this command is given, it gets tired
585 quick.
586 (show_ip_ospf_interface_sub) Print the hello-interval
587 according to whether fast-hello is set or not.
588 Print the extra 5 millisec characters from (ospf_timer_dump)
589 if fast-hello is configured.
590 (ospf_vty_dead_interval_set) new function, common to all
591 forms of dead-interval command, to set dead-interval and
592 fast-hello correctly. If a dead-interval is given, unset
593 fast-hello, else if a hello-multiplier is set, set
594 dead-interval to 1 and fast-hello to given multiplier.
595 (ip_ospf_dead_interval_addr_cmd) use
596 ospf_vty_dead_interval_set().
597 (ip_ospf_dead_interval_minimal_addr_cmd) ditto.
598 (no_ip_ospf_dead_interval) Unset fast-hello.
599 (no_ip_ospf_hello_interval) Bug-fix, unset of hello-interval
600 should set it to OSPF_HELLO_INTERVAL_DEFAULT, not
601 OSPF_ROUTER_DEAD_INTERVAL_DEFAULT.
602 (config_write_interface) Write out fast-hello.
603 (ospf_config_write) Write a comment about
604 "auto-cost reference-bandwidth" having to be equal on all
605 routers. Hopefully just as noticeable as old practice of
606 writing to vty, but less annoying.
607 (ospf_vty_if_init) install the two new dead-interval
608 commands.
609 * ospfd.h: Add defines for OSPF_ROUTER_DEAD_INTERVAL_MINIMAL
610 and OSPF_FAST_HELLO_DEFAULT.
611
pauleb3da6d2005-10-18 04:20:33 +00006122005-10-18 Paul Jakma <paul.jakma@sun.com>
613
614 * (general) SPF memory management cleanup and fix for rare
615 double-free bug.
616 * ospf_spf.h: (struct vertex_parent) New struct to hold parent
617 specific data, eg the backlink and the parent vertex pointer,
618 and point to the appropriate general struct vertex_nexthop.
619 (struct vertex_nexthop) remove parent vertex pointer, so
620 this struct can be shared across vertices.
621 (struct vertex) rename list child to list children. Remove
622 list of nexthops, replace with list of vertex_parents.
623 * ospf_spf.c: (update_stat) trivial, remove cast from void *.
624 (vertex_nexthop_new) remove init of parent - field is gone
625 from struct vertex_nexthop.
626 (ospf_canonical_nexthops_free) Remove the canonical
627 vertex_nexthop memory objects. These are the vertex_nexthops
628 attached to the first level of router vertices from the root.
629 (vertex_parent_new) new function, create a vertex_parent.
630 (vertex_parent_free) ditto, but free it.
631 (ospf_vertex_new) Update to match changes to struct vertex.
632 (ospf_vertex_free) Recursively free a struct vertex and its
633 children. The parent list is used as a reference count.
634 vertex_nexthops must be free seperately, if required.
635 (ospf_vertex_dump) update to match struct vertex changes.
636 Print out backlink of parents too.
637 (ospf_vertex_add_parent) ditto.
638 (ospf_lsa_has_link) update comment.
639 (ospf_nexthop_add_unique) removed, not needed anymore.
640 (ospf_nexthop_merge) ditto.
641 (ospf_spf_consider_nexthop) renamed to ospf_spf_add_parent.
642 Simplified to just create vertex_parent and add it.
643 (ospf_spf_flush_parents) new function, flush out the parent
644 list.
645 (ospf_nexthop_calculation) Take the relevant route_lsa_link
646 as an argument, which simplifies things and removes the need
647 for the hack in ospf_nexthop_add_unique - ospf_spf_next
648 already knew exactly which link the cost calculated was for.
649 Update to match struct vertex changes too.
650 (ospf_spf_next) Don't create a vertex for W unnecessarily, if
651 it's there's a vertex already created for W, use it, and
652 hence there's no need to free it either.
653 Update some manipulation/comparisons of distance to match.
654 Flush the parent list if a lower cost path is found.
655 (ospf_spf_route_free) unused, removed.
656 (ospf_spf_dump) match the struct vertex changes, and dump the
657 ifname if possible.
658 (ospf_spf_calculate) At end of SPF, free the canonical nexthops
659 and call ospf_vertex_free on the root vertex to free the
660 entire tree.
661 * ospf_interface.c: (ospf_vl_set_params) match struct vertex
662 changes.
663 * ospf_route.c: (ospf_intra_route_add) ditto
664 (ospf_route_copy_nexthops_from_vertex) ditto
665
paul36238142005-10-11 04:12:54 +00006662005-10-11 Paul Jakma <paul.jakma@sun.com>
667
668 * ospf_api.c: sign warnings.
669 * ospf_apiserver.c: sign warning and convert all the struct
670 in_addr initialisations so as not to make assumptions about
671 how this struct is organised, initialise the s_addr member
672 explicitely.
673 * ospf_packet.c: Add const qualifier to auth_key.
674
vincent77df1f72005-10-06 07:46:22 +00006752005-10-06 Alain Ritoux <alain.ritoux@6wind.com>
676
677 * ospf_snmp.c: Avoid mixing interface and ospf_interface objects
678 which now allows snmpwalk to work with ospfIfTable and
679 also with ospfIfMetricTable
680
ajsf52d13c2005-10-01 17:38:06 +00006812005-10-01 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
682
683 * ospf_dump.c: Remove local hard-coded table ospf_redistributed_proto.
684 (ospf_redist_string) New function implemented using new library
685 function zebra_route_string(). Note that there are a few differences
686 in the output that will result: the new function returns strings
687 that are lower-case, whereas the old table was mixed case. Also,
688 the old table mapped ZEBRA_ROUTE_OSPF6 to "OSPFv3", whereas the
689 new function returns "ospf6".
690 * ospfd.h: Remove extern struct message ospf_redistributed_proto[],
691 and add extern const char *ospf_redist_string(u_int route_type)
692 instead.
693 * ospf_asbr.c: (ospf_external_info_add) In two messages, use
694 ospf_redist_string instead of LOOKUP(ospf_redistributed_proto).
695 * ospf_vty.c: Remove local hard-coded table distribute_str.
696 (config_write_ospf_redistribute,config_write_ospf_distribute): Use
697 new library function zebra_route_string() instead of distribute_str[].
698 * ospf_zebra.c: (ospf_redistribute_set,ospf_redistribute_unset,
699 ospf_redistribute_default_set,ospf_redistribute_check)
700 In debug messages, use ospf_redist_string() instead of
701 LOOKUP(ospf_redistributed_proto).
702
jardin6638c1a2005-10-01 00:08:54 +00007032005-09-30 Vincent Jardin <vincent.jardin@6wind.com>
704
705 * ospf_dump.c, ospf_ia.c, ospf_spf.c, ospf_ase.c:
706 remove unused DEBUG
707
vincentba682532005-09-29 13:52:57 +00007082005-09-29 Alain Ritoux <alain.ritoux@6wind.com>
709
vincent5e4914c2005-09-29 16:34:30 +0000710 * ospf_ism.c: generate SNMP traps on Interface state change
711 * ospf_nsm.c: generate SNMP traps on Neighbour state change
712 * ospf_snmp.[ch]: support for SNMP traps for interface and neighbours.
713
7142005-09-29 Alain Ritoux <alain.ritoux@6wind.com>
715
vincentba682532005-09-29 13:52:57 +0000716 * ospf_vty.c: forece default route LSA to be re_issued whenever
717 cost is changed ( [no] ip ospf area XXX default-cost YYY)
718 Support ignore-mtu option
719 * ospfd.h: define OSPF_MTU_IGNORE_DEFAULT
720 * ospf_packet.c: support ignore-mtu option
721 * ospf_interface.h: field added for skipping MTU check
722 * ospf_interface.c: fix memory leak in ospf_crypt_key_delete()
723 Set mtu_ignore field to default value
724 * ospf_abr.[ch]: export ospf_abr_announce_network_to_area()
725 * ospf_ism.h: add MACRO to convert internal ISM status into SNMP
726 correct values
727 * ospf_snmp.c: add sanity check on LSA type in lsdb_lookup_next()
728 convert OSPFIFSTATE internal status into SNMP values
729
vincentc1a03d42005-09-28 15:47:44 +00007302005-09-28 Alain Ritoux <alain.ritoux@6wind.com>
731
732 * ospf_packet.c: use new md5 API
733
ajs5339cfd2005-09-19 13:28:05 +00007342005-09-19 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
735
736 * ospf_lsa.h: (ospf_external_lsa_flush) Comment out the 5th argument
737 (nexthop) since it is not used in the function (except inside
738 some commented-out code).
739 * ospf_lsa.c: (ospf_external_lsa_flush,ospf_external_lsa_refresh)
740 Comment out the 5th argument to ospf_external_lsa_flush.
741 * ospf_asbr.c: (ospf_redistribute_withdraw) Comment out 5th arg
742 to ospf_external_lsa_flush.
743 * ospf_vty.c: (no_ospf_default_information_originate) Eliminate 5th
744 uninitialized nexthop arg to ospf_external_lsa_flush.
745 * ospf_zebra.c: (ospf_zebra_read_ipv4) Comment out 5th arg
746 to ospf_external_lsa_flush.
747 * ospfd.c: (ospf_network_set) Comment out 5th arg
748 to ospf_external_lsa_flush.
749
ajse6a0bf92005-09-17 18:53:38 +00007502005-09-17 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
751
752 * ospf_opaque.c:
753 (ospf_opaque_lsa_refresh_schedule,ospf_opaque_lsa_flush_schedule)
754 No need to call ospf_lookup(), just use lsa0->area->ospf instead.
755
hassobb5b7552005-08-21 20:01:15 +00007562005-08-21 Hasso Tepper <hasso at quagga.net>
757
758 * ospf_vty.c: Make "show ip ospf neighbor xxx" commands work.
759 Interface should be specified by name now.
760
hasso54bedb52005-08-17 13:31:47 +00007612005-08-17 Hasso Tepper <hasso at quagga.net>
762
763 * ospf_vty.c: Check carefully if interface exists before trying to
764 print info about it.
765
hasso01018ce2005-08-05 07:40:15 +00007662005-08-05 Hasso Tepper <hasso at quagga.net>
767
768 * ospf_zebra.c: Don't assert/stop before type == ZEBRA_ROUTE_MAX if
769 dealing with routemaps. There is ospf->route_map[ZEBRA_ROUTE_MAX]
770 for default-information.
771
paulc8987752005-07-26 06:07:22 +00007722005-07-26 Paul Jakma <paul.jakma@sun.com>
773
774 * ospf_abr.c: (ospf_abr_announce_network_to_area) SET_FLAG
775 should be on lsa not old, which may be freed for one thing,
776 obviously.
777
pauld57834f2005-07-12 20:04:22 +00007782005-07-12 Paul Jakma <paul.jakma@sun.com>
779
780 * ospfd.h: add OSPF_ABR_DEFAULT for convenience, make
781 OSPF_ABR_CISCO be the default ABR type.
782 * ospfd.c: (ospf_new) initialise abr_type to OSPF_ABR_DEFAULT
783 * ospf_vty.c: (no_ospf_abr_type_cmd) add standard as a negatable
784 abr_type. default abr_type should be OSPF_ABR_DEFAULT.
785 (ospf_config_write) test whether default abr_type against
786 OSPF_ABR_DEFAULT, rather than any specific ABR_TYPE.
787
hasso8469bd72005-06-20 20:50:10 +00007882005-06-20 Hasso Tepper <hasso at quagga.net>
hassof4833e92005-06-20 20:42:26 +0000789
790 * ospf_nsm.c: Make database exchange for NSSA database work.
791
paul7461d452005-06-13 13:57:16 +00007922005-06-13 Paul Jakma <paul.jakma@sun.com>
793
794 * ospf_spf.c: Try get more information on a SEGV under
795 ospf_spf_vertex_add_parent.
796 (ospf_vertex_free) NULL out the child and nexthop lists
797 (ospf_vertex_add_parent) nexthop and child can not be NULL
798 vertex_nexthop's parent->child list can not be NULL
799 (ospf_spf_next) w and cw are per-loop iteration variables, move
800 declarations into loop body.
801
hasso1ddd7292005-06-07 19:54:04 +00008022005-06-07 Hasso Tepper <hasso at quagga.net>
803
804 * ospf_apiserver.c: Fix obvious error in notifying clients about ISM
805 changes - oi->ifp->status doesn't give to us info about ISM,
806 oi->state does.
807
paul7e440862005-06-01 11:20:51 +00008082005-06-01 Akihiro Mizutani <mizutani@net-chef.net>
809
810 * ospf_ism.c (ospf_elect_bdr/ospf_elect_dr): Fix DR election bug.
811
paul500e4182005-05-26 17:11:13 +00008122005-05-26 Paul Jakma <paul.jakma@sun.com>
813
814 * ospf_abr.c: (ospf_abr_update_aggregate) Fix comment, cost bug itself
815 had been fixed long ago by Sowmini.
816
paula3387a42005-05-18 23:29:57 +00008172005-05-19 Paul Jakma <paul.jakma@sun.com>
818
819 * ospf_interface.c: (ospf_if_table_lookup) Fix a serious bug
820 a less serious one.
821 1: this function is supposed to lookup
822 entries in the oifs ospf_interface route_table and return either
823 an existing oi or NULL to indicate not found, its caller depends
824 on this, yet this function uses route_node_get which /always/
825 returns a route_node - one is created if none exists. Use
826 route_node_lookup instead. This should fix root cause of the
827 reports of the (ospf_add_to_if) assert being hit.
828 2: oi's are inserted into this table with prefixlength set to
829 /32 (indeed, it should be a hash table, not a route_table),
830 however prefixlength to lookup was not changed, if no valid entry
831 can be inserted other than /32, then nothng but /32 should be
832 looked up. This possibly only worked by fluke..
833 Fix confirmed by 2 reporters (one list, one IRC), definitely a
834 backport candidate once it has been incubated in HEAD for a while.
835 Thanks to Patrick Friedel and Ivan Warren for testing.
836
paul69310a62005-05-11 18:09:59 +00008372005-05-11 Paul Jakma <paul.jakma@sun.com>
838
839 * (general) Fix memory leaks in opaque AS-scope LSAs, reported and
840 with much debugging done by by scott collins <scollins@agile.tv>.
841 * ospf_lsa.c: (ospf_discard_from_db) dont call
842 ospf_ase_unregister_external_lsa for opaque-lsa's, opaques are
843 never registered with ase in the first place.
844 * ospf_packet.c: (general) Disabuse opaque related code of its
845 tendency to try gather up things into temporary lists.
846 (ospf_ls_upd) remove the temporary lists opaque uses, call
847 opaque functions inline, just like all other types.
848 (ospf_ls_ack) ditto.
849 (ospf_recv_packet) fixup sign warning.
850 * ospf_opaque.c: (general) fix the unneeded use of lists, and
851 untwist some of the logic.
852 (ospf_opaque_self_originated_lsa_received) take a single LSA
853 as argument, not a list of them. Remove the list loop. Logic
854 otherwise unchanged.
855 (ospf_opaque_ls_ack_received) Mostly ditto. But untwist the logic,
856 move the actions up into the switch block, remove the goto's and
857 sanitise the logic near the end a bit.
858 * ospf_opaque.h: Adjust definitions of aforementioned functions
859 in ospf_opaque.c to match.
860
paul42c98192005-05-07 02:22:51 +00008612005-05-07 Yar Tikhiy <yar@comp.chem.msu.su>
862
863 * ospf_network.c: Log ifindex on multicast membership leave/join
864 events.
865
paul4dadc292005-05-06 21:37:42 +00008662005-05-06 Paul Jakma <paul.jakma@sun.com>
867
868 * (general) extern and static qualifiers added.
869 unspecified arguments in definitions fixed, typically they should
870 be 'void'.
871 function casts added for callbacks.
872 Guards added to headers which lacked them.
873 Proper headers included rather than relying on incomplete
874 definitions.
875 gcc noreturn function attribute where appropriate.
876 * ospf_opaque.c: remove the private definition of ospf_lsa's
877 ospf_lsa_refresh_delay.
878 * ospf_lsa.h: export ospf_lsa_refresh_delay
879 * ospf_packet.c: (ospf_make_md5_digest) make *auth_key const,
880 correct thing to do - removes need for the casts later.
881 * ospf_vty.c: Use vty.h's VTY_GET_INTEGER rather than ospf_vty's
882 home-brewed versions, shuts up several warnings.
883 * ospf_vty.h: remove VTY_GET_UINT32. VTY_GET_IPV4_ADDRESS and
884 VTY_GET_IPV4_PREFIX moved to lib/vty.h.
885 * ospf_zebra.c: (ospf_distribute_list_update_timer) hacky
886 overloading of the THREAD_ARG pointer should at least use
887 uintptr_t.
888
paul9e67dc22005-04-15 12:10:17 +00008892005-04-15 Zhipeng Gong <zpgong@cdc.3upsystems.com>
890
891 * ospf_abr.c: (ospf_abr_announce_network_to_area) dont forget
892 to approve LSAs for the case where metric has changed, lsa gets
893 flushed otherwise. (backport candidate).
894
ajs634f9ea2005-04-11 15:51:40 +00008952005-04-11 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
896
897 * ospf_zebra.c (ospf_zebra_add): Call zclient_send_message instead
898 of writen.
899
ajsd2fc8892005-04-02 18:38:43 +00009002005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
901
ajse4319de2005-04-02 23:23:55 +0000902 * ospf_interface.h: (ospf_if_lookup_by_name) Remove declaration of a
903 function that does not exist.
904
9052005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
906
ajs21fefa92005-04-02 23:16:41 +0000907 * ospf_zebra.c: (zebra_interface_if_lookup) Must use
908 if_lookup_by_name_len.
909
9102005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
911
ajsa3491982005-04-02 22:50:38 +0000912 * ospf_interface.c: (ospf_vl_new) Use strnlen to fix call to if_create.
913
9142005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
915
ajsd2fc8892005-04-02 18:38:43 +0000916 * ospf_vty.c: (show_ip_ospf_interface_sub) Show ifindex and interface
917 flags to help with debugging.
918 * ospf_zebra.c: (ospf_interface_delete) After deleting, set ifp->ifindex
919 to IFINDEX_INTERNAL.
920 (zebra_interface_if_lookup) Make function static. Tighten up code.
921
ajsaca72fd2005-03-31 15:18:21 +00009222005-03-31 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
923
924 * ospf_dump.c: (show_debugging_ospf) Show if ospf event debugging
925 is turned on.
926
ajsfd651fa2005-03-29 16:08:16 +00009272005-03-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
928
ajsa608bbf2005-03-29 17:03:49 +0000929 * ospf_zebra.c: (ospf_interface_state_up) If the MTU of an operative
930 interface changes, print a debug message and call ospf_if_reset()
931 to simulate down/up on the interface.
932 * ospf_interface.h: Declare new function ospf_if_reset().
933 * ospf_interface.c: (ospf_if_reset) New function to call ospf_if_down
934 and ospf_if_up for all ospf interfaces attached to an interface.
935
9362005-03-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
937
ajs5dcbdf82005-03-29 16:13:49 +0000938 * ospf_packet.c: (ospf_write_frags) Enhance error message to
939 show MTU. Also make function static.
940 (ospf_write) Enhance error message to show interface name and MTU.
941 Also make function static.
942
9432005-03-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
944
945 * ospf_vty.c: (show_ip_ospf_interface_sub) Display interface MTU and
946 bandwidth; this is useful for debugging problems. Also, the function
947 should be static.
ajsfd651fa2005-03-29 16:08:16 +0000948
hasso1b639042005-03-27 13:32:25 +00009492005-03-27 Hasso Tepper <hasso at quagga.net>
950
951 * ospf_snmp.c: Don't crash in snmp query if ospf instance doesn't
952 exist at all.
953
hasso343f5cc2005-03-25 19:48:40 +00009542005-03-25 Hasso Tepper <hasso at quagga.net>
955
956 * ospfd.h: Include log.h, fixes compile with gcc-4.0.
957
ajs9dbc7972005-03-13 19:27:22 +00009582005-03-13 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
959
960 * ospf_lsa.c: (ospf_lsa_refresh_walker) If the system clock jumps
961 backward, then current time may be less than
962 ospf->lsa_refresher_started. This was causing invalid values
963 for ospf->lsa_refresh_queue.index resulting in infinite loops.
964 Problem fixed by casting the expression to unsigned before taking
965 the modulus.
966
ajs5c333492005-02-23 15:43:01 +00009672005-02-23 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
968
969 * ospfd.h: Add new field struct stream *ibuf to struct ospf.
970 * ospfd.c: (ospf_new) Check return code from ospf_sock_init.
971 Allocate ibuf using stream_new(OSPF_MAX_PACKET_SIZE+1).
972 (ospf_finish) Call stream_free(ospf->ibuf.
973 * ospf_packet.c: (ospf_read) Call stream_reset(ospf->ibuf) and then
974 pass it to ospf_recv_packet for use in receiving the packet
975 (instead of allocating a new stream for each packet received).
976 Eliminate all calls to stream_free(ibuf).
977 (ospf_recv_packet) The struct stream *ibuf is now passed in as
978 an argument. No need to use recvfrom to peek at the packet
979 header (to see how big it is), just use ospf->ibuf which is
980 always large enough (this eliminates a system call to recvfrom).
981 Therefore, no need to allocate a stream just for this packet,
982 and no need to free it when done.
983
hasso462f20d2005-02-23 11:29:02 +00009842005-02-23 Vincenzo Eramo <eramo at infocom.ing.uniroma1.it>
985
986 * ospf_lsa.h: New flag to the LSA structure for the SPF calculation.
987 * ospf_lsdb.h: Export ospf_lsdb_clean_stat() function.
988 * ospf_spf.h: Add link to the LSA stat structure into vertex.
989 * ospf_spf.c: New functions cmp() and update_stat() to manage
990 candidates. Remove ospf_spf_has_vertex(), ospf_vertex_lookup(),
991 ospf_install_candidate() and ospf_spf_register() functions not needed
992 any more. Update ospf_vertex_new(), ospf_spf_next() and
993 ospf_spf_calculate() functions to use pqueue instead of linked list.
994
hassoe40dcce2005-02-21 14:58:42 +00009952005-02-21 Hasso Tepper <hasso at quagga.net>
996
997 * ospf_ase.c: Don't show messages related to the ase calculations if
998 we are not debugging.
999
hasso306541b2005-02-19 17:58:40 +000010002005-02-19 Hasso Tepper <hasso at quagga.net>
1001
1002 * ospf_api.h: char isn't always signed, but it has to be it here.
1003
paulfa81b712005-02-19 01:19:20 +000010042005-02-19 Paul Jakma <paul.jakma@sun.com>
1005
1006 * ospf_packet.c: (ospf_stream_copy) remove
1007 (ospf_packet_dup) use stream_copy instead of ospf_stream_copy
1008
ajs038163f2005-02-17 19:55:59 +000010092005-02-17 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
1010
1011 * ospf_packet.c: (ospf_recv_packet) If there is somehow a runt
1012 packet in the queue, it must be discarded. Improve warning messages.
1013 Fix scope to static.
1014 (ospf_read) Fix bug: should reset the read thread in all cases
1015 to make sure we continue to get incoming messages.
1016
paul658b03a2005-02-15 10:10:55 +000010172005-02-15 Paul Jakma <paul.jakma@sun.com>
1018
1019 * ospf_packet.c: (ospf_recv_packet) Fix silly error wrt allocating
1020 ibuf. Thanks Andrew.
1021
paulbfdc44a2005-02-14 23:48:42 +000010222005-02-14 Paul Jakma <paul.jakma@sun.com>
1023
1024 * ospf_packet.c: (ospf_recv_packet) use stream_recvmsg.
1025
hasso082253f2005-02-11 08:31:54 +000010262005-02-11 Hasso Tepper <hasso at quagga.net>
1027
1028 * ospf_lsdb.c: Fix sum of checksums calculation.
1029
ajs083ee9d2005-02-09 15:35:50 +000010302005-02-09 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
1031
1032 * ospf_packet.c: (ospf_write) If sendmsg fails, give more info in the
1033 error message.
1034
ajsba6454e2005-02-08 15:37:30 +000010352005-02-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
1036
ajs8cfde372005-02-08 15:59:16 +00001037 * ospf_interface.h: Reduce structure padding by putting new u_char
1038 field multicast_memberships in a better spot (grouped with
1039 other u_char fields type and state).
1040
10412005-02-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
1042
ajsba6454e2005-02-08 15:37:30 +00001043 * ospf_interface.h: Improve passive_interface comment. Add new
1044 multicast_memberships bitmask to struct ospf_interface to track
1045 active multicast subscriptions. Declare new function
1046 ospf_if_set_multicast.
1047 * ospf_interface.c: (ospf_if_set_multicast) New function to configure
1048 multicast memberships properly based on the current
1049 multicast_memberships status and the current values of the
1050 ospf_interface state, type, and passive_interface status.
1051 (ospf_if_up) Remove call to ospf_if_add_allspfrouters (this is
1052 now handled by ism_change_state's call to ospf_if_set_multicast).
1053 (ospf_if_down) Remove call to ospf_if_drop_allspfrouters (now
1054 handled by ism_change_state).
1055 * ospf_ism.c: (ospf_dr_election) Remove logic to join or leave
1056 the DRouters multicast group (now handled by ism_change_state's call
1057 to ospf_if_set_multicast).
1058 (ism_change_state) Add call to ospf_if_set_multicast to change
1059 multicast memberships as necessary to reflect the new interface state.
1060 * ospf_packet.c: (ospf_hello) When a Hello packet is received on a
1061 passive interface: 1. Increase the severity of the error message
1062 from LOG_INFO to LOG_WARNING; 2. Add more information to the error
1063 message (packet destination address and interface address);
1064 and 3. If the packet was sent to ospf-all-routers, then try
1065 to fix the multicast group memberships.
1066 (ospf_read) When a packet is received on an interface whose state
1067 is ISM_Down, enhance the warning message to show the packet
1068 destination address, and try to update/fix the multicast group
1069 memberships if the packet was sent to a multicast address.
1070 When a packet is received for ospf-designated-routers, but the
1071 current interface state is not DR or BDR, then increase the
1072 severity level of the error message from LOG_INFO to LOG_WARNING,
1073 and try to fix the multicast group memberships.
1074 * ospf_vty.c: (ospf_passive_interface) Call ospf_if_set_multicast for
1075 any ospf interface that may have changed from active to passive.
1076 (no_ospf_passive_interface) Call ospf_if_set_multicast for
1077 any ospf interface that may have changed from passive to active.
1078 (show_ip_ospf_interface_sub) Show multicast group memberships.
1079
paul3a9eb092005-02-08 11:29:41 +000010802005-02-08 Paul Jakma <paul@dishone.st>
1081
1082 * ospf_packet.c: (various) Remove unneeded stream_set_putp abuse.
1083
ajs847947f2005-02-02 18:38:48 +000010842005-02-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
1085
1086 * ospf_packet.c: (ospf_read) Fix bug: must check for state ISM_Down,
1087 not for event ISM_InterfaceDown. And improve the message by
1088 adding the interface flags.
1089
ajs0b7d97d2005-01-30 17:24:02 +000010902005-01-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
1091
1092 * ospf_network.c: (ospf_sock_init) Save errno before calling
1093 ospfd_privs.change.
1094
ajsc3eab872005-01-29 15:52:07 +000010952005-01-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
1096
1097 * ospf_packet.c: (ospf_packet_add) If oi->obuf is NULL, print
1098 an error message and return.
1099 (ospf_read) If the interface state is ISM_InterfaceDown, issue
1100 a warning message and ignore the packet.
1101
gdt86f1fd92005-01-10 14:20:43 +000011022005-01-10 Greg Troxel <gdt@fnord.ir.bbn.com>
1103
1104 * ospf_packet.h: Remove commented out definition of
1105 OSPF_MAX_PACKET; neither it or the uncommented one are used any more.
1106
1107 * ospf_packet.c (ospf_make_ls_upd): Leave room for authentication
1108 when deciding if an update will fit.
1109 (ospf_packet_authspace): Factor out calculation of size required
1110 for authentication.
1111 (ospf_make_db_desc): Use ospf_max_packet, not OSPF_MAX_PACKET.
1112 Don't confuse readers that there is a macro.
1113
ajs3dc56b52004-12-30 15:11:19 +000011142004-12-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
1115
1116 * ospf_network.c: Improve all setsockopt error messages to give detailed
1117 information on the arguments.
1118
ajsb87f7722004-12-29 20:41:26 +000011192004-12-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
1120
ajs17eaa722004-12-29 21:04:48 +00001121 * ospf_packet.c: (ospf_db_desc) Reduce severity of "Negotiation done"
1122 messages from LOG_WARNING to LOG_INFO, since this seems to be
1123 normal.
1124
11252004-12-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
1126
ajsb87f7722004-12-29 20:41:26 +00001127 * ospf_packet.c: (ospf_read) Always look up the interface if
1128 ospf_recv_packet returns NULL ifp, since some platforms such
1129 as Solaris 8 appear to support ifindex retrieval but don't.
1130
hasso1d806282004-12-22 09:43:20 +000011312004-12-22 Hasso Tepper <hasso at quagga.net>
1132
1133 * ospf_dump.c: Show debug configuration in vtysh.
hassoc6b87812004-12-22 13:09:59 +00001134 * ospf_vty.c: Fix "show ip ospf" output. Router can't be elected in
1135 any case if it's configured as "translate-never".
hassofe71a972004-12-22 16:16:02 +00001136 * ospf_lsdb.[ch]: New function to calculate sum of checksums.
1137 * ospf_vty.c: Bugfix to show really number of AS external LSAs, not
1138 number of all LSAs with AS scope, this includes opaque as LSAs as
1139 well, show this number separately. Show numbers and sums of
1140 checksums for each type of LSAs.
1141 * ospf_lsa.c: Calculate checksum before putting LSA into database.
hasso1d806282004-12-22 09:43:20 +00001142
ajsbc18d612004-12-15 15:07:19 +000011432004-12-15 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
1144
1145 * ospf_interface.h: Declare new function ospf_default_iftype.
1146 * ospf_interface.c: (ospf_default_iftype) New function to centralize
1147 this logic in one place.
1148 * ospf_zebra.c: (ospf_interface_add) Use new function
1149 ospf_default_iftype.
1150 * ospf_vty.c: (no_ip_ospf_network,config_write_interface) Fix logic
1151 by using new function ospf_default_iftype.
1152
ajs3aa8d5f2004-12-11 18:00:06 +000011532004-12-11 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
1154
1155 * ospf_packet.c: (ospf_db_desc) Should be static, not global.
1156 (ospf_hello,ospf_db_desc,ospf_ls_upd,ospf_ls_ack) Improve warning
1157 messages to include identifying information (e.g. router id).
1158 * ospf_nsm.c: (nsm_change_state) Improve info message to include
1159 router id and state names.
1160
gdt91f3e522004-12-09 14:51:03 +000011612004-12-09 Greg Troxel <gdt@fnord.ir.bbn.com>
1162
gdt3fb9de72004-12-09 16:30:04 +00001163 * ospf_apiserver.c (ospf_apiserver_term): Obtain struct
1164 ospf_apiserver * from listnode. Remove unused variables. Follows
1165 suggestion from Jay Fenlason.
gdt91f3e522004-12-09 14:51:03 +00001166
ajs9b0e25c2004-12-08 19:06:51 +000011672004-12-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
1168
1169 * *.c: Change level of debug messages to LOG_DEBUG.
1170
ajs274a4a42004-12-07 15:39:31 +000011712004-12-07 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
1172
1173 * ospf_main.c: (main) The 2nd argument to openzlog has been removed.
1174
ajs887c44a2004-12-03 16:36:46 +000011752004-12-03 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
1176
ajs1210fa62004-12-03 16:43:24 +00001177 * ospf_packet.c: (ospf_db_desc) Reduce priority on a debug message
1178 from LOG_NOTICE to LOG_DEBUG.
1179
11802004-12-03 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
1181
ajs887c44a2004-12-03 16:36:46 +00001182 * ospf_main.c: (sigint) Use zlog_notice for termination message.
1183 (main) Issue a startup announcement using zlog_notice.
1184
ajsbec595a2004-11-30 22:38:43 +000011852004-11-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
1186
1187 * ospf_packet.c: (ospf_db_desc_proc) Fix spelling of packet in warning
1188 message and in comment.
1189 (ospf_db_desc) Warning message that a packet is being discarded
1190 should give the router id of the packet source. Fix spelling
1191 of packet in two warning messages.
1192 (ospf_ls_req) Warning message that a link state request is being
1193 discarded should give the router id of the neighbor that sent it.
1194
ajs5b85fac2004-11-26 19:36:42 +000011952004-11-26 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
1196
1197 * ospf_main.c: Remove #include "debug.h" (was not being used, and
1198 lib/debug.h has now been deleted).
1199
hassoc0652302004-11-25 19:33:48 +000012002004-11-25 Hasso Tepper <hasso at quagga.net>
1201
1202 * ospf_main.c: Make group to run as configurable.
1203
gdt69e13252004-11-15 18:51:15 +000012042004-11-15 Greg Troxel <gdt@fnord.ir.bbn.com>
1205
1206 * ospf_packet.c (ospf_recv_packet): Assume CMSG_SPACE is present
1207 and works (lib/zebra.h provides if OS doesn't).
1208
paul788dab12004-11-15 11:48:37 +000012092004-11-15 Paul Jakma <paul@dishone.st>
1210
1211 * ospf_{apiserver,te}.c: ospf_lsa_free's should be ospf_lsa_unlock.
1212
paul05e85fa2004-11-12 10:52:19 +000012132004-11-12 Paul Jakma <paul@dishone.st>
1214
1215 * ospf_ia.c: (process_summary_lsa) Only an ABR has any reason to
1216 ignore stub area summary default. Even so it seems a strange
1217 check, add a comment to that effect.
1218
paulf3ae74c2004-11-04 20:35:31 +000012192004-11-04 Paul Jakma <paul@dishone.st>
1220
1221 * ospfd.c: (ospf_network_match_iface) revert to previous network
1222 statement match behaviour.
1223
paul62d8e962004-11-02 20:26:45 +000012242004-11-02 Paul Jakma <paul@dishone.st>
1225
1226 * ospf_packet.c: (ospf_write_frags) remove iov arg, msg already points
1227 to it. Add convenience pointer to msg->msg_iov[1], and use this,
1228 fixing the unfortunate borkenness introduced in moving of this code
1229 to a function.
1230 (ospf_write) remove iovp and fix up call to previous.
1231 (ospf_ls_upd_packet_new) cast size to long int - unfortunately
1232 glibc's size_t format modifier is not portable.
1233
paul37ccfa32004-10-31 11:24:51 +000012342004-10-31 Paul Jakma <paul@dishone.st>
1235
1236 * ospf_packet.c: (ospf_write_frags) Add debug output
1237 (ospf_write) set type early, so we can pass it to
1238 ospf_write_frags.
1239 (ospf_ls_upd_packet_new) print size in debug output when too large
1240 packet is encountered.
paul64511f32004-10-31 18:01:13 +00001241 * ospf_zebra.c: (ospf_distribute_list_update_timer) Ugly misuse of
1242 THREAD_ARG to store an integer, but it should at least use same
1243 same type to retrieve the value. Assert value is sane.
paul37ccfa32004-10-31 11:24:51 +00001244
paulac191232004-10-22 12:05:17 +000012452004-10-22 Paul Jakma <paul@dishone.st>
1246
1247 * ospf_network.c: (ospf_sock_init) call neutral setsock_ifindex()
1248 function.
1249 * ospf_packet.c: (ospf_read) manually look up ifindex
paul4ccb2c42004-10-22 22:52:33 +00001250 if system could not have returned one, eg openbsd, thanks to Rivo
1251 Nurges for highlighting problem and fix.
paul06f953f2004-10-22 17:00:38 +00001252 Change setsockopt_pktinfo to setsockopt_ifindex.
paulac191232004-10-22 12:05:17 +00001253
hasso3fb9cd62004-10-19 19:44:43 +000012542004-10-19 Andrew J. Schorr <aschorr@telemetry-investments.com>
1255
1256 * ospf_snmp.c: (ospf_snmp_if_update) Fix logic to handle PtP links
1257 with dedicated subnets properly.
1258 * ospf_lsa.c: (lsa_link_ptop_set) ditto.
1259 * ospfd.c: (ospf_network_match_iface) ditto.
1260 (ospf_network_run) ditto.
1261 * ospf_interface.c: (ospf_if_is_configured) ditto.
1262 (ospf_if_lookup_by_prefix) ditto.
1263 (ospf_if_lookup_recv_if) ditto.
1264 * ospf_vty.c: (show_ip_ospf_interface_sub) Display the peer or
1265 broadcast address if present.
1266
hassod68614d2004-10-13 09:32:48 +000012672004-10-13 Hasso Tepper <hasso at quagga.net>
1268
1269 * ospf_main.c: Unbreak compilation with ospfapi disabled.
hassoc75105a2004-10-13 10:33:26 +00001270 * ospf_snmp.c: Remove defaults used to initialize smux connection to
1271 snmpd. Connection is initialized only if smux peer is configured.
hassod68614d2004-10-13 09:32:48 +00001272
hassof4d58ce2004-10-12 06:13:54 +000012732004-10-12 Hasso Tepper <hasso at quagga.net>
1274
1275 * ospf_main.c, ospf_opaque.c: Unbreak ospfclient compilation - move
1276 static variable from ospf_main.c into ospf_opaque.c.
1277
hassoc3abdb72004-10-11 16:27:03 +000012782004-10-11 Hasso Tepper <hasso at quagga.net>
1279
1280 * ospf_main.c, ospf_opaque.c: Disable ospfapi init by default. New
1281 command line switch to enable it.
1282
paul6b333612004-10-11 10:11:25 +000012832004-10-11 Paul Jakma <paul@dishone.st>
1284
1285 * ospf_dump.c: (ospf_ip_header_dump) Assume header is in host order
1286 remove ntohs that should have dissappeared. Take struct ip
1287 as argument, caller has to know there's an IP header at start of
1288 stream anyway.
1289 * ospf_dump.h: update declaration of ospf_ip_header_dump.
1290 * ospf_packet.c: (ospf_write) correct call to
1291 sockopt_iphdrincl_swab_htosys which was munging the header.
1292 (ospf_recv_packet) ip_len is needed for old OpenBSD fixup.
1293 (ospf_read) sockopt_iphdrincl_swab_systoh ip header as soon as
1294 we have it.
paul6c835672004-10-11 11:00:30 +00001295 * (global) Const char update and signed/unsigned fixes.
1296 * (various headers) size defines should be unsigned.
1297 * ospf_interface.h: remove duplicated defines, include the
1298 authoritative header - though, these defines should probably
1299 be moved to a dedicated header, or ospfd.h.
1300 * ospf_lsa.h: (struct lsa) ls_seqnum should be unsigned.
1301 * ospf_packet.c: (ospf_write) cast result of shift to unsigned.
paul6b333612004-10-11 10:11:25 +00001302
hassoeb1ce602004-10-08 08:17:22 +000013032004-10-08 Hasso Tepper <hasso at quagga.net>
1304
1305 * *.[c|h]: Fix compiler warnings: make some strings const, signed ->
1306 unsigned, remove unused variables etc.
1307
gdt54ade992004-10-07 19:38:20 +000013082004-10-07 Greg Troxel <gdt@claude.ir.bbn.com>
1309
1310 * ospf_apiserver.c (ospf_apiserver_unregister_opaque_type): Don't
1311 use of variable names 'node' and 'nextnode' to avoid possible
1312 conflict with list macros. Move variable declaration inside for
1313 loop after a statement to top of function.
1314
paulaa20c6f2004-10-07 14:19:36 +000013152004-10-07 Paul Jakma <paul@dishone.st>
1316
1317 * ospf_snmp.c: Missed list typedef update
1318 * ospf_dump.c: Include sockopt.h for header swab functions.
1319
paul18b12c32004-10-05 14:38:29 +000013202004-10-05 Paul Jakma <paul@dishone.st>
1321
1322 * ospf_packet.c: replace ospf_swap_iph_to... with
1323 sockopt_iphdrincl_swab_...
1324
hasso18a6dce2004-10-03 18:18:34 +000013252004-10-03 James R. Leu <jleu at mindspring.com>
1326
1327 * ospf_zebra.c: Read router id related messages from zebra daemon.
1328 Schedule router-id update thread if it's changed.
1329 * ospfd.c: Remove own router-id selection function. Use router id from
1330 zebra daemon if it isn't manually overriden in configuration.
1331
paul68defd62004-09-27 07:27:13 +000013322004-09-27 Paul Jakma <paul@dishone.st>
1333
paul6a99f832004-09-27 12:56:30 +00001334 * ospf_dump.c: (ospf_ip_header_dump) Use HAVE_IP_HDRINCL_BSD_ORDER
1335 Apply to offset too. Print ip_cksum, lets not worry about
1336 possible 2.0.37 compile problems.
1337 * ospf_packet.c: (ospf_swap_iph_to{n,h}) Use
1338 HAVE_IP_HDRINCL_BSD_ORDER.
1339 (ospf_recv_packet) ditto.
1340 (ospf_write) Fixup iov argument to ospf_write_frags.
1341 (struct msghdr).msg_name is caddr_t on most platforms.
paul68defd62004-09-27 07:27:13 +00001342 (ospf_recv_packet) ditto. And msg_flags is not always there
1343 memset struct then set fields we care about rather than
1344 initialise all fields individually.
1345
hassoc9e52be2004-09-26 16:09:34 +000013462004-09-26 Hasso Tepper <hasso at quagga.net>
1347
1348 * ospf_abr.c, ospf_dump.c, ospf_lsa.c, ospf_packet.c, ospf_vty.c,
1349 ospf_zebra.c: Fix compiler warnings.
1350
paul87d6f872004-09-24 08:01:38 +000013512004-09-24 Paul Jakma <paul@dishone.st>
1352
1353 * ospf_apiserver.{c,h}: lists typedef removal cleanup.
1354 update some list loops to LIST_LOOP. some miscellaneous indent
1355 fixups.
1356 (ospf_apiserver_unregister_opaque_type) fix listnode_delete of
1357 referenced node in loop.
paul1603c062004-09-24 08:23:24 +00001358 (ospf_apiserver_term) loops calling ospf_apiserver_free, which
1359 deletes referenced nodes from apiserver_list, fixed.
paul87d6f872004-09-24 08:01:38 +00001360 * ospf_interface.h: lists typedef removal cleanup.
1361 * ospf_opaque.{c,h}: lists typedef removal cleanup. update some list
1362 loops to LIST_LOOP. miscellaneous style and indent fixups.
1363 * ospf_te.{c,h}: ditto
1364 * ospf_packet.c: lists typedef removal cleanup.
paula2570682004-09-24 08:09:57 +00001365 (ospf_write) ifdef fragmentation support. move actual
1366 fragmentation out to a new, similarly ifdefed, function.
1367 (ospf_write_frags) fragmented write support, moved from previous.
paul87d6f872004-09-24 08:01:38 +00001368
hasso52dc7ee2004-09-23 19:18:23 +000013692004-09-23 Hasso Tepper <hasso at quagga.net>
1370
1371 * *.[c|h]: list -> struct list *, listnode -> struct listnode *.
1372
paul68b73392004-09-12 14:21:37 +000013732004-09-12 Paul Jakma <paul@dishone.st>
1374
1375 * ospf_packet.c: Fix bugzilla #107
1376 (ospf_packet_max) get rid of the magic 88 constant
1377 (ospf_swab_iph_ton) new function. set ip header to network order,
1378 taking BSDisms into account.
1379 (ospf_swab_iph_toh) the inverse.
1380 (ospf_write) Add support for IP fragmentation, will only work on
1381 linux though, other kernels make it impossible. get rid of the
1382 magic 4 constant.
1383 (ospf_make_ls_upd) Bound check to end of stream, not to
1384 interface mtu.
1385 (ospf_ls_upd_packet_new) New function, allocate upd packet
1386 taking oversized LSAs into account.
1387 (ospf_ls_upd_queue_send) use ospf_ls_upd_packet_new to allocate,
1388 rather than statically allocating mtu sized packet buffer, which
1389 actually was wrong - it didnt take ip header into account, which
1390 should not be included in packet buffer.
1391 (ospf_ls_upd_send_queue_event) minor tweaks and remove
1392 TODO comment.
1393
gdt630e4802004-08-31 17:28:41 +000013942004-08-31 David Wiggins <dwiggins@bbn.com>
1395
1396 * ospf_spf.c (ospf_spf_calculate): Many more comments and debug
1397 print statements. New function ospf_vertex_dump used in debugging.
1398
13992004-08-31 David Wiggins <dwiggins@bbn.com>
1400
1401 * ospf_spf.h (struct vertex): Comments for flags and structure members.
1402
14032004-08-31 David Wiggins <dwiggins@bbn.com>
1404
1405 * ospf_route.c: When finding an alternate route, log cost as well.
1406
14072004-08-31 David Wiggins <dwiggins@bbn.com>
1408
1409 * ospf_interface.c (ospf_lookup_if_params): Initialize af in
1410 struct prefix allocated on stack.
1411
14122004-08-31 David Wiggins <dwiggins@bbn.com>
1413
1414 * ospf_packet.c (ospf_ls_ack_send_delayed): In p2mp mode, send
1415 acks to AllSPFRouters, rather than All-DR.
1416
hasso7b901432004-08-31 13:37:42 +000014172004-08-27 Hasso Tepper <hasso at quagga.net>
1418
1419 * ospf_vty.c: Don't print ospf network type under interface only
1420 if interface is in broadcast mode and interface type really is
1421 broadcast. Fixes Bugzilla #108.
1422
gdtd7d93992004-08-27 12:03:42 +000014232004-08-27 David Wiggins <dwiggins@bbn.com>
1424
1425 * ospf_spf.c (ospf_nexthop_calculation): Initialize address family
1426 in on-stack struct prefix_ipv4. Fixes point-to-multipoint SPF
1427 calculation.
1428
gdtd0deca62004-08-26 13:14:07 +000014292004-08-26 Greg Troxel <gdt@fnord.ir.bbn.com>
1430
1431 * ospf_packet.c (ospf_recv_packet): adjust size declaration of
gdtd7d93992004-08-27 12:03:42 +00001432 buffer used to get interface index so that it compiles on other
1433 than Linux and includes the required alignment space. Probably
1434 this was only working on sparc/sparc64 because most of
1435 sockaddr_dl was not being written.
gdtd0deca62004-08-26 13:14:07 +00001436
paul863082d2004-08-19 04:43:43 +000014372004-08-19 Paul Jakma <paul@dishone.st>
1438
1439 * ospf_packet.c: update to match sockopt renames.
1440
paul75ee0b82004-08-05 09:10:31 +000014412004-08-04 Paul Jakma <paul@dishone.st>
1442
1443 * ospf_spf.c: (ospf_spf_consider_nexthop) Add comment about issue.
1444 Compare only against list head - all nexthops must be same cost
1445 anyway, fixes a reference-listnode-after-delete bug noted by
1446 Kir Kostuchenko.
1447 (ospf_nexthop_calculation) Use ospf_spf_consider_nexthop for all
1448 candidates attached to root.
1449
paul36c64ef2004-07-27 11:19:11 +000014502004-07-27 Paul Jakma <paul@dishone.st>
1451
paul48fe13b2004-07-27 17:40:44 +00001452 * ospf_packet.c: (ospf_ls_upd_send_queue_event) fix thinko from
1453 last fix for ospfd wedging due to oversize LSAs: dont list loop on
1454 ospf_ls_upd_queue_send() - guaranteed segfault.
1455
14562004-07-27 Paul Jakma <paul@dishone.st>
1457
paul36c64ef2004-07-27 11:19:11 +00001458 * ospf_opaque.c: (ospf_opaque_lsa_flush_schedule) do not NULL out
1459 the LSA as then free_opaque_info_per_id() can never unlock (and
1460 free) the LSA. Reported by Gunnar Stigen.
1461
paul2dd8bb42004-07-23 15:13:48 +000014622004-07-23 Paul Jakma <paul@dishone.st>
1463
1464 * ospf_network.c: Replace PKTINFO/RECVIF with call to
1465 setsockopt_pktinfo
1466 * ospf_packet.c: Use getsockopt_pktinfo_ifindex and
1467 SOPT_SIZE_CMSG_PKTINFO_IPV4.
1468
paul59ea14c2004-07-14 20:50:36 +000014692004-07-14 Paul Jakma <paul@dishone.st>
1470
1471 * ospf_packet.c: (ospf_ls_upd_send_queue_event) Partial fix for
1472 problem reported by Peter Frost amongst others, where function
1473 will spin indefinitely if update list contains LSAs greater than
1474 MTU-headers or other condition leading to update list never being
1475 cleared. Problem of what to do with these LSAs remains.
1476 (ospf_make_ls_upd) add comment about large LSA problem,
1477 indentation cleanup.
1478
gdtb2c1b282004-07-01 12:35:36 +000014792004-07-01 Greg Troxel <gdt@fnord.ir.bbn.com>
1480
1481 * Makefile.am (lib_LTLIBRARIES): make libospf shared
1482
gdt87efd642004-06-30 17:36:11 +000014832004-06-30 Greg Troxel <gdt@poblano.ir.bbn.com>
1484
1485 * Makefile.am: Add shlib support.
1486
hassobeebba72004-06-20 21:00:27 +000014872004-06-10 Hasso Tepper <hasso@estpak.ee>
1488
1489 * *: Removed ifdefs HAVE_NSSA.
1490
paul553ff112004-06-06 09:41:00 +000014912004-06-06 Paul Jakma <paul@dishone.st>
1492
1493 * ospf_dump.c,ospf_lsa.c: Fix typos of merge of previous.
1494 ospf_flood.c: (ospf_process_self_originated_lsa) fix zlog format
1495
paul0c2be262004-05-31 14:16:54 +000014962004-05-31 Sagun Shakya <sagun.shakya@sun.com>
1497
1498 * ospf_dump.c: (ospf_lsa_header_dump) LOOKUP can return null if
1499 index is out of range.
1500 ospf_flood.c: endianness fix
1501 ospf_lsa.c: Missing ntohl's on (struct lsa *)->data->ls_seqnum
1502 in various places.
1503
hassodd669bb2004-05-10 07:43:59 +000015042004-05-10 Hasso Tepper <hasso@estpak.ee>
1505
1506 * ospf_zebra.c, ospfd.c: Move ospf_prefix_list_update() function
1507 to ospf_zebra.c from ospfd.c and add redistribution updates if
1508 route-map is used in redistribution.
1509 * ospf_main.c: Remove now useless call to ospf_init().
1510
paul0a589352004-05-08 11:48:26 +000015112004-05-08 Paul Jakma <paul@dishone.st>
1512
1513 * ospf_zebra.c: Sync with lib/zclient changes
1514
pauld3f0d622004-05-05 15:27:15 +000015152004-05-05 Paul Jakma <paul@dishone.st>
1516
paul5bd41892004-05-05 17:29:24 +00001517 * ospf_network.c: (ospf_sock_init) Check whether IP_HDRINCL is
1518 defined. Warn at compile and runtime. Use
1519 IPTOS_PREC_INTERNETCONTROL otherwise.
pauld3f0d622004-05-05 15:27:15 +00001520 * ospf_packet.c: (ospf_associate_packet_vl) cleanup, move
1521 some of the checks up to ospf_read, return either a
1522 virtual link oi, or NULL.
1523 (ospf_read) Cleanup, make it responsible for checks. Remove
1524 the nbr lookup - moved to ospf_neighbor. Adjust all nbr
1525 lookups to use new wrappers exported by ospf_neighbor.
1526 * ospf_neighbor.h: Add ospf_neigbour_get and ospf_nbr_lookup.
1527 * ospf_neighbor.c: (ospf_neigbour_get) Index ospf_interface
1528 neighbour table by router-id for virtual-link ospf_interfaces,
1529 not by peer_addr (which breaks for asymmetric vlinks)
1530 (ospf_nbr_lookup) add a wrapper for nbr lookups to deal with
1531 above.
paulcd59da62004-05-05 17:26:55 +00001532 * ospf_interface.c: (ospf_vl_set_params) Catch changes of interface
1533 address for either end of a virtual-link, and hence potential cost
1534 changes.
1535
hassoa0a39762004-04-23 08:51:10 +000015362004-04-22 Hasso Tepper <hasso@estpak.ee>
1537
1538 * ospf_zebra.c: Don't ignore reject/bh routes, it's the only way
1539 to "summarize" routes in ASBR at the moment.
1540
hasso8585d4e2004-04-20 17:25:12 +000015412004-04-20 Hasso Tepper <hasso@estpak.ee>
1542
1543 * ospfd.c: Unset NP flag if area is going to be normal or stub.
1544 Fixes UNH OSPF_NSSA.1.2a comment.
1545 * ospf_abr.c: Originate default into stub/nssa area even if
1546 summaries are disabled.
1547 * ospf_zebra.c: Don't attempt to redistribute 127.0.0.0/8.
1548
hassoc266ac72004-04-19 17:31:00 +000015492004-04-19 Hasso Tepper <hasso@estpak.ee>
1550
1551 * ospf_vty.c: Don't warn that export- and import-list can't be
1552 configured to backbone area if they are applied and are working
1553 fine.
1554
hasso128d31d2004-04-04 12:52:33 +000015552004-02-19 Sowmini Varadhan <sowmini.varadhan@sun.com>
1556
1557 * ospf_packet.c: Don't drop packets in Solaris x86.
1558 [quagga-dev 1005].
1559
hasso0d85b992004-03-18 19:18:33 +000015602004-03-18 Amir Guindehi <amir@datacore.ch>
1561
1562 * ospf_opaque.c: Attempt to correct the incorrect behavior of
1563 Quagga's ospfd in the special situation that a node's opaque
1564 capability has changed as "ON -> OFF -> ON". [quagga-dev 843].
1565
paul7f352b82004-02-19 19:37:47 +000015662004-02-19 Sowmini Varadhan <sowmini.varadhan@sun.com>
1567
1568 * ospf_abr.c: (ospf_abr_update_aggregate) UNH 3.12b,c, address range
1569 should be configured with the highest cost path within the range,
1570 not lowest.
1571
paul940b01a2004-02-17 20:07:30 +000015722004-02-17 Paul Jakma <paul@dishone.st>
1573
1574 * ospf_zebra.c: (ospf_interface_delete) Do not delete the interface
1575 params, nor the interface structure, if an interface delete
1576 message is received from zebra.
1577 * ospf_interface.c: (ospf_if_delete_hook) Delete the interface
1578 params and interface, ie that which was previously removed in
1579 (ospf_interface_delete) above.
1580
hasso2db3d052004-02-11 21:52:13 +000015812004-02-11 Hasso Tepper <hasso@estpak.ee>
1582 * ospf_interface.c, ospf_zebra.c: Don't attempt to read path->oi->ifp
1583 if oi doesn't exist any more.
1584
hassocb05eb22004-02-11 21:10:19 +000015852004-02-11 Vadim Suraev <vadim.suraev@terayon.com>
1586 * ospf_packet.c (ospf_ls_upd): Router should flush received network
1587 LSA if it was originated with older router-id ([zebra 14710] #6).
1588
15892003-12-08 Mattias Amnefelt <mattiasa@kth.se>
paul239aecc2003-12-08 10:34:54 +00001590
1591 * ospf_packet.c: (ospf_recv_packet) OpenBSD now leaves iph.ip_len
1592 network byte order.
1593
gdt8f40e892003-12-05 14:01:43 +000015942003-12-05 Greg Troxel <gdt@poblano.ir.bbn.com>
1595
1596 * ospfd.c (ospf_network_match_iface): Rewrite code for clarity
1597 while trying not to change semantics. Add ifdefed-out code to
1598 avoid matching ppp interfaces whose destination address does not
1599 also match the prefix under consideration, to help out people with
1600 problems due to as-yet-unfixed bugs with p2p interfaces coming and
1601 going.
1602
paul736d3442003-07-24 23:22:57 +000016032003-07-25 kamatchi soundaram <kamatchi@tdd.sj.nec.com>
1604
1605 * ospf_packet.c (ospf_ls_upd_send_queue_event): get next route
1606 node in body of the loop to avoid chance that route node
1607 is unlocked and deleted before the next iteration tries to
1608 get next route node.
1609
paul0a825c72003-05-24 13:48:16 +000016102003-05-24 Kenji Yabuuchi
1611
1612 * ospf_interface.c(ospf_if_lookup_recv_if): Use the most specific
1613 match for interface lookup.
1614
paul551a8972003-05-18 15:22:55 +000016152003-05-18 Hasso Tepper <hasso@estpak.ee>
paul445f1432003-05-16 19:00:31 +00001616
paul551a8972003-05-18 15:22:55 +00001617 * ospf_vty.c: Show NSSA LSA route info in "show ip ospf database"
1618 output
paul445f1432003-05-16 19:00:31 +00001619
pauld7480322003-05-16 17:31:51 +000016202003-05-16 Hasso Tepper <hasso@estpak.ee>
1621
1622 * ospf_lsa.c: Fix handling of NSSA
1623
paul551a8972003-05-18 15:22:55 +000016242003-04-23 Hasso Tepper <hasso@estpak.ee>
1625
1626 * ospf_vty.c: fix "router xxx" node commands in vtysh
1627
paul445f1432003-05-16 19:00:31 +000016282003-04-19 Hasso Tepper <hasso@estpak.ee>
1629
1630 * {ospf_abr,ospfd}.c: area id's DECIMAL -> ADDRESS
1631 * ospf_routemap.c: sync daemon's route-map commands to have same
1632 syntax.
1633
16342003-04-19 Sergey Vyshnevetskiy <serg@vostok.net>
1635
1636 * ospf_packet.c: Add missing param to zlog
1637 * ospf_flood.c: remove unused vars
1638
16392003-04-17 Denis Ovsienko <zebra@pilot.org.ua>
1640
1641 * ospf_interface.c: fix incorrect memset
1642
paul28a13842003-05-16 20:30:37 +000016432003-04-10 Amir Guindehi <amir@datacore.ch>
paul445f1432003-05-16 19:00:31 +00001644
1645 * ospf_lsa.[ch]: opaque LSA fix, use ospf_lookup.
1646
16472003-04-03 David Watson <dwatson@eecs.umich.edu>
1648
1649 * ospf_lsa.c: byte order fix
1650
paul07661cb2003-03-18 00:03:05 +000016512002-03-17 Amir Guindehi <amir@datacore.ch>
1652
1653 * ospf_apiserver.[ch]: Merge Ralph Keller's OSPFAPI support.
1654 * ospf_api.[ch]: Merge Ralph Keller's OSPFAPI support.
1655 * ospfclient: OSPFAPI demonstration client.
1656
16572003-01-23 Masahiko Endo <endo@suri.co.jp>
1658
1659 * ospf_ism.c: NSM event schedule bug fix.
1660
16612002-10-30 Greg Troxel <gdt@ir.bbn.com>
1662
1663 * ospf_packet.c (ospf_make_md5_digest): MD5 length fix.
1664
paul718e3742002-12-13 20:15:29 +000016652002-10-23 endo@suri.co.jp (Masahiko Endo)
1666
1667 * ospf_opaque.c: Update Opaque LSA patch.
1668
16692002-10-23 Ralph Keller <keller@tik.ee.ethz.ch>
1670
1671 * ospf_vty.c (show_ip_ospf_database): Fix CLI parse.
1672
16732002-10-23 Juris Kalnins <juris@mt.lv>
1674
1675 * ospf_interface.c (ospf_if_stream_unset): When write queue
1676 becomes empty stop write timer.
1677
16782002-10-10 Greg Troxel <gdt@ir.bbn.com>
1679
1680 * ospf_packet.c (ospf_check_md5_digest): Change >= to > to make it
1681 conform to RFC.
1682
16832002-07-07 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1684
1685 * zebra-0.93 released.
1686
16872002-06-19 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1688
1689 * ospf_spf.c (ospf_nexthop_calculation): Add NULL set to oi and
1690 check of l2. Reported by: Daniel Drown <dan-zebra@drown.org>
1691 (ospf_lsa_has_link): LSA Length calculation fix. Reported by:
1692 Paul Jakma <paulj@alphyra.ie>.
1693
1694 * ospfd.c (ospf_if_update): Fix nextnode reference bug. Reported
1695 by: juris@mt.lv.
1696
16972002-01-21 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1698
1699 * ospfd.c: Merge [zebra 11445] Masahiko ENDO's Opaque-LSA support.
1700
17012001-08-27 Kunihiro Ishiguro <kunihiro@zebra.org>
1702
1703 * ospf_interface.c (ospf_add_to_if): Use /32 address to register
1704 OSPF interface information.
1705 (ospf_delete_from_if): Likewise.
1706
1707 * ospf_zebra.c (ospf_interface_address_delete): Likewise.
1708
17092001-08-23 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1710
1711 * ospf_zebra.c (ospf_redistribute_unset): When redistribute type
1712 is OSPF, do not unset redistribute flag.
1713
17142001-08-19 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1715
1716 * zebra-0.92a released.
1717
17182001-08-15 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1719
1720 * zebra-0.92 released.
1721
17222001-08-12 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1723
1724 * ospfd.c (ospf_config_write): auto-cost reference-bandwidth
1725 configuration display.
1726
17272001-07-24 David Watson <dwatson@eecs.umich.edu>
1728
1729 * ospf_spf.c (ospf_spf_next): Modify ospf_vertex_add_parent to
1730 check for an existing link before connecting the parent and child.
1731 ospf_nexthop_calculation is also modified to check for duplicate
1732 entries when copying from the parent. Finally, ospf_spf_next
1733 removes duplicates when it merges two equal cost candidates.
1734
17352001-07-23 itojun@iijlab.net
1736
1737 * ospfd.c (show_ip_ospf_neighbor): Check ospf_top before use it
1738 [zebra 8549].
1739
17402001-07-23 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1741
1742 * ospf_packet.c (ospf_write): Remove defined(__OpenBSD__) to make
1743 it work on OpenBSD.
1744
17452001-06-26 Kunihiro Ishiguro <kunihiro@zebra.org>
1746
1747 * ospf_zebra.c (config_write_ospf_default_metric): Display
1748 default-metric configuration.
1749
17502001-06-18 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1751
1752 * ospf_ia.h (OSPF_EXAMINE_SUMMARIES_ALL): Remove old macros.
1753
17542001-05-28 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
1755
1756 * ospf_snmp.c (ospfIfEntry): Fix interface lookup bug to avoid
1757 crush.
1758 (ospfIfMetricEntry): Likewise.
1759
17602001-03-18 Kunihiro Ishiguro <kunihiro@zebra.org>
1761
1762 * ospf_packet.c (ospf_read): Fix typo. Reported by: "Jen B
1763 Lin'Kova" <jen@stack.net>.
1764
17652001-03-15 Gleb Natapov <gleb@nbase.co.il>
1766
1767 * ospf_interface.c (ip_ospf_network): Set interface parameter.
1768 (interface_config_write): Add check for OSPF_IFTYPE_LOOPBACK.
1769
1770 * ospf_zebra.c (ospf_interface_add): Set interface parameter.
1771
17722001-02-21 Kunihiro Ishiguro <kunihiro@zebra.org>
1773
1774 * ospf_packet.c (ospf_recv_packet): Solaris also need to add
1775 (iph.ip_hl << 2) to iph.ip_len.
1776
17772001-02-09 Kunihiro Ishiguro <kunihiro@zebra.org>
1778
1779 * ospfd.h (OSPF_LS_REFRESH_TIME): Fix OSPF_LS_REFRESH_TIME value.
1780 Suggested by: David Watson <dwatson@eecs.umich.edu>.
1781
1782 * ospf_zebra.c (zebra_init): Remove zebra node.
1783
1784 * ospfd.c (ospf_area_range_set): Function name is changed from
1785 ospf_ara_range_cmd.
1786 (ospf_area_range_unset): New function which separated from DEFUN.
1787 New commands are added:
1788 "no area A.B.C.D range A.B.C.D/M advertise"
1789 "no area <0-4294967295> range A.B.C.D/M advertise"
1790 "no area A.B.C.D range A.B.C.D/M not-advertise"
1791 "no area <0-4294967295> range A.B.C.D/M not-advertise"
1792
1793 * ospf_lsa.c (ospf_lsa_more_recent): Fix previous change.
1794
17952001-02-08 Matthew Grant <grantma@anathoth.gen.nz>
1796
1797 * ospf_network.c (ospf_if_add_allspfrouters): Use
1798 setsockopt_multicast_ipv4.
1799 (ospf_if_drop_allspfrouters): Likewise.
1800
1801 * ospf_lsa.c (ospf_router_lsa_install): Add rt_recalc flag.
1802 (ospf_network_lsa_install): Likewise.
1803 (ospf_summary_lsa_install): Likewise.
1804 (ospf_summary_asbr_lsa_install): Likewise.
1805 (ospf_external_lsa_install): Likewise.
1806 (ospf_lsa_install): Call ospf_lsa_different to check this LSA is
1807 new one or not.
1808
18092001-02-08 Kunihiro Ishiguro <kunihiro@zebra.org>
1810
1811 * ospf_zebra.c (ospf_interface_delete): Do not free interface
1812 structure when ospfd receive interface delete message to support
1813 pseudo interface.
1814
18152001-02-01 Dick Glasspool <dick@ipinfusion.com>
1816
1817 * ospfd.c (area_range_notadvertise): Change area range "suppress"
1818 command to "not-advertise".
1819
1820 * ospfd.h (OSPF_LS_REFRESH_TIME): Change OSPF_LS_REFRESH_TIME from
1821 1800 to 60.
1822
1823 * ospf_abr.c (ospf_abr_update_aggregate): When update_aggregate is
1824 updating the area-range, the lowest cost is now saved.
1825
1826 * ospf_lsa.c (ospf_lsa_more_recent): Routing to compare sequence
1827 numbers rather than creating overflow during calculation.
1828
18292001-02-01 Kunihiro Ishiguro <kunihiro@zebra.org>
1830
1831 * zebra-0.91 is released.
1832
18332001-01-31 Kunihiro Ishiguro <kunihiro@zebra.org>
1834
1835 * ospf_packet.c (ospf_db_desc_proc): Do not continue process when
1836 NSM_SeqNumberMismatch is scheduled.
1837 (ospf_ls_req): Free ls_upd when return from this function.
1838 (ospf_ls_upd_timer): When update list is empty do not call
1839 ospf_ls_upd_send(). Suggested by: endo@suri.co.jp (Masahiko
1840 Endo).
1841
18422001-01-26 Kunihiro Ishiguro <kunihiro@zebra.org>
1843
1844 * ospf_lsa.c (ospf_maxage_flood): Flood LSA when it reaches
1845 MaxAge. RFC2328 Section 14.
1846 (ospf_maxage_lsa_remover): Call above function during removing
1847 MaxAge LSA.
1848
18492001-01-26 Dick Glasspool <dick@ipinfusion.com>
1850
1851 * ospf_flood.c (ospf_flood_through_as): Function is updated for
1852 NSSA Translations now done at ospf_abr.c with no change in P-bit.
1853
1854 * ospf_lsa.c (ospf_get_nssa_ip): Get 1st IP connection for Forward
1855 Addr.
1856 (ospf_install_flood_nssa): Leave Type-7 LSA at Lock Count = 2.
1857
1858 * ospf_ase.c (ospf_ase_calculate_route): Add debug codes.
1859
1860 * ospf_abr.c (ospf_abr_translate_nssa): Recalculate LSA checksum.
1861
1862 * ospf_packet.h (OSPF_SEND_PACKET_LOOP): Added for test packet.
1863
1864 * ospf_dump.c (ospf_lsa_type_msg): Add OSPF_GROUP_MEMBER_LSA and
1865 OSPF_AS_NSSA_LSA.
1866
1867 * ospfd.c (data_injection): Function to inject LSA. This is
1868 debugging command.
1869
18702001-01-11 Kunihiro Ishiguro <kunihiro@zebra.org>
1871
1872 * ospf_route.c (ospf_route_match_same): Remove function.
1873 (ospf_route_match_same_new): Renamed to ospf_route_match_same.
1874
1875 * ospf_zebra.c (ospf_interface_address_delete): Add check for
1876 oi->address. Suggested by Matthew Grant
1877 <grantma@anathoth.gen.nz>.
1878 (ospf_zebra_add): Remove function.
1879 (ospf_zebra_add_multipath): Rename to ospf_zebra_add.
1880
1881 * ospf_interface.c: Remove HAVE_IF_PSEUDO part.
1882
1883 * ospf_zebra.c: Likewise.
1884
18852001-01-10 Kunihiro Ishiguro <kunihiro@zebra.org>
1886
1887 * ospf_ase.c: Remove OLD_RIB part.
1888
1889 * ospf_route.c: Likewise.
1890
1891 * zebra-0.90 is released.
1892
1893 * ospf_packet.c (ospf_recv_packet): Use ip_len adjestment code to
1894 NetBSD.
1895
18962001-01-09 Kunihiro Ishiguro <kunihiro@zebra.org>
1897
1898 * ospf_route.c (ospf_route_delete): Use
1899 ospf_zebra_delete_multipath.
1900
19012001-01-09 Matthew Grant <grantma@anathoth.gen.nz>
1902
1903 * ospf_interface.c (ospf_if_cleanup): Function name is renamed
1904 from ospf_if_free(). Rewrite whole procudure to support primary
1905 address deletion.
1906
1907 * ospf_zebra.c (ospf_interface_address_delete): Add primary
1908 address deletion process.
1909
19102001-01-09 Kunihiro Ishiguro <kunihiro@zebra.org>
1911
1912 * ospf_packet.c (ospf_recv_packet): OpenBSD has same ip_len
1913 treatment like FreeBSD.
1914
19152001-01-09 endo@suri.co.jp (Masahiko Endo)
1916
1917 * ospf_packet.c (ospf_recv_packet): FreeBSD kernel network code
1918 strips IP header size from receiving IP Packet. So we adjust
1919 ip_len to whole IP packet size by adding IP header size.
1920
19212001-01-08 endo@suri.co.jp (Masahiko Endo)
1922
1923 * ospf_network.c (ospf_serv_sock): When socket() is failed return
1924 immediately.
1925 (ospf_serv_sock): Close socket when it is not used.
1926
1927 * ospf_packet.c (ospf_write): Set sin_len when HAVE_SIN_LEN is
1928 defined.
1929 (ospf_write): When bind is fined, close sock.
1930
19312001-01-07 Gleb Natapov <gleb@nbase.co.il>
1932
1933 * ospf_zebra.c (ospf_interface_state_up): Fixes coredump that
1934 appears when you try to configure bandwidth on the ppp interface
1935 that is not yet configured in ospfd.
1936
19372001-01-07 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1938
1939 * ospf_route.c (show_ip_ospf_route_external): "show ip ospf route"
1940 will print nexthops for AS-external routes.
1941
1942 * ospf_ase.c (ospf_ase_route_match_same): New function to compare
1943 ASE route under multipath environment.
1944 (ospf_ase_compare_tables): Likewise.
1945
19462001-01-01 Kunihiro Ishiguro <kunihiro@zebra.org>
1947
1948 * ospfd.h (OSPF_VTYSH_PATH): Change "/tmp/ospfd" to "/tmp/.ospfd".
1949
19502000-12-28 Kunihiro Ishiguro <kunihiro@zebra.org>
1951
1952 * ospf_route.c (ospf_route_install): Install multipath information
1953 to zebra daemon.
1954
1955 * ospf_zebra.c (ospf_zebra_add_multipath): Function for passing
1956 multipath information to zebra daemon.
1957
19582000-12-25 Dick Glasspool <dick@ipinfusion.com>
1959
1960 * ospf_packet.c (ospf_write): Call ospf_packet_delete when sendto
1961 fail.
1962 (DISCARD_LSA): Add argument N for logging point of DISCARD_LSA is
1963 called.
1964
1965 * ospf_lsa.c (ospf_external_lsa_refresh): NSSA install_flood will
1966 leave Type-7 LSA at Lock Count = 2.
1967
1968 * ospf_flood.c (ospf_flood_through): Flood_though_as updated for
1969 NSSA no P-bit off during Area flooding, but P-bit is turned off
1970 for mulitple NSSA AS flooding.
1971
1972 * ospf_ase.c (ospf_ase_calculate_timer): Added calculations for
1973 Type-7 LSDB.
1974
1975 * ospf_abr.c (ospf_abr_translate_nssa): Removed one unlock call.
1976 (ospf_abr_announce_nssa_defaults): Corrected Debug from EVENT to
1977 NSSA.
1978
19792000-12-25 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1980
1981 * ospf_zebra.c (ospf_zebra_read_ipv4): Checking the age of the
1982 found LSA and if the LSA is MAXAGE we should call refresh instead
1983 of originate.
1984
19852000-12-18 Dick Glasspool <dick@ipinfusion.com>
1986
1987 * ospf_abr.c: Removed redundant "...flood" in
1988 announce_network_to_area(). Repaired nssa Unlock by using
1989 discard.
1990
1991 * ospf_packet.c: Removed old NSSA translate during mk_ls_update.
1992
1993 * ospfd.c: Free up all data bases including NSSA.
1994
1995 * ospf_lsa.c: Now allow removal of XLATE LSA's Check in
1996 discard_callback. Added routine to get ip addr from within the
1997 ifp.
1998
1999 * ospf_flood.c: Now set Forward Address for outgoing Type-7.
2000
2001 * ospf_lsa.h: Added prototype for the below. struct in_addr
2002 ospf_get_ip_from_ifp (struct interface *ifp).
2003
20042000-12-14 Gleb Natapov <gleb@nbase.co.il>
2005
2006 * ospf_packet.c (ospf_recv_packet): New OSPF pakcet read method.
2007 Now maximum packet length may be 65535 bytes (maximum IP packet
2008 length).
2009
2010 * ospf_interface.c (ospf_if_stream_set): Don't make input buffer.
2011
2012 * ospfd.c (config_write_network_area): Remove unnecessary area
2013 lookup code.
2014
20152000-12-13 Kunihiro Ishiguro <kunihiro@zebra.org>
2016
2017 * ospf_packet.c (ospf_read): Accept packet bigger than MTU value.
2018
20192000-12-13 Gleb Natapov <gleb@nbase.co.il>
2020
2021 * ospfd.c (config_write_network_area): Fix bug in
2022 config_write_network_area function.
2023
20242000-12-12 Gleb Natapov <gleb@nbase.co.il>
2025
2026 * ospf_abr.c (ospf_abr_announce_network_to_area): Make Summary
2027 LSA's origination and refreshment as same as other type of LSA.
2028
2029 * ospf_lsa.c (ospf_summary_lsa_refresh): Return struct ospf_lsa *.
2030
2031 * ospf_lsa.c (ospf_summary_asbr_lsa_refresh): Likewise.
2032
20332000-12-08 Dick Glasspool <dick@ipinfusion.com>
2034
2035 The bulk of NSSA changes are contained herein; This version will
2036 require manual setting of "always" for NSSA Translator, and will
2037 not perform aggregation yet.
2038
2039 * ospf_dump.c: "debug ospf nssa" is added.
2040
2041 * ospf_dump.h: Likewise.
2042
2043 * ospf_packet.c (ospf_hello): Display router ID on Bad NSSA Hello.
2044
2045 * ospfd.c: Discard_LSA to stay away from LOCAL_XLT Process NSSA
2046 'never, candidate, always'. Change "suppress" to "not-advertise".
2047
2048 * ospfd.h: Add TranslatorRole to struct ospf_area. Add anyNSSA to
2049 struct ospf.
2050
2051 * ospf_ase.c (ospf_ase_calculate_route): External to stay away
2052 from LOCAL_XLT
2053
2054 * ospf_nsm.c (ospf_db_summary_add): External to stay away from
2055 LOCAL_XLT
2056
2057 * ospf_abr.c: Major logic added for abr_nssa_task(). If ABR, and
2058 NSSA translator, then do it. Approve the global list, and flush
2059 any unapproved.
2060
2061 * ospf_lsa.h: New LSA flag OSPF_LSA_LOCAL_XLT to indicate that the
2062 Type-5 resulted from a Local Type-7 translation; not used for
2063 flooding, but used for flushing.
2064
2065 * ospf_flood.c: New NSSA flooding.
2066
20672000-12-08 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
2068
2069 * ospfd.c (ospf_find_vl_data): New function for looking up virtual
2070 link data.
2071 (ospf_vl_set_security): Virtual link configuration with
2072 authentication.
2073 (ospf_vl_set_timers): Set timers for virtual link.
2074
2075 * New commands are added.
2076 "area A.B.C.D virtual-link A.B.C.D"
2077 "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>"
2078 "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"
2079 "area A.B.C.D virtual-link A.B.C.D authentication-key AUTH_KEY"
2080 "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"
2081 "area A.B.C.D virtual-link A.B.C.D message-digest-key <1-255> md5 KEY"
2082
2083 * ospf_packet.c (ospf_check_md5_digest): Add neighbor's
2084 cryptographic sequence number treatment.
2085 (ospf_check_auth): OSPF input buffer is added to argument.
2086 (ospf_read): Save neighbor's cryptographic sequence number.
2087
2088 * ospf_nsm.c (nsm_change_status): Clear cryptographic sequence
2089 number when neighbor status is changed to NSM down.
2090
2091 * ospf_neighbor.c (ospf_nbr_new): Set zero to crypt_seqnum.
2092
2093 * ospf_neighbor.h (struct ospf_neighbor): Add cryptographic
2094 sequence number to neighbor structure.
2095
20962000-11-29 Kunihiro Ishiguro <kunihiro@zebra.org>
2097
2098 * ospf_snmp.c (ospfIfLookup): OSPF MIB updates.
2099 (ospfExtLsdbEntry): Add OspfExtLsdbTable treatment.
2100
21012000-11-28 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
2102
2103 * ospfd.c (ospf_interface_down): Clear a ls_upd_queue queue of the
2104 interface.
2105 (ospf_ls_upd_queue_empty): New function to empty ls update queue
2106 of the OSPF interface.
2107 (no_router_ospf): 'no router ospf' unregister redistribution
2108 requests from zebra.
2109
21102000-11-28 Kunihiro Ishiguro <kunihiro@zebra.org>
2111
2112 * ospf_ism.c (ism_change_status): Increment status change number.
2113
2114 * ospf_interface.h (struct ospf_interface): Add new member for
2115 status change statistics.
2116
2117 * Makefile.am: Update dependencies.
2118
2119 * ospf_zebra.c (ospf_interface_add): OSPF SNMP interface update.
2120 (ospf_interface_delete): OSPF SNMP interface delete.
2121
2122 * ospf_snmp.h: New file is added.
2123
21242000-11-23 Dick Glasspool <dick@ipinfusion.com>
2125
2126 * ospfd.h: Add new ospf_area structure member for
2127 NSSATranslatorRole and NSSATranslator state.
2128
2129 * ospfd.c: Provided for eventual commands to specify NSSA
2130 elections for "translator- ALWAYS/NEVER/CANDIDATE". Provided for
2131 decimal integer version of area-suppress.
2132
2133 * ospf_flood.c: Flood Type-7's only into NSSA (not AS).
2134
2135 * ospf_lsa.c: Undo some previous changes for NSSA. If NSSA
2136 translator, advertise Nt bit.
2137
2138 * ospf_route.c: 1st version of "sh ip os border-routers".
2139
21402000-11-23 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
2141
2142 * ospfd.c (area_vlink): Virtual link can not configured in stub
2143 area.
2144
21452000-11-23 Gleb Natapov <gleb@nbase.co.il>
2146
2147 * ospf_packet.c (ospf_db_desc): In states Loading and Full the
2148 slave must resend its last Database Description packet in response
2149 to duplicate Database Description packets received from the
2150 master. For this reason the slave must wait RouterDeadInterval
2151 seconds before freeing the last Database Description packet.
2152 Reception of a Database Description packet from the master after
2153 this interval will generate a SeqNumberMismatch neighbor
2154 event. RFC2328 Section 10.8
2155 (ospf_make_db_desc): DD Master flag treatment.
2156
2157 * ospf_nsm.c (nsm_twoway_received): Move DD related procedure to
2158 nsm_change_status().
2159 (nsm_bad_ls_req): Likewise.
2160 (nsm_adj_ok): Likewise.
2161 (nsm_seq_number_mismatch): Likewise.
2162 (nsm_oneway_received): Likewise.
2163
2164 * ospf_neighbor.h (struct ospf_neighbor): New structure member
2165 last_send_ts for timestemp when last Database Description packet
2166 was sent.
2167
2168 * ospf_nsm.c (ospf_db_desc_timer): Make it sure nbr->last_send is
2169 there. Call ospf_db_desc_resend() in any case.
2170
21712000-11-16 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
2172
2173 * ospf_lsa.c (lsa_link_broadcast_set): When there is no DR on
2174 network (suppose you have only one router with interface priority
2175 0). It's router LSA does not contain the link information about
2176 this network.
2177
2178 * ospf_nsm.c (nsm_timer_set): When you change a priority of
2179 interface from/to 0 ISM_NeighborChange event should be scheduled
2180 in order to elect new DR/BDR on the network.
2181
2182 * ospf_interface.c (ip_ospf_priority): Likewise.
2183
2184 * ospf_flood.c (ospf_ls_retransmit_add): When we add some LSA into
2185 retransmit list we need to check whether the present old LSA in
2186 retransmit list is not more recent than the new
2187 one.
2188
21892000-11-09 Dick Glasspool <dick@ipinfusion.com>
2190
2191 * ospf_packet.c: Allows for NSSA Type-7 LSA's throughout the NSSA
2192 area. Any that exit the NSSA area are translated to type-5 LSA's.
2193 The instantiated image is restored after translation.
2194 (ospf_ls_upd_send_list): Renamed to ospf_ls_upd_queu_send().
2195 (ospf_ls_upd_send): Old function which enclosed by #ifdef 0 is
2196 removed.
2197 (ospf_ls_ack_send): Likewise.
2198
2199 * ospf_flood.c: NSSA-LSA's without P-bit will be restricted to
2200 local area. Otherwise they are allowed out the area to be
2201 translated by ospf_packet.c.
2202
2203 * ospf_lsa.c: Undo some previous changes for NSSA.
2204
2205 * ospf_lsdb.h: New access for type 7.
2206
22072000-11-07 Kunihiro Ishiguro <kunihiro@zebra.org>
2208
2209 * ospf_route.c (ospf_path_exist): New function to check nexthop
2210 and interface are in current OSPF path or not.
2211 (ospf_route_copy_nexthops_from_vertex): Add nexthop to OSPF path
2212 when it is not there. Reported by Michael Rozhavsky
2213 <mrozhavsky@opticalaccess.com>
2214
22152000-11-06 Kunihiro Ishiguro <kunihiro@zebra.org>
2216
2217 * ospf_dump.c (config_write_debug): Add seventh string "detail" is
2218 added for flag is OSPF_DEBUG_SEND | OSPF_DEBUG_RECV |
2219 OSPF_DEBUG_DETAIL.
2220
22212000-11-06 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
2222
2223 * ospf_lsa.c (router_lsa_flags): ASBR can't exit in stub area.
2224
22252000-11-06 Kunihiro Ishiguro <kunihiro@zebra.org>
2226
2227 * ospf_lsa.c (ospf_router_lsa_originate): Reduce unconditional
2228 logging.
2229
22302000-11-06 Dick Glasspool <dick@ipinfusion.com>
2231
2232 * ospfd.h: Add ait_ntoa function prototype.
2233
2234 * ospfd.c (ait_ntoa): New function for displaying area ID and
2235 Stub/NSSA status.
2236 (show_ip_ospf_interface_sub): Use ait_ntoa.
2237 (show_ip_ospf_nbr_static_detail_sub): Likewise.
2238 (show_ip_ospf_neighbor_detail_sub): Likewise.
2239
2240 * ospf_route.c (ospf_intra_route_add): Set external routing type
2241 to ospf route.
2242 (ospf_intra_add_router): Likewise.
2243 (ospf_intra_add_transit): Likewise.
2244 (ospf_intra_add_stub): Likewise.
2245 (ospf_add_discard_route): Likewise.
2246 (show_ip_ospf_route_network): Use ait_ntoa.
2247 (show_ip_ospf_route_network): Likewise.
2248 (show_ip_ospf_route_router): Likewise.
2249
2250 * ospf_lsa.c (show_lsa_detail): Use ait_ntoa.
2251 (show_lsa_detail_adv_router): Likewise.
2252 (show_ip_ospf_database_summary): Likewise.
2253
2254 * ospf_route.h (struct route_standard): Add new member
2255 external_routing.
2256
2257 * ospf_ia.c (process_summary_lsa): Set external routing tyep to ospf
2258 route.
2259 (ospf_update_network_route): Likewise.
2260 (ospf_update_router_route): Likewise.
2261
22622000-11-04 Kunihiro Ishiguro <kunihiro@zebra.org>
2263
2264 * ospf_flood.c (ospf_process_self_originated_lsa): Enclose
2265 OSPF_AS_NSSA_LSA treatment with #ifdef HAVE_NSSA.
2266
22672000-11-03 Kunihiro Ishiguro <kunihiro@zebra.org>
2268
2269 * Unconditional logging is enclosed with if (IS_DEBUG_OSPF_EVENT).
2270 Please specify "debug ospf event" for enable logging.
2271
2272 * ospf_ism.c: Do not extern debug flag varible. It is done by
2273 ospf_debug.h
2274 * ospf_asbr.c: Likewise.
2275 * ospf_lsa.c: Likewise.
2276 * ospf_nsm.c: Likewise.
2277 * ospf_zebra.c: Likewise.
2278
2279 * ospf_dump.c (debug_ospf_event): New command "debug ospf event"
2280 is added.
2281
2282 * ospfd.c (router_ospf): Change logging from vty_out() to
2283 zlog_info().
2284 (ospf_area_stub_cmd): Likewise.
2285
2286 * ospf_dump.h: Extern term_debug flags.
2287 (OSPF_DEBUG_EVENT): Add new flag.
2288 (IS_DEBUG_OSPF_EVENT): Add new macro.
2289
22902000-11-03 Dick Glasspool <dick@ipinfusion.com>
2291
2292 * ospf_flood.c (ospf_process_self_originated_lsa):
2293 OSPF_AS_NSSA_LSA is treated as same as OSPF_AS_EXTERNAL_LSA.
2294 (ospf_flood): Type-5's have no change. Type-7's can be received,
2295 and will Flood the AS as Type-5's They will also flood the local
2296 NSSA Area as Type-7's. The LSDB will be updated as Type-5's, and
2297 during re-fresh will be converted back to Type-7's (if within an
2298 NSSA).
2299 (ospf_flood_through): Incoming Type-7's were allowed here if our
2300 neighbor was an NSSA. So Flood our area with the Type-7 and also
2301 if we are an ABR, flood thru AS as Type-5.
2302
2303 * ospf_lsa.c (ospf_external_lsa_refresh): Flood NSSA both NSSA
2304 area and other area.
2305
2306 * ospf_packet.c (ospf_db_desc_proc): When AS External LSA is
2307 exists in DD packet, make it sure that this area is not stub.
2308 (ospf_ls_upd_list_lsa): When LSA type is NSSA then set lsa's area
2309 to NULL.
2310 (ospf_ls_upd): If the LSA is AS External LSA and the area is stub
2311 then discard the lsa. If the LSA is NSSA LSA and the area is not
2312 NSSA then discard the lsa.
2313
23142000-11-03 Kunihiro Ishiguro <kunihiro@zebra.org>
2315
2316 * ospfd.c (ospf_interface_run): Fix bug of Hello packet's option
2317 is not properly set when interface comes up.
2318
23192000-11-02 Kunihiro Ishiguro <kunihiro@zebra.org>
2320
2321 * ospfd.h (OSPF_OPTION_O): Add new hello header option.
2322
23232000-11-01 Dick Glasspool <dick@ipinfusion.com>
2324
2325 * ospf_lsa.h: Define OSPF_MAX_LSA to 8 when HAVE_NSSA is enabled.
2326 (OSPF_GROUP_MEMBER_LSA): Define OSPF_GROUP_MEMBER_LSA.
2327
2328 * ospf_lsa.c (show_database_desc): Add "Group Membership LSA"
2329 string.
2330
23312000-10-31 Dick Glasspool <dick@ipinfusion.com>
2332
2333 * ospf_lsa.h (OSPF_AS_NSSA_LSA): Define OSPF_AS_NSSA_LSA.
2334
2335 * ospf_lsa.c (show_ip_ospf_database): NSSA database display
2336 function is added. ALIASES which have "show ip ospf database
2337 nssa-external" is added.
2338 (show_ip_ospf_border_routers): New command "show ip ospf
2339 border-routers" is added.
2340
23412000-10-30 Dick Glasspool <dick@ipinfusion.com>
2342
2343 * ospfd.c (router_ospf): NSSA Enabled message is added for
2344 testing.
2345 (ospf_area_type_set): Are type set for NSSA area.
2346 (ospf_area_stub_cmd): Special translation of no_summary into NSSA
2347 and summary information. If NSSA is enabled pass the information
2348 to ospf_area_type_set().
2349 (area_nssa): New commands are added:
2350 "area A.B.C.D nssa"
2351 "area <0-4294967295> nssa"
2352 "area A.B.C.D nssa no-summary"
2353 "area <0-4294967295> nssa no-summary"
2354 (ospf_no_area_stub_cmd): Special translation of no_summary into
2355 NSSA and summary information. If external_routing is
2356 OSPF_AREA_NSSA unset area with ospf_area_type_set (area,
2357 OSPF_AREA_DEFAULT).
2358 (show_ip_ospf_area): Display NSSA status.
2359 (config_write_ospf_area): Show NSSA configuration.
2360
2361 * ospf_packet.c (ospf_hello): For NSSA support, ensure that NP is
2362 on and E is off.
2363
23642000-10-26 Gleb Natapov <gleb@nbase.co.il>
2365
2366 * ospf_lsa.c (ospf_network_lsa_body_set): The network-LSA lists
2367 those routers that are fully adjacent to the Designated Router;
2368 each fully adjacent router is identified by its OSPF Router ID.
2369 The Designated Router includes itself in this list. RFC2328,
2370 Section 12.4.2.
2371
23722000-10-23 Jochen Friedrich <jochen@scram.de>
2373
2374 * ospf_snmp.c: ospf_oid and ospfd_oid are used in smux_open after
2375 it is registered. So those variables must be static.
2376
23772000-10-18 K N Sridhar <sridhar@euler.ece.iisc.ernet.in>
2378
2379 * ospfd.c: Add area_default_cost_decimal_cmd and
2380 no_area_default_cost_decimal_cmd alias.
2381
23822000-10-05 Gleb Natapov <gleb@nbase.co.il>
2383
2384 * ospfd.c (ospf_network_new): Fix setting area format.
2385 (no_router_ospf): Check area existance when calling
2386 ospf_interface_down().
2387
2388 * ospf_flood.c (ospf_external_info_check): Fix bug of refreshing
2389 default route.
2390
23912000-10-02 Kunihiro Ishiguro <kunihiro@zebra.org>
2392
2393 * zebra-0.89 is released.
2394
23952000-09-29 Kunihiro Ishiguro <kunihiro@zebra.org>
2396
2397 * ospf_snmp.c (ospfHostEntry): OSPF Host MIB is implemented.
2398
2399 * ospfd.c (ospf_nbr_static_cmp): OSPF neighbor is sorted by it's
2400 address.
2401
24022000-09-28 Michael Rozhavsky <mike@nbase.co.il>
2403
2404 * ospf_interface.c (ospf_if_free): Fix deleting self neighbor twice.
2405
24062000-09-27 Kunihiro Ishiguro <kunihiro@zebra.org>
2407
2408 * ospf_packet.c (ospf_read): Solaris on x86 has ip_len with host
2409 byte order.
2410
24112000-09-25 Toshiaki Takada <takada@zebra.org>
2412
2413 * ospfd.c (ospf_compatible_rfc1583), (no_ospf_compatible_rfc1583):
2414 Add CISCO compatible command.
2415
24162000-09-25 Kunihiro Ishiguro <kunihiro@zebra.org>
2417
2418 * ospf_abr.c (ospf_area_range_lookup): New function is added for
2419 area range lookup in OSPF-MIB.
2420 (ospf_area_range_lookup_next): Likewise.
2421
24222000-09-22 Kunihiro Ishiguro <kunihiro@zebra.org>
2423
2424 * ospfd.c (no_router_ospf): Delete virtual link before deleting
2425 area structure.
2426
2427 * ospf_lsa.c (ospf_external_lsa_refresh_type): Check
2428 EXTERNAL_INFO(type).
2429
2430 * ospfd.c (no_router_ospf): Call ospf_vl_delete() instead of
2431 ospf_vl_data_free().
2432
2433 * ospf_interface.c (ospf_vl_shutdown): Execute ISM_InterfaceDown
2434 when ospf_vl_shutdown is called.
2435 (ospf_vl_delete): Call ospf_vl_shutdown() to delete virtual link
2436 interface's thread.
2437
24382000-09-21 Gleb Natapov <gleb@nbase.co.il>
2439
2440 * ospf_lsa.c: New implementation of OSPF refresh.
2441
24422000-09-20 Kunihiro Ishiguro <kunihiro@zebra.org>
2443
2444 * ospf_snmp.c (ospfLsdbLookup): Add LSDB MIB implementation.
2445
24462000-09-18 Kunihiro Ishiguro <kunihiro@zebra.org>
2447
2448 * ospf_snmp.c (ospfStubAreaEntry): Add OSPF stub area MIB.
2449
24502000-09-18 Gleb Natapov <gleb@nbase.co.il>
2451
2452 * ospf_route.h (route_standard): Change member from `struct area'
2453 to area_id.
2454
2455 * ospf_abr.c (ospf_abr_announce_network), (ospf_abr_should_announce),
2456 (ospf_abr_process_network_rt), (ospf_abr_announce_rtr),
2457 (ospf_abr_process_router_rt):
2458 * ospf_ase.c (ospf_find_asbr_route),
2459 (ospf_find_asbr_router_through_area),
2460 * ospf_ia.c (ospf_find_abr_route), (ospf_ia_router_route),
2461 (process_summary_lsa), (ospf_update_network_route),
2462 (ospf_update_router_route):
2463 * ospf_route.c (ospf_intra_route_add), (ospf_intra_add_router),
2464 (ospf_intra_add_transit), (ospf_intra_add_stub),
2465 (ospf_route_table_dump), (show_ip_ospf_route_network),
2466 (show_ip_ospf_route_router), (ospf_asbr_route_cmp),
2467 (ospf_prune_unreachable_routers):
2468 * ospf_spf.c (ospf_rtrs_print):
2469 * ospfd.c (ospf_rtrs_free): Fix the struct change above.
2470
24712000-09-14 Kunihiro Ishiguro <kunihiro@zebra.org>
2472
2473 * ospf_network.c (ospf_serv_sock_init): Enclose SO_BINDTODEVICE
2474 with ifdef.
2475
24762000-09-13 Gleb Natapov <gleb@nbase.co.il>
2477
2478 * ospf_ism.c (ospf_elect_dr), (ospf_elect_bdr): Fix DR election.
2479
2480 * ospf_network.c (ospf_serv_sock_init): Add socket option
2481 SO_BINDTODEVICE on read socket.
2482
2483 * ospf_packet.c (ospf_hello): Ignore Hello packet if E-bit does
2484 not match.
2485
2486 * ospfd.c (ospf_area_check_free), (ospf_area_get),
2487 (ospf_area_add_if): New function added.
2488
24892000-09-13 Kunihiro Ishiguro <kunihiro@zebra.org>
2490
2491 * ospf_route.c (ospf_intra_add_router): Update ABR and ASBR router
2492 count.
2493
2494 * ospf_spf.c (ospf_spf_init): Rest ABR and ASBR router count
2495 starting SPF calculation.
2496
2497 * ospfd.h (struct ospf_area): Add ABR and ASBR router count.
2498
24992000-09-12 Kunihiro Ishiguro <kunihiro@zebra.org>
2500
2501 * ospfd.c (ospf_area_id_cmp): New area structure is sorted by area
2502 ID.
2503
2504 * ospf_lsa.c (ospf_router_lsa_originate): For OSPF MIB update
2505 lsa_originate_count.
2506 (ospf_network_lsa_originate): Likewise.
2507 (ospf_summary_lsa_originate): Likewise.
2508 (ospf_summary_asbr_lsa_originate): Likewise.
2509 (ospf_external_lsa_originate): Likewise.
2510
25112000-09-11 Kunihiro Ishiguro <kunihiro@zebra.org>
2512
2513 * ospf_snmp.c (ospf_variables): ospfRouterID's type RouterID
2514 syntax is IpAddress.
2515 (ospf_admin_stat): New function for OSPF administrative status
2516 check.
2517
25182000-09-10 Jochen Friedrich <jochen@scram.de>
2519
2520 * ospf_snmp.c: Implement OSPF MIB skeleton.
2521
25222000-09-08 Kunihiro Ishiguro <kunihiro@zebra.org>
2523
2524 * ospf_snmp.c: New file is added.
2525
25262000-09-07 David Lipovkov <davidl@nbase.co.il>
2527
2528 * ospf_zebra.c (ospf_interface_delete): Add pseudo interface
2529 treatment.
2530
2531 * ospf_interface.c (interface_config_write): Likewise.
2532
25332000-08-17 Kunihiro Ishiguro <kunihiro@zebra.org>
2534
2535 * zebra-0.88 is released.
2536
25372000-08-17 Michael Rozhavsky <mike@nbase.co.il>
2538
2539 * ospfd.c (ospf_area_free): Remove virtual link configuration only
2540 when Area is removed.
2541
25422000-08-17 Kunihiro Ishiguro <kunihiro@zebra.org>
2543
2544 * ospfd.c (network_area): Revert check for EXTERNAL_INFO
2545 (ZEBRA_ROUTE_CONNECT).
2546 (no_network_area): Likewise.
2547
25482000-08-16 Kunihiro Ishiguro <kunihiro@zebra.org>
2549
2550 * ospfd.h (struct ospf): Add distance_table and
2551 distance_{all,intra,inter,external}.
2552
2553 * ospf_zebra.c: Add OSPF distance related functions.
2554
25552000-08-15 Gleb Natapov <gleb@nbase.co.il>
2556
2557 * ospf_asbr.c (ospf_external_info_find_lsa): New function added.
2558
2559 * ospf_lsa.c (ospf_default_external_info),
2560 (ospf_default_originate_timer), (ospf_external_lsa_refresh_default):
2561 New function added.
2562
2563 * ospf_zebra.c
2564 (ospf_default_information_originate_metric_type_routemap),
2565 (ospf_default_information_originate_always_metric_type_routemap):
2566 Change name and add route-map function.
2567 (ospf_default_information_originate_metric_routemap),
2568 (ospf_default_information_originate_routemap),
2569 (ospf_default_information_originate_type_metric_routemap):
2570 New DEFUN added.
2571
25722000-08-14 Kunihiro Ishiguro <kunihiro@zebra.org>
2573
2574 * ospf_zebra.c (zebra_interface_if_set_value): Change ifindex
2575 restore size from two octet to four.
2576
25772000-08-14 Michael Rozhavsky <mike@nbase.co.il>
2578
2579 * ospf_ase.c (ospf_ase_incremental_update): Implement incremental
2580 AS-external-LSA in 16.6 of RFC2328.
2581
25822000-08-14 Matthew Grant <grantma@anathoth.gen.nz>
2583
2584 * ospf_interface.c (ospf_if_get_output_cost): Change cost
2585 calculation algorithm.
2586
2587 * ospf_packet (ospf_ls_upd): Fix problem of LSA retransmitting.
2588
25892000-08-11 Michael Rozhavsky <mike@nbase.co.il>
2590
2591 * ospf_lsa.c (ospf_maxage_lsa_remover): Fix maxage remover for
2592 AS-external-LSAs.
2593
25942000-08-10 Toshiaki Takada <takada@zebra.org>
2595
2596 * ospfd.c (auto_cost_reference_bandwidth): New DEFUN added.
2597 `auto-cost reference-bandwidth' OSPF router command added.
2598
25992000-08-08 Gleb Natapov <gleb@nbase.co.il>
2600
2601 * ospf_routemap.c (ospf_route_map_update): New function added.
2602 Add route-map event hook.
2603
26042000-08-08 Toshiaki Takada <takada@zebra.org>
2605
2606 * ospf_zebra.c (ospf_distribute_check_connected): If redistribute
2607 prefix is connected route on OSPF enabled interface, suppress to
2608 announce it.
2609
26102000-08-08 Matthew Grant <grantma@anathoth.gen.nz>
2611
2612 * ospf_interface.c (ospf_if_get_output_cost):
2613 New function added. Handle bandwidth parameter for cost
2614 calculation.
2615
26162000-08-08 Michael Rozhavsky <mike@nbase.co.il>
2617
2618 * ospf_interface.c (interface_config_write): Show interface
2619 configuration regardless interface is down.
2620
2621 * ospf_ase.c (ospf_ase_caocluate_route): Whole rewritten external
2622 route calculate function.
2623
26242000-08-08 Gleb Natapov <gleb@nbase.co.il>
2625
2626 * ospf_routemap.c: New file added.
2627
2628 * ospf_asbr.c (ospf_reset_route_map_set_values),
2629 (ospf_route_map_set_compare): New function added.
2630
2631 * ospf_lsa.c (ospf_external_lsa_body_set): Set routemap metric
2632 with AS-external-LSA.
2633
26342000-08-05 Kunihiro Ishiguro <kunihiro@zebra.org>
2635
2636 * ospf_ase.c (ospf_ase_calculate_route_add): Pass new->cost to
2637 ospf_zebra_add as metric.
2638 (ospf_ase_calculate_route_add): Likewise.
2639
2640 * ospf_route.c (ospf_route_install): Pass or->cost to
2641 ospf_zebra_add as metric.
2642
2643 * ospf_zebra.c (ospf_zebra_add): Add metric arguemnt.
2644 (ospf_zebra_delete): Likewise.
2645
26462000-08-03 Matthew Grant <grantma@anathoth.gen.nz>
2647
2648 * ospf_flood.c (ospf_flood_delayed_lsa_ack): New function added.
2649 Dispatch delayed-ACK with flooding AS-external-LSA across virtual
2650 link.
2651
26522000-07-31 Matthew Grant <grantma@anathoth.gen.nz>
2653
2654 * ospfd.c (show_ip_ospf_area): Fix lack of VTY_NEWLINE when
2655 `show ip ospf'.
2656
2657 * ospf_interface.c (ospf_if_free): Fix bug of crash with
2658 Point-to-Point interface.
2659
26602000-07-27 Michael Rozhavsky <mike@nbase.co.il>
2661
2662 * ospf_flood.c (ospf_process_self_originated_lsa):
2663 Make sure to clear LSA->param (redistributed external information)
2664 before refreshment.
2665
26662000-07-27 Gleb Natapov <gleb@nbase.co.il>
2667
2668 * ospfd.c (refresh_group_limit), (refresh_per_slice),
2669 (refresh_age_diff): New defun added. Refresher related parameter
2670 can be configurable.
2671
26722000-07-27 Akihiro Mizutani <mizutani@dml.com>
2673
2674 * ospf_interface.c (interface_config_write): Print `description'
2675 config directive to work.
2676
26772000-07-24 Akihiro Mizutani <mizutani@dml.com>
2678
2679 * ospf_interface.c (ospf_if_init): Use install_default for
2680 INTERFACE_NODE.
2681
26822000-07-24 Gleb Natapov <gleb@nbase.co.il>
2683
2684 * ospf_packet.c (ospf_ls_upd_send_list), (ospf_ls_upd_send_event),
2685 (ospf_ls_ack_send_list), (ospf_ls_ack_send_event): New function added.
2686 This make sending always as many LS update/Ack combined in one ospf
2687 packet.
2688
26892000-07-24 Gleb Natapov <gleb@nbase.co.il>
2690
2691 * ospf_packet.c (ospf_ls_upd_list_lsa): Set NULL to lsa->area if
2692 LSA is AS-external-LSA.
2693
2694 * ospf_nsm.c (nsm_reset_nbr): Do not cancel Inactivity timer.
2695
26962000-07-21 Toshiaki Takada <takada@zebra.org>
2697
2698 * ospf_zebra.c (ospf_default_originate_timer): Set timer for
2699 `default-information originate'. Fix some default originate
2700 related functions.
2701
27022000-07-12 Toshiaki Takada <takada@zebra.org>
2703
2704 * ospf_lsa.c (stream_put_ospf_metric): New function added.
2705
27062000-07-12 Toshiaki Takada <takada@zebra.org>
2707
2708 * ospf_lsa.c (show_ip_ospf_database_router),
2709 (show_ip_ospf_database_network), (show_ip_ospf_database_summary),
2710 (show_ip_ospf_database_summary_asbr), (show_ip_ospf_database_externel),
2711 (show_router_lsa), (show_any_lsa), (show_router_lsa_self),
2712 (show_any_lsa_self): Functions removed.
2713
2714 (show_lsa_prefix_set), (show_lsa_detail_proc), (show_lsa_detail),
2715 (show_lsa_detail_adv_router_proc), (show_lsa_detail_adv_router):
2716 New functions added. Replace above functions.
2717
2718 (show_ip_ospf_database_all), (show_ip_ospf_database_self_originated):
2719 Functions removed.
2720 (show_ip_ospf_database_summary): New functions added. Replace
2721 above functions.
2722
2723 (show_ip_ospf_database_cmd): DEFUN rearranged.
2724 (show_ip_ospf_database_type_id_cmd),
2725 (show_ip_ospf_database_type_id_adv_router_cmd),
2726 (show_ip_ospf_database_type_is_self_cmd): New ALIASes added.
2727 (show_ip_ospf_database_type_adv_rotuer_cmd): New DEFUN added.
2728 (show_ip_ospf_database_type_self_cmd): New ALIAS added.
2729
27302000-07-11 Toshiaki Takada <takada@zebra.org>
2731
2732 * ospf_asbr.c (ospf_external_info_new),
2733 (ospf_external_info_free): New functions added.
2734
2735 * ospf_lsa.h (ospf_lsa): Add new member `void *param' to set
2736 origination parameter for external-LSA.
2737 Remove member `redistribute'.
2738
2739 * ospf_zebra.c (ospf_redistirbute_set): When `redistribute'
2740 command executed, metric and metric-type values are overridden.
2741 If one of those is changed refresh AS-external-LSAs for appropriate
2742 type.
2743
27442000-07-11 Michael Rozhavsky <mike@nbase.co.il>
2745
2746 * ospf_lsa.c (ospf_summary_lsa_refresh),
2747 (ospf_summary_asbr_lsa_refresh): Make sure to refresh summary-LSAs.
2748
2749 * ospf_abr.c (set_metric): New function added.
2750
27512000-07-07 Toshiaki Takada <takada@zebra.org>
2752
2753 * ospf_zebra.c (ospf_default_information_originate_metric_type),
2754 (ospf_default_information_originate_type_metric): New defun added.
2755 Metic and Metric type can be set to default route.
2756 (ospf_default_information_originate_always_metric_type):
2757 (ospf_default_information_originate_always_type_metric):
2758 New defun added. Metric and Metric type can be set to default
2759 always route.
2760
2761 * ospf_zebra.c (ospf_default_metric), (no_ospf_default_metric):
2762 New defun added.
2763
27642000-07-06 Gleb Natapov <gleb@nbase.co.il>
2765
2766 * ospf_flood.c (ospf_flood_through_area): Fix bug of considering
2767 on the same interface the LSA was received from.
2768
27692000-07-06 Michael Rozhavsky <mike@nbase.co.il>
2770
2771 * ospfd.c (ospf_config_write): Fix bug of printing `area stub'
2772 command with `write mem'.
2773
2774 * ospfd.c (no_router_ospf): Remove installed routes from zebra.
2775
2776 * ospf_zebra.c (ospf_interface_delete): Fix function to handle
2777 zebra interface delete event.
2778
27792000-07-06 Toshiaki Takada <takada@zebra.org>
2780
2781 * ospf_zebra.c (ospf_default_information_originate),
2782 (ospf_default_information_originate_always): New DEFUN added.
2783
27842000-07-05 Michael Rozhavsky <mike@nbase.co.il>
2785
2786 * ospf_route.c (ospf_terminate): Make sure to remove external route
2787 when SIGINT received.
2788
27892000-07-03 Gleb Natapov <gleb@nbase.co.il>
2790
2791 * ospf_flood.c, ospf_ism.c, ospf_lsa,c, ospfd.c: Make sure to free
2792 many structure with `no router ospf'.
2793
27942000-06-30 Gleb Natapov <gleb@nbase.co.il>
2795
2796 * ospf_neighbor.c (ospf_nbr_new),
2797 ospf_nsm.c (nsm_timer_set): Start LS update timer only
2798 when neighbor enters Exchange state.
2799
28002000-06-29 Gleb Natapov <gleb@nbase.co.il>
2801
2802 * ospf_nsm.c (nsm_timer_set), (nsm_exchange_done),
2803 ospf_packet.c (ospf_db_desc_proc):
2804 Do not cancel DD retransmit timer when Master.
2805
28062000-06-29 Gleb Natapov <gleb@nbase.co.il>
2807
2808 * ospf_abr.c (ospf_abr_announce_network_to_area),
2809 (ospf_abr_announce_rtr_to_area)
2810 ospf_ase.c (ospf_ase_rtrs_register_lsa),
2811 ospf_flood.c (ospf_process_self_originated_lsa),
2812 (ospf_flood_through_area), (ospf_ls_request_delete),
2813 ospf_interface.c (ospf_if_free),
2814 ospf_ism.c (ism_change_status),
2815 ospf_lsa.c (ospf_router_lsa_update_timer),
2816 (ospf_router_lsa_install), (ospf_network_lsa_install),
2817 (ospf_lsa_maxage_delete), (ospf_lsa_action),
2818 (ospf_schedule_lsa_flood_area),
2819 ospf_nsm.c (nsm_change_status),
2820 ospf_packet.c (ospf_make_ls_req_func), (ospf_make_ls_ack):
2821 Use ospf_lsa_{lock,unlock} for all looking-up of LSA.
2822
2823 * ospf_flood.c (ospf_ls_request_free): Function deleted.
2824
2825 * ospf_lsa.c (ospf_discard_from_db): New function added.
2826
28272000-06-26 Toshiaki Takada <takada@zebra.org>
2828
2829 * ospfd.h (ospf): struct member `external_lsa' name changed to
2830 `lsdb'.
2831
28322000-06-26 Toshiaki Takada <takada@zebra.org>
2833
2834 * ospf_lsa.c (ospf_lsa_install), (ospf_router_lsa_install),
2835 (ospf_network_lsa_install), (ospf_summary_lsa_install),
2836 (ospf_summary_asbr_lsa_install), (ospf_external_lsa_install):
2837 Functions re-arranged.
2838
2839 * ospf_lsa.c (IS_LSA_MAXAGE), (IS_LSA_SELF): Macro added.
2840
28412000-06-20 Michael Rozhavsky <mike@nbase.co.il>
2842
2843 * ospf_packet.c (ospf_ls_req), (ospf_ls_upd), (ospf_ls_ack): Add
2844 verification of LS type.
2845
28462000-06-20 Gleb Natapov <gleb@nbase.co.il>
2847
2848 * ospf_ase.c (ospf_ase_calculate_timer): Add more sanity check
2849 whether rn->info is NULL.
2850
28512000-06-20 Toshiaki Takada <takada@zebra.org>
2852
2853 * ospfd.c (show_ip_ospf_interface_sub): Show Router-ID of both
2854 DR and Backup correctly with `show ip ospf interface' command.
2855
28562000-06-20 Toshiaki Takada <takada@zebra.org>
2857
2858 * ospf_lsa.c (ospf_lsa_lock), (ospf_lsa_unlock),
2859 (ospf_lsa_discard): These functions are used for avoiding
2860 unexpected reference to freed LSAs.
2861
28622000-06-13 Kunihiro Ishiguro <kunihiro@zebra.org>
2863
2864 * ospf_packet.c (ospf_ls_upd): Initialize lsa by NULL to avoid
2865 warning.
2866
28672000-06-12 Kunihiro Ishiguro <kunihiro@zebra.org>
2868
2869 * ospf_ase.h (ospf_ase_rtrs_register_lsa): Add prototype.
2870
28712000-06-12 Toshiaki Takada <takada@zebra.org>
2872
2873 * ospf_lsa.c (ospf_external_lsa_install): Make sure to register
2874 LSA to rtrs_external when replacing AS-external-LSAs in LSDB.
2875 Fix core dump.
2876
28772000-06-10 Toshiaki Takada <takada@zebra.org>
2878
2879 * ospf_lsdb.c (id_to_prefix), (ospf_lsdb_hash_key),
2880 (ospf_lsdb_hash_cmp), (ospf_lsdb_new), (ospf_lsdb_iterator),
2881 (lsdb_free), (ospf_lsdb_free), (ospf_lsdb_add), (ospf_lsdb_delete),
2882 (find_lsa), (ospf_lsdb_lookup), (find_by_id),
2883 (ospf_lsdb_lookup_by_id), (ospf_lsdb_lookup_by_header): Functinos
2884 removed for migration to new_lsdb.
2885
2886 * ospf_lsa.c (ospf_summary_lsa_install),
2887 (ospf_summary_asbr_lsa_install), (ospf_maxage_lsa_remover),
2888 (ospf_lsa_maxage_walker), (ospf_lsa_lookup),
2889 (ospf_lsa_lookup_by_id): Use new_lsdb instead of ospf_lsdb.
2890 (count_lsa), (ospf_lsa_count_table), (ospf_lsa_count),
2891 (ospf_get_free_id_for_prefix): Funcitions removed.
2892
28932000-06-09 Gleb Natapov <gleb@nbase.co.il>
2894
2895 * ospf_ism.c (ism_interface_down): Prevent some unneeded DR changes.
2896
2897 * ospf_packet.c (ospf_db_desc_proc): Fix memory leak.
2898 (ospf_hello): Always copy router-ID when hello is received.
2899
29002000-06-08 Gleb Natapov <gleb@nbase.co.il>
2901
2902 * ospf_lsa.h (struct ospf_lsa): Add member of pointer to struct
2903 ospf_area.
2904
29052000-06-08 Michael Rozhavsky <mike@nbase.co.il>
2906
2907 * ospf_ase.c (ospf_asbr_route_same): New function added.
2908 This function makes sure external route calculation more
2909 precisely.
2910
29112000-06-07 Michael Rozhavsky <mike@nbase.co.il>
2912
2913 * ospf_ism.c (ism_change_status): Use ospf_lsa_flush_area for
2914 network-LSA deletion instead of using ospf_lsdb_delete.
2915 Also cancel network-LSA origination timer.
2916
29172000-06-07 Levi Harper <lharper@kennedytech.com>
2918
2919 * ospf_interface.c (ospf_if_down): Close read fd when an interface
2920 goes down.
2921
29222000-06-05 Kunihiro Ishiguro <kunihiro@zebra.org>
2923
2924 * ospf_asbr.c (ospf_external_info_lookup): Add explicit brace for
2925 avoid ambiguous else.
2926
2927 * ospf_flood.c (ospf_external_info_check): Likewise.
2928
29292000-06-05 Toshiaki Takada <takada@zebra.org>
2930
2931 * ospf_nsm.c (nsm_adj_ok): Fix bug of DR election.
2932
29332000-06-04 Toshiaki Takada <takada@zebra.org>
2934
2935 * ospf_zebra.c (ospf_default_information_originate),
2936 (no_ospf_default_information_originate): New DEFUN added.
2937
29382000-06-03 Toshiaki Takada <takada@zebra.org>
2939
2940 * ospf_lsa.h, ospf_asbr.h (external_info): Struct moved from
2941 ospf_lsa.h to ospf_asbr.h.
2942
2943 * ospf_lsa.c, ospf_asbr.c (ospf_external_info_add),
2944 (ospf_external_info_delete): Function moved from ospf_lsa.c
2945 to ospf_asbr.c.
2946
29472000-06-03 Toshiaki Takada <takada@zebra.org>
2948
2949 * ospf_flood.c (ospf_external_info_check): New function added.
2950 (ospf_process_self_orignated_lsa): Make sure to flush
2951 self-originated AS-external-LSA, when router reboot and no longer
2952 originate those AS-external-LSA.
2953
29542000-06-02 Toshiaki Takada <takada@zebra.org>
2955
2956 * ospf_network.c (ospf_serv_sock): Remove SO_DONTROUTE
2957 socket option.
2958
2959 * ospf_packet.c (ospf_write): Set MSG_DONTROUTE flag for
2960 unicast destination packets.
2961
29622000-06-02 Toshiaki Takada <takada@zebra.org>
2963
2964 * ospf_lsdb.c (new_lsdb_delete): Delete entry from LSDB only when
2965 specified LSA matches.
2966
29672000-06-02 Gleb Natapov <gleb@nbase.co.il>
2968
2969 * ospf_network.c (ospf_serv_sock): Set SO_DONTROUTE
2970 socket option.
2971
29722000-06-01 Akihiro Mizutani <mizutani@dml.com>
2973
2974 * ospf_dump.c: Replace string `Debugging functions\n' with DEBUG_STR.
2975 Replace string `OSPF information\n' with OSPF_STR.
2976
29772000-06-01 Toshiaki Takada <takada@zebra.org>
2978
2979 * ospf_lsdb.[ch]: Use new_lsdb struct for network-LSA instead of
2980 ospf_lsdb.
2981
29822000-06-01 Toshiaki Takada <takada@zebra.org>
2983
2984 * ospf_dump.c (config_debug_ospf_packet), (config_debug_ospf_event),
2985 (config_debug_ospf_ism), (config_debug_ospf_nsm),
2986 (config_debug_ospf_lsa), (config_debug_ospf_zebra),
2987 (term_debug_ospf_packet), (term_debug_ospf_event),
2988 (term_debug_ospf_ism), (term_debug_ospf_nsm),
2989 (term_debug_ospf_lsa), (term_debug_ospf_zebra): Repalce debug_ospf_*
2990 variable to use for debug option flags.
2991
2992 (debug_ospf_packet), (debug_ospf_ism), (debug_ospf_nsm),
2993 (debug_ospf_lsa), (debug_ospf_zebra): Set {config,term}_debug_*
2994 flags when vty->node is CONFIG_NODE, otherwise set only term_debug_*
2995 flags.
2996
2997 * ospf_dump.h (CONF_DEBUG_PACKET_ON), (CONF_DEBUG_PACKET_OFF),
2998 (TERM_DEBUG_PACKET_ON), (TERM_DEBUG_PACKET_OFF),
2999 (CONF_DEBUG_ON), (CONF_DEBUG_OFF), (IS_CONF_DEBUG_OSPF_PACKET),
3000 (IS_CONF_DEBUG_OSPF): New Macro added.
3001
30022000-05-31 Toshiaki Takada <takada@zebra.org>
3003
3004 * ospfd.c (clear_ip_ospf_neighbor): New DEFUN added.
3005 Currently this command is used for only debugging.
3006
3007 * ospf_nsm.c (nsm_change_status): Make sure thread cancellation
3008 for network-LSA when DR has no full neighbors.
3009
3010 * ospf_nsm.c (ospf_db_summary_clear): New function added.
3011
30122000-05-30 Toshiaki Takada <takada@zebra.org>
3013
3014 * ospf_lsdb.c (new_lsdb_insert): LSAs are always freed by
3015 maxage_lsa_remover when LSA is replaced.
3016
30172000-05-25 Gleb Natapov <gleb@nbase.co.il>
3018
3019 * ospf_flood.c (ospf_ls_retransmit_delete_nbr_all): Add argument
3020 `struct ospf_area' to remove LSA from Link State retransmission list
3021 of neighbor from only one Area.
3022
30232000-05-24 Michael Rozhavsky <mike@nbase.co.il>
3024
3025 * ospf_lsdb.c (ospf_lsdb_add): Preserve flags field when
3026 overriting old LSA with new LSA.
3027
30282000-05-24 Gleb Natapov <gleb@nbase.co.il>
3029
3030 * ospf_lsa.c (ospf_router_lsa_body_set): Fix bug of router-LSA
3031 size calculation.
3032
30332000-05-22 Michael Rozhavsky <mike@nbase.co.il>
3034
3035 * ospf_route.c (ospf_intra_add_stub):
3036 * ospf_spf.h (struct vertex): Use u_int32_t for distance (cost)
3037 value instead of u_int16_t.
3038
30392000-05-22 Axel Gerlach <agerlach@datus.datus.com>
3040
3041 * ospf_ia.c (ospf_ia_network_route): Fix bug of Inter-area route
3042 equal cost path calculation.
3043
30442000-05-21 Toshiaki Takada <takada@zebra.org>
3045
3046 * ospf_ase.c (ospf_ase_calculate_route_delete): New function added.
3047 Make sure, when rotuer route is deleted, related external routes
3048 are also deleted.
3049
30502000-05-20 Toshiaki Takada <takada@zebra.org>
3051
3052 * ospfd.c (ospf_interface_down): Make sure interface flag is disable
3053 and set fd to -1.
3054
30552000-05-16 Toshiaki Takada <takada@zebra.org>
3056
3057 * ospf_asbr.c (ospf_asbr_should_announce), (ospf_asbr_route_remove):
3058 Functions removed.
3059
3060 * ospfd.h (EXTERNAL_INFO): Macro added.
3061 Substitute `ospf_top->external_info[type]' with it.
3062
30632000-05-16 Toshiaki Takada <takada@zebra.org>
3064
3065 * ospf_lsa.c (ospf_rtrs_external_remove): New function added.
3066
30672000-05-14 Gleb Natapov <gleb@nbase.co.il>
3068
3069 * ospf_flood.c (ospf_ls_retransmit_delete_nbr_all)
3070 * ospf_lsdb.c (new_lsdb_insert)
3071 * ospf_packet.c (ospf_ls_ack): Fix database synchonization problem.
3072
30732000-05-14 Gleb Natapov <gleb@nbase.co.il>
3074
3075 * ospf_lsa.h (tv_adjust), (tv_ceil), (tv_floor), (int2tv),
3076 (tv_add), (tv_sub), (tv_cmp): Prototype definition added.
3077
3078 * ospf_nsm.h (ospf_db_summary_delete_all): Prototype definition added.
3079
30802000-05-13 Toshiaki Takada <takada@zebra.org>
3081
3082 * ospf_lsa.[ch] (ospf_lsa): struct timestamp type is changed from
3083 time_t to struct timeval.
3084 (tv_adjust), (tv_ceil), (tv_floor), (int2tv), (tv_add),
3085 (tv_sub), (tv_cmp): timeval utillity functions added.
3086
30872000-05-12 Toshiaki Takada <takada@zebra.org>
3088
3089 * ospf_lsa.[ch] (ospf_schedule_update_router_lsas): Delete function.
3090 Change to use macro OSPF_LSA_UPDATE_TIMER instead of using
3091 this function.
3092 router-LSA refresh timer related stuff is re-organized.
3093
30942000-05-10 Gleb Natapov <gleb@nbase.co.il>
3095
3096 * ospf_interface.c (ospf_vl_set_params):
3097 * ospf_packet.c (ospf_check_network_mask):
3098 * ospf_spf.[ch] (ospf_spf_next):
3099 Remove field address from `struct vertex', and search for peer
3100 address of virtual link in function `ospf_vl_set_params' instead.
3101
31022000-05-10 Gleb Natapov <gleb@nbase.co.il>
3103
3104 * ospf_packet.c (ospf_ls_upd): Fix some memory leak related LSA.
3105
31062000-05-08 Thomas Molkenbur <tmo@datus.com>
3107
3108 * ospf_packet.c (ospf_packet_dup): Replace ospf_steram_copy()
3109 with ospf_stream_dup() to fix memory leak.
3110
31112000-05-08 Michael Rozhavsky <mike@nbase.co.il>
3112
3113 * ospf_flood.c (ospf_flood_through_area): Fix the problem of
3114 LSA update without DROther.
3115
31162000-05-04 Gleb Natapov <gleb@nbase.co.il>
3117
3118 * ospf_spf.c (ospf_vertex_free): Fix memory leak of SPF calculation.
3119
31202000-05-03 Toshiaki Takada <takada@zebra.org>
3121
3122 * ospf_neighbor.c (ospf_db_summary_add): Use new_lsdb struct
3123 instead linked-list.
3124 (ospf_db_summary_count), (ospf_db_summary_isempty):
3125 New function added.
3126
3127 * ospf_lsa.c (ospf_rotuer_lsa): Re-arrange and divide functions.
3128
31292000-05-02 Gleb Natapov <gleb@nbase.co.il>
3130
3131 * ospf_lsdb.c (new_lsdb_cleanup): Fix memory leak. When LSDB are
3132 not needed any more, then free them.
3133
31342000-05-02 Toshiaki Takada <takada@zebra.org>
3135
3136 * ospfd.c (timers_spf), (no_timers_spf): New defun added.
3137 SPF calculation timers related stuff is rearranged.
3138
3139 * ospf_spf.c (ospf_spf_calculate_timer_add): Function removed.
3140 SPF timer is scheduled by SPF calculation delay and holdtime
3141 configuration variable.
3142
3143 * ospf_lsa.c (ospf_external_lsa_nexthop_get): Set AS-external-LSA's
3144 forwarding address when nexthop learned by other protocols is
3145 in the OSPF domain.
3146
3147 * ospf_zebra.c (ospf_redistribute_source_metric_type),
3148 (ospf_redistribute_source_type_metric): Re-arrange DEFUNs and
3149 ALIASes.
3150
31512000-05-01 Toshiaki Takada <takada@zebra.org>
3152
3153 * ospf_flood.c (ospf_ls_retransmit_count),
3154 (ospf_ls_retransmit_isempty): New function added.
3155
3156 (ospf_ls_retransmit_add), (ospf_ls_retransmit_delete),
3157 (ospf_ls_retransmit_clear), (ospf_ls_retransmit_lookup),
3158 (ospf_ls_retransmit_delete_all), (ospf_ls_retransmit_delete_nbr_all),
3159 (ospf_ls_retransmit_add_nbr_all): Replace these functions to use
3160 new_lsdb.
3161
31622000-04-29 Toshiaki Takada <takada@zebra.org>
3163
3164 * ospfd.c (no_network_area): Add check Area-ID whether specified
3165 Area-ID with prefix matches config.
3166
31672000-04-27 Toshiaki Takada <takada@zebra.org>
3168
3169 * ospf_lsa.c (ospf_maxage_lsa_remover): Fix problem of
3170 remaining withdrawn routes on zebra.
3171
31722000-04-25 Michael Rozhavsky <mike@nbase.co.il>
3173
3174 * ospf_nsm.c (nsm_kill_nbr), (nsm_ll_down), (nsm_change_status),
3175 (ospf_nsm_event): Fix network-LSA re-origination problem.
3176
31772000-04-24 Toshiaki Takada <takada@zebra.org>
3178
3179 * ospf_nsm.c (ospf_db_desc_timer): Fix bug of segmentation fault
3180 with DD retransmission.
3181
3182 * ospf_nsm.c (nsm_kill_nbr): Fix bug of re-origination when
3183 a neighbor disappears.
3184
31852000-04-23 Michael Rozhavsky <mike@nbase.co.il>
3186
3187 * ospf_abr.c (ospf_abr_announce_network_to_area): Fix bug of
3188 summary-LSAs reorigination. Correctly copy OSPF_LSA_APPROVED
3189 flag to new LSA. when summary-LSA is reoriginatd.
3190
3191 * ospf_flood.c (ospf_flood_through_area): Fix bug of flooding
3192 procedure. Change the condition of interface selection.
3193
31942000-04-21 Toshiaki Takada <takada@zebra.org>
3195
3196 * ospf_lsa.c (ospf_refresher_register_lsa): Fix bug of refresh never
3197 occurs.
3198
3199 * ospfd.c (show_ip_ospf_neighbor_id): New defun added.
3200 `show ip ospf neighbor' related commands are re-arranged.
3201
32022000-04-20 Toshiaki Takada <takada@zebra.org>
3203
3204 * ospf_dump.c (debug_ospf_zebra): New defun added.
3205 Suppress zebra related debug information.
3206
32072000-04-19 Toshiaki Takada <takada@zebra.org>
3208
3209 * ospf_zebra.c (ospf_distribute_list_update_timer),
3210 (ospf_distribute_list_update), (ospf_filter_update):
3211 New function added. Re-organize `distribute-list' router ospf
3212 command.
3213
32142000-04-13 Michael Rozhavsky <mike@nbase.co.il>
3215
3216 * ospf_packet.c (ospf_make_ls_upd): Add check for MAX_AGE.
3217
32182000-04-14 Michael Rozhavsky <mike@nbase.co.il>
3219
3220 * ospf_packet.c (ospf_make_ls_upd): Increment LS age by configured
3221 interface transmit_delay.
3222
32232000-04-14 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
3224
3225 * ospf_interface.c (ip_ospf_cost), (no_ip_ospf_cost):
3226 Add to schedule router_lsa origination when the interface cost changes.
3227
32282000-04-12 Toshiaki Takada <takada@zebra.org>
3229
3230 * ospf_lsa.c (ospf_refresher_register_lsa),
3231 (ospf_refresher_unregister_lsa): Fix bug of core dumped.
3232
3233 * ospfd.c (no_router_ospf): Fix bug of core dumped.
3234
32352000-03-29 Toshiaki Takada <takada@zebra.org>
3236
3237 * ospf_nsm.c (nsm_oneway_received): Fix bug of MS flag unset.
3238
32392000-03-29 Michael Rozhavsky <mike@nbase.co.il>
3240
3241 * ospf_lsa.c (ospf_network_lsa):
3242 * ospf_nsm.c (ospf_nsm_event): Fix bug of Network-LSA originated
3243 in stub network.
3244
32452000-03-28 Toshiaki Takada <takada@zebra.org>
3246
3247 * ospf_nsm.c (nsm_bad_ls_req), (nsm_seq_number_mismatch),
3248 (nsm_oneway_received): Fix bug of NSM state flapping between
3249 ExStart and Exchange.
3250
32512000-03-28 Toshiaki Takada <takada@zebra.org>
3252
3253 * ospf_packet.h (strcut ospf_header): Fix the size of ospf_header,
3254 change u_int8_t to u_char.
3255
32562000-03-27 Toshiaki Takada <takada@zebra.org>
3257
3258 * ospf_lsa.c (ospf_lsa_checksum): Take care of BIGENDIAN architecture.
3259
32602000-03-27 Toshiaki Takada <takada@zebra.org>
3261
3262 * ospfd.c (ospf_interface_run): Make sure Address family matches.
3263
32642000-03-26 Love <lha@s3.kth.se>
3265
3266 * ospf_packet.c (ospf_write): Chack result of sendto().
3267
32682000-03-26 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
3269
3270 * ospf_nsm.c (nsm_oneway_received): Fix bug of 1-WayReceived in NSM.
3271
32722000-03-23 Libor Pechacek <farco@clnet.cz>
3273
3274 * ospf_lsa.c (ospf_network_lsa)
3275 * ospf_lsdb.c (new_lsdb_insert): Fix bug of accessing to
3276 unallocated memory.
3277
32782000-03-23 Toshiaki Takada <takada@zebra.org>
3279
3280 * ospfd.c (ospf_config_write): Fix bug of duplicate line for
3281 `area A.B.C.D authentication'.
3282
32832000-03-22 Toshiaki Takada <takada@zebra.org>
3284
3285 * ospf_debug.c (debug_ospf_lsa), (no_debug_ospf_lsa): Defun added.
3286 Suppress all zlog related to LSAs with this config option.
3287
32882000-03-21 Kunihiro Ishiguro <kunihiro@zebra.org>
3289
3290 * ospf_nsm.c (ospf_nsm_event): Add check for NSM_InactivityTimer.
3291
32922000-03-21 Toshiaki Takada <takada@zebra.org>
3293
3294 * ospf_packet.c (ospf_ls_upd_timer), (ospf_ls_req):
3295 Fix bug of memory leak about linklist.
3296
3297 * ospf_flood.c (ospf_flood_through_area): Likewise.
3298
32992000-03-18 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
3300
3301 * ospf_flood.c (ospf_ls_retransmit_lookup): Add checksum comparison
3302 to identify LSA uniquely. This fix routes lost.
3303
33042000-03-18 Toshiaki Takada <takada@zebra.org>
3305
3306 * ospf_ase.c (ospf_find_asbr_route): Add sanity check with router
3307 routing table.
3308
33092000-03-17 Alex Zinin <zinin@amt.ru>
3310
3311 * ospf_spf.[ch]: Bug fix.
3312 The 2nd stage of Dijkstra could consider one vertex
3313 more than once if there is more than one link
3314 between the routers, thus adding extra CPU overhead
3315 and extra next-hops.
3316 Fixed.
3317
33182000-03-15 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
3319
3320 * ospf_nsm.c (nsm_inactivity_timer): Changed to call nsm_kill_nbr().
3321
33222000-03-14 Toshiaki Takada <takada@zebra.org>
3323
3324 * ospf_route.c (ospf_route_copy_nexthops): Fix bug of memory leak of
3325 ospf_path. Actually ignore merging ospf_route with completely same
3326 paths.
3327
33282000-03-12 Toshiaki Takada <takada@zebra.org>
3329
3330 * ospf_lsa.c (show_as_external_lsa_detail): fix bug of
3331 external route tag byte order.
3332
33332000-03-11 Toshiaki Takada <takada@zebra.org>
3334
3335 * ospf_lsdb.c (ospf_lsdb_insert): New function added.
3336
33372000-03-09 Toshiaki Takada <takada@zebra.org>
3338
3339 * ospf_lsa.c (ospf_external_lsa_install),
3340 (ospf_lsa_lookup), (show_ip_ospf_database_all),
3341 (show_ip_ospf_database_self_originate): Use struct new_lsdb for
3342 LSDB of AS-external-LSAs instead of ospf_lsdb.
3343
3344 * ospf_lsa.c (ospf_lsa_unique_id): New function added.
3345 Use for assigning Unique Link State ID instead of
3346 ospf_get_free_id_for_prefix().
3347
33482000-03-09 Toshiaki Takada <takada@zebra.org>
3349
3350 * ospf_ase.c (ospf_ase_calculate_timer): Fix bug of segmentation
3351 fault reported by George Bonser <george@siteROCK.com>.
3352
33532000-03-07 Libor Pechacek <farco@clnet.cz>
3354
3355 * ospfd.c (ospf_interface_down): Fix bug of segmentation fault.
3356
33572000-03-06 Toshiaki Takada <takada@zebra.org>
3358
3359 * ospf_route.c (ospf_route_cmp): Change meaning of return values.
3360
33612000-03-02 Alex Zinin <zinin@amt.ru>
3362 * ospfd.h, ospf_ia.h
3363 New Shortcut ABR code. Now area's flag can be configured
3364 with Default, Enable, and Disable values.
3365 More info will be in the new ver of I-D soon (see IETF web).
3366
33672000-02-25 Toshiaki Takada <takada@zebra.org>
3368
3369 * ospf_lsa.c (ospf_lsa_header_set), (ospf_external_lsa_body_set),
3370 (osfp_external_lsa_originate), (ospf_external_lsa_queue),
3371 (ospf_external_lsa_originate_from_queue): New function added.
3372 (ospf_external_lsa): Function removed.
3373
3374 * ospf_zebra.c (ospf_zebra_read_ipv4): Originate AS-external-LSA
3375 when listen a route from Zebra, instead creating external route.
3376
3377 * ospf_asbr.c (ospf_asbr_route_add_flood_lsa),
3378 (ospf_asbr_route_add_queue_lsa),
3379 (ospf_asbr_route_install_lsa), (ospf_asbr_route_add):
3380 Functions removed.
3381
3382 * ospf_ase.c (process_ase_lsa): Function will not be used.
3383 (ospf_ase_calculate), (ospf_ase_calculate_route_add),
3384 (ospf_ase_calculate_new_route), (ospf_ase_caluculate_asbr_route):
3385 process_ase_lsa () is separated to these functions.
3386
3387 OSPF AS-external-LSA origination is whole re-organized.
3388
33892000-02-18 Toshiaki Takada <takada@zebra.org>
3390
3391 * ospf_packet.c (ospf_ls_upd): Fix bug of OSPF LSA memory leak.
3392
3393 * ospf_asbr.c (ospf_asbr_route_add_flood_lsa),
3394 (ospf_asbr_route_add_queue_lsa): Fix bug of OSPF external route
3395 memory leak.
3396
33972000-02-12 Kunihiro Ishiguro <kunihiro@zebra.org>
3398
3399 * ospf_asbr.c (ospf_asbr_route_install_lsa): Re-calculate LSA
3400 checksum after change Advertised Router field.
3401
34022000-02-09 Toshiaki Takada <takada@zebra.org>
3403
3404 * ospf_asbr.c (ospf_external_route_lookup): Add new function.
3405
34062000-02-08 Toshiaki Takada <takada@zebra.org>
3407
3408 * ospfd.c (ospf_router_id_get), (ospf_router_id_update),
3409 (ospf_router_id_update_timer): Router ID decision algorithm is changed.
3410 Router ID is chosen from all of eligible interface addresses even if
3411 it is not enable to OSPF.
3412
34132000-02-08 Toshiaki Takada <takada@zebra.org>
3414
3415 * ospf_asbr.c (ospf_asbr_route_add): Function divided to
3416 ospf_asbr_route_add_flood_lsa, ospf_asbr_route_add_queue_lsa and
3417 ospf_asbr_route_install_lsa. If Router-ID is not set, then LSA is
3418 waited to install to LSDB.
3419 `0.0.0.0 adv_router' AS-external-LSA origination bug was fixed.
3420
34212000-02-01 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
3422
3423 * ospf_flood.c (ospf_ls_retransmit_lookup): Compare LS seqnum
3424 in the ACK before deleting.
3425
3426 * ospf_packet.c (ospf_hello): Reset the flags after a shutdown
3427 and no shutdown of the interface.
3428
34292000-01-31 Toshiaki Takada <takada@zebra.org>
3430
3431 * ospf_packet.c (ospf_ls_req): Send multiple Link State Update
3432 packets respond to a Link State Request packet.
3433
3434 * ospfd.c (show_ip_ospf_neighbor_detail_sub): Show thread state.
3435
3436 * ospf_interface.c (ospf_vl_new): Crash when backbone area
3437 is not configured and set virtual-link to no-backbone area,
3438 bug fixed.
3439
34402000-01-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3441
3442 * ospf_neighbor.h (struct ospf_neighbor): Add pointer to last send
3443 LS Request LSA.
3444
3445 * ospf_packet.c (ospf_ls_upd): Comment out LS request list
3446 treatment. That should be done in OSPF flooding procedure.
3447
3448 * ospf_flood.c (ospf_flood_through_area): Enclose
3449 ospf_check_nbr_loding inside if-else close.
3450
34512000-01-31 Toshiaki Takada <takada@zebra.org>
3452
3453 * ospf_packet.c (ospf_make_ls_upd): Fix bug of #LSAs counting.
3454
34552000-01-29 Toshiaki Takada <takada@zebra.org>
3456
3457 * ospf_packet.c (ospf_make_md5_digest): Fix bug of md5 authentication.
3458
34592000-01-28 Toshiaki Takada <takada@zebra.org>
3460
3461 * ospfd.c (show_ip_ospf): Show Number of ASE-LSAs.
3462
34632000-01-27 Kunihiro Ishiguro <kunihiro@zebra.org>
3464
3465 * ospf_packet.c (ospf_make_db_desc): Don't use rm_list for
3466 removing LSA from nbr->db_summary.
3467
34682000-01-27 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
3469
3470 * ospf_packet.c (ospf_ls_upd_send): Set AllSPFRouters to
3471 destination when the link is point-to-point.
3472 (ospf_ls_ack_send_delayed): Likewise.
3473
34742000-01-27 Kunihiro Ishiguro <kunihiro@zebra.org>
3475
3476 * ospf_flood.c (ospf_ls_request_delete_all): Fix bug of next
3477 pointer lookup after the node is freed.
3478
34792000-01-26 Kunihiro Ishiguro <kunihiro@zebra.org>
3480
3481 * ospf_asbr.c (ospf_asbr_route_add): Instead of scanning all AS
3482 external route, use ospf_top->external_self.
3483
34842000-01-27 Toshiaki Takada <takada@zebra.org>
3485
3486 * ospf_lsa.c (ospf_forward_address_get): New function added.
3487
3488 * ospf_asbr.c (ospf_asbr_check_lsas): Originate AS-external-LSA
3489 only when it should be replaced.
3490
34912000-01-25 Kunihiro Ishiguro <kunihiro@zebra.org>
3492
3493 * ospf_flood.c (ospf_ls_retransmit_clear): Delete list node.
3494
3495 * ospf_lsa.c (ospf_lsa_free): Reduce logging message using
3496 ospf_zlog value.
3497
3498 * ospf_ism.c (ism_change_status): Fix bug of DR -> non DR status
3499 change. Self originated LSA is freed but not deleted from lsdb.
3500
35012000-01-24 Kunihiro Ishiguro <kunihiro@zebra.org>
3502
3503 * ospf_ism.c (ism_interface_down): Don't use router_id for
3504 detecting self neighbor structure. Instead of that compare
3505 pointer itself.
3506
3507 * ospf_neighbor.c (ospf_nbr_free): Cancel all timer when neighbor
3508 is deleted.
3509 (ospf_nbr_free): Free last send packet.
3510
3511 * ospf_neighbor.h (struct ospf_neighbor): Remove host strucutre.
3512 Instead of that src is introduced.
3513
3514 * ospf_nsm.h: Enclose macro defenition with do {} while (0).
3515
35162000-01-17 Kunihiro Ishiguro <kunihiro@zebra.org>
3517
3518 * ospfd.c: Change part of passive interface implementation. For
3519 passive interface just disabling sending/receiving Hello on the
3520 interface.
3521
35222000-01-16 Kai Bankett <kai.bankett@vew-telnet.net>
3523
3524 * ospf_interface.h (OSPF_IF_PASSIVE): Add passive flag.
3525 * ospf_interface.c (ospf_if_lookup_by_name): Add new function.
3526 * ospf_lsa.c (ospf_router_lsa): Skip passive interface.
3527 * ospfd.c (passive_interface): New command passive-interface is
3528 added.
3529 (ospf_config_write): Print passive interface.
3530
35312000-01-15 Toshiaki Takada <takada@zebra.org>
3532
3533 * ospf_interface.h (crypt_key): New struct added to store
3534 multiple cryptographic autheitication keys.
3535 (ospf_interface): struct changed.
3536
3537 * ospf_interface.c: ospf_crypt_key_new, ospf_crypt_key_add,
3538 ospf_crypt_key_lookup, ospf_crypt_key_delete: new functions added.
3539
3540 * ospf_packet.c (ip_ospf_message_digest_key): Changed to store
3541 multiple cryptographic authentication keys.
3542
35432000-01-14 Toshiaki Takada <takada@zebra.org>
3544
3545 * ospf_interface.c: DEFUN (if_ospf_*) commands changed name to
3546 ip_ospf_* ().
3547 Old notation `ospf *' still remains backward compatibility.
3548
35491999-12-29 Alex Zinin <zinin@amt.ru>
3550 * ospf_lsa.c: ospf_lsa_more_recent() bug fix
3551 * ospf_nsm.c, ospf_packet.c: remove nbr data struct when
3552 int goes down, also check DD flags correctly (bug fix)
3553
35541999-12-28 Alex Zinin <zinin@amt.ru>
3555 * "redistribute <source> metric-type (1|2) metric <XXX>" added
3556
35571999-12-23 Alex Zinin <zinin@amt.ru>
3558 * added RFC1583Compatibility flag
3559 * added dynamic interface up/down functionality
3560
35611999-11-19 Toshiaki Takada <takada@zebra.org>
3562
3563 * ospf_neighbor.h (struct ospf_neighbor): Add member state_change
3564 for NSM state change statistics.
3565
35661999-11-19 Toshiaki Takada <takada@zebra.org>
3567
3568 * ospfd.c (show_ip_ospf_neighbor_detail),
3569 (show_ip_ospf_neighbor_int_detail): DEFUN Added.
3570
35711999-11-14 Kunihiro Ishiguro <kunihiro@zebra.org>
3572
3573 * ospf_asbr.c (ospf_asbr_check_lsas): Add check of
3574 lsa->refresh_list.
3575
35761999-11-11 Toshiaki Takada <takada@zebra.org>
3577
3578 * ospf_ia.[ch] (OSPF_EXAMINE_SUMMARIES_ALL): Macro added.
3579 This macro is expanded to ospf_examine_summaries ()
3580 for SUMMARY_LSA and SUMMARY_LSA_ASBR.
3581 (OSPF_EXAMINE_TRANSIT_SUMMARIES_ALL): Macro added.
3582 This macro is expanded to ospf_examine_transit_summaries ()
3583 for SUMMARY_LSA and SUMMARY_LSA_ASBR.
3584
35851999-11-11 Toshiaki Takada <takada@zebra.org>
3586
3587 * ospf_lsa.[ch] (ospf_find_self_summary_lsa_by_prefix): Changed to
3588 macro OSPF_SUMMARY_LSA_SELF_FIND_BY_PREFIX.
3589 (ospf_find_self_summary_asbr_lsa_by_prefix): Changed to
3590 macro OSPF_SUMMARY_ASBR_LSA_SELF_FIND_BY_PREFIX.
3591 (ospf_find_self_external_lsa_by_prefix): Changed to
3592 macro OSPF_EXTERNAL_LSA_SELF_FIND_BY_PREFIX.
3593
35941999-11-11 Toshiaki Takada <takada@zebra.org>
3595
3596 * ospfd.c (ospf_abr_type): ospf_abr_type_cisco, ospf_abr_type_ibm,
3597 ospf_abr_type_shortcut and ospf_abr_type_standard DEFUNs are
3598 combined.
3599 * ospfd.c (no_ospf_abr_type): no_ospf_abr_type_cisco,
3600 no_ospf_abr_type_ibm and no_ospf_abr_type_shortcut DEFUNS are
3601 combined.
3602
36031999-11-10 Toshiaki Takada <takada@zebra.org>
3604
3605 * ospf_route.c (ospf_lookup_int_by_prefix): Move function to
3606 ospf_interface.c and change name to ospf_if_lookup_by_prefix ().
3607
36081999-11-01 Alex Zinin <zinin@amt.ru>
3609 * ospf_packet.c
3610 some correction to LSU processing
3611
3612 * ospf_lsa.c ospfd.h
3613 randomize initial LSA refreshment interval
3614 and limit the size of LSA-group to 10
3615 to let randomization work more effectively.
3616
36171999-10-31 Alex Zinin <zinin@amt.ru>
3618 * ospf_interface.c
3619 cancel t_network_lsa_self
3620 when freeing int structure
3621
3622 * ospf_abr.c ospf_asbr.c ospf_flood.c ospf_lsa.c
3623 ospf_lsa.h ospf_lsdb.h ospfd.c ospfd.h
3624
3625 Summary and ASE LSA refreshment functions
3626 added---LSA refreshment is paced to 70 LSAs
3627 per sec to avoid link overflow. Refreshment events
3628 are further randomized within a 10 sec interval
3629 to avoid syncing.
3630
3631 Also the sigfault of memcmp() in ospf_lsa_is_different()
3632 is fixed.
3633
36341999-10-30 Alex Zinin <zinin@amt.ru>
3635 * ospf_nsm.c
3636 Fix the bug where MAX_AGE LSAs
3637 are included into the DB summary.
3638
3639 * ospf_interface.c
3640 allocate 2*MTU input buffer instead of just MTU
3641 for the cases when the other router mistakenly
3642 sends larger packets thus causing fragmentation, etc.
3643
3644 * ospf_nsm.c
3645 in nsm_reset_nbr() lists should be freed
3646 not when they are empty.
3647
36481999-10-29 Kunihiro Ishiguro <kunihiro@zebra.org>
3649
3650 * ospf_zebra.c (ospf_acl_hook): Move OSPF_IS_ASBR and OSPF_IS_ABR
3651 check inside of if (ospf_top).
3652
36531999-10-29 Alex Zinin <zinin@amt.ru>
3654 * ospf_lsa.c ospf_lsdb.c :
3655 add assertion in lsa and lsa->data alloc functions,
3656 as well as in lsdb_add for new->data
3657
3658 * ospf_lsdb.c: free hash table correctly
3659
36601999-10-28 John Capo <jc@irbs.com>
3661
3662 * ospf_packet.h (OSPF_PACKET_MAX): Correct MAX packet length
3663 calculation
3664
36651999-10-27 Kunihiro Ishiguro <kunihiro@zebra.org>
3666
3667 * OSPF-TRAP-MIB.txt: New file added. Edited version of RFC1850.
3668
3669 * OSPF-MIB.txt: New file added. Edited version of RFC1850.
3670
36711999-10-27 Alex Zinin <zinin@amt.ru>
3672 * ospfd, ospf_zebra, ospf_abr
3673 "area import-list" command is added.
3674 This command allows to filter the inter-area routes
3675 injected into an area. Access list hook function
3676 extended to invalidate area exp/imp lists.
3677
36781999-10-25 Yoshinobu Inoue <shin@nd.net.fujitsu.co.jp>
3679
3680 * ospfd.c (ospf_interface_run): Enable to detect P2P network
3681 on an OSPF interface.
3682
36831999-10-19 Jordan Mendelson <jordy@wserv.com>
3684
3685 * ospf_lsdb.c (ospf_lsdb_add): Fix bug of crash
3686 in ospf_ls_retransmit_lookup ().
3687
36881999-10-19 Vladimir B. Grebenschikov <vova@express.ru>
3689
3690 * ospf_route.c: Workaround about installation of OSPF routes into
3691 the zebra daemon. Add checking of existance routes. Free
3692 ospf_top->old_table if it exists.
3693
36941999-10-15 Jordan Mendelson <jordy@wserv.com>
3695
3696 * Add support for MD5 authentication.
3697
36981999-10-12 Alex Zinin <zinin@amt.ru>
3699 * ospfd.c, ospfd.h, ospf_abr.c:
3700 a new command "area export-list" was added, it allows
3701 the admin. to control which intra-area routes are
3702 announced to other areas by the ABR
3703
37041999-10-12 Alex Zinin <zinin@amt.ru>
3705 * ospf_asbr.c (ospf_asbr_check_lsas): Fix bug of coredump
3706 when "no redistribute" is used after a distribute list
3707 denying some networks was used
3708
37091999-10-05 Toshiaki Takada <takada@zebra.org>
3710
3711 * ospf_route.c (ospf_path_dup): New function added.
3712
37131999-10-05 Toshiaki Takada <takada@zebra.org>
3714
3715 * ospf_interface.[ch]: Some of VL related funciton name changed.
3716
37171999-09-27 Alex Zinin <zinin@amt.ru>
3718
3719 * ospf_zebra.c: Distribute-list functionality added
3720
37211999-09-27 Toshiaki Takada <takada@zebra.org>
3722
3723 * ospfd.c (show_ip_ospf): Fix bug of segmentation fault when no ospf
3724 instance exists.
3725
37261999-09-25 Kunihiro Ishiguro <kunihiro@zebra.org>
3727
3728 * ospfd.c (ospf_interface_down): Fix bug of misusing nextnode()
3729 instead of node->next. Reported by Hiroki Ishibashi
3730 <ishibasi@dcd.abk.nec.co.jp>.
3731
3732 * ospf_route.c (show_ip_ospf_route): Add check for ospf is enabled
3733 or not.
3734
37351999-09-23 Alex Zinin <zinin@amt.ru>
3736
3737 * stub area support added
3738
37391999-09-23 Alex Zinin <zinin@amt.ru>
3740
3741 * fwd_addr in ASE-LSAs is now set correctly
3742 * ASE routing changed to check the fwd_addr
3743 and skip the route if the addr points to one
3744 of our interfaces to avoid loops.
3745
37461999-09-22 Alex Zinin <zinin@amt.ru>
3747
3748 * ospf_interface:
3749 ospf_vls_in_area() added, it returns
3750 the number of VLs configured through the area
3751
3752 * ospf_interface.c ospf_lsa.c ospf_lsdb.c ospfd.c
3753 honor correct mem alloc
3754
37551999-09-22 Alex Zinin <zinin@amt.ru>
3756
3757 * memory.[ch]:
3758 Some OSPF mem types added,
3759 plus more info in "show mem"
3760
37611999-09-21 Alex Zinin <zinin@amt.ru>
3762
3763 * ospfd.c:
3764 "area range substitute" added.
3765 It can be used on NAT-enabled (IP-masquarade)
3766 routers to announce private networks
3767 from an area as public ones into the outside
3768 world (not in the RFC, btw :)
3769
37701999-09-21 Alex Zinin <zinin@amt.ru>
3771
3772 * ospfd.c:
3773 "area range suppress" added.
3774 This command allows to instruct the router
3775 to be silent about specific ranges, i.e.,
3776 it is a method of route filtering on area
3777 borders
3778
37791999-09-21 Alex Zinin <zinin@amt.ru>
3780
3781 * ospfd.c VLs removed when "no network area" executed
3782
37831999-09-20 Alex Zinin <zinin@amt.ru>
3784
3785 * ospf_ase.c bug fix for not-zero fwd_addr
3786 and directly connected routes.
3787
37881999-09-20 Yon Uriarte <yon@plannet.de>
3789
3790 * ospf_packet.c (ospf_make_ls_req): Introduce delta value for
3791 checking the length of OSPF packet exceeds MTU or not.
3792
3793 * ospf_lsa.c (ospf_lsa_different): Apply ntohs for checking
3794 l1->data->length.
3795
37961999-09-18 Alex Zinin <zinin@amt.ru>
3797
3798 * ospf_lsa.c bug fix for ospf_network_lsa() to
3799 include itself into the RID list
3800
38011999-09-10 Alex Zinin <zinin@amt.ru>
3802
3803 * Alternative ABR behaviors IBM/Cisco/Shortcut
3804 implemented
3805
38061999-09-10 Alex Zinin <zinin@amt.ru>
3807
3808 * router and network-LSA origination
3809 changed to honor MinLSInterval
3810
38111999-09-08 Alex Zinin <zinin@amt.ru>
3812
3813 * modified ABR behavior to honor VLs and transit
3814 areas
3815
38161999-09-07 Alex Zinin <zinin@amt.ru>
3817
3818 * completed VL functionality
3819
38201999-09-06 Kunihiro Ishiguro <kunihiro@zebra.org>
3821
3822 * ospf_asbr.c: New file.
3823 ospf_asbr.h: New file.
3824
3825 * ospf_zebra.c (ospf_redistribute_connected): Add redistribute
3826 related stuff.
3827
38281999-09-05 Kunihiro Ishiguro <kunihiro@zebra.org>
3829
3830 * ospfd.h (OSPF_FLAG_VIRTUAL_LINK): Change OSPF_FLAG_VEND to
3831 OSPF_FLAG_VIRTUAL_LINK for comprehensiveness.
3832
38331999-09-03 Kunihiro Ishiguro <kunihiro@zebra.org>
3834
3835 * ospf_spf.c (ospf_spf_register): Change name from
3836 ospf_spf_route_add() to ospf_spf_register().
3837 Include "ospfd/ospf_abr.h" for ospf_abr_task() prototype.
3838
38391999-09-02 Kunihiro Ishiguro <kunihiro@zebra.org>
3840
3841 * ospf_lsa.c (ospf_external_lsa_install): Change to update
3842 lsa->data rather than install new one, when same id lsa is already
3843 installed.
3844
38451999-09-01 Kunihiro Ishiguro <kunihiro@zebra.org>
3846
3847 * ospf_lsa.c (ospf_router_lsa_install): Return lsa value.
3848 (ospf_network_lsa_install): Likewise.
3849 (ospf_summary_lsa_install): Likewise.
3850 (ospf_summary_asbr_lsa_install): Likewise.
3851 (ospf_external_lsa_install): Likewise.
3852
3853 * ospf_spf.c (ospf_spf_calculate): Comment out debug function
3854 ospf_rtrs_print().
3855
38561999-08-31 Kunihiro Ishiguro <kunihiro@zebra.org>
3857
3858 * ospf_spf.c (ospf_rtrs_free): Add ospf_spf_calculate() for
3859 freeing rtrs.
3860
38611999-08-31 Toshiaki Takada <takada@zebra.org>
3862
3863 * ospf_lsa.c (show_ip_ospf_database_summary),
3864 (show_ip_ospf_database_summary_asbr),
3865 (show_ip_ospf_database_external): New function added.
3866 `show ip ospf database summary',
3867 `show ip ospf database asbr-summary'
3868 `show ip ospf database external' command can be used.
3869
3870 * ospf_lsa.c (ospf_lsa_count_table): New function added.
3871 (show_ip_ospf_database_all): show nothing if a type of LSA
3872 does not exist.
3873
38741999-08-31 Kunihiro Ishiguro <kunihiro@zebra.org>
3875
3876 * ospf_lsa.c (ospf_maxage_lsa_remover): Preserve next pointer when
3877 the node is deleted.
3878
38791999-08-31 Toshiaki Takada <takada@zebra.org>
3880
3881 * ospf_flood.c (ospf_ls_retransmit_lookup): change to return
3882 struct ospf_lsa *.
3883 (ospf_ls_request_new), (ospf_ls_request_free),
3884 (ospf_ls_request_add), (ospf_ls_request_delete),
3885 (ospf_ls_request_delete_all), (ospf_ls_request_lookup):
3886 New function added.
3887
3888 * ospf_packet.c (ospf_ls_upd_send_lsa): New function added.
3889
3890 * ospf_lsa.h (LS_AGE): Slightly change macro definition.
3891
3892 * ospf_lsa.c (ospf_lsa_more_recent), (ospf_lsa_diffrent):
3893 Use LS_AGE macro.
3894
38951999-08-30 Alex Zinin <zinin@amt.ru>
3896
3897 * ospfd.c
3898 fix a bug with area range config write
3899 added "show ip ospf" command, it will be enhanced later on
3900
39011999-08-30 Alex Zinin <zinin@amt.ru>
3902
3903 * ospf_lsa.c
3904 updated ospf_router_lsa() to honor flags (B-bit)
3905
39061999-08-30 Alex Zinin <zinin@amt.ru>
3907
3908 * ospf_abr.c
3909 wrote major functions implementing ABR activity
3910
39111999-08-30 Alex Zinin <zinin@amt.ru>
3912
3913 * ospf_ia.c ospf_route.c ospf_route.h
3914 fixed the bug with ospf_route.origin field.
3915 Now it holds pointer to lsa_header
3916
39171999-08-30 Alex Zinin <zinin@amt.ru>
3918
3919 * ospf_flood.c ospf_flood.h:
3920 transformed ospf_flood_if_select into ospf_flood_through_area()
3921 added new ospf_flood_if_select() and ospf_flood_through_as()
3922
39231999-08-30 Toshiaki Takada <takada@zebra.org>
3924
3925 * ospf_flood.[ch]: New file added.
3926
3927 * ospf_packet.c (ospf_lsa_flooding),
3928 (ospf_lsa_flooding_select_if): functions move to ospf_flood.c
3929
3930 * ospf_neighbor.c (ospf_put_lsa_on_retransm_list),
3931 (ospf_remove_lsa_from_retransm_list),
3932 (ospf_nbr_remove_all_lsas_from_retransm_list),
3933 (ospf_lsa_remove_from_ls_retransmit):
3934 (ospf_lsa_retransmit): functions move to
3935 ospf_flood.c, and change function's name:
3936
3937 ospf_put_lsa_on_retransm_list ()
3938 -> ospf_ls_retransmit_add ()
3939 ospf_remove_lsa_from_retransm_list ()
3940 -> ospf_ls_retransmit_delete ()
3941 ospf_nbr_remove_all_lsas_from_retransm_list ()
3942 -> ospf_ls_retransmit_clear ()
3943 ospf_lsa_remove_from_ls_retransmit ()
3944 -> ospf_ls_retransmit_delete_nbr_all ()
3945 ospf_lsa_retransmit ()
3946 -> ospf_ls_retransmit_add_nbr_all ()
3947
3948 * ospf_lsa.c (ospf_lsa_lookup_from_list): function move to
3949 ospf_flood.c, and change name to ospf_ls_retransmit_lookup ().
3950
39511999-08-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3952
3953 * ospf_neighbor.c (ospf_nbr_lookup_by_addr): Use
3954 route_node_lookup() instead of route_node_get().
3955
3956 * ospf_packet.c (ospf_ls_upd): Temporary comment out (6) check.
3957
39581999-08-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3959
3960 * ospf_route.c (ospf_lookup_int_by_prefix): Add check of
3961 oi->address.
3962
39631999-08-29 Alex Zinin <zinin@amt.ru>
3964 * ospf_lsa.c
3965 MaxAge LSA deletion functions added.
3966
39671999-08-29 Alex Zinin <zinin@amt.ru>
3968 * ospf_neighbor.c
3969 ospf_nbr_lookup_by_addr(): added route_unlock_node()
3970 when function returns NULL if (rn->info == NULL)
3971
39721999-08-29 Alex Zinin <zinin@amt.ru>
3973 * ospfd.c
3974 added a hack for area range deletion
3975
39761999-08-29 Alex Zinin <zinin@amt.ru>
3977 * ospf_lsa.h
3978 included lsdb field into struct ospf_lsa, to find
3979 LSDB easier when removing MaxAge LSAs.
3980
39811999-08-29 Alex Zinin <zinin@amt.ru>
3982 * ospf_lsa.c ospf_neighbor.c ospf_nsm.c
3983 ospf_packet.c changed to honor new retransmit list
3984 management functions
3985
39861999-08-29 Alex Zinin <zinin@amt.ru>
3987 * ospf_neighbor.c , .h added new retransmit list functions.
3988
39891999-08-29 Alex Zinin <zinin@amt.ru>
3990 * Makefile.in
3991 added ospf_ase, ospf_abr, ospf_ia
3992
39931999-08-29 Alex Zinin <zinin@amt.ru>
3994 * ospf_spf.c:
3995 - changed ospf_next_hop_calculation() to include interface
3996 and nexthop addr for directly connected routers---more informative
3997 and solves problem with route installation into the kernel
3998 - changed ospf_nexthop_out_if_addr() to support routers, not only
3999 transit networks
4000 - added ospf_process_stubs();
4001
40021999-08-29 Alex Zinin <zinin@amt.ru>
4003 * ospf_lsa.c:
4004 - changed ospf_router_lsa() to provide correct links
4005 for p-t-p interfaces;
4006 - changed ospf_summary_lsa_install() to support table
4007 of self-originated summary-LSAs;
4008 - added ospf_summary_asbr_lsa_install() and ospf_external_lsa_install()
4009 - changed ospf_lsa_install() accordingly
4010 - changed show_ip_ospf_database_router_links() to support p-t-p
4011
40121999-08-29 Kunihiro Ishiguro <kunihiro@zebra.org>
4013
4014 * ospf_packet.c (ospf_make_db_desc): Only master can clear more
4015 flag.
4016
40171999-08-29 Kunihiro Ishiguro <kunihiro@zebra.org>
4018
4019 * ospf_packet.c (ospf_read): Add check of IP src address.
4020
40211999-08-28 Alex Zinin <zinin@amt.ru>
4022 * ospf_neighbor.h
4023 added ospf_nbr_lookup_by_routerid()
4024
40251999-08-28 Alex Zinin <zinin@amt.ru>
4026 * ospfd.h
4027 added ABR/ASBR flag definitions and fields;
4028 added iflist field to area structure;
4029 summary_lsa_self and summary_lsa_asbr_self are changed
4030 to be route tables;
4031 added ranges field---configured area ranges;
4032 A separate Routers RT added;
4033 area range config commands and config write added
4034
4035
40361999-08-28 Alex Zinin <zinin@amt.ru>
4037 * ospf_route.c :
4038 ospf_route_free()--added code to free the list of paths;
4039 The following functions added:
4040 ospf_intra_add_router();
4041 ospf_intra_add_transit();
4042 ospf_intra_add_stub();
4043 the last function uses new ospf_int_lookup_by_prefix();
4044 show_ip_ospf_route_cmd()--changed to support new RT structure;
4045 added ospf_cmp_routes()--general route comparision function;
4046 added ospf_route_copy_nexthops() and ospf_route_copy_nexthops_from_vertex()
4047 they are used in ASE and IA routing;
4048 added ospf_subst_route() and ospf_add_route();
4049
40501999-08-28 Alex Zinin <zinin@amt.ru>
4051 * ospf_route.h :
4052 changed struct ospf_path to include output interface,
4053 changed struct ospf_route to support IA and ASE routing.
4054 added prototypes of the function used in IA and ASE modules.
4055
40561999-08-28 Alex Zinin <zinin@amt.ru>
4057 * ospf_lsa.h ospf_lsa.c :
4058 added ospf_my_lsa(), an interface independent version of
4059 ospf_lsa_is_self_originated(), it will be used in ASE and IA-routing.
4060
40611999-08-27 Kunihiro Ishiguro <kunihiro@zebra.org>
4062
4063 * ospf_interface.c (interface_config_write): Add check for
4064 oi->nbr_self.
4065
40661999-08-25 Toshiaki Takada <takada@zebra.org>
4067
4068 * ospf_lsa.c (ospf_lsa_dup): New function added.
4069
4070 * ospf_packet.c (ospf_write), (ospf_read): Print send/recv
4071 interface in debug message.
4072
40731999-08-25 Toshiaki Takada <takada@zebra.org>
4074
4075 * ospf_packet.c (ospf_ls_ack_send): The name is changed from
4076 `ospf_ls_ack_send'.
4077 (ospf_ls_ack_send_delayed) (ospf_ls_ack_timer): New function added.
4078 Delayed Link State Acknowledgment is scheduled by timer.
4079
40801999-08-25 Alex Zinin <zinin@amt.ru>
4081
4082 * ospf_lsa.c (ospf_router_lsa): Incorrectly included link to
4083 a stub network instead of link to a transit network into
4084 originated router-LSA, bug fixed.
4085
40861999-08-24 Toshiaki Takada <takada@zebra.org>
4087
4088 * ospfd.c (ospf_update_router_id): New function added.
4089
4090 * ospf_network.c (ospf_write): Create new socket per transmission.
4091 And select outgoing interface whether dst is unicast or multicast.
4092
4093 * ospf_packet.c: LSA flooding will work.
4094
40951999-08-24 VOP <vop@unity.net>
4096
4097 * ospf_route.c: Include "sockunion.h"
4098
40991999-08-24 Kunihiro Ishiguro <kunihiro@zebra.org>
4100
4101 * ospf_network.c (ospf_serv_sock_init): Enclose
4102 IPTOS_PREC_INTERNETCONTROL setting with #ifdef for OS which does
4103 not have the definition.
4104
41051999-08-23 Toshiaki Takada <takada@zebra.org>
4106
4107 * ospf_packet.c: Fix bug of DD processing.
4108
41091999-08-18 Toshiaki Takada <takada@zebra.org>
4110
4111 * ospf_lsa.c (show_ip_ospf_database): Show actual `LS age'.
4112
41131999-08-17 Toshiaki Takada <takada@zebra.org>
4114
4115 * ospf_lsa.h (OSPF_MAX_LSA): The value of OSPF_MAX_LSA is
4116 corrected. The bug of `mes_lookup' is fixed.
4117 This had been reported by Poul-Henning Kamp <phk@freebsd.org>.
4118
4119 * ospf_lsa.c (ospf_router_lsa_install): The name is changed from
4120 `ospf_add_router_lsa'.
4121 (ospf_network_lsa_install): The name is changed from
4122 `ospf_add_network_lsa'.
4123
4124 * ospf_interface.h (ospf_interface): Add member `nbr_self'.
4125
4126 * ospf_interface.c (ospf_if_is_enable): New function added.
4127
41281999-08-16 Toshiaki Takada <takada@zebra.org>
4129
4130 * ospf_lsa.h (struct lsa_header): The name is changed from
4131 `struct ospf_lsa'.
4132 (struct ospf_lsa): New struct added to control each LSA's aging
4133 and timers.
4134
4135 * ospf_lsa.c (ospf_lsa_data_free): The name is change from
4136 `ospf_lsa_free'.
4137 (ospf_lsa_data_new), (ospf_lsa_new), (ospf_lsa_free),
4138 (ospf_lsa_different), (ospf_lsa_install): New function added.
4139
4140 * ospf_packet.c (ospf_ls_upd_list_lsa): New function added.
4141
41421999-08-12 Toshiaki Takada <takada@zebra.org>
4143
4144 * ospf_nsm.c (nsm_reset_nbr): New function added.
4145 KillNbr and LLDown neighbor event call this function.
4146
41471999-08-10 Toshiaki Takada <takada@zebra.org>
4148
4149 * ospf_packet.c (ospf_ls_retransmit)
4150 (ospf_ls_upd_timer): New function added.
4151 Set retransmission timer for Link State Update.
4152
41531999-07-29 Toshiaki Takada <takada@zebra.org>
4154
4155 * ospf_ism.c (ospf_dr_election): Fix bug of DR election.
4156
41571999-07-28 Toshiaki Takada <takada@zebra.org>
4158
4159 * ospf_network.c (ospf_serv_sock_init): Set IP precedence field
4160 with IPTOS_PREC_INTERNET_CONTROL.
4161
4162 * ospf_nsm.c (nsm_change_status): Schedule NeighborChange event
4163 if NSM status change.
4164
4165 * ospf_packet.c (ospf_make_hello): Never include a neighbor in
4166 Hello packet, when the neighbor goes down.
4167
41681999-07-26 Kunihiro Ishiguro <kunihiro@zebra.org>
4169
4170 * Makefile.am (noinst_HEADERS): Add ospf_route.h.
4171
4172 * ospf_route.c (show_ip_ospf_route): Add `show ip ospf route'
4173 command.
4174
41751999-07-25 Toshiaki Takada <takada@zebra.org>
4176
4177 * ospf_lsa.c (ospf_router_lsa): Fix bug of LS sequence number
4178 assignement.
4179
41801999-07-25 Kunihiro Ishiguro <kunihiro@zebra.org>
4181
4182 * ospf_route.c (ospf_route_table_free): New function added.
4183
4184 * ospf_spf.c (ospf_spf_next): Free vertex w when cw's and w's
4185 distance is same.
4186
4187 * ospfd.h (struct ospf): Add old_table.
4188
4189 * ospf_main.c (sighup): Call of log_rotate () removed.
4190
4191 * ospf_lsa.c (ospf_lsa_is_self_originated): Fix bug of checking
4192 area->lsa as self LSA. This should be area->lsa_self.
4193
41941999-07-24 Kunihiro Ishiguro <kunihiro@zebra.org>
4195
4196 * ospf_zebra.c (ospf_zebra_add): ospf_zebra_add
4197 (),ospf_zebra_delete () added.
4198
4199 * ospf_spf.c (ospf_spf_calculate): Call ospf_intra_route_add ().
4200
42011999-07-24 Toshiaki Takada <takada@zebra.org>
4202
4203 * ospf_lsa.c: Change LS sequence number treatment.
4204 (ospf_lsa_is_self_originated): New function added.
4205 (show_ip_ospf_database_self_originated): New DEFUN added.
4206
42071999-07-23 Kunihiro Ishiguro <kunihiro@zebra.org>
4208
4209 * ospf_interface.c (ospf_if_lookup_by_addr): Add loopback check.
4210
42111999-07-22 Toshiaki Takada <takada@zebra.org>
4212
4213 * ospf_spf.c (ospf_nexthop_new), (ospf_nexthop_free),
4214 (ospf_nexthop_dup): function added.
4215 (ospf_nexthop_calculation): function changed.
4216
4217 * ospf_interface.c (ospf_if_lookup_by_addr): function added.
4218
42191999-07-21 Toshiaki Takada <takada@zebra.org>
4220
4221 * ospf_spf.c (ospf_spf_closest_vertex): function removed.
4222
42231999-07-21 Kunihiro Ishiguro <kunihiro@zebra.org>
4224
4225 * ospf_spf.c (ospf_spf_next): Apply ntohs for fetching metric.
4226
42271999-07-21 Toshiaki Takada <takada@zebra.org>
4228
4229 * ospf_neighbor.c (ospf_nbr_lookup_by_router_id): fundtion removed.
4230
4231 * ospf_lsa.c (show_ip_ospf_database_router): describe each
4232 connected link.
4233
42341999-07-21 Kunihiro Ishiguro <kunihiro@zebra.org>
4235
4236 * ospf_spf.c (ospf_spf_next): V is router LSA or network LSA so
4237 change behavior according to LSA type.
4238 (ospf_lsa_has_link): Link check function is added.
4239
42401999-07-20 Kunihiro Ishiguro <kunihiro@zebra.org>
4241
4242 * ospf_spf.c (ospf_spf_calculate_schedule): Add new function for
4243 SPF calcultion schedule addtition.
4244 (ospf_spf_calculate_timer_add): Rough 30 sec interval SPF calc
4245 timer is added.
4246 (ospf_spf_next_router): Delete ospf_spf_next_network ().
4247
4248 * ospf_lsa.c (show_ip_ospf_database_all): Network-LSA display
4249 header typo correction. Display of router LSA's #link added.
4250
42511999-07-19 Toshiaki Takada <takada@zebra.org>
4252
4253 * ospf_packet.c (ospf_check_network_mask): Added new function for
4254 receiving Raw IP packet on an appropriate interface.
4255
42561999-07-16 Toshiaki Takada <takada@zebra.org>
4257
4258 * ospfd.c (ospf_router_id): new DEFUN added.
4259
42601999-07-15 Toshiaki Takada <takada@zebra.org>
4261
4262 * ospf_spf.c (ospf_spf_init), (ospf_spf_free),
4263 (ospf_spf_has_vertex), (ospf_vertex_lookup),
4264 (ospf_spf_next_router), (ospf_spf_next_network),
4265 (ospf_spf_closest_vertex), (ospf_spf_calculate):
4266 function added.
4267
42681999-07-13 Toshiaki Takada <takada@zebra.org>
4269
4270 * ospf_ism.c: fix bug of DR Election.
4271
4272 * ospf_nsm.c: fix bug of adjacency forming.
4273
42741999-07-05 Kunihiro Ishiguro <kunihiro@zebra.org>
4275
4276 * ospfd.c (ospf_init): Change to use install_default.
4277
42781999-07-01 Rick Payne <rickp@rossfell.co.uk>
4279
4280 * ospf_zebra.c (zebra_init): Install standard commands to
4281 ZEBRA_NODE.
4282
42831999-06-30 Toshiaki Takada <takada@zebra.org>
4284
4285 * ospf_dump.c: Whole debug command is improved.
4286 (ISM|NSM) (events|status|timers) debug option added.
4287 (show_debugging_ospf): new DEFUN added.
4288
42891999-06-30 Kunihiro Ishiguro <kunihiro@zebra.org>
4290
4291 * ospf_lsa.c (ospf_lsa_lookup_from_list): Change !IPV4_ADDR_CMP to
4292 IPV4_ADDR_SAME.
4293
42941999-06-29 Toshiaki Takada <takada@zebra.org>
4295
4296 * ospf_dump.c (ospf_summary_lsa_dump): Add summary-LSA dump routine.
4297 (ospf_as_external_lsa_dump): Add AS-external-LSA dump routine.
4298
4299 * ospf_nsm.c (nsm_twoway_received): fix condtion of adjacnet.
4300
4301 * ospf_ism.c (ospf_dr_election): fix DR Election.
4302
4303 * ospf_dump.c (ospf_nbr_state_message): fix `show ip ospf neighbor'
4304 command's state.
4305
43061999-06-29 Kunihiro Ishiguro <kunihiro@zebra.org>
4307
4308 * ospf_dump.c (ospf_router_lsa_dump): Add router-LSA dump routine.
4309
43101999-06-28 Toshiaki Takada <takada@zebra.org>
4311
4312 * ospf_lsa.c (show_ip_ospf_database_network): fix bug of
4313 `show ip ospf database network' command output.
4314
4315 * ospf_nsm.c (nsm_inactivity_timer): Clear list of Link State
4316 Retransmission, Database Summary and Link State Request.
4317
4318 * ospf_packet.c (ospf_ls_req_timer): New function added.
4319 Set Link State Request retransmission timer.
4320
43211999-06-27 Kunihiro Ishiguro <kunihiro@zebra.org>
4322
4323 * ospf_main.c (main): Change default output from ZLOG_SYSLOG to
4324 ZLOG_STDOUT.
4325
4326 * ospfd.c (ospf_init): Register show_ip_ospf_interface_cmd and
4327 show_ip_ospf_neighbor_cmd to VIEW_NODE.
4328
4329 * ospf_lsa.c (ospf_lsa_init): Register show_ip_ospf_database_cmd
4330 and show_ip_ospf_database_type_cmd to VIEW_NODE.
4331
43321999-06-25 Toshiaki Takada <takada@zebra.org>
4333
4334 * ospf_packet.c: fix bug of DD making.
4335 fix bug of LS-Update reading.
4336
43371999-06-23 Toshiaki Takada <takada@zebra.org>
4338
4339 * ospf_packet.c: All type of packets are changed to use
4340 fifo queue structure.
4341 (ospf_fill_header) function added.
4342
43431999-06-22 Toshiaki Takada <takada@zebra.org>
4344
4345 * ospf_packet.c (ospf_packet_new): New function added to handle
4346 sending ospf packet by fifo queue structure.
4347 (ospf_packet_free), (ospf_fifo_new), (ospf_fifo_push),
4348 (ospf_fifo_pop), (ospf_fifo_head), (ospf_fifo_flush),
4349 (ospf_fifo_free): Likewise.
4350
43511999-06-21 Toshiaki Takada <takada@zebra.org>
4352
4353 * ospf_nsm.c (ospf_db_desc_timer): function added.
4354 (nsm_timer_set) function added.
4355 * ospf_dump.c (ospf_option_dump): function added.
4356 * ospf_packet.c (ospf_ls_req) (ospf_make_ls_req): function added.
4357
43581999-06-20 Toshiaki Takada <takada@zebra.org>
4359
4360 * ospf_lsa.c (ospf_lsa_more_recent): function added.
4361 * ospf_neighbor.h (struct ospf_neighbor): Change member ms_flag
4362 to dd_flags.
4363
43641999-06-19 Toshiaki Takada <takada@zebra.org>
4365
4366 * ospf_lsa.c: DEFUN (show_ip_ospf_database) Added.
4367 * ospf_interface.c (if_ospf_cost), (if_ospf_dead_interval),
4368 (if_ospf_hello_interval), (if_ospf_priority),
4369 (if_ospf_retransmit_interval), (if_ospf_transmit_delay)
4370 argument changed from NUMBER to <range>.
4371 DEFUN (if_ospf_network_broadcast),
4372 DEFUN (if_ospf_network_non_broadcast),
4373 DEFUN (if_ospf_network_point_to_multipoint),
4374 DEFUN (if_ospf_network_point_to_point) functions are combined to
4375 DEFUN (if_ospf_network).
4376
43771999-06-18 Toshiaki Takada <takada@zebra.org>
4378
4379 * ospf_lsa.c: ospf_add_router_lsa (), ospf_add_network_lsa (),
4380 ospf_lsa_lookup (), ospf_lsa_count () Added.
4381
43821999-06-15 Toshiaki Takada <takada@zebra.org>
4383
4384 * DEFUN (ospf_debug_ism), DEFUN (ospf_debug_nsm),
4385 DEFUN (no_ospf_debug_ism), DEFUN (no_ospf_debug_nsm) Added.
4386 `debug ospf ism' command shows debug message.
4387 `debuf ospf nsm' command shows debug message.
4388
43891999-06-14 Toshiaki Takada <takada@zebra.org>
4390
4391 * ospf_lsa.c: ospf_network_lsa () Added.
4392 ospf_lsa_checksum () Added.
4393 * DEFUN (ospf_debug_packet), DEFUN (no_ospf_debug_packet) Added.
4394 `debug ospf packet' command shows debug message.
4395
43961999-06-13 Toshiaki Takada <takada@zebra.org>
4397
4398 * ospf_packet.h: Remove struct ospf_ls_req {}, ospf_ls_upd {},
4399 ospf_ls_ack {}.
4400
44011999-06-11 Toshiaki Takada <takada@zebra.org>
4402
4403 * ospf_dump.c: fix IP packet length treatment.
4404
44051999-06-10 Toshiaki Takada <takada@zebra.org>
4406
4407 * ospf_ism.h: Add OSPF_ISM_EVENT_EXECUTE() Macro Added.
4408 * ospf_nsm.h: Add OSPF_NSM_EVENT_EXECUTE() Macro Added.
4409
4410 * ospf_packet.c: ospf_db_desc (), ospf_db_desc_send () Added.
4411 ospf_make_hello (), ospf_make_db_desc () Added.
4412 ospf_db_desc_proc () Added.n
4413
4414 * Database Description packet can be processed.
4415
44161999-06-08 Toshiaki Takada <takada@zebra.org>
4417
4418 * ospf_lsa.c: New file.
4419
44201999-06-07 Toshiaki Takada <takada@zebra.org>
4421
4422 * ospf_neighbor.c: ospf_fully_adjacent_count () Added.
4423
44241999-06-07 Kunihiro Ishiguro <kunihiro@zebra.org>
4425
4426 * ospf_spf.[ch]: New file.
4427
44281999-05-30 Kunihiro Ishiguro <kunihiro@zebra.org>
4429
4430 * ospf_zebra.c: Changed to use lib/zclient.c routines.
4431
4432 * ospf_zebra.h (zebra_start): Remove struct zebra.
4433
44341999-05-29 Kunihiro Ishiguro <kunihiro@zebra.org>
4435
4436 * ospfd.c (ospf_config_write): Add cast (unsigned long int) to
4437 ntohl for sprintf warning.
4438
44391999-05-19 Toshiaki Takada <takada@zebra.org>
4440
4441 * ospf_ism.c (ospf_dr_election): Join AllDRouters Multicast group
4442 if interface state changes to DR or BDR.
4443
44441999-05-14 Stephen R. van den Berg <srb@cuci.nl>
4445
4446 * ospf_main.c (signal_init): SIGTERM call sigint.
4447 (sigint): Logging more better message.
4448
44491999-05-12 Toshiaki Takada <takada@zebra.org>
4450
4451 * ospfd.c: Fix bug of `no router ospf' statement, it will work.
4452
44531999-05-11 Toshiaki Takada <takada@zebra.org>
4454
4455 * ospf_neighbor.c: ospf_nbr_free () Added.
4456
44571999-05-10 Toshiaki Takada <takada@zebra.org>
4458
4459 * ospfd.h: struct ospf_area { }, struct ospf_network { } Changed.
4460 * Fix bug of `no network' statement, it will work.
4461
44621999-05-07 Toshiaki Takada <takada@zebra.org>
4463
4464 * ospf_interface.c, ospf_zebra.c: Fix bug of last interface is not
4465 updated by ospf_if_update ().
4466
44671999-04-30 Kunihiro Ishiguro <kunihiro@zebra.org>
4468
4469 * Makefile.am (noinst_HEADERS): Add ospf_lsa.h for distribution.
4470
44711999-04-25 Toshiaki Takada <takada@zebra.org>
4472
4473 * ospf_interface.c: DEFUN (no_if_ospf_cost),
4474 DEFUN (no_if_ospf_dead_interval),
4475 DEFUN (no_if_ospf_hello_interval),
4476 DEFUN (no_if_ospf_priority),
4477 DEFUN (no_if_ospf_retransmit_interval),
4478 DEFUN (no_if_ospf_transmit_delay) Added.
4479
4480 interface_config_write () suppress showing interface
4481 default values.
4482
44831999-04-25 Kunihiro Ishiguro <kunihiro@zebra.org>
4484
4485 * ospf_dump.c (ospf_timer_dump): If thread is NULL return "inactive".
4486
4487 * ospfd.c (ospf_if_update): Fix bug of using ospf_area { } instead
4488 of ospf_network { }. So `router ospf' statement in ospfd.conf
4489 works again.
4490 (ospf_if_update): Call ospf_get_router_id for updating router ID.
4491
44921999-04-25 Toshiaki Takada <takada@zebra.org>
4493
4494 * ospf_interface.c: DEFUN (if_ospf_network) deleted.
4495 DEFUN (if_ospf_network_broadcast),
4496 DEFUN (if_ospf_network_non_broadcast),
4497 DEFUN (if_ospf_network_point_to_multipoint),
4498 DEFUN (if_ospf_network_point_to_point),
4499 DEFUN (no_if_ospf_network) Added.
4500
45011999-04-23 Toshiaki Takada <takada@zebra.org>
4502
4503 * ospfd.h: struct area { } changed to struct ospf_network { }.
4504 Add struct ospf_area { }.
4505 * ospfd.c: Add ospf_area_lookup_by_area_id (), ospf_network_new (),
4506 and ospf_network_free ().
4507 DEFUN (area_authentication), DEFUN (no_area_authentication) Added.
4508
45091999-04-22 Toshiaki Takada <takada@zebra.org>
4510
4511 * ospf_lsa.h: New file.
4512 * ospf_packet.h: LSA related struct definition are moved to
4513 ospf_lsa.h.
4514 * ospf_packet.c: ospf_verify_header () Added.
4515
45161999-04-21 Toshiaki Takada <takada@zebra.org>
4517
4518 * ospf_ism.c: ospf_elect_dr () and related function is changed.
4519 DR Election bug fixed.
4520 * ospf_dump.c: ospf_nbr_state_message (), ospf_timer_dump () Added.
4521 * ospfd.c: DEFUN (show_ip_ospf_neighbor) Added.
4522
45231999-04-19 Kunihiro Ishiguro <kunihiro@zebra.org>
4524
4525 * ospf_main.c (main): access_list_init () is added for vty
4526 connection filtering.
4527
45281999-04-16 Toshiaki Takada <takada@zebra.org>
4529
4530 * ospfd.c: DEFUN (show_ip_ospf_interface) Added.
4531 * ospf_neighbor.c: ospf_nbr_count () Added.
4532
45331999-04-15 Toshiaki Takada <takada@zebra.org>
4534
4535 * ospfd.h: struct ospf { } Changed.
4536 * ospfd.c: ospf_lookup_by_process_id () Deleted.
4537 * ospf_ism.c: ospf_wait_timer () Added. WaitTimer will work.
4538
45391999-04-14 Toshiaki Takada <takada@zebra.org>
4540
4541 * ospf_ism.c: ospf_elect_dr () Added.
4542 * ospf_network.c: ospf_if_ipmulticast () Added.
4543
45441999-04-11 Toshiaki Takada <takada@zebra.org>
4545
4546 * ospf_interface.c: interface_config_write (),
4547 DEFUN (if_ip_ospf_cost),
4548 DEFUN (if_ip_ospf_dead_interval),
4549 DEFUN (if_ip_ospf_hello_interval),
4550 DEFUN (if_ip_ospf_priority),
4551 DEFUN (if_ip_ospf_retransmit_interval) and
4552 DEFUN (if_ip_ospf_transmit_delay) Added.
4553
45541999-04-08 Toshiaki Takada <takada@zebra.org>
4555
4556 * ospf_dump.c: ospf_packet_db_desc_dump () Added.
4557 * ospf_neighbor.c: ospf_nbr_bidirectional () Added.
4558 * ospf_nsm.c: nsm_twoway_received () Added.
4559
45601999-04-02 Toshiaki Takada <takada@zebra.org>
4561
4562 * ospf_neighbor.c: New file.
4563 * ospf_neighbor.h: New file.
4564 * ospf_nsm.c: New file.
4565 * ospf_nsm.h: New file.
4566 * ospf_packet.c: Add ospf_make_header (), ospf_hello () and
4567 ospf_hello_send (). Now OSPFd can receive Hello and send Hello.
4568
45691999-03-27 Kunihiro Ishiguro <kunihiro@zebra.org>
4570
4571 * ospf_packet.c: Add ospf_recv_packet (). Now OSPF Hello can receive.
4572
45731999-03-19 Toshiaki Takada <takada@zebra.org>
4574
4575 * ospf_packet.c: New file.
4576 * ospf_packet.h: New file.
4577 * ospf_network.c: New file.
4578 * ospf_network.h: New file.
4579 * ospfd.h: move OSPF message structure has moved to ospf_packet.h.
4580
45811999-03-17 Kunihiro Ishiguro <kunihiro@zebra.org>
4582
4583 * ospf_zebra.c (ospf_zebra_get_interface): Fix for IPv6 interface
4584 address.
4585
4586 * Makefile.am (install-sysconfDATA): Overwrite install-sysconfDATA
4587 for install ospfd.conf.sample as owner read only file.
4588
4589 * ospf_main.c (usage): Change to use ZEBRA_BUG_ADDRESS.
4590
45911999-03-15 Toshiaki Takada <takada@zebra.org>
4592
4593 * ospf_ism.c: New file.
4594 * ospf_ism.h: New file.
4595 * ospf_dump.c: New file.
4596 * ospf_dump.h: New file.
4597
4598 * ospfd.h: Add (struct ospf), (struct config_network),
4599 (struct message) structure.
4600
4601 * ospf_interface.c: Add ospf_if_match_network ().
4602 * ospf_interface.h (struct ospf_interface): Change struct members.
4603
4604 * ospfd.c: ospf_lookup_by_process_id (), ospf_network_new (),
4605 DEFUN (network_area): Added.
4606
4607 * ospfd.conf.sample: Change sample configuration.
4608
46091999-03-05 Toshiaki Takada <takada@zebra.org>
4610
4611 * ospf_interface.c: New file.
4612 * ospf_interface.h: New file.
4613 * ospf_zebra.h: New file.
4614 * ospf_zebra.c: Add interface function for zebra daemon.
4615 * ospfd.c: New file.
4616
46171999-02-23 Kunihiro Ishiguro <kunihiro@zebra.org>
4618
4619 * Move IPv6 codes and files to ospf6d directory.
4620
46211999-02-18 Peter Galbavy <Peter.Galbavy@knowledge.com>
4622
4623 * syslog support added
4624
46251998-12-22 Toshiaki Takada <takada@zebra.org>
4626
4627 * ospfd.h: New file.
4628 * ospf_lsa.h: New file.
4629
46301998-12-15 Kunihiro Ishiguro <kunihiro@zebra.org>
4631
4632 * Makefile.am: New file.
4633 * ospf_main.c: New file.
4634