blob: 720826d3b2b5fe16d3cfc1186f1bb47eb18a8c64 [file] [log] [blame]
hasso343f5cc2005-03-25 19:48:40 +000012005-03-25 Hasso Tepper <hasso at quagga.net>
2
3 * ospfd.h: Include log.h, fixes compile with gcc-4.0.
4
ajs9dbc7972005-03-13 19:27:22 +000052005-03-13 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
6
7 * ospf_lsa.c: (ospf_lsa_refresh_walker) If the system clock jumps
8 backward, then current time may be less than
9 ospf->lsa_refresher_started. This was causing invalid values
10 for ospf->lsa_refresh_queue.index resulting in infinite loops.
11 Problem fixed by casting the expression to unsigned before taking
12 the modulus.
13
ajs5c333492005-02-23 15:43:01 +0000142005-02-23 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
15
16 * ospfd.h: Add new field struct stream *ibuf to struct ospf.
17 * ospfd.c: (ospf_new) Check return code from ospf_sock_init.
18 Allocate ibuf using stream_new(OSPF_MAX_PACKET_SIZE+1).
19 (ospf_finish) Call stream_free(ospf->ibuf.
20 * ospf_packet.c: (ospf_read) Call stream_reset(ospf->ibuf) and then
21 pass it to ospf_recv_packet for use in receiving the packet
22 (instead of allocating a new stream for each packet received).
23 Eliminate all calls to stream_free(ibuf).
24 (ospf_recv_packet) The struct stream *ibuf is now passed in as
25 an argument. No need to use recvfrom to peek at the packet
26 header (to see how big it is), just use ospf->ibuf which is
27 always large enough (this eliminates a system call to recvfrom).
28 Therefore, no need to allocate a stream just for this packet,
29 and no need to free it when done.
30
hasso462f20d2005-02-23 11:29:02 +0000312005-02-23 Vincenzo Eramo <eramo at infocom.ing.uniroma1.it>
32
33 * ospf_lsa.h: New flag to the LSA structure for the SPF calculation.
34 * ospf_lsdb.h: Export ospf_lsdb_clean_stat() function.
35 * ospf_spf.h: Add link to the LSA stat structure into vertex.
36 * ospf_spf.c: New functions cmp() and update_stat() to manage
37 candidates. Remove ospf_spf_has_vertex(), ospf_vertex_lookup(),
38 ospf_install_candidate() and ospf_spf_register() functions not needed
39 any more. Update ospf_vertex_new(), ospf_spf_next() and
40 ospf_spf_calculate() functions to use pqueue instead of linked list.
41
hassoe40dcce2005-02-21 14:58:42 +0000422005-02-21 Hasso Tepper <hasso at quagga.net>
43
44 * ospf_ase.c: Don't show messages related to the ase calculations if
45 we are not debugging.
46
hasso306541b2005-02-19 17:58:40 +0000472005-02-19 Hasso Tepper <hasso at quagga.net>
48
49 * ospf_api.h: char isn't always signed, but it has to be it here.
50
paulfa81b712005-02-19 01:19:20 +0000512005-02-19 Paul Jakma <paul.jakma@sun.com>
52
53 * ospf_packet.c: (ospf_stream_copy) remove
54 (ospf_packet_dup) use stream_copy instead of ospf_stream_copy
55
ajs038163f2005-02-17 19:55:59 +0000562005-02-17 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
57
58 * ospf_packet.c: (ospf_recv_packet) If there is somehow a runt
59 packet in the queue, it must be discarded. Improve warning messages.
60 Fix scope to static.
61 (ospf_read) Fix bug: should reset the read thread in all cases
62 to make sure we continue to get incoming messages.
63
paul658b03a2005-02-15 10:10:55 +0000642005-02-15 Paul Jakma <paul.jakma@sun.com>
65
66 * ospf_packet.c: (ospf_recv_packet) Fix silly error wrt allocating
67 ibuf. Thanks Andrew.
68
paulbfdc44a2005-02-14 23:48:42 +0000692005-02-14 Paul Jakma <paul.jakma@sun.com>
70
71 * ospf_packet.c: (ospf_recv_packet) use stream_recvmsg.
72
hasso082253f2005-02-11 08:31:54 +0000732005-02-11 Hasso Tepper <hasso at quagga.net>
74
75 * ospf_lsdb.c: Fix sum of checksums calculation.
76
ajs083ee9d2005-02-09 15:35:50 +0000772005-02-09 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
78
79 * ospf_packet.c: (ospf_write) If sendmsg fails, give more info in the
80 error message.
81
ajsba6454e2005-02-08 15:37:30 +0000822005-02-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
83
ajs8cfde372005-02-08 15:59:16 +000084 * ospf_interface.h: Reduce structure padding by putting new u_char
85 field multicast_memberships in a better spot (grouped with
86 other u_char fields type and state).
87
882005-02-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
89
ajsba6454e2005-02-08 15:37:30 +000090 * ospf_interface.h: Improve passive_interface comment. Add new
91 multicast_memberships bitmask to struct ospf_interface to track
92 active multicast subscriptions. Declare new function
93 ospf_if_set_multicast.
94 * ospf_interface.c: (ospf_if_set_multicast) New function to configure
95 multicast memberships properly based on the current
96 multicast_memberships status and the current values of the
97 ospf_interface state, type, and passive_interface status.
98 (ospf_if_up) Remove call to ospf_if_add_allspfrouters (this is
99 now handled by ism_change_state's call to ospf_if_set_multicast).
100 (ospf_if_down) Remove call to ospf_if_drop_allspfrouters (now
101 handled by ism_change_state).
102 * ospf_ism.c: (ospf_dr_election) Remove logic to join or leave
103 the DRouters multicast group (now handled by ism_change_state's call
104 to ospf_if_set_multicast).
105 (ism_change_state) Add call to ospf_if_set_multicast to change
106 multicast memberships as necessary to reflect the new interface state.
107 * ospf_packet.c: (ospf_hello) When a Hello packet is received on a
108 passive interface: 1. Increase the severity of the error message
109 from LOG_INFO to LOG_WARNING; 2. Add more information to the error
110 message (packet destination address and interface address);
111 and 3. If the packet was sent to ospf-all-routers, then try
112 to fix the multicast group memberships.
113 (ospf_read) When a packet is received on an interface whose state
114 is ISM_Down, enhance the warning message to show the packet
115 destination address, and try to update/fix the multicast group
116 memberships if the packet was sent to a multicast address.
117 When a packet is received for ospf-designated-routers, but the
118 current interface state is not DR or BDR, then increase the
119 severity level of the error message from LOG_INFO to LOG_WARNING,
120 and try to fix the multicast group memberships.
121 * ospf_vty.c: (ospf_passive_interface) Call ospf_if_set_multicast for
122 any ospf interface that may have changed from active to passive.
123 (no_ospf_passive_interface) Call ospf_if_set_multicast for
124 any ospf interface that may have changed from passive to active.
125 (show_ip_ospf_interface_sub) Show multicast group memberships.
126
paul3a9eb092005-02-08 11:29:41 +00001272005-02-08 Paul Jakma <paul@dishone.st>
128
129 * ospf_packet.c: (various) Remove unneeded stream_set_putp abuse.
130
ajs847947f2005-02-02 18:38:48 +00001312005-02-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
132
133 * ospf_packet.c: (ospf_read) Fix bug: must check for state ISM_Down,
134 not for event ISM_InterfaceDown. And improve the message by
135 adding the interface flags.
136
ajs0b7d97d2005-01-30 17:24:02 +00001372005-01-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
138
139 * ospf_network.c: (ospf_sock_init) Save errno before calling
140 ospfd_privs.change.
141
ajsc3eab872005-01-29 15:52:07 +00001422005-01-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
143
144 * ospf_packet.c: (ospf_packet_add) If oi->obuf is NULL, print
145 an error message and return.
146 (ospf_read) If the interface state is ISM_InterfaceDown, issue
147 a warning message and ignore the packet.
148
gdt86f1fd92005-01-10 14:20:43 +00001492005-01-10 Greg Troxel <gdt@fnord.ir.bbn.com>
150
151 * ospf_packet.h: Remove commented out definition of
152 OSPF_MAX_PACKET; neither it or the uncommented one are used any more.
153
154 * ospf_packet.c (ospf_make_ls_upd): Leave room for authentication
155 when deciding if an update will fit.
156 (ospf_packet_authspace): Factor out calculation of size required
157 for authentication.
158 (ospf_make_db_desc): Use ospf_max_packet, not OSPF_MAX_PACKET.
159 Don't confuse readers that there is a macro.
160
ajs3dc56b52004-12-30 15:11:19 +00001612004-12-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
162
163 * ospf_network.c: Improve all setsockopt error messages to give detailed
164 information on the arguments.
165
ajsb87f7722004-12-29 20:41:26 +00001662004-12-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
167
ajs17eaa722004-12-29 21:04:48 +0000168 * ospf_packet.c: (ospf_db_desc) Reduce severity of "Negotiation done"
169 messages from LOG_WARNING to LOG_INFO, since this seems to be
170 normal.
171
1722004-12-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
173
ajsb87f7722004-12-29 20:41:26 +0000174 * ospf_packet.c: (ospf_read) Always look up the interface if
175 ospf_recv_packet returns NULL ifp, since some platforms such
176 as Solaris 8 appear to support ifindex retrieval but don't.
177
hasso1d806282004-12-22 09:43:20 +00001782004-12-22 Hasso Tepper <hasso at quagga.net>
179
180 * ospf_dump.c: Show debug configuration in vtysh.
hassoc6b87812004-12-22 13:09:59 +0000181 * ospf_vty.c: Fix "show ip ospf" output. Router can't be elected in
182 any case if it's configured as "translate-never".
hassofe71a972004-12-22 16:16:02 +0000183 * ospf_lsdb.[ch]: New function to calculate sum of checksums.
184 * ospf_vty.c: Bugfix to show really number of AS external LSAs, not
185 number of all LSAs with AS scope, this includes opaque as LSAs as
186 well, show this number separately. Show numbers and sums of
187 checksums for each type of LSAs.
188 * ospf_lsa.c: Calculate checksum before putting LSA into database.
hasso1d806282004-12-22 09:43:20 +0000189
ajsbc18d612004-12-15 15:07:19 +00001902004-12-15 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
191
192 * ospf_interface.h: Declare new function ospf_default_iftype.
193 * ospf_interface.c: (ospf_default_iftype) New function to centralize
194 this logic in one place.
195 * ospf_zebra.c: (ospf_interface_add) Use new function
196 ospf_default_iftype.
197 * ospf_vty.c: (no_ip_ospf_network,config_write_interface) Fix logic
198 by using new function ospf_default_iftype.
199
ajs3aa8d5f2004-12-11 18:00:06 +00002002004-12-11 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
201
202 * ospf_packet.c: (ospf_db_desc) Should be static, not global.
203 (ospf_hello,ospf_db_desc,ospf_ls_upd,ospf_ls_ack) Improve warning
204 messages to include identifying information (e.g. router id).
205 * ospf_nsm.c: (nsm_change_state) Improve info message to include
206 router id and state names.
207
gdt91f3e522004-12-09 14:51:03 +00002082004-12-09 Greg Troxel <gdt@fnord.ir.bbn.com>
209
gdt3fb9de72004-12-09 16:30:04 +0000210 * ospf_apiserver.c (ospf_apiserver_term): Obtain struct
211 ospf_apiserver * from listnode. Remove unused variables. Follows
212 suggestion from Jay Fenlason.
gdt91f3e522004-12-09 14:51:03 +0000213
ajs9b0e25c2004-12-08 19:06:51 +00002142004-12-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
215
216 * *.c: Change level of debug messages to LOG_DEBUG.
217
ajs274a4a42004-12-07 15:39:31 +00002182004-12-07 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
219
220 * ospf_main.c: (main) The 2nd argument to openzlog has been removed.
221
ajs887c44a2004-12-03 16:36:46 +00002222004-12-03 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
223
ajs1210fa62004-12-03 16:43:24 +0000224 * ospf_packet.c: (ospf_db_desc) Reduce priority on a debug message
225 from LOG_NOTICE to LOG_DEBUG.
226
2272004-12-03 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
228
ajs887c44a2004-12-03 16:36:46 +0000229 * ospf_main.c: (sigint) Use zlog_notice for termination message.
230 (main) Issue a startup announcement using zlog_notice.
231
ajsbec595a2004-11-30 22:38:43 +00002322004-11-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
233
234 * ospf_packet.c: (ospf_db_desc_proc) Fix spelling of packet in warning
235 message and in comment.
236 (ospf_db_desc) Warning message that a packet is being discarded
237 should give the router id of the packet source. Fix spelling
238 of packet in two warning messages.
239 (ospf_ls_req) Warning message that a link state request is being
240 discarded should give the router id of the neighbor that sent it.
241
ajs5b85fac2004-11-26 19:36:42 +00002422004-11-26 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
243
244 * ospf_main.c: Remove #include "debug.h" (was not being used, and
245 lib/debug.h has now been deleted).
246
hassoc0652302004-11-25 19:33:48 +00002472004-11-25 Hasso Tepper <hasso at quagga.net>
248
249 * ospf_main.c: Make group to run as configurable.
250
gdt69e13252004-11-15 18:51:15 +00002512004-11-15 Greg Troxel <gdt@fnord.ir.bbn.com>
252
253 * ospf_packet.c (ospf_recv_packet): Assume CMSG_SPACE is present
254 and works (lib/zebra.h provides if OS doesn't).
255
paul788dab12004-11-15 11:48:37 +00002562004-11-15 Paul Jakma <paul@dishone.st>
257
258 * ospf_{apiserver,te}.c: ospf_lsa_free's should be ospf_lsa_unlock.
259
paul05e85fa2004-11-12 10:52:19 +00002602004-11-12 Paul Jakma <paul@dishone.st>
261
262 * ospf_ia.c: (process_summary_lsa) Only an ABR has any reason to
263 ignore stub area summary default. Even so it seems a strange
264 check, add a comment to that effect.
265
paulf3ae74c2004-11-04 20:35:31 +00002662004-11-04 Paul Jakma <paul@dishone.st>
267
268 * ospfd.c: (ospf_network_match_iface) revert to previous network
269 statement match behaviour.
270
paul62d8e962004-11-02 20:26:45 +00002712004-11-02 Paul Jakma <paul@dishone.st>
272
273 * ospf_packet.c: (ospf_write_frags) remove iov arg, msg already points
274 to it. Add convenience pointer to msg->msg_iov[1], and use this,
275 fixing the unfortunate borkenness introduced in moving of this code
276 to a function.
277 (ospf_write) remove iovp and fix up call to previous.
278 (ospf_ls_upd_packet_new) cast size to long int - unfortunately
279 glibc's size_t format modifier is not portable.
280
paul37ccfa32004-10-31 11:24:51 +00002812004-10-31 Paul Jakma <paul@dishone.st>
282
283 * ospf_packet.c: (ospf_write_frags) Add debug output
284 (ospf_write) set type early, so we can pass it to
285 ospf_write_frags.
286 (ospf_ls_upd_packet_new) print size in debug output when too large
287 packet is encountered.
paul64511f32004-10-31 18:01:13 +0000288 * ospf_zebra.c: (ospf_distribute_list_update_timer) Ugly misuse of
289 THREAD_ARG to store an integer, but it should at least use same
290 same type to retrieve the value. Assert value is sane.
paul37ccfa32004-10-31 11:24:51 +0000291
paulac191232004-10-22 12:05:17 +00002922004-10-22 Paul Jakma <paul@dishone.st>
293
294 * ospf_network.c: (ospf_sock_init) call neutral setsock_ifindex()
295 function.
296 * ospf_packet.c: (ospf_read) manually look up ifindex
paul4ccb2c42004-10-22 22:52:33 +0000297 if system could not have returned one, eg openbsd, thanks to Rivo
298 Nurges for highlighting problem and fix.
paul06f953f2004-10-22 17:00:38 +0000299 Change setsockopt_pktinfo to setsockopt_ifindex.
paulac191232004-10-22 12:05:17 +0000300
hasso3fb9cd62004-10-19 19:44:43 +00003012004-10-19 Andrew J. Schorr <aschorr@telemetry-investments.com>
302
303 * ospf_snmp.c: (ospf_snmp_if_update) Fix logic to handle PtP links
304 with dedicated subnets properly.
305 * ospf_lsa.c: (lsa_link_ptop_set) ditto.
306 * ospfd.c: (ospf_network_match_iface) ditto.
307 (ospf_network_run) ditto.
308 * ospf_interface.c: (ospf_if_is_configured) ditto.
309 (ospf_if_lookup_by_prefix) ditto.
310 (ospf_if_lookup_recv_if) ditto.
311 * ospf_vty.c: (show_ip_ospf_interface_sub) Display the peer or
312 broadcast address if present.
313
hassod68614d2004-10-13 09:32:48 +00003142004-10-13 Hasso Tepper <hasso at quagga.net>
315
316 * ospf_main.c: Unbreak compilation with ospfapi disabled.
hassoc75105a2004-10-13 10:33:26 +0000317 * ospf_snmp.c: Remove defaults used to initialize smux connection to
318 snmpd. Connection is initialized only if smux peer is configured.
hassod68614d2004-10-13 09:32:48 +0000319
hassof4d58ce2004-10-12 06:13:54 +00003202004-10-12 Hasso Tepper <hasso at quagga.net>
321
322 * ospf_main.c, ospf_opaque.c: Unbreak ospfclient compilation - move
323 static variable from ospf_main.c into ospf_opaque.c.
324
hassoc3abdb72004-10-11 16:27:03 +00003252004-10-11 Hasso Tepper <hasso at quagga.net>
326
327 * ospf_main.c, ospf_opaque.c: Disable ospfapi init by default. New
328 command line switch to enable it.
329
paul6b333612004-10-11 10:11:25 +00003302004-10-11 Paul Jakma <paul@dishone.st>
331
332 * ospf_dump.c: (ospf_ip_header_dump) Assume header is in host order
333 remove ntohs that should have dissappeared. Take struct ip
334 as argument, caller has to know there's an IP header at start of
335 stream anyway.
336 * ospf_dump.h: update declaration of ospf_ip_header_dump.
337 * ospf_packet.c: (ospf_write) correct call to
338 sockopt_iphdrincl_swab_htosys which was munging the header.
339 (ospf_recv_packet) ip_len is needed for old OpenBSD fixup.
340 (ospf_read) sockopt_iphdrincl_swab_systoh ip header as soon as
341 we have it.
paul6c835672004-10-11 11:00:30 +0000342 * (global) Const char update and signed/unsigned fixes.
343 * (various headers) size defines should be unsigned.
344 * ospf_interface.h: remove duplicated defines, include the
345 authoritative header - though, these defines should probably
346 be moved to a dedicated header, or ospfd.h.
347 * ospf_lsa.h: (struct lsa) ls_seqnum should be unsigned.
348 * ospf_packet.c: (ospf_write) cast result of shift to unsigned.
paul6b333612004-10-11 10:11:25 +0000349
hassoeb1ce602004-10-08 08:17:22 +00003502004-10-08 Hasso Tepper <hasso at quagga.net>
351
352 * *.[c|h]: Fix compiler warnings: make some strings const, signed ->
353 unsigned, remove unused variables etc.
354
gdt54ade992004-10-07 19:38:20 +00003552004-10-07 Greg Troxel <gdt@claude.ir.bbn.com>
356
357 * ospf_apiserver.c (ospf_apiserver_unregister_opaque_type): Don't
358 use of variable names 'node' and 'nextnode' to avoid possible
359 conflict with list macros. Move variable declaration inside for
360 loop after a statement to top of function.
361
paulaa20c6f2004-10-07 14:19:36 +00003622004-10-07 Paul Jakma <paul@dishone.st>
363
364 * ospf_snmp.c: Missed list typedef update
365 * ospf_dump.c: Include sockopt.h for header swab functions.
366
paul18b12c32004-10-05 14:38:29 +00003672004-10-05 Paul Jakma <paul@dishone.st>
368
369 * ospf_packet.c: replace ospf_swap_iph_to... with
370 sockopt_iphdrincl_swab_...
371
hasso18a6dce2004-10-03 18:18:34 +00003722004-10-03 James R. Leu <jleu at mindspring.com>
373
374 * ospf_zebra.c: Read router id related messages from zebra daemon.
375 Schedule router-id update thread if it's changed.
376 * ospfd.c: Remove own router-id selection function. Use router id from
377 zebra daemon if it isn't manually overriden in configuration.
378
paul68defd62004-09-27 07:27:13 +00003792004-09-27 Paul Jakma <paul@dishone.st>
380
paul6a99f832004-09-27 12:56:30 +0000381 * ospf_dump.c: (ospf_ip_header_dump) Use HAVE_IP_HDRINCL_BSD_ORDER
382 Apply to offset too. Print ip_cksum, lets not worry about
383 possible 2.0.37 compile problems.
384 * ospf_packet.c: (ospf_swap_iph_to{n,h}) Use
385 HAVE_IP_HDRINCL_BSD_ORDER.
386 (ospf_recv_packet) ditto.
387 (ospf_write) Fixup iov argument to ospf_write_frags.
388 (struct msghdr).msg_name is caddr_t on most platforms.
paul68defd62004-09-27 07:27:13 +0000389 (ospf_recv_packet) ditto. And msg_flags is not always there
390 memset struct then set fields we care about rather than
391 initialise all fields individually.
392
hassoc9e52be2004-09-26 16:09:34 +00003932004-09-26 Hasso Tepper <hasso at quagga.net>
394
395 * ospf_abr.c, ospf_dump.c, ospf_lsa.c, ospf_packet.c, ospf_vty.c,
396 ospf_zebra.c: Fix compiler warnings.
397
paul87d6f872004-09-24 08:01:38 +00003982004-09-24 Paul Jakma <paul@dishone.st>
399
400 * ospf_apiserver.{c,h}: lists typedef removal cleanup.
401 update some list loops to LIST_LOOP. some miscellaneous indent
402 fixups.
403 (ospf_apiserver_unregister_opaque_type) fix listnode_delete of
404 referenced node in loop.
paul1603c062004-09-24 08:23:24 +0000405 (ospf_apiserver_term) loops calling ospf_apiserver_free, which
406 deletes referenced nodes from apiserver_list, fixed.
paul87d6f872004-09-24 08:01:38 +0000407 * ospf_interface.h: lists typedef removal cleanup.
408 * ospf_opaque.{c,h}: lists typedef removal cleanup. update some list
409 loops to LIST_LOOP. miscellaneous style and indent fixups.
410 * ospf_te.{c,h}: ditto
411 * ospf_packet.c: lists typedef removal cleanup.
paula2570682004-09-24 08:09:57 +0000412 (ospf_write) ifdef fragmentation support. move actual
413 fragmentation out to a new, similarly ifdefed, function.
414 (ospf_write_frags) fragmented write support, moved from previous.
paul87d6f872004-09-24 08:01:38 +0000415
hasso52dc7ee2004-09-23 19:18:23 +00004162004-09-23 Hasso Tepper <hasso at quagga.net>
417
418 * *.[c|h]: list -> struct list *, listnode -> struct listnode *.
419
paul68b73392004-09-12 14:21:37 +00004202004-09-12 Paul Jakma <paul@dishone.st>
421
422 * ospf_packet.c: Fix bugzilla #107
423 (ospf_packet_max) get rid of the magic 88 constant
424 (ospf_swab_iph_ton) new function. set ip header to network order,
425 taking BSDisms into account.
426 (ospf_swab_iph_toh) the inverse.
427 (ospf_write) Add support for IP fragmentation, will only work on
428 linux though, other kernels make it impossible. get rid of the
429 magic 4 constant.
430 (ospf_make_ls_upd) Bound check to end of stream, not to
431 interface mtu.
432 (ospf_ls_upd_packet_new) New function, allocate upd packet
433 taking oversized LSAs into account.
434 (ospf_ls_upd_queue_send) use ospf_ls_upd_packet_new to allocate,
435 rather than statically allocating mtu sized packet buffer, which
436 actually was wrong - it didnt take ip header into account, which
437 should not be included in packet buffer.
438 (ospf_ls_upd_send_queue_event) minor tweaks and remove
439 TODO comment.
440
gdt630e4802004-08-31 17:28:41 +00004412004-08-31 David Wiggins <dwiggins@bbn.com>
442
443 * ospf_spf.c (ospf_spf_calculate): Many more comments and debug
444 print statements. New function ospf_vertex_dump used in debugging.
445
4462004-08-31 David Wiggins <dwiggins@bbn.com>
447
448 * ospf_spf.h (struct vertex): Comments for flags and structure members.
449
4502004-08-31 David Wiggins <dwiggins@bbn.com>
451
452 * ospf_route.c: When finding an alternate route, log cost as well.
453
4542004-08-31 David Wiggins <dwiggins@bbn.com>
455
456 * ospf_interface.c (ospf_lookup_if_params): Initialize af in
457 struct prefix allocated on stack.
458
4592004-08-31 David Wiggins <dwiggins@bbn.com>
460
461 * ospf_packet.c (ospf_ls_ack_send_delayed): In p2mp mode, send
462 acks to AllSPFRouters, rather than All-DR.
463
hasso7b901432004-08-31 13:37:42 +00004642004-08-27 Hasso Tepper <hasso at quagga.net>
465
466 * ospf_vty.c: Don't print ospf network type under interface only
467 if interface is in broadcast mode and interface type really is
468 broadcast. Fixes Bugzilla #108.
469
gdtd7d93992004-08-27 12:03:42 +00004702004-08-27 David Wiggins <dwiggins@bbn.com>
471
472 * ospf_spf.c (ospf_nexthop_calculation): Initialize address family
473 in on-stack struct prefix_ipv4. Fixes point-to-multipoint SPF
474 calculation.
475
gdtd0deca62004-08-26 13:14:07 +00004762004-08-26 Greg Troxel <gdt@fnord.ir.bbn.com>
477
478 * ospf_packet.c (ospf_recv_packet): adjust size declaration of
gdtd7d93992004-08-27 12:03:42 +0000479 buffer used to get interface index so that it compiles on other
480 than Linux and includes the required alignment space. Probably
481 this was only working on sparc/sparc64 because most of
482 sockaddr_dl was not being written.
gdtd0deca62004-08-26 13:14:07 +0000483
paul863082d2004-08-19 04:43:43 +00004842004-08-19 Paul Jakma <paul@dishone.st>
485
486 * ospf_packet.c: update to match sockopt renames.
487
paul75ee0b82004-08-05 09:10:31 +00004882004-08-04 Paul Jakma <paul@dishone.st>
489
490 * ospf_spf.c: (ospf_spf_consider_nexthop) Add comment about issue.
491 Compare only against list head - all nexthops must be same cost
492 anyway, fixes a reference-listnode-after-delete bug noted by
493 Kir Kostuchenko.
494 (ospf_nexthop_calculation) Use ospf_spf_consider_nexthop for all
495 candidates attached to root.
496
paul36c64ef2004-07-27 11:19:11 +00004972004-07-27 Paul Jakma <paul@dishone.st>
498
paul48fe13b2004-07-27 17:40:44 +0000499 * ospf_packet.c: (ospf_ls_upd_send_queue_event) fix thinko from
500 last fix for ospfd wedging due to oversize LSAs: dont list loop on
501 ospf_ls_upd_queue_send() - guaranteed segfault.
502
5032004-07-27 Paul Jakma <paul@dishone.st>
504
paul36c64ef2004-07-27 11:19:11 +0000505 * ospf_opaque.c: (ospf_opaque_lsa_flush_schedule) do not NULL out
506 the LSA as then free_opaque_info_per_id() can never unlock (and
507 free) the LSA. Reported by Gunnar Stigen.
508
paul2dd8bb42004-07-23 15:13:48 +00005092004-07-23 Paul Jakma <paul@dishone.st>
510
511 * ospf_network.c: Replace PKTINFO/RECVIF with call to
512 setsockopt_pktinfo
513 * ospf_packet.c: Use getsockopt_pktinfo_ifindex and
514 SOPT_SIZE_CMSG_PKTINFO_IPV4.
515
paul59ea14c2004-07-14 20:50:36 +00005162004-07-14 Paul Jakma <paul@dishone.st>
517
518 * ospf_packet.c: (ospf_ls_upd_send_queue_event) Partial fix for
519 problem reported by Peter Frost amongst others, where function
520 will spin indefinitely if update list contains LSAs greater than
521 MTU-headers or other condition leading to update list never being
522 cleared. Problem of what to do with these LSAs remains.
523 (ospf_make_ls_upd) add comment about large LSA problem,
524 indentation cleanup.
525
gdtb2c1b282004-07-01 12:35:36 +00005262004-07-01 Greg Troxel <gdt@fnord.ir.bbn.com>
527
528 * Makefile.am (lib_LTLIBRARIES): make libospf shared
529
gdt87efd642004-06-30 17:36:11 +00005302004-06-30 Greg Troxel <gdt@poblano.ir.bbn.com>
531
532 * Makefile.am: Add shlib support.
533
hassobeebba72004-06-20 21:00:27 +00005342004-06-10 Hasso Tepper <hasso@estpak.ee>
535
536 * *: Removed ifdefs HAVE_NSSA.
537
paul553ff112004-06-06 09:41:00 +00005382004-06-06 Paul Jakma <paul@dishone.st>
539
540 * ospf_dump.c,ospf_lsa.c: Fix typos of merge of previous.
541 ospf_flood.c: (ospf_process_self_originated_lsa) fix zlog format
542
paul0c2be262004-05-31 14:16:54 +00005432004-05-31 Sagun Shakya <sagun.shakya@sun.com>
544
545 * ospf_dump.c: (ospf_lsa_header_dump) LOOKUP can return null if
546 index is out of range.
547 ospf_flood.c: endianness fix
548 ospf_lsa.c: Missing ntohl's on (struct lsa *)->data->ls_seqnum
549 in various places.
550
hassodd669bb2004-05-10 07:43:59 +00005512004-05-10 Hasso Tepper <hasso@estpak.ee>
552
553 * ospf_zebra.c, ospfd.c: Move ospf_prefix_list_update() function
554 to ospf_zebra.c from ospfd.c and add redistribution updates if
555 route-map is used in redistribution.
556 * ospf_main.c: Remove now useless call to ospf_init().
557
paul0a589352004-05-08 11:48:26 +00005582004-05-08 Paul Jakma <paul@dishone.st>
559
560 * ospf_zebra.c: Sync with lib/zclient changes
561
pauld3f0d622004-05-05 15:27:15 +00005622004-05-05 Paul Jakma <paul@dishone.st>
563
paul5bd41892004-05-05 17:29:24 +0000564 * ospf_network.c: (ospf_sock_init) Check whether IP_HDRINCL is
565 defined. Warn at compile and runtime. Use
566 IPTOS_PREC_INTERNETCONTROL otherwise.
pauld3f0d622004-05-05 15:27:15 +0000567 * ospf_packet.c: (ospf_associate_packet_vl) cleanup, move
568 some of the checks up to ospf_read, return either a
569 virtual link oi, or NULL.
570 (ospf_read) Cleanup, make it responsible for checks. Remove
571 the nbr lookup - moved to ospf_neighbor. Adjust all nbr
572 lookups to use new wrappers exported by ospf_neighbor.
573 * ospf_neighbor.h: Add ospf_neigbour_get and ospf_nbr_lookup.
574 * ospf_neighbor.c: (ospf_neigbour_get) Index ospf_interface
575 neighbour table by router-id for virtual-link ospf_interfaces,
576 not by peer_addr (which breaks for asymmetric vlinks)
577 (ospf_nbr_lookup) add a wrapper for nbr lookups to deal with
578 above.
paulcd59da62004-05-05 17:26:55 +0000579 * ospf_interface.c: (ospf_vl_set_params) Catch changes of interface
580 address for either end of a virtual-link, and hence potential cost
581 changes.
582
hassoa0a39762004-04-23 08:51:10 +00005832004-04-22 Hasso Tepper <hasso@estpak.ee>
584
585 * ospf_zebra.c: Don't ignore reject/bh routes, it's the only way
586 to "summarize" routes in ASBR at the moment.
587
hasso8585d4e2004-04-20 17:25:12 +00005882004-04-20 Hasso Tepper <hasso@estpak.ee>
589
590 * ospfd.c: Unset NP flag if area is going to be normal or stub.
591 Fixes UNH OSPF_NSSA.1.2a comment.
592 * ospf_abr.c: Originate default into stub/nssa area even if
593 summaries are disabled.
594 * ospf_zebra.c: Don't attempt to redistribute 127.0.0.0/8.
595
hassoc266ac72004-04-19 17:31:00 +00005962004-04-19 Hasso Tepper <hasso@estpak.ee>
597
598 * ospf_vty.c: Don't warn that export- and import-list can't be
599 configured to backbone area if they are applied and are working
600 fine.
601
hasso128d31d2004-04-04 12:52:33 +00006022004-02-19 Sowmini Varadhan <sowmini.varadhan@sun.com>
603
604 * ospf_packet.c: Don't drop packets in Solaris x86.
605 [quagga-dev 1005].
606
hasso0d85b992004-03-18 19:18:33 +00006072004-03-18 Amir Guindehi <amir@datacore.ch>
608
609 * ospf_opaque.c: Attempt to correct the incorrect behavior of
610 Quagga's ospfd in the special situation that a node's opaque
611 capability has changed as "ON -> OFF -> ON". [quagga-dev 843].
612
paul7f352b82004-02-19 19:37:47 +00006132004-02-19 Sowmini Varadhan <sowmini.varadhan@sun.com>
614
615 * ospf_abr.c: (ospf_abr_update_aggregate) UNH 3.12b,c, address range
616 should be configured with the highest cost path within the range,
617 not lowest.
618
paul940b01a2004-02-17 20:07:30 +00006192004-02-17 Paul Jakma <paul@dishone.st>
620
621 * ospf_zebra.c: (ospf_interface_delete) Do not delete the interface
622 params, nor the interface structure, if an interface delete
623 message is received from zebra.
624 * ospf_interface.c: (ospf_if_delete_hook) Delete the interface
625 params and interface, ie that which was previously removed in
626 (ospf_interface_delete) above.
627
hasso2db3d052004-02-11 21:52:13 +00006282004-02-11 Hasso Tepper <hasso@estpak.ee>
629 * ospf_interface.c, ospf_zebra.c: Don't attempt to read path->oi->ifp
630 if oi doesn't exist any more.
631
hassocb05eb22004-02-11 21:10:19 +00006322004-02-11 Vadim Suraev <vadim.suraev@terayon.com>
633 * ospf_packet.c (ospf_ls_upd): Router should flush received network
634 LSA if it was originated with older router-id ([zebra 14710] #6).
635
6362003-12-08 Mattias Amnefelt <mattiasa@kth.se>
paul239aecc2003-12-08 10:34:54 +0000637
638 * ospf_packet.c: (ospf_recv_packet) OpenBSD now leaves iph.ip_len
639 network byte order.
640
gdt8f40e892003-12-05 14:01:43 +00006412003-12-05 Greg Troxel <gdt@poblano.ir.bbn.com>
642
643 * ospfd.c (ospf_network_match_iface): Rewrite code for clarity
644 while trying not to change semantics. Add ifdefed-out code to
645 avoid matching ppp interfaces whose destination address does not
646 also match the prefix under consideration, to help out people with
647 problems due to as-yet-unfixed bugs with p2p interfaces coming and
648 going.
649
paul736d3442003-07-24 23:22:57 +00006502003-07-25 kamatchi soundaram <kamatchi@tdd.sj.nec.com>
651
652 * ospf_packet.c (ospf_ls_upd_send_queue_event): get next route
653 node in body of the loop to avoid chance that route node
654 is unlocked and deleted before the next iteration tries to
655 get next route node.
656
paul0a825c72003-05-24 13:48:16 +00006572003-05-24 Kenji Yabuuchi
658
659 * ospf_interface.c(ospf_if_lookup_recv_if): Use the most specific
660 match for interface lookup.
661
paul551a8972003-05-18 15:22:55 +00006622003-05-18 Hasso Tepper <hasso@estpak.ee>
paul445f1432003-05-16 19:00:31 +0000663
paul551a8972003-05-18 15:22:55 +0000664 * ospf_vty.c: Show NSSA LSA route info in "show ip ospf database"
665 output
paul445f1432003-05-16 19:00:31 +0000666
pauld7480322003-05-16 17:31:51 +00006672003-05-16 Hasso Tepper <hasso@estpak.ee>
668
669 * ospf_lsa.c: Fix handling of NSSA
670
paul551a8972003-05-18 15:22:55 +00006712003-04-23 Hasso Tepper <hasso@estpak.ee>
672
673 * ospf_vty.c: fix "router xxx" node commands in vtysh
674
paul445f1432003-05-16 19:00:31 +00006752003-04-19 Hasso Tepper <hasso@estpak.ee>
676
677 * {ospf_abr,ospfd}.c: area id's DECIMAL -> ADDRESS
678 * ospf_routemap.c: sync daemon's route-map commands to have same
679 syntax.
680
6812003-04-19 Sergey Vyshnevetskiy <serg@vostok.net>
682
683 * ospf_packet.c: Add missing param to zlog
684 * ospf_flood.c: remove unused vars
685
6862003-04-17 Denis Ovsienko <zebra@pilot.org.ua>
687
688 * ospf_interface.c: fix incorrect memset
689
paul28a13842003-05-16 20:30:37 +00006902003-04-10 Amir Guindehi <amir@datacore.ch>
paul445f1432003-05-16 19:00:31 +0000691
692 * ospf_lsa.[ch]: opaque LSA fix, use ospf_lookup.
693
6942003-04-03 David Watson <dwatson@eecs.umich.edu>
695
696 * ospf_lsa.c: byte order fix
697
paul07661cb2003-03-18 00:03:05 +00006982002-03-17 Amir Guindehi <amir@datacore.ch>
699
700 * ospf_apiserver.[ch]: Merge Ralph Keller's OSPFAPI support.
701 * ospf_api.[ch]: Merge Ralph Keller's OSPFAPI support.
702 * ospfclient: OSPFAPI demonstration client.
703
7042003-01-23 Masahiko Endo <endo@suri.co.jp>
705
706 * ospf_ism.c: NSM event schedule bug fix.
707
7082002-10-30 Greg Troxel <gdt@ir.bbn.com>
709
710 * ospf_packet.c (ospf_make_md5_digest): MD5 length fix.
711
paul718e3742002-12-13 20:15:29 +00007122002-10-23 endo@suri.co.jp (Masahiko Endo)
713
714 * ospf_opaque.c: Update Opaque LSA patch.
715
7162002-10-23 Ralph Keller <keller@tik.ee.ethz.ch>
717
718 * ospf_vty.c (show_ip_ospf_database): Fix CLI parse.
719
7202002-10-23 Juris Kalnins <juris@mt.lv>
721
722 * ospf_interface.c (ospf_if_stream_unset): When write queue
723 becomes empty stop write timer.
724
7252002-10-10 Greg Troxel <gdt@ir.bbn.com>
726
727 * ospf_packet.c (ospf_check_md5_digest): Change >= to > to make it
728 conform to RFC.
729
7302002-07-07 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
731
732 * zebra-0.93 released.
733
7342002-06-19 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
735
736 * ospf_spf.c (ospf_nexthop_calculation): Add NULL set to oi and
737 check of l2. Reported by: Daniel Drown <dan-zebra@drown.org>
738 (ospf_lsa_has_link): LSA Length calculation fix. Reported by:
739 Paul Jakma <paulj@alphyra.ie>.
740
741 * ospfd.c (ospf_if_update): Fix nextnode reference bug. Reported
742 by: juris@mt.lv.
743
7442002-01-21 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
745
746 * ospfd.c: Merge [zebra 11445] Masahiko ENDO's Opaque-LSA support.
747
7482001-08-27 Kunihiro Ishiguro <kunihiro@zebra.org>
749
750 * ospf_interface.c (ospf_add_to_if): Use /32 address to register
751 OSPF interface information.
752 (ospf_delete_from_if): Likewise.
753
754 * ospf_zebra.c (ospf_interface_address_delete): Likewise.
755
7562001-08-23 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
757
758 * ospf_zebra.c (ospf_redistribute_unset): When redistribute type
759 is OSPF, do not unset redistribute flag.
760
7612001-08-19 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
762
763 * zebra-0.92a released.
764
7652001-08-15 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
766
767 * zebra-0.92 released.
768
7692001-08-12 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
770
771 * ospfd.c (ospf_config_write): auto-cost reference-bandwidth
772 configuration display.
773
7742001-07-24 David Watson <dwatson@eecs.umich.edu>
775
776 * ospf_spf.c (ospf_spf_next): Modify ospf_vertex_add_parent to
777 check for an existing link before connecting the parent and child.
778 ospf_nexthop_calculation is also modified to check for duplicate
779 entries when copying from the parent. Finally, ospf_spf_next
780 removes duplicates when it merges two equal cost candidates.
781
7822001-07-23 itojun@iijlab.net
783
784 * ospfd.c (show_ip_ospf_neighbor): Check ospf_top before use it
785 [zebra 8549].
786
7872001-07-23 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
788
789 * ospf_packet.c (ospf_write): Remove defined(__OpenBSD__) to make
790 it work on OpenBSD.
791
7922001-06-26 Kunihiro Ishiguro <kunihiro@zebra.org>
793
794 * ospf_zebra.c (config_write_ospf_default_metric): Display
795 default-metric configuration.
796
7972001-06-18 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
798
799 * ospf_ia.h (OSPF_EXAMINE_SUMMARIES_ALL): Remove old macros.
800
8012001-05-28 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
802
803 * ospf_snmp.c (ospfIfEntry): Fix interface lookup bug to avoid
804 crush.
805 (ospfIfMetricEntry): Likewise.
806
8072001-03-18 Kunihiro Ishiguro <kunihiro@zebra.org>
808
809 * ospf_packet.c (ospf_read): Fix typo. Reported by: "Jen B
810 Lin'Kova" <jen@stack.net>.
811
8122001-03-15 Gleb Natapov <gleb@nbase.co.il>
813
814 * ospf_interface.c (ip_ospf_network): Set interface parameter.
815 (interface_config_write): Add check for OSPF_IFTYPE_LOOPBACK.
816
817 * ospf_zebra.c (ospf_interface_add): Set interface parameter.
818
8192001-02-21 Kunihiro Ishiguro <kunihiro@zebra.org>
820
821 * ospf_packet.c (ospf_recv_packet): Solaris also need to add
822 (iph.ip_hl << 2) to iph.ip_len.
823
8242001-02-09 Kunihiro Ishiguro <kunihiro@zebra.org>
825
826 * ospfd.h (OSPF_LS_REFRESH_TIME): Fix OSPF_LS_REFRESH_TIME value.
827 Suggested by: David Watson <dwatson@eecs.umich.edu>.
828
829 * ospf_zebra.c (zebra_init): Remove zebra node.
830
831 * ospfd.c (ospf_area_range_set): Function name is changed from
832 ospf_ara_range_cmd.
833 (ospf_area_range_unset): New function which separated from DEFUN.
834 New commands are added:
835 "no area A.B.C.D range A.B.C.D/M advertise"
836 "no area <0-4294967295> range A.B.C.D/M advertise"
837 "no area A.B.C.D range A.B.C.D/M not-advertise"
838 "no area <0-4294967295> range A.B.C.D/M not-advertise"
839
840 * ospf_lsa.c (ospf_lsa_more_recent): Fix previous change.
841
8422001-02-08 Matthew Grant <grantma@anathoth.gen.nz>
843
844 * ospf_network.c (ospf_if_add_allspfrouters): Use
845 setsockopt_multicast_ipv4.
846 (ospf_if_drop_allspfrouters): Likewise.
847
848 * ospf_lsa.c (ospf_router_lsa_install): Add rt_recalc flag.
849 (ospf_network_lsa_install): Likewise.
850 (ospf_summary_lsa_install): Likewise.
851 (ospf_summary_asbr_lsa_install): Likewise.
852 (ospf_external_lsa_install): Likewise.
853 (ospf_lsa_install): Call ospf_lsa_different to check this LSA is
854 new one or not.
855
8562001-02-08 Kunihiro Ishiguro <kunihiro@zebra.org>
857
858 * ospf_zebra.c (ospf_interface_delete): Do not free interface
859 structure when ospfd receive interface delete message to support
860 pseudo interface.
861
8622001-02-01 Dick Glasspool <dick@ipinfusion.com>
863
864 * ospfd.c (area_range_notadvertise): Change area range "suppress"
865 command to "not-advertise".
866
867 * ospfd.h (OSPF_LS_REFRESH_TIME): Change OSPF_LS_REFRESH_TIME from
868 1800 to 60.
869
870 * ospf_abr.c (ospf_abr_update_aggregate): When update_aggregate is
871 updating the area-range, the lowest cost is now saved.
872
873 * ospf_lsa.c (ospf_lsa_more_recent): Routing to compare sequence
874 numbers rather than creating overflow during calculation.
875
8762001-02-01 Kunihiro Ishiguro <kunihiro@zebra.org>
877
878 * zebra-0.91 is released.
879
8802001-01-31 Kunihiro Ishiguro <kunihiro@zebra.org>
881
882 * ospf_packet.c (ospf_db_desc_proc): Do not continue process when
883 NSM_SeqNumberMismatch is scheduled.
884 (ospf_ls_req): Free ls_upd when return from this function.
885 (ospf_ls_upd_timer): When update list is empty do not call
886 ospf_ls_upd_send(). Suggested by: endo@suri.co.jp (Masahiko
887 Endo).
888
8892001-01-26 Kunihiro Ishiguro <kunihiro@zebra.org>
890
891 * ospf_lsa.c (ospf_maxage_flood): Flood LSA when it reaches
892 MaxAge. RFC2328 Section 14.
893 (ospf_maxage_lsa_remover): Call above function during removing
894 MaxAge LSA.
895
8962001-01-26 Dick Glasspool <dick@ipinfusion.com>
897
898 * ospf_flood.c (ospf_flood_through_as): Function is updated for
899 NSSA Translations now done at ospf_abr.c with no change in P-bit.
900
901 * ospf_lsa.c (ospf_get_nssa_ip): Get 1st IP connection for Forward
902 Addr.
903 (ospf_install_flood_nssa): Leave Type-7 LSA at Lock Count = 2.
904
905 * ospf_ase.c (ospf_ase_calculate_route): Add debug codes.
906
907 * ospf_abr.c (ospf_abr_translate_nssa): Recalculate LSA checksum.
908
909 * ospf_packet.h (OSPF_SEND_PACKET_LOOP): Added for test packet.
910
911 * ospf_dump.c (ospf_lsa_type_msg): Add OSPF_GROUP_MEMBER_LSA and
912 OSPF_AS_NSSA_LSA.
913
914 * ospfd.c (data_injection): Function to inject LSA. This is
915 debugging command.
916
9172001-01-11 Kunihiro Ishiguro <kunihiro@zebra.org>
918
919 * ospf_route.c (ospf_route_match_same): Remove function.
920 (ospf_route_match_same_new): Renamed to ospf_route_match_same.
921
922 * ospf_zebra.c (ospf_interface_address_delete): Add check for
923 oi->address. Suggested by Matthew Grant
924 <grantma@anathoth.gen.nz>.
925 (ospf_zebra_add): Remove function.
926 (ospf_zebra_add_multipath): Rename to ospf_zebra_add.
927
928 * ospf_interface.c: Remove HAVE_IF_PSEUDO part.
929
930 * ospf_zebra.c: Likewise.
931
9322001-01-10 Kunihiro Ishiguro <kunihiro@zebra.org>
933
934 * ospf_ase.c: Remove OLD_RIB part.
935
936 * ospf_route.c: Likewise.
937
938 * zebra-0.90 is released.
939
940 * ospf_packet.c (ospf_recv_packet): Use ip_len adjestment code to
941 NetBSD.
942
9432001-01-09 Kunihiro Ishiguro <kunihiro@zebra.org>
944
945 * ospf_route.c (ospf_route_delete): Use
946 ospf_zebra_delete_multipath.
947
9482001-01-09 Matthew Grant <grantma@anathoth.gen.nz>
949
950 * ospf_interface.c (ospf_if_cleanup): Function name is renamed
951 from ospf_if_free(). Rewrite whole procudure to support primary
952 address deletion.
953
954 * ospf_zebra.c (ospf_interface_address_delete): Add primary
955 address deletion process.
956
9572001-01-09 Kunihiro Ishiguro <kunihiro@zebra.org>
958
959 * ospf_packet.c (ospf_recv_packet): OpenBSD has same ip_len
960 treatment like FreeBSD.
961
9622001-01-09 endo@suri.co.jp (Masahiko Endo)
963
964 * ospf_packet.c (ospf_recv_packet): FreeBSD kernel network code
965 strips IP header size from receiving IP Packet. So we adjust
966 ip_len to whole IP packet size by adding IP header size.
967
9682001-01-08 endo@suri.co.jp (Masahiko Endo)
969
970 * ospf_network.c (ospf_serv_sock): When socket() is failed return
971 immediately.
972 (ospf_serv_sock): Close socket when it is not used.
973
974 * ospf_packet.c (ospf_write): Set sin_len when HAVE_SIN_LEN is
975 defined.
976 (ospf_write): When bind is fined, close sock.
977
9782001-01-07 Gleb Natapov <gleb@nbase.co.il>
979
980 * ospf_zebra.c (ospf_interface_state_up): Fixes coredump that
981 appears when you try to configure bandwidth on the ppp interface
982 that is not yet configured in ospfd.
983
9842001-01-07 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
985
986 * ospf_route.c (show_ip_ospf_route_external): "show ip ospf route"
987 will print nexthops for AS-external routes.
988
989 * ospf_ase.c (ospf_ase_route_match_same): New function to compare
990 ASE route under multipath environment.
991 (ospf_ase_compare_tables): Likewise.
992
9932001-01-01 Kunihiro Ishiguro <kunihiro@zebra.org>
994
995 * ospfd.h (OSPF_VTYSH_PATH): Change "/tmp/ospfd" to "/tmp/.ospfd".
996
9972000-12-28 Kunihiro Ishiguro <kunihiro@zebra.org>
998
999 * ospf_route.c (ospf_route_install): Install multipath information
1000 to zebra daemon.
1001
1002 * ospf_zebra.c (ospf_zebra_add_multipath): Function for passing
1003 multipath information to zebra daemon.
1004
10052000-12-25 Dick Glasspool <dick@ipinfusion.com>
1006
1007 * ospf_packet.c (ospf_write): Call ospf_packet_delete when sendto
1008 fail.
1009 (DISCARD_LSA): Add argument N for logging point of DISCARD_LSA is
1010 called.
1011
1012 * ospf_lsa.c (ospf_external_lsa_refresh): NSSA install_flood will
1013 leave Type-7 LSA at Lock Count = 2.
1014
1015 * ospf_flood.c (ospf_flood_through): Flood_though_as updated for
1016 NSSA no P-bit off during Area flooding, but P-bit is turned off
1017 for mulitple NSSA AS flooding.
1018
1019 * ospf_ase.c (ospf_ase_calculate_timer): Added calculations for
1020 Type-7 LSDB.
1021
1022 * ospf_abr.c (ospf_abr_translate_nssa): Removed one unlock call.
1023 (ospf_abr_announce_nssa_defaults): Corrected Debug from EVENT to
1024 NSSA.
1025
10262000-12-25 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1027
1028 * ospf_zebra.c (ospf_zebra_read_ipv4): Checking the age of the
1029 found LSA and if the LSA is MAXAGE we should call refresh instead
1030 of originate.
1031
10322000-12-18 Dick Glasspool <dick@ipinfusion.com>
1033
1034 * ospf_abr.c: Removed redundant "...flood" in
1035 announce_network_to_area(). Repaired nssa Unlock by using
1036 discard.
1037
1038 * ospf_packet.c: Removed old NSSA translate during mk_ls_update.
1039
1040 * ospfd.c: Free up all data bases including NSSA.
1041
1042 * ospf_lsa.c: Now allow removal of XLATE LSA's Check in
1043 discard_callback. Added routine to get ip addr from within the
1044 ifp.
1045
1046 * ospf_flood.c: Now set Forward Address for outgoing Type-7.
1047
1048 * ospf_lsa.h: Added prototype for the below. struct in_addr
1049 ospf_get_ip_from_ifp (struct interface *ifp).
1050
10512000-12-14 Gleb Natapov <gleb@nbase.co.il>
1052
1053 * ospf_packet.c (ospf_recv_packet): New OSPF pakcet read method.
1054 Now maximum packet length may be 65535 bytes (maximum IP packet
1055 length).
1056
1057 * ospf_interface.c (ospf_if_stream_set): Don't make input buffer.
1058
1059 * ospfd.c (config_write_network_area): Remove unnecessary area
1060 lookup code.
1061
10622000-12-13 Kunihiro Ishiguro <kunihiro@zebra.org>
1063
1064 * ospf_packet.c (ospf_read): Accept packet bigger than MTU value.
1065
10662000-12-13 Gleb Natapov <gleb@nbase.co.il>
1067
1068 * ospfd.c (config_write_network_area): Fix bug in
1069 config_write_network_area function.
1070
10712000-12-12 Gleb Natapov <gleb@nbase.co.il>
1072
1073 * ospf_abr.c (ospf_abr_announce_network_to_area): Make Summary
1074 LSA's origination and refreshment as same as other type of LSA.
1075
1076 * ospf_lsa.c (ospf_summary_lsa_refresh): Return struct ospf_lsa *.
1077
1078 * ospf_lsa.c (ospf_summary_asbr_lsa_refresh): Likewise.
1079
10802000-12-08 Dick Glasspool <dick@ipinfusion.com>
1081
1082 The bulk of NSSA changes are contained herein; This version will
1083 require manual setting of "always" for NSSA Translator, and will
1084 not perform aggregation yet.
1085
1086 * ospf_dump.c: "debug ospf nssa" is added.
1087
1088 * ospf_dump.h: Likewise.
1089
1090 * ospf_packet.c (ospf_hello): Display router ID on Bad NSSA Hello.
1091
1092 * ospfd.c: Discard_LSA to stay away from LOCAL_XLT Process NSSA
1093 'never, candidate, always'. Change "suppress" to "not-advertise".
1094
1095 * ospfd.h: Add TranslatorRole to struct ospf_area. Add anyNSSA to
1096 struct ospf.
1097
1098 * ospf_ase.c (ospf_ase_calculate_route): External to stay away
1099 from LOCAL_XLT
1100
1101 * ospf_nsm.c (ospf_db_summary_add): External to stay away from
1102 LOCAL_XLT
1103
1104 * ospf_abr.c: Major logic added for abr_nssa_task(). If ABR, and
1105 NSSA translator, then do it. Approve the global list, and flush
1106 any unapproved.
1107
1108 * ospf_lsa.h: New LSA flag OSPF_LSA_LOCAL_XLT to indicate that the
1109 Type-5 resulted from a Local Type-7 translation; not used for
1110 flooding, but used for flushing.
1111
1112 * ospf_flood.c: New NSSA flooding.
1113
11142000-12-08 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1115
1116 * ospfd.c (ospf_find_vl_data): New function for looking up virtual
1117 link data.
1118 (ospf_vl_set_security): Virtual link configuration with
1119 authentication.
1120 (ospf_vl_set_timers): Set timers for virtual link.
1121
1122 * New commands are added.
1123 "area A.B.C.D virtual-link A.B.C.D"
1124 "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>"
1125 "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"
1126 "area A.B.C.D virtual-link A.B.C.D authentication-key AUTH_KEY"
1127 "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"
1128 "area A.B.C.D virtual-link A.B.C.D message-digest-key <1-255> md5 KEY"
1129
1130 * ospf_packet.c (ospf_check_md5_digest): Add neighbor's
1131 cryptographic sequence number treatment.
1132 (ospf_check_auth): OSPF input buffer is added to argument.
1133 (ospf_read): Save neighbor's cryptographic sequence number.
1134
1135 * ospf_nsm.c (nsm_change_status): Clear cryptographic sequence
1136 number when neighbor status is changed to NSM down.
1137
1138 * ospf_neighbor.c (ospf_nbr_new): Set zero to crypt_seqnum.
1139
1140 * ospf_neighbor.h (struct ospf_neighbor): Add cryptographic
1141 sequence number to neighbor structure.
1142
11432000-11-29 Kunihiro Ishiguro <kunihiro@zebra.org>
1144
1145 * ospf_snmp.c (ospfIfLookup): OSPF MIB updates.
1146 (ospfExtLsdbEntry): Add OspfExtLsdbTable treatment.
1147
11482000-11-28 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1149
1150 * ospfd.c (ospf_interface_down): Clear a ls_upd_queue queue of the
1151 interface.
1152 (ospf_ls_upd_queue_empty): New function to empty ls update queue
1153 of the OSPF interface.
1154 (no_router_ospf): 'no router ospf' unregister redistribution
1155 requests from zebra.
1156
11572000-11-28 Kunihiro Ishiguro <kunihiro@zebra.org>
1158
1159 * ospf_ism.c (ism_change_status): Increment status change number.
1160
1161 * ospf_interface.h (struct ospf_interface): Add new member for
1162 status change statistics.
1163
1164 * Makefile.am: Update dependencies.
1165
1166 * ospf_zebra.c (ospf_interface_add): OSPF SNMP interface update.
1167 (ospf_interface_delete): OSPF SNMP interface delete.
1168
1169 * ospf_snmp.h: New file is added.
1170
11712000-11-23 Dick Glasspool <dick@ipinfusion.com>
1172
1173 * ospfd.h: Add new ospf_area structure member for
1174 NSSATranslatorRole and NSSATranslator state.
1175
1176 * ospfd.c: Provided for eventual commands to specify NSSA
1177 elections for "translator- ALWAYS/NEVER/CANDIDATE". Provided for
1178 decimal integer version of area-suppress.
1179
1180 * ospf_flood.c: Flood Type-7's only into NSSA (not AS).
1181
1182 * ospf_lsa.c: Undo some previous changes for NSSA. If NSSA
1183 translator, advertise Nt bit.
1184
1185 * ospf_route.c: 1st version of "sh ip os border-routers".
1186
11872000-11-23 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1188
1189 * ospfd.c (area_vlink): Virtual link can not configured in stub
1190 area.
1191
11922000-11-23 Gleb Natapov <gleb@nbase.co.il>
1193
1194 * ospf_packet.c (ospf_db_desc): In states Loading and Full the
1195 slave must resend its last Database Description packet in response
1196 to duplicate Database Description packets received from the
1197 master. For this reason the slave must wait RouterDeadInterval
1198 seconds before freeing the last Database Description packet.
1199 Reception of a Database Description packet from the master after
1200 this interval will generate a SeqNumberMismatch neighbor
1201 event. RFC2328 Section 10.8
1202 (ospf_make_db_desc): DD Master flag treatment.
1203
1204 * ospf_nsm.c (nsm_twoway_received): Move DD related procedure to
1205 nsm_change_status().
1206 (nsm_bad_ls_req): Likewise.
1207 (nsm_adj_ok): Likewise.
1208 (nsm_seq_number_mismatch): Likewise.
1209 (nsm_oneway_received): Likewise.
1210
1211 * ospf_neighbor.h (struct ospf_neighbor): New structure member
1212 last_send_ts for timestemp when last Database Description packet
1213 was sent.
1214
1215 * ospf_nsm.c (ospf_db_desc_timer): Make it sure nbr->last_send is
1216 there. Call ospf_db_desc_resend() in any case.
1217
12182000-11-16 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1219
1220 * ospf_lsa.c (lsa_link_broadcast_set): When there is no DR on
1221 network (suppose you have only one router with interface priority
1222 0). It's router LSA does not contain the link information about
1223 this network.
1224
1225 * ospf_nsm.c (nsm_timer_set): When you change a priority of
1226 interface from/to 0 ISM_NeighborChange event should be scheduled
1227 in order to elect new DR/BDR on the network.
1228
1229 * ospf_interface.c (ip_ospf_priority): Likewise.
1230
1231 * ospf_flood.c (ospf_ls_retransmit_add): When we add some LSA into
1232 retransmit list we need to check whether the present old LSA in
1233 retransmit list is not more recent than the new
1234 one.
1235
12362000-11-09 Dick Glasspool <dick@ipinfusion.com>
1237
1238 * ospf_packet.c: Allows for NSSA Type-7 LSA's throughout the NSSA
1239 area. Any that exit the NSSA area are translated to type-5 LSA's.
1240 The instantiated image is restored after translation.
1241 (ospf_ls_upd_send_list): Renamed to ospf_ls_upd_queu_send().
1242 (ospf_ls_upd_send): Old function which enclosed by #ifdef 0 is
1243 removed.
1244 (ospf_ls_ack_send): Likewise.
1245
1246 * ospf_flood.c: NSSA-LSA's without P-bit will be restricted to
1247 local area. Otherwise they are allowed out the area to be
1248 translated by ospf_packet.c.
1249
1250 * ospf_lsa.c: Undo some previous changes for NSSA.
1251
1252 * ospf_lsdb.h: New access for type 7.
1253
12542000-11-07 Kunihiro Ishiguro <kunihiro@zebra.org>
1255
1256 * ospf_route.c (ospf_path_exist): New function to check nexthop
1257 and interface are in current OSPF path or not.
1258 (ospf_route_copy_nexthops_from_vertex): Add nexthop to OSPF path
1259 when it is not there. Reported by Michael Rozhavsky
1260 <mrozhavsky@opticalaccess.com>
1261
12622000-11-06 Kunihiro Ishiguro <kunihiro@zebra.org>
1263
1264 * ospf_dump.c (config_write_debug): Add seventh string "detail" is
1265 added for flag is OSPF_DEBUG_SEND | OSPF_DEBUG_RECV |
1266 OSPF_DEBUG_DETAIL.
1267
12682000-11-06 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1269
1270 * ospf_lsa.c (router_lsa_flags): ASBR can't exit in stub area.
1271
12722000-11-06 Kunihiro Ishiguro <kunihiro@zebra.org>
1273
1274 * ospf_lsa.c (ospf_router_lsa_originate): Reduce unconditional
1275 logging.
1276
12772000-11-06 Dick Glasspool <dick@ipinfusion.com>
1278
1279 * ospfd.h: Add ait_ntoa function prototype.
1280
1281 * ospfd.c (ait_ntoa): New function for displaying area ID and
1282 Stub/NSSA status.
1283 (show_ip_ospf_interface_sub): Use ait_ntoa.
1284 (show_ip_ospf_nbr_static_detail_sub): Likewise.
1285 (show_ip_ospf_neighbor_detail_sub): Likewise.
1286
1287 * ospf_route.c (ospf_intra_route_add): Set external routing type
1288 to ospf route.
1289 (ospf_intra_add_router): Likewise.
1290 (ospf_intra_add_transit): Likewise.
1291 (ospf_intra_add_stub): Likewise.
1292 (ospf_add_discard_route): Likewise.
1293 (show_ip_ospf_route_network): Use ait_ntoa.
1294 (show_ip_ospf_route_network): Likewise.
1295 (show_ip_ospf_route_router): Likewise.
1296
1297 * ospf_lsa.c (show_lsa_detail): Use ait_ntoa.
1298 (show_lsa_detail_adv_router): Likewise.
1299 (show_ip_ospf_database_summary): Likewise.
1300
1301 * ospf_route.h (struct route_standard): Add new member
1302 external_routing.
1303
1304 * ospf_ia.c (process_summary_lsa): Set external routing tyep to ospf
1305 route.
1306 (ospf_update_network_route): Likewise.
1307 (ospf_update_router_route): Likewise.
1308
13092000-11-04 Kunihiro Ishiguro <kunihiro@zebra.org>
1310
1311 * ospf_flood.c (ospf_process_self_originated_lsa): Enclose
1312 OSPF_AS_NSSA_LSA treatment with #ifdef HAVE_NSSA.
1313
13142000-11-03 Kunihiro Ishiguro <kunihiro@zebra.org>
1315
1316 * Unconditional logging is enclosed with if (IS_DEBUG_OSPF_EVENT).
1317 Please specify "debug ospf event" for enable logging.
1318
1319 * ospf_ism.c: Do not extern debug flag varible. It is done by
1320 ospf_debug.h
1321 * ospf_asbr.c: Likewise.
1322 * ospf_lsa.c: Likewise.
1323 * ospf_nsm.c: Likewise.
1324 * ospf_zebra.c: Likewise.
1325
1326 * ospf_dump.c (debug_ospf_event): New command "debug ospf event"
1327 is added.
1328
1329 * ospfd.c (router_ospf): Change logging from vty_out() to
1330 zlog_info().
1331 (ospf_area_stub_cmd): Likewise.
1332
1333 * ospf_dump.h: Extern term_debug flags.
1334 (OSPF_DEBUG_EVENT): Add new flag.
1335 (IS_DEBUG_OSPF_EVENT): Add new macro.
1336
13372000-11-03 Dick Glasspool <dick@ipinfusion.com>
1338
1339 * ospf_flood.c (ospf_process_self_originated_lsa):
1340 OSPF_AS_NSSA_LSA is treated as same as OSPF_AS_EXTERNAL_LSA.
1341 (ospf_flood): Type-5's have no change. Type-7's can be received,
1342 and will Flood the AS as Type-5's They will also flood the local
1343 NSSA Area as Type-7's. The LSDB will be updated as Type-5's, and
1344 during re-fresh will be converted back to Type-7's (if within an
1345 NSSA).
1346 (ospf_flood_through): Incoming Type-7's were allowed here if our
1347 neighbor was an NSSA. So Flood our area with the Type-7 and also
1348 if we are an ABR, flood thru AS as Type-5.
1349
1350 * ospf_lsa.c (ospf_external_lsa_refresh): Flood NSSA both NSSA
1351 area and other area.
1352
1353 * ospf_packet.c (ospf_db_desc_proc): When AS External LSA is
1354 exists in DD packet, make it sure that this area is not stub.
1355 (ospf_ls_upd_list_lsa): When LSA type is NSSA then set lsa's area
1356 to NULL.
1357 (ospf_ls_upd): If the LSA is AS External LSA and the area is stub
1358 then discard the lsa. If the LSA is NSSA LSA and the area is not
1359 NSSA then discard the lsa.
1360
13612000-11-03 Kunihiro Ishiguro <kunihiro@zebra.org>
1362
1363 * ospfd.c (ospf_interface_run): Fix bug of Hello packet's option
1364 is not properly set when interface comes up.
1365
13662000-11-02 Kunihiro Ishiguro <kunihiro@zebra.org>
1367
1368 * ospfd.h (OSPF_OPTION_O): Add new hello header option.
1369
13702000-11-01 Dick Glasspool <dick@ipinfusion.com>
1371
1372 * ospf_lsa.h: Define OSPF_MAX_LSA to 8 when HAVE_NSSA is enabled.
1373 (OSPF_GROUP_MEMBER_LSA): Define OSPF_GROUP_MEMBER_LSA.
1374
1375 * ospf_lsa.c (show_database_desc): Add "Group Membership LSA"
1376 string.
1377
13782000-10-31 Dick Glasspool <dick@ipinfusion.com>
1379
1380 * ospf_lsa.h (OSPF_AS_NSSA_LSA): Define OSPF_AS_NSSA_LSA.
1381
1382 * ospf_lsa.c (show_ip_ospf_database): NSSA database display
1383 function is added. ALIASES which have "show ip ospf database
1384 nssa-external" is added.
1385 (show_ip_ospf_border_routers): New command "show ip ospf
1386 border-routers" is added.
1387
13882000-10-30 Dick Glasspool <dick@ipinfusion.com>
1389
1390 * ospfd.c (router_ospf): NSSA Enabled message is added for
1391 testing.
1392 (ospf_area_type_set): Are type set for NSSA area.
1393 (ospf_area_stub_cmd): Special translation of no_summary into NSSA
1394 and summary information. If NSSA is enabled pass the information
1395 to ospf_area_type_set().
1396 (area_nssa): New commands are added:
1397 "area A.B.C.D nssa"
1398 "area <0-4294967295> nssa"
1399 "area A.B.C.D nssa no-summary"
1400 "area <0-4294967295> nssa no-summary"
1401 (ospf_no_area_stub_cmd): Special translation of no_summary into
1402 NSSA and summary information. If external_routing is
1403 OSPF_AREA_NSSA unset area with ospf_area_type_set (area,
1404 OSPF_AREA_DEFAULT).
1405 (show_ip_ospf_area): Display NSSA status.
1406 (config_write_ospf_area): Show NSSA configuration.
1407
1408 * ospf_packet.c (ospf_hello): For NSSA support, ensure that NP is
1409 on and E is off.
1410
14112000-10-26 Gleb Natapov <gleb@nbase.co.il>
1412
1413 * ospf_lsa.c (ospf_network_lsa_body_set): The network-LSA lists
1414 those routers that are fully adjacent to the Designated Router;
1415 each fully adjacent router is identified by its OSPF Router ID.
1416 The Designated Router includes itself in this list. RFC2328,
1417 Section 12.4.2.
1418
14192000-10-23 Jochen Friedrich <jochen@scram.de>
1420
1421 * ospf_snmp.c: ospf_oid and ospfd_oid are used in smux_open after
1422 it is registered. So those variables must be static.
1423
14242000-10-18 K N Sridhar <sridhar@euler.ece.iisc.ernet.in>
1425
1426 * ospfd.c: Add area_default_cost_decimal_cmd and
1427 no_area_default_cost_decimal_cmd alias.
1428
14292000-10-05 Gleb Natapov <gleb@nbase.co.il>
1430
1431 * ospfd.c (ospf_network_new): Fix setting area format.
1432 (no_router_ospf): Check area existance when calling
1433 ospf_interface_down().
1434
1435 * ospf_flood.c (ospf_external_info_check): Fix bug of refreshing
1436 default route.
1437
14382000-10-02 Kunihiro Ishiguro <kunihiro@zebra.org>
1439
1440 * zebra-0.89 is released.
1441
14422000-09-29 Kunihiro Ishiguro <kunihiro@zebra.org>
1443
1444 * ospf_snmp.c (ospfHostEntry): OSPF Host MIB is implemented.
1445
1446 * ospfd.c (ospf_nbr_static_cmp): OSPF neighbor is sorted by it's
1447 address.
1448
14492000-09-28 Michael Rozhavsky <mike@nbase.co.il>
1450
1451 * ospf_interface.c (ospf_if_free): Fix deleting self neighbor twice.
1452
14532000-09-27 Kunihiro Ishiguro <kunihiro@zebra.org>
1454
1455 * ospf_packet.c (ospf_read): Solaris on x86 has ip_len with host
1456 byte order.
1457
14582000-09-25 Toshiaki Takada <takada@zebra.org>
1459
1460 * ospfd.c (ospf_compatible_rfc1583), (no_ospf_compatible_rfc1583):
1461 Add CISCO compatible command.
1462
14632000-09-25 Kunihiro Ishiguro <kunihiro@zebra.org>
1464
1465 * ospf_abr.c (ospf_area_range_lookup): New function is added for
1466 area range lookup in OSPF-MIB.
1467 (ospf_area_range_lookup_next): Likewise.
1468
14692000-09-22 Kunihiro Ishiguro <kunihiro@zebra.org>
1470
1471 * ospfd.c (no_router_ospf): Delete virtual link before deleting
1472 area structure.
1473
1474 * ospf_lsa.c (ospf_external_lsa_refresh_type): Check
1475 EXTERNAL_INFO(type).
1476
1477 * ospfd.c (no_router_ospf): Call ospf_vl_delete() instead of
1478 ospf_vl_data_free().
1479
1480 * ospf_interface.c (ospf_vl_shutdown): Execute ISM_InterfaceDown
1481 when ospf_vl_shutdown is called.
1482 (ospf_vl_delete): Call ospf_vl_shutdown() to delete virtual link
1483 interface's thread.
1484
14852000-09-21 Gleb Natapov <gleb@nbase.co.il>
1486
1487 * ospf_lsa.c: New implementation of OSPF refresh.
1488
14892000-09-20 Kunihiro Ishiguro <kunihiro@zebra.org>
1490
1491 * ospf_snmp.c (ospfLsdbLookup): Add LSDB MIB implementation.
1492
14932000-09-18 Kunihiro Ishiguro <kunihiro@zebra.org>
1494
1495 * ospf_snmp.c (ospfStubAreaEntry): Add OSPF stub area MIB.
1496
14972000-09-18 Gleb Natapov <gleb@nbase.co.il>
1498
1499 * ospf_route.h (route_standard): Change member from `struct area'
1500 to area_id.
1501
1502 * ospf_abr.c (ospf_abr_announce_network), (ospf_abr_should_announce),
1503 (ospf_abr_process_network_rt), (ospf_abr_announce_rtr),
1504 (ospf_abr_process_router_rt):
1505 * ospf_ase.c (ospf_find_asbr_route),
1506 (ospf_find_asbr_router_through_area),
1507 * ospf_ia.c (ospf_find_abr_route), (ospf_ia_router_route),
1508 (process_summary_lsa), (ospf_update_network_route),
1509 (ospf_update_router_route):
1510 * ospf_route.c (ospf_intra_route_add), (ospf_intra_add_router),
1511 (ospf_intra_add_transit), (ospf_intra_add_stub),
1512 (ospf_route_table_dump), (show_ip_ospf_route_network),
1513 (show_ip_ospf_route_router), (ospf_asbr_route_cmp),
1514 (ospf_prune_unreachable_routers):
1515 * ospf_spf.c (ospf_rtrs_print):
1516 * ospfd.c (ospf_rtrs_free): Fix the struct change above.
1517
15182000-09-14 Kunihiro Ishiguro <kunihiro@zebra.org>
1519
1520 * ospf_network.c (ospf_serv_sock_init): Enclose SO_BINDTODEVICE
1521 with ifdef.
1522
15232000-09-13 Gleb Natapov <gleb@nbase.co.il>
1524
1525 * ospf_ism.c (ospf_elect_dr), (ospf_elect_bdr): Fix DR election.
1526
1527 * ospf_network.c (ospf_serv_sock_init): Add socket option
1528 SO_BINDTODEVICE on read socket.
1529
1530 * ospf_packet.c (ospf_hello): Ignore Hello packet if E-bit does
1531 not match.
1532
1533 * ospfd.c (ospf_area_check_free), (ospf_area_get),
1534 (ospf_area_add_if): New function added.
1535
15362000-09-13 Kunihiro Ishiguro <kunihiro@zebra.org>
1537
1538 * ospf_route.c (ospf_intra_add_router): Update ABR and ASBR router
1539 count.
1540
1541 * ospf_spf.c (ospf_spf_init): Rest ABR and ASBR router count
1542 starting SPF calculation.
1543
1544 * ospfd.h (struct ospf_area): Add ABR and ASBR router count.
1545
15462000-09-12 Kunihiro Ishiguro <kunihiro@zebra.org>
1547
1548 * ospfd.c (ospf_area_id_cmp): New area structure is sorted by area
1549 ID.
1550
1551 * ospf_lsa.c (ospf_router_lsa_originate): For OSPF MIB update
1552 lsa_originate_count.
1553 (ospf_network_lsa_originate): Likewise.
1554 (ospf_summary_lsa_originate): Likewise.
1555 (ospf_summary_asbr_lsa_originate): Likewise.
1556 (ospf_external_lsa_originate): Likewise.
1557
15582000-09-11 Kunihiro Ishiguro <kunihiro@zebra.org>
1559
1560 * ospf_snmp.c (ospf_variables): ospfRouterID's type RouterID
1561 syntax is IpAddress.
1562 (ospf_admin_stat): New function for OSPF administrative status
1563 check.
1564
15652000-09-10 Jochen Friedrich <jochen@scram.de>
1566
1567 * ospf_snmp.c: Implement OSPF MIB skeleton.
1568
15692000-09-08 Kunihiro Ishiguro <kunihiro@zebra.org>
1570
1571 * ospf_snmp.c: New file is added.
1572
15732000-09-07 David Lipovkov <davidl@nbase.co.il>
1574
1575 * ospf_zebra.c (ospf_interface_delete): Add pseudo interface
1576 treatment.
1577
1578 * ospf_interface.c (interface_config_write): Likewise.
1579
15802000-08-17 Kunihiro Ishiguro <kunihiro@zebra.org>
1581
1582 * zebra-0.88 is released.
1583
15842000-08-17 Michael Rozhavsky <mike@nbase.co.il>
1585
1586 * ospfd.c (ospf_area_free): Remove virtual link configuration only
1587 when Area is removed.
1588
15892000-08-17 Kunihiro Ishiguro <kunihiro@zebra.org>
1590
1591 * ospfd.c (network_area): Revert check for EXTERNAL_INFO
1592 (ZEBRA_ROUTE_CONNECT).
1593 (no_network_area): Likewise.
1594
15952000-08-16 Kunihiro Ishiguro <kunihiro@zebra.org>
1596
1597 * ospfd.h (struct ospf): Add distance_table and
1598 distance_{all,intra,inter,external}.
1599
1600 * ospf_zebra.c: Add OSPF distance related functions.
1601
16022000-08-15 Gleb Natapov <gleb@nbase.co.il>
1603
1604 * ospf_asbr.c (ospf_external_info_find_lsa): New function added.
1605
1606 * ospf_lsa.c (ospf_default_external_info),
1607 (ospf_default_originate_timer), (ospf_external_lsa_refresh_default):
1608 New function added.
1609
1610 * ospf_zebra.c
1611 (ospf_default_information_originate_metric_type_routemap),
1612 (ospf_default_information_originate_always_metric_type_routemap):
1613 Change name and add route-map function.
1614 (ospf_default_information_originate_metric_routemap),
1615 (ospf_default_information_originate_routemap),
1616 (ospf_default_information_originate_type_metric_routemap):
1617 New DEFUN added.
1618
16192000-08-14 Kunihiro Ishiguro <kunihiro@zebra.org>
1620
1621 * ospf_zebra.c (zebra_interface_if_set_value): Change ifindex
1622 restore size from two octet to four.
1623
16242000-08-14 Michael Rozhavsky <mike@nbase.co.il>
1625
1626 * ospf_ase.c (ospf_ase_incremental_update): Implement incremental
1627 AS-external-LSA in 16.6 of RFC2328.
1628
16292000-08-14 Matthew Grant <grantma@anathoth.gen.nz>
1630
1631 * ospf_interface.c (ospf_if_get_output_cost): Change cost
1632 calculation algorithm.
1633
1634 * ospf_packet (ospf_ls_upd): Fix problem of LSA retransmitting.
1635
16362000-08-11 Michael Rozhavsky <mike@nbase.co.il>
1637
1638 * ospf_lsa.c (ospf_maxage_lsa_remover): Fix maxage remover for
1639 AS-external-LSAs.
1640
16412000-08-10 Toshiaki Takada <takada@zebra.org>
1642
1643 * ospfd.c (auto_cost_reference_bandwidth): New DEFUN added.
1644 `auto-cost reference-bandwidth' OSPF router command added.
1645
16462000-08-08 Gleb Natapov <gleb@nbase.co.il>
1647
1648 * ospf_routemap.c (ospf_route_map_update): New function added.
1649 Add route-map event hook.
1650
16512000-08-08 Toshiaki Takada <takada@zebra.org>
1652
1653 * ospf_zebra.c (ospf_distribute_check_connected): If redistribute
1654 prefix is connected route on OSPF enabled interface, suppress to
1655 announce it.
1656
16572000-08-08 Matthew Grant <grantma@anathoth.gen.nz>
1658
1659 * ospf_interface.c (ospf_if_get_output_cost):
1660 New function added. Handle bandwidth parameter for cost
1661 calculation.
1662
16632000-08-08 Michael Rozhavsky <mike@nbase.co.il>
1664
1665 * ospf_interface.c (interface_config_write): Show interface
1666 configuration regardless interface is down.
1667
1668 * ospf_ase.c (ospf_ase_caocluate_route): Whole rewritten external
1669 route calculate function.
1670
16712000-08-08 Gleb Natapov <gleb@nbase.co.il>
1672
1673 * ospf_routemap.c: New file added.
1674
1675 * ospf_asbr.c (ospf_reset_route_map_set_values),
1676 (ospf_route_map_set_compare): New function added.
1677
1678 * ospf_lsa.c (ospf_external_lsa_body_set): Set routemap metric
1679 with AS-external-LSA.
1680
16812000-08-05 Kunihiro Ishiguro <kunihiro@zebra.org>
1682
1683 * ospf_ase.c (ospf_ase_calculate_route_add): Pass new->cost to
1684 ospf_zebra_add as metric.
1685 (ospf_ase_calculate_route_add): Likewise.
1686
1687 * ospf_route.c (ospf_route_install): Pass or->cost to
1688 ospf_zebra_add as metric.
1689
1690 * ospf_zebra.c (ospf_zebra_add): Add metric arguemnt.
1691 (ospf_zebra_delete): Likewise.
1692
16932000-08-03 Matthew Grant <grantma@anathoth.gen.nz>
1694
1695 * ospf_flood.c (ospf_flood_delayed_lsa_ack): New function added.
1696 Dispatch delayed-ACK with flooding AS-external-LSA across virtual
1697 link.
1698
16992000-07-31 Matthew Grant <grantma@anathoth.gen.nz>
1700
1701 * ospfd.c (show_ip_ospf_area): Fix lack of VTY_NEWLINE when
1702 `show ip ospf'.
1703
1704 * ospf_interface.c (ospf_if_free): Fix bug of crash with
1705 Point-to-Point interface.
1706
17072000-07-27 Michael Rozhavsky <mike@nbase.co.il>
1708
1709 * ospf_flood.c (ospf_process_self_originated_lsa):
1710 Make sure to clear LSA->param (redistributed external information)
1711 before refreshment.
1712
17132000-07-27 Gleb Natapov <gleb@nbase.co.il>
1714
1715 * ospfd.c (refresh_group_limit), (refresh_per_slice),
1716 (refresh_age_diff): New defun added. Refresher related parameter
1717 can be configurable.
1718
17192000-07-27 Akihiro Mizutani <mizutani@dml.com>
1720
1721 * ospf_interface.c (interface_config_write): Print `description'
1722 config directive to work.
1723
17242000-07-24 Akihiro Mizutani <mizutani@dml.com>
1725
1726 * ospf_interface.c (ospf_if_init): Use install_default for
1727 INTERFACE_NODE.
1728
17292000-07-24 Gleb Natapov <gleb@nbase.co.il>
1730
1731 * ospf_packet.c (ospf_ls_upd_send_list), (ospf_ls_upd_send_event),
1732 (ospf_ls_ack_send_list), (ospf_ls_ack_send_event): New function added.
1733 This make sending always as many LS update/Ack combined in one ospf
1734 packet.
1735
17362000-07-24 Gleb Natapov <gleb@nbase.co.il>
1737
1738 * ospf_packet.c (ospf_ls_upd_list_lsa): Set NULL to lsa->area if
1739 LSA is AS-external-LSA.
1740
1741 * ospf_nsm.c (nsm_reset_nbr): Do not cancel Inactivity timer.
1742
17432000-07-21 Toshiaki Takada <takada@zebra.org>
1744
1745 * ospf_zebra.c (ospf_default_originate_timer): Set timer for
1746 `default-information originate'. Fix some default originate
1747 related functions.
1748
17492000-07-12 Toshiaki Takada <takada@zebra.org>
1750
1751 * ospf_lsa.c (stream_put_ospf_metric): New function added.
1752
17532000-07-12 Toshiaki Takada <takada@zebra.org>
1754
1755 * ospf_lsa.c (show_ip_ospf_database_router),
1756 (show_ip_ospf_database_network), (show_ip_ospf_database_summary),
1757 (show_ip_ospf_database_summary_asbr), (show_ip_ospf_database_externel),
1758 (show_router_lsa), (show_any_lsa), (show_router_lsa_self),
1759 (show_any_lsa_self): Functions removed.
1760
1761 (show_lsa_prefix_set), (show_lsa_detail_proc), (show_lsa_detail),
1762 (show_lsa_detail_adv_router_proc), (show_lsa_detail_adv_router):
1763 New functions added. Replace above functions.
1764
1765 (show_ip_ospf_database_all), (show_ip_ospf_database_self_originated):
1766 Functions removed.
1767 (show_ip_ospf_database_summary): New functions added. Replace
1768 above functions.
1769
1770 (show_ip_ospf_database_cmd): DEFUN rearranged.
1771 (show_ip_ospf_database_type_id_cmd),
1772 (show_ip_ospf_database_type_id_adv_router_cmd),
1773 (show_ip_ospf_database_type_is_self_cmd): New ALIASes added.
1774 (show_ip_ospf_database_type_adv_rotuer_cmd): New DEFUN added.
1775 (show_ip_ospf_database_type_self_cmd): New ALIAS added.
1776
17772000-07-11 Toshiaki Takada <takada@zebra.org>
1778
1779 * ospf_asbr.c (ospf_external_info_new),
1780 (ospf_external_info_free): New functions added.
1781
1782 * ospf_lsa.h (ospf_lsa): Add new member `void *param' to set
1783 origination parameter for external-LSA.
1784 Remove member `redistribute'.
1785
1786 * ospf_zebra.c (ospf_redistirbute_set): When `redistribute'
1787 command executed, metric and metric-type values are overridden.
1788 If one of those is changed refresh AS-external-LSAs for appropriate
1789 type.
1790
17912000-07-11 Michael Rozhavsky <mike@nbase.co.il>
1792
1793 * ospf_lsa.c (ospf_summary_lsa_refresh),
1794 (ospf_summary_asbr_lsa_refresh): Make sure to refresh summary-LSAs.
1795
1796 * ospf_abr.c (set_metric): New function added.
1797
17982000-07-07 Toshiaki Takada <takada@zebra.org>
1799
1800 * ospf_zebra.c (ospf_default_information_originate_metric_type),
1801 (ospf_default_information_originate_type_metric): New defun added.
1802 Metic and Metric type can be set to default route.
1803 (ospf_default_information_originate_always_metric_type):
1804 (ospf_default_information_originate_always_type_metric):
1805 New defun added. Metric and Metric type can be set to default
1806 always route.
1807
1808 * ospf_zebra.c (ospf_default_metric), (no_ospf_default_metric):
1809 New defun added.
1810
18112000-07-06 Gleb Natapov <gleb@nbase.co.il>
1812
1813 * ospf_flood.c (ospf_flood_through_area): Fix bug of considering
1814 on the same interface the LSA was received from.
1815
18162000-07-06 Michael Rozhavsky <mike@nbase.co.il>
1817
1818 * ospfd.c (ospf_config_write): Fix bug of printing `area stub'
1819 command with `write mem'.
1820
1821 * ospfd.c (no_router_ospf): Remove installed routes from zebra.
1822
1823 * ospf_zebra.c (ospf_interface_delete): Fix function to handle
1824 zebra interface delete event.
1825
18262000-07-06 Toshiaki Takada <takada@zebra.org>
1827
1828 * ospf_zebra.c (ospf_default_information_originate),
1829 (ospf_default_information_originate_always): New DEFUN added.
1830
18312000-07-05 Michael Rozhavsky <mike@nbase.co.il>
1832
1833 * ospf_route.c (ospf_terminate): Make sure to remove external route
1834 when SIGINT received.
1835
18362000-07-03 Gleb Natapov <gleb@nbase.co.il>
1837
1838 * ospf_flood.c, ospf_ism.c, ospf_lsa,c, ospfd.c: Make sure to free
1839 many structure with `no router ospf'.
1840
18412000-06-30 Gleb Natapov <gleb@nbase.co.il>
1842
1843 * ospf_neighbor.c (ospf_nbr_new),
1844 ospf_nsm.c (nsm_timer_set): Start LS update timer only
1845 when neighbor enters Exchange state.
1846
18472000-06-29 Gleb Natapov <gleb@nbase.co.il>
1848
1849 * ospf_nsm.c (nsm_timer_set), (nsm_exchange_done),
1850 ospf_packet.c (ospf_db_desc_proc):
1851 Do not cancel DD retransmit timer when Master.
1852
18532000-06-29 Gleb Natapov <gleb@nbase.co.il>
1854
1855 * ospf_abr.c (ospf_abr_announce_network_to_area),
1856 (ospf_abr_announce_rtr_to_area)
1857 ospf_ase.c (ospf_ase_rtrs_register_lsa),
1858 ospf_flood.c (ospf_process_self_originated_lsa),
1859 (ospf_flood_through_area), (ospf_ls_request_delete),
1860 ospf_interface.c (ospf_if_free),
1861 ospf_ism.c (ism_change_status),
1862 ospf_lsa.c (ospf_router_lsa_update_timer),
1863 (ospf_router_lsa_install), (ospf_network_lsa_install),
1864 (ospf_lsa_maxage_delete), (ospf_lsa_action),
1865 (ospf_schedule_lsa_flood_area),
1866 ospf_nsm.c (nsm_change_status),
1867 ospf_packet.c (ospf_make_ls_req_func), (ospf_make_ls_ack):
1868 Use ospf_lsa_{lock,unlock} for all looking-up of LSA.
1869
1870 * ospf_flood.c (ospf_ls_request_free): Function deleted.
1871
1872 * ospf_lsa.c (ospf_discard_from_db): New function added.
1873
18742000-06-26 Toshiaki Takada <takada@zebra.org>
1875
1876 * ospfd.h (ospf): struct member `external_lsa' name changed to
1877 `lsdb'.
1878
18792000-06-26 Toshiaki Takada <takada@zebra.org>
1880
1881 * ospf_lsa.c (ospf_lsa_install), (ospf_router_lsa_install),
1882 (ospf_network_lsa_install), (ospf_summary_lsa_install),
1883 (ospf_summary_asbr_lsa_install), (ospf_external_lsa_install):
1884 Functions re-arranged.
1885
1886 * ospf_lsa.c (IS_LSA_MAXAGE), (IS_LSA_SELF): Macro added.
1887
18882000-06-20 Michael Rozhavsky <mike@nbase.co.il>
1889
1890 * ospf_packet.c (ospf_ls_req), (ospf_ls_upd), (ospf_ls_ack): Add
1891 verification of LS type.
1892
18932000-06-20 Gleb Natapov <gleb@nbase.co.il>
1894
1895 * ospf_ase.c (ospf_ase_calculate_timer): Add more sanity check
1896 whether rn->info is NULL.
1897
18982000-06-20 Toshiaki Takada <takada@zebra.org>
1899
1900 * ospfd.c (show_ip_ospf_interface_sub): Show Router-ID of both
1901 DR and Backup correctly with `show ip ospf interface' command.
1902
19032000-06-20 Toshiaki Takada <takada@zebra.org>
1904
1905 * ospf_lsa.c (ospf_lsa_lock), (ospf_lsa_unlock),
1906 (ospf_lsa_discard): These functions are used for avoiding
1907 unexpected reference to freed LSAs.
1908
19092000-06-13 Kunihiro Ishiguro <kunihiro@zebra.org>
1910
1911 * ospf_packet.c (ospf_ls_upd): Initialize lsa by NULL to avoid
1912 warning.
1913
19142000-06-12 Kunihiro Ishiguro <kunihiro@zebra.org>
1915
1916 * ospf_ase.h (ospf_ase_rtrs_register_lsa): Add prototype.
1917
19182000-06-12 Toshiaki Takada <takada@zebra.org>
1919
1920 * ospf_lsa.c (ospf_external_lsa_install): Make sure to register
1921 LSA to rtrs_external when replacing AS-external-LSAs in LSDB.
1922 Fix core dump.
1923
19242000-06-10 Toshiaki Takada <takada@zebra.org>
1925
1926 * ospf_lsdb.c (id_to_prefix), (ospf_lsdb_hash_key),
1927 (ospf_lsdb_hash_cmp), (ospf_lsdb_new), (ospf_lsdb_iterator),
1928 (lsdb_free), (ospf_lsdb_free), (ospf_lsdb_add), (ospf_lsdb_delete),
1929 (find_lsa), (ospf_lsdb_lookup), (find_by_id),
1930 (ospf_lsdb_lookup_by_id), (ospf_lsdb_lookup_by_header): Functinos
1931 removed for migration to new_lsdb.
1932
1933 * ospf_lsa.c (ospf_summary_lsa_install),
1934 (ospf_summary_asbr_lsa_install), (ospf_maxage_lsa_remover),
1935 (ospf_lsa_maxage_walker), (ospf_lsa_lookup),
1936 (ospf_lsa_lookup_by_id): Use new_lsdb instead of ospf_lsdb.
1937 (count_lsa), (ospf_lsa_count_table), (ospf_lsa_count),
1938 (ospf_get_free_id_for_prefix): Funcitions removed.
1939
19402000-06-09 Gleb Natapov <gleb@nbase.co.il>
1941
1942 * ospf_ism.c (ism_interface_down): Prevent some unneeded DR changes.
1943
1944 * ospf_packet.c (ospf_db_desc_proc): Fix memory leak.
1945 (ospf_hello): Always copy router-ID when hello is received.
1946
19472000-06-08 Gleb Natapov <gleb@nbase.co.il>
1948
1949 * ospf_lsa.h (struct ospf_lsa): Add member of pointer to struct
1950 ospf_area.
1951
19522000-06-08 Michael Rozhavsky <mike@nbase.co.il>
1953
1954 * ospf_ase.c (ospf_asbr_route_same): New function added.
1955 This function makes sure external route calculation more
1956 precisely.
1957
19582000-06-07 Michael Rozhavsky <mike@nbase.co.il>
1959
1960 * ospf_ism.c (ism_change_status): Use ospf_lsa_flush_area for
1961 network-LSA deletion instead of using ospf_lsdb_delete.
1962 Also cancel network-LSA origination timer.
1963
19642000-06-07 Levi Harper <lharper@kennedytech.com>
1965
1966 * ospf_interface.c (ospf_if_down): Close read fd when an interface
1967 goes down.
1968
19692000-06-05 Kunihiro Ishiguro <kunihiro@zebra.org>
1970
1971 * ospf_asbr.c (ospf_external_info_lookup): Add explicit brace for
1972 avoid ambiguous else.
1973
1974 * ospf_flood.c (ospf_external_info_check): Likewise.
1975
19762000-06-05 Toshiaki Takada <takada@zebra.org>
1977
1978 * ospf_nsm.c (nsm_adj_ok): Fix bug of DR election.
1979
19802000-06-04 Toshiaki Takada <takada@zebra.org>
1981
1982 * ospf_zebra.c (ospf_default_information_originate),
1983 (no_ospf_default_information_originate): New DEFUN added.
1984
19852000-06-03 Toshiaki Takada <takada@zebra.org>
1986
1987 * ospf_lsa.h, ospf_asbr.h (external_info): Struct moved from
1988 ospf_lsa.h to ospf_asbr.h.
1989
1990 * ospf_lsa.c, ospf_asbr.c (ospf_external_info_add),
1991 (ospf_external_info_delete): Function moved from ospf_lsa.c
1992 to ospf_asbr.c.
1993
19942000-06-03 Toshiaki Takada <takada@zebra.org>
1995
1996 * ospf_flood.c (ospf_external_info_check): New function added.
1997 (ospf_process_self_orignated_lsa): Make sure to flush
1998 self-originated AS-external-LSA, when router reboot and no longer
1999 originate those AS-external-LSA.
2000
20012000-06-02 Toshiaki Takada <takada@zebra.org>
2002
2003 * ospf_network.c (ospf_serv_sock): Remove SO_DONTROUTE
2004 socket option.
2005
2006 * ospf_packet.c (ospf_write): Set MSG_DONTROUTE flag for
2007 unicast destination packets.
2008
20092000-06-02 Toshiaki Takada <takada@zebra.org>
2010
2011 * ospf_lsdb.c (new_lsdb_delete): Delete entry from LSDB only when
2012 specified LSA matches.
2013
20142000-06-02 Gleb Natapov <gleb@nbase.co.il>
2015
2016 * ospf_network.c (ospf_serv_sock): Set SO_DONTROUTE
2017 socket option.
2018
20192000-06-01 Akihiro Mizutani <mizutani@dml.com>
2020
2021 * ospf_dump.c: Replace string `Debugging functions\n' with DEBUG_STR.
2022 Replace string `OSPF information\n' with OSPF_STR.
2023
20242000-06-01 Toshiaki Takada <takada@zebra.org>
2025
2026 * ospf_lsdb.[ch]: Use new_lsdb struct for network-LSA instead of
2027 ospf_lsdb.
2028
20292000-06-01 Toshiaki Takada <takada@zebra.org>
2030
2031 * ospf_dump.c (config_debug_ospf_packet), (config_debug_ospf_event),
2032 (config_debug_ospf_ism), (config_debug_ospf_nsm),
2033 (config_debug_ospf_lsa), (config_debug_ospf_zebra),
2034 (term_debug_ospf_packet), (term_debug_ospf_event),
2035 (term_debug_ospf_ism), (term_debug_ospf_nsm),
2036 (term_debug_ospf_lsa), (term_debug_ospf_zebra): Repalce debug_ospf_*
2037 variable to use for debug option flags.
2038
2039 (debug_ospf_packet), (debug_ospf_ism), (debug_ospf_nsm),
2040 (debug_ospf_lsa), (debug_ospf_zebra): Set {config,term}_debug_*
2041 flags when vty->node is CONFIG_NODE, otherwise set only term_debug_*
2042 flags.
2043
2044 * ospf_dump.h (CONF_DEBUG_PACKET_ON), (CONF_DEBUG_PACKET_OFF),
2045 (TERM_DEBUG_PACKET_ON), (TERM_DEBUG_PACKET_OFF),
2046 (CONF_DEBUG_ON), (CONF_DEBUG_OFF), (IS_CONF_DEBUG_OSPF_PACKET),
2047 (IS_CONF_DEBUG_OSPF): New Macro added.
2048
20492000-05-31 Toshiaki Takada <takada@zebra.org>
2050
2051 * ospfd.c (clear_ip_ospf_neighbor): New DEFUN added.
2052 Currently this command is used for only debugging.
2053
2054 * ospf_nsm.c (nsm_change_status): Make sure thread cancellation
2055 for network-LSA when DR has no full neighbors.
2056
2057 * ospf_nsm.c (ospf_db_summary_clear): New function added.
2058
20592000-05-30 Toshiaki Takada <takada@zebra.org>
2060
2061 * ospf_lsdb.c (new_lsdb_insert): LSAs are always freed by
2062 maxage_lsa_remover when LSA is replaced.
2063
20642000-05-25 Gleb Natapov <gleb@nbase.co.il>
2065
2066 * ospf_flood.c (ospf_ls_retransmit_delete_nbr_all): Add argument
2067 `struct ospf_area' to remove LSA from Link State retransmission list
2068 of neighbor from only one Area.
2069
20702000-05-24 Michael Rozhavsky <mike@nbase.co.il>
2071
2072 * ospf_lsdb.c (ospf_lsdb_add): Preserve flags field when
2073 overriting old LSA with new LSA.
2074
20752000-05-24 Gleb Natapov <gleb@nbase.co.il>
2076
2077 * ospf_lsa.c (ospf_router_lsa_body_set): Fix bug of router-LSA
2078 size calculation.
2079
20802000-05-22 Michael Rozhavsky <mike@nbase.co.il>
2081
2082 * ospf_route.c (ospf_intra_add_stub):
2083 * ospf_spf.h (struct vertex): Use u_int32_t for distance (cost)
2084 value instead of u_int16_t.
2085
20862000-05-22 Axel Gerlach <agerlach@datus.datus.com>
2087
2088 * ospf_ia.c (ospf_ia_network_route): Fix bug of Inter-area route
2089 equal cost path calculation.
2090
20912000-05-21 Toshiaki Takada <takada@zebra.org>
2092
2093 * ospf_ase.c (ospf_ase_calculate_route_delete): New function added.
2094 Make sure, when rotuer route is deleted, related external routes
2095 are also deleted.
2096
20972000-05-20 Toshiaki Takada <takada@zebra.org>
2098
2099 * ospfd.c (ospf_interface_down): Make sure interface flag is disable
2100 and set fd to -1.
2101
21022000-05-16 Toshiaki Takada <takada@zebra.org>
2103
2104 * ospf_asbr.c (ospf_asbr_should_announce), (ospf_asbr_route_remove):
2105 Functions removed.
2106
2107 * ospfd.h (EXTERNAL_INFO): Macro added.
2108 Substitute `ospf_top->external_info[type]' with it.
2109
21102000-05-16 Toshiaki Takada <takada@zebra.org>
2111
2112 * ospf_lsa.c (ospf_rtrs_external_remove): New function added.
2113
21142000-05-14 Gleb Natapov <gleb@nbase.co.il>
2115
2116 * ospf_flood.c (ospf_ls_retransmit_delete_nbr_all)
2117 * ospf_lsdb.c (new_lsdb_insert)
2118 * ospf_packet.c (ospf_ls_ack): Fix database synchonization problem.
2119
21202000-05-14 Gleb Natapov <gleb@nbase.co.il>
2121
2122 * ospf_lsa.h (tv_adjust), (tv_ceil), (tv_floor), (int2tv),
2123 (tv_add), (tv_sub), (tv_cmp): Prototype definition added.
2124
2125 * ospf_nsm.h (ospf_db_summary_delete_all): Prototype definition added.
2126
21272000-05-13 Toshiaki Takada <takada@zebra.org>
2128
2129 * ospf_lsa.[ch] (ospf_lsa): struct timestamp type is changed from
2130 time_t to struct timeval.
2131 (tv_adjust), (tv_ceil), (tv_floor), (int2tv), (tv_add),
2132 (tv_sub), (tv_cmp): timeval utillity functions added.
2133
21342000-05-12 Toshiaki Takada <takada@zebra.org>
2135
2136 * ospf_lsa.[ch] (ospf_schedule_update_router_lsas): Delete function.
2137 Change to use macro OSPF_LSA_UPDATE_TIMER instead of using
2138 this function.
2139 router-LSA refresh timer related stuff is re-organized.
2140
21412000-05-10 Gleb Natapov <gleb@nbase.co.il>
2142
2143 * ospf_interface.c (ospf_vl_set_params):
2144 * ospf_packet.c (ospf_check_network_mask):
2145 * ospf_spf.[ch] (ospf_spf_next):
2146 Remove field address from `struct vertex', and search for peer
2147 address of virtual link in function `ospf_vl_set_params' instead.
2148
21492000-05-10 Gleb Natapov <gleb@nbase.co.il>
2150
2151 * ospf_packet.c (ospf_ls_upd): Fix some memory leak related LSA.
2152
21532000-05-08 Thomas Molkenbur <tmo@datus.com>
2154
2155 * ospf_packet.c (ospf_packet_dup): Replace ospf_steram_copy()
2156 with ospf_stream_dup() to fix memory leak.
2157
21582000-05-08 Michael Rozhavsky <mike@nbase.co.il>
2159
2160 * ospf_flood.c (ospf_flood_through_area): Fix the problem of
2161 LSA update without DROther.
2162
21632000-05-04 Gleb Natapov <gleb@nbase.co.il>
2164
2165 * ospf_spf.c (ospf_vertex_free): Fix memory leak of SPF calculation.
2166
21672000-05-03 Toshiaki Takada <takada@zebra.org>
2168
2169 * ospf_neighbor.c (ospf_db_summary_add): Use new_lsdb struct
2170 instead linked-list.
2171 (ospf_db_summary_count), (ospf_db_summary_isempty):
2172 New function added.
2173
2174 * ospf_lsa.c (ospf_rotuer_lsa): Re-arrange and divide functions.
2175
21762000-05-02 Gleb Natapov <gleb@nbase.co.il>
2177
2178 * ospf_lsdb.c (new_lsdb_cleanup): Fix memory leak. When LSDB are
2179 not needed any more, then free them.
2180
21812000-05-02 Toshiaki Takada <takada@zebra.org>
2182
2183 * ospfd.c (timers_spf), (no_timers_spf): New defun added.
2184 SPF calculation timers related stuff is rearranged.
2185
2186 * ospf_spf.c (ospf_spf_calculate_timer_add): Function removed.
2187 SPF timer is scheduled by SPF calculation delay and holdtime
2188 configuration variable.
2189
2190 * ospf_lsa.c (ospf_external_lsa_nexthop_get): Set AS-external-LSA's
2191 forwarding address when nexthop learned by other protocols is
2192 in the OSPF domain.
2193
2194 * ospf_zebra.c (ospf_redistribute_source_metric_type),
2195 (ospf_redistribute_source_type_metric): Re-arrange DEFUNs and
2196 ALIASes.
2197
21982000-05-01 Toshiaki Takada <takada@zebra.org>
2199
2200 * ospf_flood.c (ospf_ls_retransmit_count),
2201 (ospf_ls_retransmit_isempty): New function added.
2202
2203 (ospf_ls_retransmit_add), (ospf_ls_retransmit_delete),
2204 (ospf_ls_retransmit_clear), (ospf_ls_retransmit_lookup),
2205 (ospf_ls_retransmit_delete_all), (ospf_ls_retransmit_delete_nbr_all),
2206 (ospf_ls_retransmit_add_nbr_all): Replace these functions to use
2207 new_lsdb.
2208
22092000-04-29 Toshiaki Takada <takada@zebra.org>
2210
2211 * ospfd.c (no_network_area): Add check Area-ID whether specified
2212 Area-ID with prefix matches config.
2213
22142000-04-27 Toshiaki Takada <takada@zebra.org>
2215
2216 * ospf_lsa.c (ospf_maxage_lsa_remover): Fix problem of
2217 remaining withdrawn routes on zebra.
2218
22192000-04-25 Michael Rozhavsky <mike@nbase.co.il>
2220
2221 * ospf_nsm.c (nsm_kill_nbr), (nsm_ll_down), (nsm_change_status),
2222 (ospf_nsm_event): Fix network-LSA re-origination problem.
2223
22242000-04-24 Toshiaki Takada <takada@zebra.org>
2225
2226 * ospf_nsm.c (ospf_db_desc_timer): Fix bug of segmentation fault
2227 with DD retransmission.
2228
2229 * ospf_nsm.c (nsm_kill_nbr): Fix bug of re-origination when
2230 a neighbor disappears.
2231
22322000-04-23 Michael Rozhavsky <mike@nbase.co.il>
2233
2234 * ospf_abr.c (ospf_abr_announce_network_to_area): Fix bug of
2235 summary-LSAs reorigination. Correctly copy OSPF_LSA_APPROVED
2236 flag to new LSA. when summary-LSA is reoriginatd.
2237
2238 * ospf_flood.c (ospf_flood_through_area): Fix bug of flooding
2239 procedure. Change the condition of interface selection.
2240
22412000-04-21 Toshiaki Takada <takada@zebra.org>
2242
2243 * ospf_lsa.c (ospf_refresher_register_lsa): Fix bug of refresh never
2244 occurs.
2245
2246 * ospfd.c (show_ip_ospf_neighbor_id): New defun added.
2247 `show ip ospf neighbor' related commands are re-arranged.
2248
22492000-04-20 Toshiaki Takada <takada@zebra.org>
2250
2251 * ospf_dump.c (debug_ospf_zebra): New defun added.
2252 Suppress zebra related debug information.
2253
22542000-04-19 Toshiaki Takada <takada@zebra.org>
2255
2256 * ospf_zebra.c (ospf_distribute_list_update_timer),
2257 (ospf_distribute_list_update), (ospf_filter_update):
2258 New function added. Re-organize `distribute-list' router ospf
2259 command.
2260
22612000-04-13 Michael Rozhavsky <mike@nbase.co.il>
2262
2263 * ospf_packet.c (ospf_make_ls_upd): Add check for MAX_AGE.
2264
22652000-04-14 Michael Rozhavsky <mike@nbase.co.il>
2266
2267 * ospf_packet.c (ospf_make_ls_upd): Increment LS age by configured
2268 interface transmit_delay.
2269
22702000-04-14 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2271
2272 * ospf_interface.c (ip_ospf_cost), (no_ip_ospf_cost):
2273 Add to schedule router_lsa origination when the interface cost changes.
2274
22752000-04-12 Toshiaki Takada <takada@zebra.org>
2276
2277 * ospf_lsa.c (ospf_refresher_register_lsa),
2278 (ospf_refresher_unregister_lsa): Fix bug of core dumped.
2279
2280 * ospfd.c (no_router_ospf): Fix bug of core dumped.
2281
22822000-03-29 Toshiaki Takada <takada@zebra.org>
2283
2284 * ospf_nsm.c (nsm_oneway_received): Fix bug of MS flag unset.
2285
22862000-03-29 Michael Rozhavsky <mike@nbase.co.il>
2287
2288 * ospf_lsa.c (ospf_network_lsa):
2289 * ospf_nsm.c (ospf_nsm_event): Fix bug of Network-LSA originated
2290 in stub network.
2291
22922000-03-28 Toshiaki Takada <takada@zebra.org>
2293
2294 * ospf_nsm.c (nsm_bad_ls_req), (nsm_seq_number_mismatch),
2295 (nsm_oneway_received): Fix bug of NSM state flapping between
2296 ExStart and Exchange.
2297
22982000-03-28 Toshiaki Takada <takada@zebra.org>
2299
2300 * ospf_packet.h (strcut ospf_header): Fix the size of ospf_header,
2301 change u_int8_t to u_char.
2302
23032000-03-27 Toshiaki Takada <takada@zebra.org>
2304
2305 * ospf_lsa.c (ospf_lsa_checksum): Take care of BIGENDIAN architecture.
2306
23072000-03-27 Toshiaki Takada <takada@zebra.org>
2308
2309 * ospfd.c (ospf_interface_run): Make sure Address family matches.
2310
23112000-03-26 Love <lha@s3.kth.se>
2312
2313 * ospf_packet.c (ospf_write): Chack result of sendto().
2314
23152000-03-26 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2316
2317 * ospf_nsm.c (nsm_oneway_received): Fix bug of 1-WayReceived in NSM.
2318
23192000-03-23 Libor Pechacek <farco@clnet.cz>
2320
2321 * ospf_lsa.c (ospf_network_lsa)
2322 * ospf_lsdb.c (new_lsdb_insert): Fix bug of accessing to
2323 unallocated memory.
2324
23252000-03-23 Toshiaki Takada <takada@zebra.org>
2326
2327 * ospfd.c (ospf_config_write): Fix bug of duplicate line for
2328 `area A.B.C.D authentication'.
2329
23302000-03-22 Toshiaki Takada <takada@zebra.org>
2331
2332 * ospf_debug.c (debug_ospf_lsa), (no_debug_ospf_lsa): Defun added.
2333 Suppress all zlog related to LSAs with this config option.
2334
23352000-03-21 Kunihiro Ishiguro <kunihiro@zebra.org>
2336
2337 * ospf_nsm.c (ospf_nsm_event): Add check for NSM_InactivityTimer.
2338
23392000-03-21 Toshiaki Takada <takada@zebra.org>
2340
2341 * ospf_packet.c (ospf_ls_upd_timer), (ospf_ls_req):
2342 Fix bug of memory leak about linklist.
2343
2344 * ospf_flood.c (ospf_flood_through_area): Likewise.
2345
23462000-03-18 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2347
2348 * ospf_flood.c (ospf_ls_retransmit_lookup): Add checksum comparison
2349 to identify LSA uniquely. This fix routes lost.
2350
23512000-03-18 Toshiaki Takada <takada@zebra.org>
2352
2353 * ospf_ase.c (ospf_find_asbr_route): Add sanity check with router
2354 routing table.
2355
23562000-03-17 Alex Zinin <zinin@amt.ru>
2357
2358 * ospf_spf.[ch]: Bug fix.
2359 The 2nd stage of Dijkstra could consider one vertex
2360 more than once if there is more than one link
2361 between the routers, thus adding extra CPU overhead
2362 and extra next-hops.
2363 Fixed.
2364
23652000-03-15 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2366
2367 * ospf_nsm.c (nsm_inactivity_timer): Changed to call nsm_kill_nbr().
2368
23692000-03-14 Toshiaki Takada <takada@zebra.org>
2370
2371 * ospf_route.c (ospf_route_copy_nexthops): Fix bug of memory leak of
2372 ospf_path. Actually ignore merging ospf_route with completely same
2373 paths.
2374
23752000-03-12 Toshiaki Takada <takada@zebra.org>
2376
2377 * ospf_lsa.c (show_as_external_lsa_detail): fix bug of
2378 external route tag byte order.
2379
23802000-03-11 Toshiaki Takada <takada@zebra.org>
2381
2382 * ospf_lsdb.c (ospf_lsdb_insert): New function added.
2383
23842000-03-09 Toshiaki Takada <takada@zebra.org>
2385
2386 * ospf_lsa.c (ospf_external_lsa_install),
2387 (ospf_lsa_lookup), (show_ip_ospf_database_all),
2388 (show_ip_ospf_database_self_originate): Use struct new_lsdb for
2389 LSDB of AS-external-LSAs instead of ospf_lsdb.
2390
2391 * ospf_lsa.c (ospf_lsa_unique_id): New function added.
2392 Use for assigning Unique Link State ID instead of
2393 ospf_get_free_id_for_prefix().
2394
23952000-03-09 Toshiaki Takada <takada@zebra.org>
2396
2397 * ospf_ase.c (ospf_ase_calculate_timer): Fix bug of segmentation
2398 fault reported by George Bonser <george@siteROCK.com>.
2399
24002000-03-07 Libor Pechacek <farco@clnet.cz>
2401
2402 * ospfd.c (ospf_interface_down): Fix bug of segmentation fault.
2403
24042000-03-06 Toshiaki Takada <takada@zebra.org>
2405
2406 * ospf_route.c (ospf_route_cmp): Change meaning of return values.
2407
24082000-03-02 Alex Zinin <zinin@amt.ru>
2409 * ospfd.h, ospf_ia.h
2410 New Shortcut ABR code. Now area's flag can be configured
2411 with Default, Enable, and Disable values.
2412 More info will be in the new ver of I-D soon (see IETF web).
2413
24142000-02-25 Toshiaki Takada <takada@zebra.org>
2415
2416 * ospf_lsa.c (ospf_lsa_header_set), (ospf_external_lsa_body_set),
2417 (osfp_external_lsa_originate), (ospf_external_lsa_queue),
2418 (ospf_external_lsa_originate_from_queue): New function added.
2419 (ospf_external_lsa): Function removed.
2420
2421 * ospf_zebra.c (ospf_zebra_read_ipv4): Originate AS-external-LSA
2422 when listen a route from Zebra, instead creating external route.
2423
2424 * ospf_asbr.c (ospf_asbr_route_add_flood_lsa),
2425 (ospf_asbr_route_add_queue_lsa),
2426 (ospf_asbr_route_install_lsa), (ospf_asbr_route_add):
2427 Functions removed.
2428
2429 * ospf_ase.c (process_ase_lsa): Function will not be used.
2430 (ospf_ase_calculate), (ospf_ase_calculate_route_add),
2431 (ospf_ase_calculate_new_route), (ospf_ase_caluculate_asbr_route):
2432 process_ase_lsa () is separated to these functions.
2433
2434 OSPF AS-external-LSA origination is whole re-organized.
2435
24362000-02-18 Toshiaki Takada <takada@zebra.org>
2437
2438 * ospf_packet.c (ospf_ls_upd): Fix bug of OSPF LSA memory leak.
2439
2440 * ospf_asbr.c (ospf_asbr_route_add_flood_lsa),
2441 (ospf_asbr_route_add_queue_lsa): Fix bug of OSPF external route
2442 memory leak.
2443
24442000-02-12 Kunihiro Ishiguro <kunihiro@zebra.org>
2445
2446 * ospf_asbr.c (ospf_asbr_route_install_lsa): Re-calculate LSA
2447 checksum after change Advertised Router field.
2448
24492000-02-09 Toshiaki Takada <takada@zebra.org>
2450
2451 * ospf_asbr.c (ospf_external_route_lookup): Add new function.
2452
24532000-02-08 Toshiaki Takada <takada@zebra.org>
2454
2455 * ospfd.c (ospf_router_id_get), (ospf_router_id_update),
2456 (ospf_router_id_update_timer): Router ID decision algorithm is changed.
2457 Router ID is chosen from all of eligible interface addresses even if
2458 it is not enable to OSPF.
2459
24602000-02-08 Toshiaki Takada <takada@zebra.org>
2461
2462 * ospf_asbr.c (ospf_asbr_route_add): Function divided to
2463 ospf_asbr_route_add_flood_lsa, ospf_asbr_route_add_queue_lsa and
2464 ospf_asbr_route_install_lsa. If Router-ID is not set, then LSA is
2465 waited to install to LSDB.
2466 `0.0.0.0 adv_router' AS-external-LSA origination bug was fixed.
2467
24682000-02-01 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2469
2470 * ospf_flood.c (ospf_ls_retransmit_lookup): Compare LS seqnum
2471 in the ACK before deleting.
2472
2473 * ospf_packet.c (ospf_hello): Reset the flags after a shutdown
2474 and no shutdown of the interface.
2475
24762000-01-31 Toshiaki Takada <takada@zebra.org>
2477
2478 * ospf_packet.c (ospf_ls_req): Send multiple Link State Update
2479 packets respond to a Link State Request packet.
2480
2481 * ospfd.c (show_ip_ospf_neighbor_detail_sub): Show thread state.
2482
2483 * ospf_interface.c (ospf_vl_new): Crash when backbone area
2484 is not configured and set virtual-link to no-backbone area,
2485 bug fixed.
2486
24872000-01-30 Kunihiro Ishiguro <kunihiro@zebra.org>
2488
2489 * ospf_neighbor.h (struct ospf_neighbor): Add pointer to last send
2490 LS Request LSA.
2491
2492 * ospf_packet.c (ospf_ls_upd): Comment out LS request list
2493 treatment. That should be done in OSPF flooding procedure.
2494
2495 * ospf_flood.c (ospf_flood_through_area): Enclose
2496 ospf_check_nbr_loding inside if-else close.
2497
24982000-01-31 Toshiaki Takada <takada@zebra.org>
2499
2500 * ospf_packet.c (ospf_make_ls_upd): Fix bug of #LSAs counting.
2501
25022000-01-29 Toshiaki Takada <takada@zebra.org>
2503
2504 * ospf_packet.c (ospf_make_md5_digest): Fix bug of md5 authentication.
2505
25062000-01-28 Toshiaki Takada <takada@zebra.org>
2507
2508 * ospfd.c (show_ip_ospf): Show Number of ASE-LSAs.
2509
25102000-01-27 Kunihiro Ishiguro <kunihiro@zebra.org>
2511
2512 * ospf_packet.c (ospf_make_db_desc): Don't use rm_list for
2513 removing LSA from nbr->db_summary.
2514
25152000-01-27 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2516
2517 * ospf_packet.c (ospf_ls_upd_send): Set AllSPFRouters to
2518 destination when the link is point-to-point.
2519 (ospf_ls_ack_send_delayed): Likewise.
2520
25212000-01-27 Kunihiro Ishiguro <kunihiro@zebra.org>
2522
2523 * ospf_flood.c (ospf_ls_request_delete_all): Fix bug of next
2524 pointer lookup after the node is freed.
2525
25262000-01-26 Kunihiro Ishiguro <kunihiro@zebra.org>
2527
2528 * ospf_asbr.c (ospf_asbr_route_add): Instead of scanning all AS
2529 external route, use ospf_top->external_self.
2530
25312000-01-27 Toshiaki Takada <takada@zebra.org>
2532
2533 * ospf_lsa.c (ospf_forward_address_get): New function added.
2534
2535 * ospf_asbr.c (ospf_asbr_check_lsas): Originate AS-external-LSA
2536 only when it should be replaced.
2537
25382000-01-25 Kunihiro Ishiguro <kunihiro@zebra.org>
2539
2540 * ospf_flood.c (ospf_ls_retransmit_clear): Delete list node.
2541
2542 * ospf_lsa.c (ospf_lsa_free): Reduce logging message using
2543 ospf_zlog value.
2544
2545 * ospf_ism.c (ism_change_status): Fix bug of DR -> non DR status
2546 change. Self originated LSA is freed but not deleted from lsdb.
2547
25482000-01-24 Kunihiro Ishiguro <kunihiro@zebra.org>
2549
2550 * ospf_ism.c (ism_interface_down): Don't use router_id for
2551 detecting self neighbor structure. Instead of that compare
2552 pointer itself.
2553
2554 * ospf_neighbor.c (ospf_nbr_free): Cancel all timer when neighbor
2555 is deleted.
2556 (ospf_nbr_free): Free last send packet.
2557
2558 * ospf_neighbor.h (struct ospf_neighbor): Remove host strucutre.
2559 Instead of that src is introduced.
2560
2561 * ospf_nsm.h: Enclose macro defenition with do {} while (0).
2562
25632000-01-17 Kunihiro Ishiguro <kunihiro@zebra.org>
2564
2565 * ospfd.c: Change part of passive interface implementation. For
2566 passive interface just disabling sending/receiving Hello on the
2567 interface.
2568
25692000-01-16 Kai Bankett <kai.bankett@vew-telnet.net>
2570
2571 * ospf_interface.h (OSPF_IF_PASSIVE): Add passive flag.
2572 * ospf_interface.c (ospf_if_lookup_by_name): Add new function.
2573 * ospf_lsa.c (ospf_router_lsa): Skip passive interface.
2574 * ospfd.c (passive_interface): New command passive-interface is
2575 added.
2576 (ospf_config_write): Print passive interface.
2577
25782000-01-15 Toshiaki Takada <takada@zebra.org>
2579
2580 * ospf_interface.h (crypt_key): New struct added to store
2581 multiple cryptographic autheitication keys.
2582 (ospf_interface): struct changed.
2583
2584 * ospf_interface.c: ospf_crypt_key_new, ospf_crypt_key_add,
2585 ospf_crypt_key_lookup, ospf_crypt_key_delete: new functions added.
2586
2587 * ospf_packet.c (ip_ospf_message_digest_key): Changed to store
2588 multiple cryptographic authentication keys.
2589
25902000-01-14 Toshiaki Takada <takada@zebra.org>
2591
2592 * ospf_interface.c: DEFUN (if_ospf_*) commands changed name to
2593 ip_ospf_* ().
2594 Old notation `ospf *' still remains backward compatibility.
2595
25961999-12-29 Alex Zinin <zinin@amt.ru>
2597 * ospf_lsa.c: ospf_lsa_more_recent() bug fix
2598 * ospf_nsm.c, ospf_packet.c: remove nbr data struct when
2599 int goes down, also check DD flags correctly (bug fix)
2600
26011999-12-28 Alex Zinin <zinin@amt.ru>
2602 * "redistribute <source> metric-type (1|2) metric <XXX>" added
2603
26041999-12-23 Alex Zinin <zinin@amt.ru>
2605 * added RFC1583Compatibility flag
2606 * added dynamic interface up/down functionality
2607
26081999-11-19 Toshiaki Takada <takada@zebra.org>
2609
2610 * ospf_neighbor.h (struct ospf_neighbor): Add member state_change
2611 for NSM state change statistics.
2612
26131999-11-19 Toshiaki Takada <takada@zebra.org>
2614
2615 * ospfd.c (show_ip_ospf_neighbor_detail),
2616 (show_ip_ospf_neighbor_int_detail): DEFUN Added.
2617
26181999-11-14 Kunihiro Ishiguro <kunihiro@zebra.org>
2619
2620 * ospf_asbr.c (ospf_asbr_check_lsas): Add check of
2621 lsa->refresh_list.
2622
26231999-11-11 Toshiaki Takada <takada@zebra.org>
2624
2625 * ospf_ia.[ch] (OSPF_EXAMINE_SUMMARIES_ALL): Macro added.
2626 This macro is expanded to ospf_examine_summaries ()
2627 for SUMMARY_LSA and SUMMARY_LSA_ASBR.
2628 (OSPF_EXAMINE_TRANSIT_SUMMARIES_ALL): Macro added.
2629 This macro is expanded to ospf_examine_transit_summaries ()
2630 for SUMMARY_LSA and SUMMARY_LSA_ASBR.
2631
26321999-11-11 Toshiaki Takada <takada@zebra.org>
2633
2634 * ospf_lsa.[ch] (ospf_find_self_summary_lsa_by_prefix): Changed to
2635 macro OSPF_SUMMARY_LSA_SELF_FIND_BY_PREFIX.
2636 (ospf_find_self_summary_asbr_lsa_by_prefix): Changed to
2637 macro OSPF_SUMMARY_ASBR_LSA_SELF_FIND_BY_PREFIX.
2638 (ospf_find_self_external_lsa_by_prefix): Changed to
2639 macro OSPF_EXTERNAL_LSA_SELF_FIND_BY_PREFIX.
2640
26411999-11-11 Toshiaki Takada <takada@zebra.org>
2642
2643 * ospfd.c (ospf_abr_type): ospf_abr_type_cisco, ospf_abr_type_ibm,
2644 ospf_abr_type_shortcut and ospf_abr_type_standard DEFUNs are
2645 combined.
2646 * ospfd.c (no_ospf_abr_type): no_ospf_abr_type_cisco,
2647 no_ospf_abr_type_ibm and no_ospf_abr_type_shortcut DEFUNS are
2648 combined.
2649
26501999-11-10 Toshiaki Takada <takada@zebra.org>
2651
2652 * ospf_route.c (ospf_lookup_int_by_prefix): Move function to
2653 ospf_interface.c and change name to ospf_if_lookup_by_prefix ().
2654
26551999-11-01 Alex Zinin <zinin@amt.ru>
2656 * ospf_packet.c
2657 some correction to LSU processing
2658
2659 * ospf_lsa.c ospfd.h
2660 randomize initial LSA refreshment interval
2661 and limit the size of LSA-group to 10
2662 to let randomization work more effectively.
2663
26641999-10-31 Alex Zinin <zinin@amt.ru>
2665 * ospf_interface.c
2666 cancel t_network_lsa_self
2667 when freeing int structure
2668
2669 * ospf_abr.c ospf_asbr.c ospf_flood.c ospf_lsa.c
2670 ospf_lsa.h ospf_lsdb.h ospfd.c ospfd.h
2671
2672 Summary and ASE LSA refreshment functions
2673 added---LSA refreshment is paced to 70 LSAs
2674 per sec to avoid link overflow. Refreshment events
2675 are further randomized within a 10 sec interval
2676 to avoid syncing.
2677
2678 Also the sigfault of memcmp() in ospf_lsa_is_different()
2679 is fixed.
2680
26811999-10-30 Alex Zinin <zinin@amt.ru>
2682 * ospf_nsm.c
2683 Fix the bug where MAX_AGE LSAs
2684 are included into the DB summary.
2685
2686 * ospf_interface.c
2687 allocate 2*MTU input buffer instead of just MTU
2688 for the cases when the other router mistakenly
2689 sends larger packets thus causing fragmentation, etc.
2690
2691 * ospf_nsm.c
2692 in nsm_reset_nbr() lists should be freed
2693 not when they are empty.
2694
26951999-10-29 Kunihiro Ishiguro <kunihiro@zebra.org>
2696
2697 * ospf_zebra.c (ospf_acl_hook): Move OSPF_IS_ASBR and OSPF_IS_ABR
2698 check inside of if (ospf_top).
2699
27001999-10-29 Alex Zinin <zinin@amt.ru>
2701 * ospf_lsa.c ospf_lsdb.c :
2702 add assertion in lsa and lsa->data alloc functions,
2703 as well as in lsdb_add for new->data
2704
2705 * ospf_lsdb.c: free hash table correctly
2706
27071999-10-28 John Capo <jc@irbs.com>
2708
2709 * ospf_packet.h (OSPF_PACKET_MAX): Correct MAX packet length
2710 calculation
2711
27121999-10-27 Kunihiro Ishiguro <kunihiro@zebra.org>
2713
2714 * OSPF-TRAP-MIB.txt: New file added. Edited version of RFC1850.
2715
2716 * OSPF-MIB.txt: New file added. Edited version of RFC1850.
2717
27181999-10-27 Alex Zinin <zinin@amt.ru>
2719 * ospfd, ospf_zebra, ospf_abr
2720 "area import-list" command is added.
2721 This command allows to filter the inter-area routes
2722 injected into an area. Access list hook function
2723 extended to invalidate area exp/imp lists.
2724
27251999-10-25 Yoshinobu Inoue <shin@nd.net.fujitsu.co.jp>
2726
2727 * ospfd.c (ospf_interface_run): Enable to detect P2P network
2728 on an OSPF interface.
2729
27301999-10-19 Jordan Mendelson <jordy@wserv.com>
2731
2732 * ospf_lsdb.c (ospf_lsdb_add): Fix bug of crash
2733 in ospf_ls_retransmit_lookup ().
2734
27351999-10-19 Vladimir B. Grebenschikov <vova@express.ru>
2736
2737 * ospf_route.c: Workaround about installation of OSPF routes into
2738 the zebra daemon. Add checking of existance routes. Free
2739 ospf_top->old_table if it exists.
2740
27411999-10-15 Jordan Mendelson <jordy@wserv.com>
2742
2743 * Add support for MD5 authentication.
2744
27451999-10-12 Alex Zinin <zinin@amt.ru>
2746 * ospfd.c, ospfd.h, ospf_abr.c:
2747 a new command "area export-list" was added, it allows
2748 the admin. to control which intra-area routes are
2749 announced to other areas by the ABR
2750
27511999-10-12 Alex Zinin <zinin@amt.ru>
2752 * ospf_asbr.c (ospf_asbr_check_lsas): Fix bug of coredump
2753 when "no redistribute" is used after a distribute list
2754 denying some networks was used
2755
27561999-10-05 Toshiaki Takada <takada@zebra.org>
2757
2758 * ospf_route.c (ospf_path_dup): New function added.
2759
27601999-10-05 Toshiaki Takada <takada@zebra.org>
2761
2762 * ospf_interface.[ch]: Some of VL related funciton name changed.
2763
27641999-09-27 Alex Zinin <zinin@amt.ru>
2765
2766 * ospf_zebra.c: Distribute-list functionality added
2767
27681999-09-27 Toshiaki Takada <takada@zebra.org>
2769
2770 * ospfd.c (show_ip_ospf): Fix bug of segmentation fault when no ospf
2771 instance exists.
2772
27731999-09-25 Kunihiro Ishiguro <kunihiro@zebra.org>
2774
2775 * ospfd.c (ospf_interface_down): Fix bug of misusing nextnode()
2776 instead of node->next. Reported by Hiroki Ishibashi
2777 <ishibasi@dcd.abk.nec.co.jp>.
2778
2779 * ospf_route.c (show_ip_ospf_route): Add check for ospf is enabled
2780 or not.
2781
27821999-09-23 Alex Zinin <zinin@amt.ru>
2783
2784 * stub area support added
2785
27861999-09-23 Alex Zinin <zinin@amt.ru>
2787
2788 * fwd_addr in ASE-LSAs is now set correctly
2789 * ASE routing changed to check the fwd_addr
2790 and skip the route if the addr points to one
2791 of our interfaces to avoid loops.
2792
27931999-09-22 Alex Zinin <zinin@amt.ru>
2794
2795 * ospf_interface:
2796 ospf_vls_in_area() added, it returns
2797 the number of VLs configured through the area
2798
2799 * ospf_interface.c ospf_lsa.c ospf_lsdb.c ospfd.c
2800 honor correct mem alloc
2801
28021999-09-22 Alex Zinin <zinin@amt.ru>
2803
2804 * memory.[ch]:
2805 Some OSPF mem types added,
2806 plus more info in "show mem"
2807
28081999-09-21 Alex Zinin <zinin@amt.ru>
2809
2810 * ospfd.c:
2811 "area range substitute" added.
2812 It can be used on NAT-enabled (IP-masquarade)
2813 routers to announce private networks
2814 from an area as public ones into the outside
2815 world (not in the RFC, btw :)
2816
28171999-09-21 Alex Zinin <zinin@amt.ru>
2818
2819 * ospfd.c:
2820 "area range suppress" added.
2821 This command allows to instruct the router
2822 to be silent about specific ranges, i.e.,
2823 it is a method of route filtering on area
2824 borders
2825
28261999-09-21 Alex Zinin <zinin@amt.ru>
2827
2828 * ospfd.c VLs removed when "no network area" executed
2829
28301999-09-20 Alex Zinin <zinin@amt.ru>
2831
2832 * ospf_ase.c bug fix for not-zero fwd_addr
2833 and directly connected routes.
2834
28351999-09-20 Yon Uriarte <yon@plannet.de>
2836
2837 * ospf_packet.c (ospf_make_ls_req): Introduce delta value for
2838 checking the length of OSPF packet exceeds MTU or not.
2839
2840 * ospf_lsa.c (ospf_lsa_different): Apply ntohs for checking
2841 l1->data->length.
2842
28431999-09-18 Alex Zinin <zinin@amt.ru>
2844
2845 * ospf_lsa.c bug fix for ospf_network_lsa() to
2846 include itself into the RID list
2847
28481999-09-10 Alex Zinin <zinin@amt.ru>
2849
2850 * Alternative ABR behaviors IBM/Cisco/Shortcut
2851 implemented
2852
28531999-09-10 Alex Zinin <zinin@amt.ru>
2854
2855 * router and network-LSA origination
2856 changed to honor MinLSInterval
2857
28581999-09-08 Alex Zinin <zinin@amt.ru>
2859
2860 * modified ABR behavior to honor VLs and transit
2861 areas
2862
28631999-09-07 Alex Zinin <zinin@amt.ru>
2864
2865 * completed VL functionality
2866
28671999-09-06 Kunihiro Ishiguro <kunihiro@zebra.org>
2868
2869 * ospf_asbr.c: New file.
2870 ospf_asbr.h: New file.
2871
2872 * ospf_zebra.c (ospf_redistribute_connected): Add redistribute
2873 related stuff.
2874
28751999-09-05 Kunihiro Ishiguro <kunihiro@zebra.org>
2876
2877 * ospfd.h (OSPF_FLAG_VIRTUAL_LINK): Change OSPF_FLAG_VEND to
2878 OSPF_FLAG_VIRTUAL_LINK for comprehensiveness.
2879
28801999-09-03 Kunihiro Ishiguro <kunihiro@zebra.org>
2881
2882 * ospf_spf.c (ospf_spf_register): Change name from
2883 ospf_spf_route_add() to ospf_spf_register().
2884 Include "ospfd/ospf_abr.h" for ospf_abr_task() prototype.
2885
28861999-09-02 Kunihiro Ishiguro <kunihiro@zebra.org>
2887
2888 * ospf_lsa.c (ospf_external_lsa_install): Change to update
2889 lsa->data rather than install new one, when same id lsa is already
2890 installed.
2891
28921999-09-01 Kunihiro Ishiguro <kunihiro@zebra.org>
2893
2894 * ospf_lsa.c (ospf_router_lsa_install): Return lsa value.
2895 (ospf_network_lsa_install): Likewise.
2896 (ospf_summary_lsa_install): Likewise.
2897 (ospf_summary_asbr_lsa_install): Likewise.
2898 (ospf_external_lsa_install): Likewise.
2899
2900 * ospf_spf.c (ospf_spf_calculate): Comment out debug function
2901 ospf_rtrs_print().
2902
29031999-08-31 Kunihiro Ishiguro <kunihiro@zebra.org>
2904
2905 * ospf_spf.c (ospf_rtrs_free): Add ospf_spf_calculate() for
2906 freeing rtrs.
2907
29081999-08-31 Toshiaki Takada <takada@zebra.org>
2909
2910 * ospf_lsa.c (show_ip_ospf_database_summary),
2911 (show_ip_ospf_database_summary_asbr),
2912 (show_ip_ospf_database_external): New function added.
2913 `show ip ospf database summary',
2914 `show ip ospf database asbr-summary'
2915 `show ip ospf database external' command can be used.
2916
2917 * ospf_lsa.c (ospf_lsa_count_table): New function added.
2918 (show_ip_ospf_database_all): show nothing if a type of LSA
2919 does not exist.
2920
29211999-08-31 Kunihiro Ishiguro <kunihiro@zebra.org>
2922
2923 * ospf_lsa.c (ospf_maxage_lsa_remover): Preserve next pointer when
2924 the node is deleted.
2925
29261999-08-31 Toshiaki Takada <takada@zebra.org>
2927
2928 * ospf_flood.c (ospf_ls_retransmit_lookup): change to return
2929 struct ospf_lsa *.
2930 (ospf_ls_request_new), (ospf_ls_request_free),
2931 (ospf_ls_request_add), (ospf_ls_request_delete),
2932 (ospf_ls_request_delete_all), (ospf_ls_request_lookup):
2933 New function added.
2934
2935 * ospf_packet.c (ospf_ls_upd_send_lsa): New function added.
2936
2937 * ospf_lsa.h (LS_AGE): Slightly change macro definition.
2938
2939 * ospf_lsa.c (ospf_lsa_more_recent), (ospf_lsa_diffrent):
2940 Use LS_AGE macro.
2941
29421999-08-30 Alex Zinin <zinin@amt.ru>
2943
2944 * ospfd.c
2945 fix a bug with area range config write
2946 added "show ip ospf" command, it will be enhanced later on
2947
29481999-08-30 Alex Zinin <zinin@amt.ru>
2949
2950 * ospf_lsa.c
2951 updated ospf_router_lsa() to honor flags (B-bit)
2952
29531999-08-30 Alex Zinin <zinin@amt.ru>
2954
2955 * ospf_abr.c
2956 wrote major functions implementing ABR activity
2957
29581999-08-30 Alex Zinin <zinin@amt.ru>
2959
2960 * ospf_ia.c ospf_route.c ospf_route.h
2961 fixed the bug with ospf_route.origin field.
2962 Now it holds pointer to lsa_header
2963
29641999-08-30 Alex Zinin <zinin@amt.ru>
2965
2966 * ospf_flood.c ospf_flood.h:
2967 transformed ospf_flood_if_select into ospf_flood_through_area()
2968 added new ospf_flood_if_select() and ospf_flood_through_as()
2969
29701999-08-30 Toshiaki Takada <takada@zebra.org>
2971
2972 * ospf_flood.[ch]: New file added.
2973
2974 * ospf_packet.c (ospf_lsa_flooding),
2975 (ospf_lsa_flooding_select_if): functions move to ospf_flood.c
2976
2977 * ospf_neighbor.c (ospf_put_lsa_on_retransm_list),
2978 (ospf_remove_lsa_from_retransm_list),
2979 (ospf_nbr_remove_all_lsas_from_retransm_list),
2980 (ospf_lsa_remove_from_ls_retransmit):
2981 (ospf_lsa_retransmit): functions move to
2982 ospf_flood.c, and change function's name:
2983
2984 ospf_put_lsa_on_retransm_list ()
2985 -> ospf_ls_retransmit_add ()
2986 ospf_remove_lsa_from_retransm_list ()
2987 -> ospf_ls_retransmit_delete ()
2988 ospf_nbr_remove_all_lsas_from_retransm_list ()
2989 -> ospf_ls_retransmit_clear ()
2990 ospf_lsa_remove_from_ls_retransmit ()
2991 -> ospf_ls_retransmit_delete_nbr_all ()
2992 ospf_lsa_retransmit ()
2993 -> ospf_ls_retransmit_add_nbr_all ()
2994
2995 * ospf_lsa.c (ospf_lsa_lookup_from_list): function move to
2996 ospf_flood.c, and change name to ospf_ls_retransmit_lookup ().
2997
29981999-08-30 Kunihiro Ishiguro <kunihiro@zebra.org>
2999
3000 * ospf_neighbor.c (ospf_nbr_lookup_by_addr): Use
3001 route_node_lookup() instead of route_node_get().
3002
3003 * ospf_packet.c (ospf_ls_upd): Temporary comment out (6) check.
3004
30051999-08-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3006
3007 * ospf_route.c (ospf_lookup_int_by_prefix): Add check of
3008 oi->address.
3009
30101999-08-29 Alex Zinin <zinin@amt.ru>
3011 * ospf_lsa.c
3012 MaxAge LSA deletion functions added.
3013
30141999-08-29 Alex Zinin <zinin@amt.ru>
3015 * ospf_neighbor.c
3016 ospf_nbr_lookup_by_addr(): added route_unlock_node()
3017 when function returns NULL if (rn->info == NULL)
3018
30191999-08-29 Alex Zinin <zinin@amt.ru>
3020 * ospfd.c
3021 added a hack for area range deletion
3022
30231999-08-29 Alex Zinin <zinin@amt.ru>
3024 * ospf_lsa.h
3025 included lsdb field into struct ospf_lsa, to find
3026 LSDB easier when removing MaxAge LSAs.
3027
30281999-08-29 Alex Zinin <zinin@amt.ru>
3029 * ospf_lsa.c ospf_neighbor.c ospf_nsm.c
3030 ospf_packet.c changed to honor new retransmit list
3031 management functions
3032
30331999-08-29 Alex Zinin <zinin@amt.ru>
3034 * ospf_neighbor.c , .h added new retransmit list functions.
3035
30361999-08-29 Alex Zinin <zinin@amt.ru>
3037 * Makefile.in
3038 added ospf_ase, ospf_abr, ospf_ia
3039
30401999-08-29 Alex Zinin <zinin@amt.ru>
3041 * ospf_spf.c:
3042 - changed ospf_next_hop_calculation() to include interface
3043 and nexthop addr for directly connected routers---more informative
3044 and solves problem with route installation into the kernel
3045 - changed ospf_nexthop_out_if_addr() to support routers, not only
3046 transit networks
3047 - added ospf_process_stubs();
3048
30491999-08-29 Alex Zinin <zinin@amt.ru>
3050 * ospf_lsa.c:
3051 - changed ospf_router_lsa() to provide correct links
3052 for p-t-p interfaces;
3053 - changed ospf_summary_lsa_install() to support table
3054 of self-originated summary-LSAs;
3055 - added ospf_summary_asbr_lsa_install() and ospf_external_lsa_install()
3056 - changed ospf_lsa_install() accordingly
3057 - changed show_ip_ospf_database_router_links() to support p-t-p
3058
30591999-08-29 Kunihiro Ishiguro <kunihiro@zebra.org>
3060
3061 * ospf_packet.c (ospf_make_db_desc): Only master can clear more
3062 flag.
3063
30641999-08-29 Kunihiro Ishiguro <kunihiro@zebra.org>
3065
3066 * ospf_packet.c (ospf_read): Add check of IP src address.
3067
30681999-08-28 Alex Zinin <zinin@amt.ru>
3069 * ospf_neighbor.h
3070 added ospf_nbr_lookup_by_routerid()
3071
30721999-08-28 Alex Zinin <zinin@amt.ru>
3073 * ospfd.h
3074 added ABR/ASBR flag definitions and fields;
3075 added iflist field to area structure;
3076 summary_lsa_self and summary_lsa_asbr_self are changed
3077 to be route tables;
3078 added ranges field---configured area ranges;
3079 A separate Routers RT added;
3080 area range config commands and config write added
3081
3082
30831999-08-28 Alex Zinin <zinin@amt.ru>
3084 * ospf_route.c :
3085 ospf_route_free()--added code to free the list of paths;
3086 The following functions added:
3087 ospf_intra_add_router();
3088 ospf_intra_add_transit();
3089 ospf_intra_add_stub();
3090 the last function uses new ospf_int_lookup_by_prefix();
3091 show_ip_ospf_route_cmd()--changed to support new RT structure;
3092 added ospf_cmp_routes()--general route comparision function;
3093 added ospf_route_copy_nexthops() and ospf_route_copy_nexthops_from_vertex()
3094 they are used in ASE and IA routing;
3095 added ospf_subst_route() and ospf_add_route();
3096
30971999-08-28 Alex Zinin <zinin@amt.ru>
3098 * ospf_route.h :
3099 changed struct ospf_path to include output interface,
3100 changed struct ospf_route to support IA and ASE routing.
3101 added prototypes of the function used in IA and ASE modules.
3102
31031999-08-28 Alex Zinin <zinin@amt.ru>
3104 * ospf_lsa.h ospf_lsa.c :
3105 added ospf_my_lsa(), an interface independent version of
3106 ospf_lsa_is_self_originated(), it will be used in ASE and IA-routing.
3107
31081999-08-27 Kunihiro Ishiguro <kunihiro@zebra.org>
3109
3110 * ospf_interface.c (interface_config_write): Add check for
3111 oi->nbr_self.
3112
31131999-08-25 Toshiaki Takada <takada@zebra.org>
3114
3115 * ospf_lsa.c (ospf_lsa_dup): New function added.
3116
3117 * ospf_packet.c (ospf_write), (ospf_read): Print send/recv
3118 interface in debug message.
3119
31201999-08-25 Toshiaki Takada <takada@zebra.org>
3121
3122 * ospf_packet.c (ospf_ls_ack_send): The name is changed from
3123 `ospf_ls_ack_send'.
3124 (ospf_ls_ack_send_delayed) (ospf_ls_ack_timer): New function added.
3125 Delayed Link State Acknowledgment is scheduled by timer.
3126
31271999-08-25 Alex Zinin <zinin@amt.ru>
3128
3129 * ospf_lsa.c (ospf_router_lsa): Incorrectly included link to
3130 a stub network instead of link to a transit network into
3131 originated router-LSA, bug fixed.
3132
31331999-08-24 Toshiaki Takada <takada@zebra.org>
3134
3135 * ospfd.c (ospf_update_router_id): New function added.
3136
3137 * ospf_network.c (ospf_write): Create new socket per transmission.
3138 And select outgoing interface whether dst is unicast or multicast.
3139
3140 * ospf_packet.c: LSA flooding will work.
3141
31421999-08-24 VOP <vop@unity.net>
3143
3144 * ospf_route.c: Include "sockunion.h"
3145
31461999-08-24 Kunihiro Ishiguro <kunihiro@zebra.org>
3147
3148 * ospf_network.c (ospf_serv_sock_init): Enclose
3149 IPTOS_PREC_INTERNETCONTROL setting with #ifdef for OS which does
3150 not have the definition.
3151
31521999-08-23 Toshiaki Takada <takada@zebra.org>
3153
3154 * ospf_packet.c: Fix bug of DD processing.
3155
31561999-08-18 Toshiaki Takada <takada@zebra.org>
3157
3158 * ospf_lsa.c (show_ip_ospf_database): Show actual `LS age'.
3159
31601999-08-17 Toshiaki Takada <takada@zebra.org>
3161
3162 * ospf_lsa.h (OSPF_MAX_LSA): The value of OSPF_MAX_LSA is
3163 corrected. The bug of `mes_lookup' is fixed.
3164 This had been reported by Poul-Henning Kamp <phk@freebsd.org>.
3165
3166 * ospf_lsa.c (ospf_router_lsa_install): The name is changed from
3167 `ospf_add_router_lsa'.
3168 (ospf_network_lsa_install): The name is changed from
3169 `ospf_add_network_lsa'.
3170
3171 * ospf_interface.h (ospf_interface): Add member `nbr_self'.
3172
3173 * ospf_interface.c (ospf_if_is_enable): New function added.
3174
31751999-08-16 Toshiaki Takada <takada@zebra.org>
3176
3177 * ospf_lsa.h (struct lsa_header): The name is changed from
3178 `struct ospf_lsa'.
3179 (struct ospf_lsa): New struct added to control each LSA's aging
3180 and timers.
3181
3182 * ospf_lsa.c (ospf_lsa_data_free): The name is change from
3183 `ospf_lsa_free'.
3184 (ospf_lsa_data_new), (ospf_lsa_new), (ospf_lsa_free),
3185 (ospf_lsa_different), (ospf_lsa_install): New function added.
3186
3187 * ospf_packet.c (ospf_ls_upd_list_lsa): New function added.
3188
31891999-08-12 Toshiaki Takada <takada@zebra.org>
3190
3191 * ospf_nsm.c (nsm_reset_nbr): New function added.
3192 KillNbr and LLDown neighbor event call this function.
3193
31941999-08-10 Toshiaki Takada <takada@zebra.org>
3195
3196 * ospf_packet.c (ospf_ls_retransmit)
3197 (ospf_ls_upd_timer): New function added.
3198 Set retransmission timer for Link State Update.
3199
32001999-07-29 Toshiaki Takada <takada@zebra.org>
3201
3202 * ospf_ism.c (ospf_dr_election): Fix bug of DR election.
3203
32041999-07-28 Toshiaki Takada <takada@zebra.org>
3205
3206 * ospf_network.c (ospf_serv_sock_init): Set IP precedence field
3207 with IPTOS_PREC_INTERNET_CONTROL.
3208
3209 * ospf_nsm.c (nsm_change_status): Schedule NeighborChange event
3210 if NSM status change.
3211
3212 * ospf_packet.c (ospf_make_hello): Never include a neighbor in
3213 Hello packet, when the neighbor goes down.
3214
32151999-07-26 Kunihiro Ishiguro <kunihiro@zebra.org>
3216
3217 * Makefile.am (noinst_HEADERS): Add ospf_route.h.
3218
3219 * ospf_route.c (show_ip_ospf_route): Add `show ip ospf route'
3220 command.
3221
32221999-07-25 Toshiaki Takada <takada@zebra.org>
3223
3224 * ospf_lsa.c (ospf_router_lsa): Fix bug of LS sequence number
3225 assignement.
3226
32271999-07-25 Kunihiro Ishiguro <kunihiro@zebra.org>
3228
3229 * ospf_route.c (ospf_route_table_free): New function added.
3230
3231 * ospf_spf.c (ospf_spf_next): Free vertex w when cw's and w's
3232 distance is same.
3233
3234 * ospfd.h (struct ospf): Add old_table.
3235
3236 * ospf_main.c (sighup): Call of log_rotate () removed.
3237
3238 * ospf_lsa.c (ospf_lsa_is_self_originated): Fix bug of checking
3239 area->lsa as self LSA. This should be area->lsa_self.
3240
32411999-07-24 Kunihiro Ishiguro <kunihiro@zebra.org>
3242
3243 * ospf_zebra.c (ospf_zebra_add): ospf_zebra_add
3244 (),ospf_zebra_delete () added.
3245
3246 * ospf_spf.c (ospf_spf_calculate): Call ospf_intra_route_add ().
3247
32481999-07-24 Toshiaki Takada <takada@zebra.org>
3249
3250 * ospf_lsa.c: Change LS sequence number treatment.
3251 (ospf_lsa_is_self_originated): New function added.
3252 (show_ip_ospf_database_self_originated): New DEFUN added.
3253
32541999-07-23 Kunihiro Ishiguro <kunihiro@zebra.org>
3255
3256 * ospf_interface.c (ospf_if_lookup_by_addr): Add loopback check.
3257
32581999-07-22 Toshiaki Takada <takada@zebra.org>
3259
3260 * ospf_spf.c (ospf_nexthop_new), (ospf_nexthop_free),
3261 (ospf_nexthop_dup): function added.
3262 (ospf_nexthop_calculation): function changed.
3263
3264 * ospf_interface.c (ospf_if_lookup_by_addr): function added.
3265
32661999-07-21 Toshiaki Takada <takada@zebra.org>
3267
3268 * ospf_spf.c (ospf_spf_closest_vertex): function removed.
3269
32701999-07-21 Kunihiro Ishiguro <kunihiro@zebra.org>
3271
3272 * ospf_spf.c (ospf_spf_next): Apply ntohs for fetching metric.
3273
32741999-07-21 Toshiaki Takada <takada@zebra.org>
3275
3276 * ospf_neighbor.c (ospf_nbr_lookup_by_router_id): fundtion removed.
3277
3278 * ospf_lsa.c (show_ip_ospf_database_router): describe each
3279 connected link.
3280
32811999-07-21 Kunihiro Ishiguro <kunihiro@zebra.org>
3282
3283 * ospf_spf.c (ospf_spf_next): V is router LSA or network LSA so
3284 change behavior according to LSA type.
3285 (ospf_lsa_has_link): Link check function is added.
3286
32871999-07-20 Kunihiro Ishiguro <kunihiro@zebra.org>
3288
3289 * ospf_spf.c (ospf_spf_calculate_schedule): Add new function for
3290 SPF calcultion schedule addtition.
3291 (ospf_spf_calculate_timer_add): Rough 30 sec interval SPF calc
3292 timer is added.
3293 (ospf_spf_next_router): Delete ospf_spf_next_network ().
3294
3295 * ospf_lsa.c (show_ip_ospf_database_all): Network-LSA display
3296 header typo correction. Display of router LSA's #link added.
3297
32981999-07-19 Toshiaki Takada <takada@zebra.org>
3299
3300 * ospf_packet.c (ospf_check_network_mask): Added new function for
3301 receiving Raw IP packet on an appropriate interface.
3302
33031999-07-16 Toshiaki Takada <takada@zebra.org>
3304
3305 * ospfd.c (ospf_router_id): new DEFUN added.
3306
33071999-07-15 Toshiaki Takada <takada@zebra.org>
3308
3309 * ospf_spf.c (ospf_spf_init), (ospf_spf_free),
3310 (ospf_spf_has_vertex), (ospf_vertex_lookup),
3311 (ospf_spf_next_router), (ospf_spf_next_network),
3312 (ospf_spf_closest_vertex), (ospf_spf_calculate):
3313 function added.
3314
33151999-07-13 Toshiaki Takada <takada@zebra.org>
3316
3317 * ospf_ism.c: fix bug of DR Election.
3318
3319 * ospf_nsm.c: fix bug of adjacency forming.
3320
33211999-07-05 Kunihiro Ishiguro <kunihiro@zebra.org>
3322
3323 * ospfd.c (ospf_init): Change to use install_default.
3324
33251999-07-01 Rick Payne <rickp@rossfell.co.uk>
3326
3327 * ospf_zebra.c (zebra_init): Install standard commands to
3328 ZEBRA_NODE.
3329
33301999-06-30 Toshiaki Takada <takada@zebra.org>
3331
3332 * ospf_dump.c: Whole debug command is improved.
3333 (ISM|NSM) (events|status|timers) debug option added.
3334 (show_debugging_ospf): new DEFUN added.
3335
33361999-06-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3337
3338 * ospf_lsa.c (ospf_lsa_lookup_from_list): Change !IPV4_ADDR_CMP to
3339 IPV4_ADDR_SAME.
3340
33411999-06-29 Toshiaki Takada <takada@zebra.org>
3342
3343 * ospf_dump.c (ospf_summary_lsa_dump): Add summary-LSA dump routine.
3344 (ospf_as_external_lsa_dump): Add AS-external-LSA dump routine.
3345
3346 * ospf_nsm.c (nsm_twoway_received): fix condtion of adjacnet.
3347
3348 * ospf_ism.c (ospf_dr_election): fix DR Election.
3349
3350 * ospf_dump.c (ospf_nbr_state_message): fix `show ip ospf neighbor'
3351 command's state.
3352
33531999-06-29 Kunihiro Ishiguro <kunihiro@zebra.org>
3354
3355 * ospf_dump.c (ospf_router_lsa_dump): Add router-LSA dump routine.
3356
33571999-06-28 Toshiaki Takada <takada@zebra.org>
3358
3359 * ospf_lsa.c (show_ip_ospf_database_network): fix bug of
3360 `show ip ospf database network' command output.
3361
3362 * ospf_nsm.c (nsm_inactivity_timer): Clear list of Link State
3363 Retransmission, Database Summary and Link State Request.
3364
3365 * ospf_packet.c (ospf_ls_req_timer): New function added.
3366 Set Link State Request retransmission timer.
3367
33681999-06-27 Kunihiro Ishiguro <kunihiro@zebra.org>
3369
3370 * ospf_main.c (main): Change default output from ZLOG_SYSLOG to
3371 ZLOG_STDOUT.
3372
3373 * ospfd.c (ospf_init): Register show_ip_ospf_interface_cmd and
3374 show_ip_ospf_neighbor_cmd to VIEW_NODE.
3375
3376 * ospf_lsa.c (ospf_lsa_init): Register show_ip_ospf_database_cmd
3377 and show_ip_ospf_database_type_cmd to VIEW_NODE.
3378
33791999-06-25 Toshiaki Takada <takada@zebra.org>
3380
3381 * ospf_packet.c: fix bug of DD making.
3382 fix bug of LS-Update reading.
3383
33841999-06-23 Toshiaki Takada <takada@zebra.org>
3385
3386 * ospf_packet.c: All type of packets are changed to use
3387 fifo queue structure.
3388 (ospf_fill_header) function added.
3389
33901999-06-22 Toshiaki Takada <takada@zebra.org>
3391
3392 * ospf_packet.c (ospf_packet_new): New function added to handle
3393 sending ospf packet by fifo queue structure.
3394 (ospf_packet_free), (ospf_fifo_new), (ospf_fifo_push),
3395 (ospf_fifo_pop), (ospf_fifo_head), (ospf_fifo_flush),
3396 (ospf_fifo_free): Likewise.
3397
33981999-06-21 Toshiaki Takada <takada@zebra.org>
3399
3400 * ospf_nsm.c (ospf_db_desc_timer): function added.
3401 (nsm_timer_set) function added.
3402 * ospf_dump.c (ospf_option_dump): function added.
3403 * ospf_packet.c (ospf_ls_req) (ospf_make_ls_req): function added.
3404
34051999-06-20 Toshiaki Takada <takada@zebra.org>
3406
3407 * ospf_lsa.c (ospf_lsa_more_recent): function added.
3408 * ospf_neighbor.h (struct ospf_neighbor): Change member ms_flag
3409 to dd_flags.
3410
34111999-06-19 Toshiaki Takada <takada@zebra.org>
3412
3413 * ospf_lsa.c: DEFUN (show_ip_ospf_database) Added.
3414 * ospf_interface.c (if_ospf_cost), (if_ospf_dead_interval),
3415 (if_ospf_hello_interval), (if_ospf_priority),
3416 (if_ospf_retransmit_interval), (if_ospf_transmit_delay)
3417 argument changed from NUMBER to <range>.
3418 DEFUN (if_ospf_network_broadcast),
3419 DEFUN (if_ospf_network_non_broadcast),
3420 DEFUN (if_ospf_network_point_to_multipoint),
3421 DEFUN (if_ospf_network_point_to_point) functions are combined to
3422 DEFUN (if_ospf_network).
3423
34241999-06-18 Toshiaki Takada <takada@zebra.org>
3425
3426 * ospf_lsa.c: ospf_add_router_lsa (), ospf_add_network_lsa (),
3427 ospf_lsa_lookup (), ospf_lsa_count () Added.
3428
34291999-06-15 Toshiaki Takada <takada@zebra.org>
3430
3431 * DEFUN (ospf_debug_ism), DEFUN (ospf_debug_nsm),
3432 DEFUN (no_ospf_debug_ism), DEFUN (no_ospf_debug_nsm) Added.
3433 `debug ospf ism' command shows debug message.
3434 `debuf ospf nsm' command shows debug message.
3435
34361999-06-14 Toshiaki Takada <takada@zebra.org>
3437
3438 * ospf_lsa.c: ospf_network_lsa () Added.
3439 ospf_lsa_checksum () Added.
3440 * DEFUN (ospf_debug_packet), DEFUN (no_ospf_debug_packet) Added.
3441 `debug ospf packet' command shows debug message.
3442
34431999-06-13 Toshiaki Takada <takada@zebra.org>
3444
3445 * ospf_packet.h: Remove struct ospf_ls_req {}, ospf_ls_upd {},
3446 ospf_ls_ack {}.
3447
34481999-06-11 Toshiaki Takada <takada@zebra.org>
3449
3450 * ospf_dump.c: fix IP packet length treatment.
3451
34521999-06-10 Toshiaki Takada <takada@zebra.org>
3453
3454 * ospf_ism.h: Add OSPF_ISM_EVENT_EXECUTE() Macro Added.
3455 * ospf_nsm.h: Add OSPF_NSM_EVENT_EXECUTE() Macro Added.
3456
3457 * ospf_packet.c: ospf_db_desc (), ospf_db_desc_send () Added.
3458 ospf_make_hello (), ospf_make_db_desc () Added.
3459 ospf_db_desc_proc () Added.n
3460
3461 * Database Description packet can be processed.
3462
34631999-06-08 Toshiaki Takada <takada@zebra.org>
3464
3465 * ospf_lsa.c: New file.
3466
34671999-06-07 Toshiaki Takada <takada@zebra.org>
3468
3469 * ospf_neighbor.c: ospf_fully_adjacent_count () Added.
3470
34711999-06-07 Kunihiro Ishiguro <kunihiro@zebra.org>
3472
3473 * ospf_spf.[ch]: New file.
3474
34751999-05-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3476
3477 * ospf_zebra.c: Changed to use lib/zclient.c routines.
3478
3479 * ospf_zebra.h (zebra_start): Remove struct zebra.
3480
34811999-05-29 Kunihiro Ishiguro <kunihiro@zebra.org>
3482
3483 * ospfd.c (ospf_config_write): Add cast (unsigned long int) to
3484 ntohl for sprintf warning.
3485
34861999-05-19 Toshiaki Takada <takada@zebra.org>
3487
3488 * ospf_ism.c (ospf_dr_election): Join AllDRouters Multicast group
3489 if interface state changes to DR or BDR.
3490
34911999-05-14 Stephen R. van den Berg <srb@cuci.nl>
3492
3493 * ospf_main.c (signal_init): SIGTERM call sigint.
3494 (sigint): Logging more better message.
3495
34961999-05-12 Toshiaki Takada <takada@zebra.org>
3497
3498 * ospfd.c: Fix bug of `no router ospf' statement, it will work.
3499
35001999-05-11 Toshiaki Takada <takada@zebra.org>
3501
3502 * ospf_neighbor.c: ospf_nbr_free () Added.
3503
35041999-05-10 Toshiaki Takada <takada@zebra.org>
3505
3506 * ospfd.h: struct ospf_area { }, struct ospf_network { } Changed.
3507 * Fix bug of `no network' statement, it will work.
3508
35091999-05-07 Toshiaki Takada <takada@zebra.org>
3510
3511 * ospf_interface.c, ospf_zebra.c: Fix bug of last interface is not
3512 updated by ospf_if_update ().
3513
35141999-04-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3515
3516 * Makefile.am (noinst_HEADERS): Add ospf_lsa.h for distribution.
3517
35181999-04-25 Toshiaki Takada <takada@zebra.org>
3519
3520 * ospf_interface.c: DEFUN (no_if_ospf_cost),
3521 DEFUN (no_if_ospf_dead_interval),
3522 DEFUN (no_if_ospf_hello_interval),
3523 DEFUN (no_if_ospf_priority),
3524 DEFUN (no_if_ospf_retransmit_interval),
3525 DEFUN (no_if_ospf_transmit_delay) Added.
3526
3527 interface_config_write () suppress showing interface
3528 default values.
3529
35301999-04-25 Kunihiro Ishiguro <kunihiro@zebra.org>
3531
3532 * ospf_dump.c (ospf_timer_dump): If thread is NULL return "inactive".
3533
3534 * ospfd.c (ospf_if_update): Fix bug of using ospf_area { } instead
3535 of ospf_network { }. So `router ospf' statement in ospfd.conf
3536 works again.
3537 (ospf_if_update): Call ospf_get_router_id for updating router ID.
3538
35391999-04-25 Toshiaki Takada <takada@zebra.org>
3540
3541 * ospf_interface.c: DEFUN (if_ospf_network) deleted.
3542 DEFUN (if_ospf_network_broadcast),
3543 DEFUN (if_ospf_network_non_broadcast),
3544 DEFUN (if_ospf_network_point_to_multipoint),
3545 DEFUN (if_ospf_network_point_to_point),
3546 DEFUN (no_if_ospf_network) Added.
3547
35481999-04-23 Toshiaki Takada <takada@zebra.org>
3549
3550 * ospfd.h: struct area { } changed to struct ospf_network { }.
3551 Add struct ospf_area { }.
3552 * ospfd.c: Add ospf_area_lookup_by_area_id (), ospf_network_new (),
3553 and ospf_network_free ().
3554 DEFUN (area_authentication), DEFUN (no_area_authentication) Added.
3555
35561999-04-22 Toshiaki Takada <takada@zebra.org>
3557
3558 * ospf_lsa.h: New file.
3559 * ospf_packet.h: LSA related struct definition are moved to
3560 ospf_lsa.h.
3561 * ospf_packet.c: ospf_verify_header () Added.
3562
35631999-04-21 Toshiaki Takada <takada@zebra.org>
3564
3565 * ospf_ism.c: ospf_elect_dr () and related function is changed.
3566 DR Election bug fixed.
3567 * ospf_dump.c: ospf_nbr_state_message (), ospf_timer_dump () Added.
3568 * ospfd.c: DEFUN (show_ip_ospf_neighbor) Added.
3569
35701999-04-19 Kunihiro Ishiguro <kunihiro@zebra.org>
3571
3572 * ospf_main.c (main): access_list_init () is added for vty
3573 connection filtering.
3574
35751999-04-16 Toshiaki Takada <takada@zebra.org>
3576
3577 * ospfd.c: DEFUN (show_ip_ospf_interface) Added.
3578 * ospf_neighbor.c: ospf_nbr_count () Added.
3579
35801999-04-15 Toshiaki Takada <takada@zebra.org>
3581
3582 * ospfd.h: struct ospf { } Changed.
3583 * ospfd.c: ospf_lookup_by_process_id () Deleted.
3584 * ospf_ism.c: ospf_wait_timer () Added. WaitTimer will work.
3585
35861999-04-14 Toshiaki Takada <takada@zebra.org>
3587
3588 * ospf_ism.c: ospf_elect_dr () Added.
3589 * ospf_network.c: ospf_if_ipmulticast () Added.
3590
35911999-04-11 Toshiaki Takada <takada@zebra.org>
3592
3593 * ospf_interface.c: interface_config_write (),
3594 DEFUN (if_ip_ospf_cost),
3595 DEFUN (if_ip_ospf_dead_interval),
3596 DEFUN (if_ip_ospf_hello_interval),
3597 DEFUN (if_ip_ospf_priority),
3598 DEFUN (if_ip_ospf_retransmit_interval) and
3599 DEFUN (if_ip_ospf_transmit_delay) Added.
3600
36011999-04-08 Toshiaki Takada <takada@zebra.org>
3602
3603 * ospf_dump.c: ospf_packet_db_desc_dump () Added.
3604 * ospf_neighbor.c: ospf_nbr_bidirectional () Added.
3605 * ospf_nsm.c: nsm_twoway_received () Added.
3606
36071999-04-02 Toshiaki Takada <takada@zebra.org>
3608
3609 * ospf_neighbor.c: New file.
3610 * ospf_neighbor.h: New file.
3611 * ospf_nsm.c: New file.
3612 * ospf_nsm.h: New file.
3613 * ospf_packet.c: Add ospf_make_header (), ospf_hello () and
3614 ospf_hello_send (). Now OSPFd can receive Hello and send Hello.
3615
36161999-03-27 Kunihiro Ishiguro <kunihiro@zebra.org>
3617
3618 * ospf_packet.c: Add ospf_recv_packet (). Now OSPF Hello can receive.
3619
36201999-03-19 Toshiaki Takada <takada@zebra.org>
3621
3622 * ospf_packet.c: New file.
3623 * ospf_packet.h: New file.
3624 * ospf_network.c: New file.
3625 * ospf_network.h: New file.
3626 * ospfd.h: move OSPF message structure has moved to ospf_packet.h.
3627
36281999-03-17 Kunihiro Ishiguro <kunihiro@zebra.org>
3629
3630 * ospf_zebra.c (ospf_zebra_get_interface): Fix for IPv6 interface
3631 address.
3632
3633 * Makefile.am (install-sysconfDATA): Overwrite install-sysconfDATA
3634 for install ospfd.conf.sample as owner read only file.
3635
3636 * ospf_main.c (usage): Change to use ZEBRA_BUG_ADDRESS.
3637
36381999-03-15 Toshiaki Takada <takada@zebra.org>
3639
3640 * ospf_ism.c: New file.
3641 * ospf_ism.h: New file.
3642 * ospf_dump.c: New file.
3643 * ospf_dump.h: New file.
3644
3645 * ospfd.h: Add (struct ospf), (struct config_network),
3646 (struct message) structure.
3647
3648 * ospf_interface.c: Add ospf_if_match_network ().
3649 * ospf_interface.h (struct ospf_interface): Change struct members.
3650
3651 * ospfd.c: ospf_lookup_by_process_id (), ospf_network_new (),
3652 DEFUN (network_area): Added.
3653
3654 * ospfd.conf.sample: Change sample configuration.
3655
36561999-03-05 Toshiaki Takada <takada@zebra.org>
3657
3658 * ospf_interface.c: New file.
3659 * ospf_interface.h: New file.
3660 * ospf_zebra.h: New file.
3661 * ospf_zebra.c: Add interface function for zebra daemon.
3662 * ospfd.c: New file.
3663
36641999-02-23 Kunihiro Ishiguro <kunihiro@zebra.org>
3665
3666 * Move IPv6 codes and files to ospf6d directory.
3667
36681999-02-18 Peter Galbavy <Peter.Galbavy@knowledge.com>
3669
3670 * syslog support added
3671
36721998-12-22 Toshiaki Takada <takada@zebra.org>
3673
3674 * ospfd.h: New file.
3675 * ospf_lsa.h: New file.
3676
36771998-12-15 Kunihiro Ishiguro <kunihiro@zebra.org>
3678
3679 * Makefile.am: New file.
3680 * ospf_main.c: New file.
3681