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