blob: f169b8e2819f50a3aee3080eb42a004cffbec9f7 [file] [log] [blame]
ajs9dbc7972005-03-13 19:27:22 +000012005-03-13 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
2
3 * ospf_lsa.c: (ospf_lsa_refresh_walker) If the system clock jumps
4 backward, then current time may be less than
5 ospf->lsa_refresher_started. This was causing invalid values
6 for ospf->lsa_refresh_queue.index resulting in infinite loops.
7 Problem fixed by casting the expression to unsigned before taking
8 the modulus.
9
ajs5c333492005-02-23 15:43:01 +0000102005-02-23 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
11
12 * ospfd.h: Add new field struct stream *ibuf to struct ospf.
13 * ospfd.c: (ospf_new) Check return code from ospf_sock_init.
14 Allocate ibuf using stream_new(OSPF_MAX_PACKET_SIZE+1).
15 (ospf_finish) Call stream_free(ospf->ibuf.
16 * ospf_packet.c: (ospf_read) Call stream_reset(ospf->ibuf) and then
17 pass it to ospf_recv_packet for use in receiving the packet
18 (instead of allocating a new stream for each packet received).
19 Eliminate all calls to stream_free(ibuf).
20 (ospf_recv_packet) The struct stream *ibuf is now passed in as
21 an argument. No need to use recvfrom to peek at the packet
22 header (to see how big it is), just use ospf->ibuf which is
23 always large enough (this eliminates a system call to recvfrom).
24 Therefore, no need to allocate a stream just for this packet,
25 and no need to free it when done.
26
hasso462f20d2005-02-23 11:29:02 +0000272005-02-23 Vincenzo Eramo <eramo at infocom.ing.uniroma1.it>
28
29 * ospf_lsa.h: New flag to the LSA structure for the SPF calculation.
30 * ospf_lsdb.h: Export ospf_lsdb_clean_stat() function.
31 * ospf_spf.h: Add link to the LSA stat structure into vertex.
32 * ospf_spf.c: New functions cmp() and update_stat() to manage
33 candidates. Remove ospf_spf_has_vertex(), ospf_vertex_lookup(),
34 ospf_install_candidate() and ospf_spf_register() functions not needed
35 any more. Update ospf_vertex_new(), ospf_spf_next() and
36 ospf_spf_calculate() functions to use pqueue instead of linked list.
37
hassoe40dcce2005-02-21 14:58:42 +0000382005-02-21 Hasso Tepper <hasso at quagga.net>
39
40 * ospf_ase.c: Don't show messages related to the ase calculations if
41 we are not debugging.
42
hasso306541b2005-02-19 17:58:40 +0000432005-02-19 Hasso Tepper <hasso at quagga.net>
44
45 * ospf_api.h: char isn't always signed, but it has to be it here.
46
paulfa81b712005-02-19 01:19:20 +0000472005-02-19 Paul Jakma <paul.jakma@sun.com>
48
49 * ospf_packet.c: (ospf_stream_copy) remove
50 (ospf_packet_dup) use stream_copy instead of ospf_stream_copy
51
ajs038163f2005-02-17 19:55:59 +0000522005-02-17 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
53
54 * ospf_packet.c: (ospf_recv_packet) If there is somehow a runt
55 packet in the queue, it must be discarded. Improve warning messages.
56 Fix scope to static.
57 (ospf_read) Fix bug: should reset the read thread in all cases
58 to make sure we continue to get incoming messages.
59
paul658b03a2005-02-15 10:10:55 +0000602005-02-15 Paul Jakma <paul.jakma@sun.com>
61
62 * ospf_packet.c: (ospf_recv_packet) Fix silly error wrt allocating
63 ibuf. Thanks Andrew.
64
paulbfdc44a2005-02-14 23:48:42 +0000652005-02-14 Paul Jakma <paul.jakma@sun.com>
66
67 * ospf_packet.c: (ospf_recv_packet) use stream_recvmsg.
68
hasso082253f2005-02-11 08:31:54 +0000692005-02-11 Hasso Tepper <hasso at quagga.net>
70
71 * ospf_lsdb.c: Fix sum of checksums calculation.
72
ajs083ee9d2005-02-09 15:35:50 +0000732005-02-09 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
74
75 * ospf_packet.c: (ospf_write) If sendmsg fails, give more info in the
76 error message.
77
ajsba6454e2005-02-08 15:37:30 +0000782005-02-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
79
ajs8cfde372005-02-08 15:59:16 +000080 * ospf_interface.h: Reduce structure padding by putting new u_char
81 field multicast_memberships in a better spot (grouped with
82 other u_char fields type and state).
83
842005-02-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
85
ajsba6454e2005-02-08 15:37:30 +000086 * ospf_interface.h: Improve passive_interface comment. Add new
87 multicast_memberships bitmask to struct ospf_interface to track
88 active multicast subscriptions. Declare new function
89 ospf_if_set_multicast.
90 * ospf_interface.c: (ospf_if_set_multicast) New function to configure
91 multicast memberships properly based on the current
92 multicast_memberships status and the current values of the
93 ospf_interface state, type, and passive_interface status.
94 (ospf_if_up) Remove call to ospf_if_add_allspfrouters (this is
95 now handled by ism_change_state's call to ospf_if_set_multicast).
96 (ospf_if_down) Remove call to ospf_if_drop_allspfrouters (now
97 handled by ism_change_state).
98 * ospf_ism.c: (ospf_dr_election) Remove logic to join or leave
99 the DRouters multicast group (now handled by ism_change_state's call
100 to ospf_if_set_multicast).
101 (ism_change_state) Add call to ospf_if_set_multicast to change
102 multicast memberships as necessary to reflect the new interface state.
103 * ospf_packet.c: (ospf_hello) When a Hello packet is received on a
104 passive interface: 1. Increase the severity of the error message
105 from LOG_INFO to LOG_WARNING; 2. Add more information to the error
106 message (packet destination address and interface address);
107 and 3. If the packet was sent to ospf-all-routers, then try
108 to fix the multicast group memberships.
109 (ospf_read) When a packet is received on an interface whose state
110 is ISM_Down, enhance the warning message to show the packet
111 destination address, and try to update/fix the multicast group
112 memberships if the packet was sent to a multicast address.
113 When a packet is received for ospf-designated-routers, but the
114 current interface state is not DR or BDR, then increase the
115 severity level of the error message from LOG_INFO to LOG_WARNING,
116 and try to fix the multicast group memberships.
117 * ospf_vty.c: (ospf_passive_interface) Call ospf_if_set_multicast for
118 any ospf interface that may have changed from active to passive.
119 (no_ospf_passive_interface) Call ospf_if_set_multicast for
120 any ospf interface that may have changed from passive to active.
121 (show_ip_ospf_interface_sub) Show multicast group memberships.
122
paul3a9eb092005-02-08 11:29:41 +00001232005-02-08 Paul Jakma <paul@dishone.st>
124
125 * ospf_packet.c: (various) Remove unneeded stream_set_putp abuse.
126
ajs847947f2005-02-02 18:38:48 +00001272005-02-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
128
129 * ospf_packet.c: (ospf_read) Fix bug: must check for state ISM_Down,
130 not for event ISM_InterfaceDown. And improve the message by
131 adding the interface flags.
132
ajs0b7d97d2005-01-30 17:24:02 +00001332005-01-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
134
135 * ospf_network.c: (ospf_sock_init) Save errno before calling
136 ospfd_privs.change.
137
ajsc3eab872005-01-29 15:52:07 +00001382005-01-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
139
140 * ospf_packet.c: (ospf_packet_add) If oi->obuf is NULL, print
141 an error message and return.
142 (ospf_read) If the interface state is ISM_InterfaceDown, issue
143 a warning message and ignore the packet.
144
gdt86f1fd92005-01-10 14:20:43 +00001452005-01-10 Greg Troxel <gdt@fnord.ir.bbn.com>
146
147 * ospf_packet.h: Remove commented out definition of
148 OSPF_MAX_PACKET; neither it or the uncommented one are used any more.
149
150 * ospf_packet.c (ospf_make_ls_upd): Leave room for authentication
151 when deciding if an update will fit.
152 (ospf_packet_authspace): Factor out calculation of size required
153 for authentication.
154 (ospf_make_db_desc): Use ospf_max_packet, not OSPF_MAX_PACKET.
155 Don't confuse readers that there is a macro.
156
ajs3dc56b52004-12-30 15:11:19 +00001572004-12-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
158
159 * ospf_network.c: Improve all setsockopt error messages to give detailed
160 information on the arguments.
161
ajsb87f7722004-12-29 20:41:26 +00001622004-12-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
163
ajs17eaa722004-12-29 21:04:48 +0000164 * ospf_packet.c: (ospf_db_desc) Reduce severity of "Negotiation done"
165 messages from LOG_WARNING to LOG_INFO, since this seems to be
166 normal.
167
1682004-12-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
169
ajsb87f7722004-12-29 20:41:26 +0000170 * ospf_packet.c: (ospf_read) Always look up the interface if
171 ospf_recv_packet returns NULL ifp, since some platforms such
172 as Solaris 8 appear to support ifindex retrieval but don't.
173
hasso1d806282004-12-22 09:43:20 +00001742004-12-22 Hasso Tepper <hasso at quagga.net>
175
176 * ospf_dump.c: Show debug configuration in vtysh.
hassoc6b87812004-12-22 13:09:59 +0000177 * ospf_vty.c: Fix "show ip ospf" output. Router can't be elected in
178 any case if it's configured as "translate-never".
hassofe71a972004-12-22 16:16:02 +0000179 * ospf_lsdb.[ch]: New function to calculate sum of checksums.
180 * ospf_vty.c: Bugfix to show really number of AS external LSAs, not
181 number of all LSAs with AS scope, this includes opaque as LSAs as
182 well, show this number separately. Show numbers and sums of
183 checksums for each type of LSAs.
184 * ospf_lsa.c: Calculate checksum before putting LSA into database.
hasso1d806282004-12-22 09:43:20 +0000185
ajsbc18d612004-12-15 15:07:19 +00001862004-12-15 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
187
188 * ospf_interface.h: Declare new function ospf_default_iftype.
189 * ospf_interface.c: (ospf_default_iftype) New function to centralize
190 this logic in one place.
191 * ospf_zebra.c: (ospf_interface_add) Use new function
192 ospf_default_iftype.
193 * ospf_vty.c: (no_ip_ospf_network,config_write_interface) Fix logic
194 by using new function ospf_default_iftype.
195
ajs3aa8d5f2004-12-11 18:00:06 +00001962004-12-11 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
197
198 * ospf_packet.c: (ospf_db_desc) Should be static, not global.
199 (ospf_hello,ospf_db_desc,ospf_ls_upd,ospf_ls_ack) Improve warning
200 messages to include identifying information (e.g. router id).
201 * ospf_nsm.c: (nsm_change_state) Improve info message to include
202 router id and state names.
203
gdt91f3e522004-12-09 14:51:03 +00002042004-12-09 Greg Troxel <gdt@fnord.ir.bbn.com>
205
gdt3fb9de72004-12-09 16:30:04 +0000206 * ospf_apiserver.c (ospf_apiserver_term): Obtain struct
207 ospf_apiserver * from listnode. Remove unused variables. Follows
208 suggestion from Jay Fenlason.
gdt91f3e522004-12-09 14:51:03 +0000209
ajs9b0e25c2004-12-08 19:06:51 +00002102004-12-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
211
212 * *.c: Change level of debug messages to LOG_DEBUG.
213
ajs274a4a42004-12-07 15:39:31 +00002142004-12-07 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
215
216 * ospf_main.c: (main) The 2nd argument to openzlog has been removed.
217
ajs887c44a2004-12-03 16:36:46 +00002182004-12-03 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
219
ajs1210fa62004-12-03 16:43:24 +0000220 * ospf_packet.c: (ospf_db_desc) Reduce priority on a debug message
221 from LOG_NOTICE to LOG_DEBUG.
222
2232004-12-03 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
224
ajs887c44a2004-12-03 16:36:46 +0000225 * ospf_main.c: (sigint) Use zlog_notice for termination message.
226 (main) Issue a startup announcement using zlog_notice.
227
ajsbec595a2004-11-30 22:38:43 +00002282004-11-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
229
230 * ospf_packet.c: (ospf_db_desc_proc) Fix spelling of packet in warning
231 message and in comment.
232 (ospf_db_desc) Warning message that a packet is being discarded
233 should give the router id of the packet source. Fix spelling
234 of packet in two warning messages.
235 (ospf_ls_req) Warning message that a link state request is being
236 discarded should give the router id of the neighbor that sent it.
237
ajs5b85fac2004-11-26 19:36:42 +00002382004-11-26 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
239
240 * ospf_main.c: Remove #include "debug.h" (was not being used, and
241 lib/debug.h has now been deleted).
242
hassoc0652302004-11-25 19:33:48 +00002432004-11-25 Hasso Tepper <hasso at quagga.net>
244
245 * ospf_main.c: Make group to run as configurable.
246
gdt69e13252004-11-15 18:51:15 +00002472004-11-15 Greg Troxel <gdt@fnord.ir.bbn.com>
248
249 * ospf_packet.c (ospf_recv_packet): Assume CMSG_SPACE is present
250 and works (lib/zebra.h provides if OS doesn't).
251
paul788dab12004-11-15 11:48:37 +00002522004-11-15 Paul Jakma <paul@dishone.st>
253
254 * ospf_{apiserver,te}.c: ospf_lsa_free's should be ospf_lsa_unlock.
255
paul05e85fa2004-11-12 10:52:19 +00002562004-11-12 Paul Jakma <paul@dishone.st>
257
258 * ospf_ia.c: (process_summary_lsa) Only an ABR has any reason to
259 ignore stub area summary default. Even so it seems a strange
260 check, add a comment to that effect.
261
paulf3ae74c2004-11-04 20:35:31 +00002622004-11-04 Paul Jakma <paul@dishone.st>
263
264 * ospfd.c: (ospf_network_match_iface) revert to previous network
265 statement match behaviour.
266
paul62d8e962004-11-02 20:26:45 +00002672004-11-02 Paul Jakma <paul@dishone.st>
268
269 * ospf_packet.c: (ospf_write_frags) remove iov arg, msg already points
270 to it. Add convenience pointer to msg->msg_iov[1], and use this,
271 fixing the unfortunate borkenness introduced in moving of this code
272 to a function.
273 (ospf_write) remove iovp and fix up call to previous.
274 (ospf_ls_upd_packet_new) cast size to long int - unfortunately
275 glibc's size_t format modifier is not portable.
276
paul37ccfa32004-10-31 11:24:51 +00002772004-10-31 Paul Jakma <paul@dishone.st>
278
279 * ospf_packet.c: (ospf_write_frags) Add debug output
280 (ospf_write) set type early, so we can pass it to
281 ospf_write_frags.
282 (ospf_ls_upd_packet_new) print size in debug output when too large
283 packet is encountered.
paul64511f32004-10-31 18:01:13 +0000284 * ospf_zebra.c: (ospf_distribute_list_update_timer) Ugly misuse of
285 THREAD_ARG to store an integer, but it should at least use same
286 same type to retrieve the value. Assert value is sane.
paul37ccfa32004-10-31 11:24:51 +0000287
paulac191232004-10-22 12:05:17 +00002882004-10-22 Paul Jakma <paul@dishone.st>
289
290 * ospf_network.c: (ospf_sock_init) call neutral setsock_ifindex()
291 function.
292 * ospf_packet.c: (ospf_read) manually look up ifindex
paul4ccb2c42004-10-22 22:52:33 +0000293 if system could not have returned one, eg openbsd, thanks to Rivo
294 Nurges for highlighting problem and fix.
paul06f953f2004-10-22 17:00:38 +0000295 Change setsockopt_pktinfo to setsockopt_ifindex.
paulac191232004-10-22 12:05:17 +0000296
hasso3fb9cd62004-10-19 19:44:43 +00002972004-10-19 Andrew J. Schorr <aschorr@telemetry-investments.com>
298
299 * ospf_snmp.c: (ospf_snmp_if_update) Fix logic to handle PtP links
300 with dedicated subnets properly.
301 * ospf_lsa.c: (lsa_link_ptop_set) ditto.
302 * ospfd.c: (ospf_network_match_iface) ditto.
303 (ospf_network_run) ditto.
304 * ospf_interface.c: (ospf_if_is_configured) ditto.
305 (ospf_if_lookup_by_prefix) ditto.
306 (ospf_if_lookup_recv_if) ditto.
307 * ospf_vty.c: (show_ip_ospf_interface_sub) Display the peer or
308 broadcast address if present.
309
hassod68614d2004-10-13 09:32:48 +00003102004-10-13 Hasso Tepper <hasso at quagga.net>
311
312 * ospf_main.c: Unbreak compilation with ospfapi disabled.
hassoc75105a2004-10-13 10:33:26 +0000313 * ospf_snmp.c: Remove defaults used to initialize smux connection to
314 snmpd. Connection is initialized only if smux peer is configured.
hassod68614d2004-10-13 09:32:48 +0000315
hassof4d58ce2004-10-12 06:13:54 +00003162004-10-12 Hasso Tepper <hasso at quagga.net>
317
318 * ospf_main.c, ospf_opaque.c: Unbreak ospfclient compilation - move
319 static variable from ospf_main.c into ospf_opaque.c.
320
hassoc3abdb72004-10-11 16:27:03 +00003212004-10-11 Hasso Tepper <hasso at quagga.net>
322
323 * ospf_main.c, ospf_opaque.c: Disable ospfapi init by default. New
324 command line switch to enable it.
325
paul6b333612004-10-11 10:11:25 +00003262004-10-11 Paul Jakma <paul@dishone.st>
327
328 * ospf_dump.c: (ospf_ip_header_dump) Assume header is in host order
329 remove ntohs that should have dissappeared. Take struct ip
330 as argument, caller has to know there's an IP header at start of
331 stream anyway.
332 * ospf_dump.h: update declaration of ospf_ip_header_dump.
333 * ospf_packet.c: (ospf_write) correct call to
334 sockopt_iphdrincl_swab_htosys which was munging the header.
335 (ospf_recv_packet) ip_len is needed for old OpenBSD fixup.
336 (ospf_read) sockopt_iphdrincl_swab_systoh ip header as soon as
337 we have it.
paul6c835672004-10-11 11:00:30 +0000338 * (global) Const char update and signed/unsigned fixes.
339 * (various headers) size defines should be unsigned.
340 * ospf_interface.h: remove duplicated defines, include the
341 authoritative header - though, these defines should probably
342 be moved to a dedicated header, or ospfd.h.
343 * ospf_lsa.h: (struct lsa) ls_seqnum should be unsigned.
344 * ospf_packet.c: (ospf_write) cast result of shift to unsigned.
paul6b333612004-10-11 10:11:25 +0000345
hassoeb1ce602004-10-08 08:17:22 +00003462004-10-08 Hasso Tepper <hasso at quagga.net>
347
348 * *.[c|h]: Fix compiler warnings: make some strings const, signed ->
349 unsigned, remove unused variables etc.
350
gdt54ade992004-10-07 19:38:20 +00003512004-10-07 Greg Troxel <gdt@claude.ir.bbn.com>
352
353 * ospf_apiserver.c (ospf_apiserver_unregister_opaque_type): Don't
354 use of variable names 'node' and 'nextnode' to avoid possible
355 conflict with list macros. Move variable declaration inside for
356 loop after a statement to top of function.
357
paulaa20c6f2004-10-07 14:19:36 +00003582004-10-07 Paul Jakma <paul@dishone.st>
359
360 * ospf_snmp.c: Missed list typedef update
361 * ospf_dump.c: Include sockopt.h for header swab functions.
362
paul18b12c32004-10-05 14:38:29 +00003632004-10-05 Paul Jakma <paul@dishone.st>
364
365 * ospf_packet.c: replace ospf_swap_iph_to... with
366 sockopt_iphdrincl_swab_...
367
hasso18a6dce2004-10-03 18:18:34 +00003682004-10-03 James R. Leu <jleu at mindspring.com>
369
370 * ospf_zebra.c: Read router id related messages from zebra daemon.
371 Schedule router-id update thread if it's changed.
372 * ospfd.c: Remove own router-id selection function. Use router id from
373 zebra daemon if it isn't manually overriden in configuration.
374
paul68defd62004-09-27 07:27:13 +00003752004-09-27 Paul Jakma <paul@dishone.st>
376
paul6a99f832004-09-27 12:56:30 +0000377 * ospf_dump.c: (ospf_ip_header_dump) Use HAVE_IP_HDRINCL_BSD_ORDER
378 Apply to offset too. Print ip_cksum, lets not worry about
379 possible 2.0.37 compile problems.
380 * ospf_packet.c: (ospf_swap_iph_to{n,h}) Use
381 HAVE_IP_HDRINCL_BSD_ORDER.
382 (ospf_recv_packet) ditto.
383 (ospf_write) Fixup iov argument to ospf_write_frags.
384 (struct msghdr).msg_name is caddr_t on most platforms.
paul68defd62004-09-27 07:27:13 +0000385 (ospf_recv_packet) ditto. And msg_flags is not always there
386 memset struct then set fields we care about rather than
387 initialise all fields individually.
388
hassoc9e52be2004-09-26 16:09:34 +00003892004-09-26 Hasso Tepper <hasso at quagga.net>
390
391 * ospf_abr.c, ospf_dump.c, ospf_lsa.c, ospf_packet.c, ospf_vty.c,
392 ospf_zebra.c: Fix compiler warnings.
393
paul87d6f872004-09-24 08:01:38 +00003942004-09-24 Paul Jakma <paul@dishone.st>
395
396 * ospf_apiserver.{c,h}: lists typedef removal cleanup.
397 update some list loops to LIST_LOOP. some miscellaneous indent
398 fixups.
399 (ospf_apiserver_unregister_opaque_type) fix listnode_delete of
400 referenced node in loop.
paul1603c062004-09-24 08:23:24 +0000401 (ospf_apiserver_term) loops calling ospf_apiserver_free, which
402 deletes referenced nodes from apiserver_list, fixed.
paul87d6f872004-09-24 08:01:38 +0000403 * ospf_interface.h: lists typedef removal cleanup.
404 * ospf_opaque.{c,h}: lists typedef removal cleanup. update some list
405 loops to LIST_LOOP. miscellaneous style and indent fixups.
406 * ospf_te.{c,h}: ditto
407 * ospf_packet.c: lists typedef removal cleanup.
paula2570682004-09-24 08:09:57 +0000408 (ospf_write) ifdef fragmentation support. move actual
409 fragmentation out to a new, similarly ifdefed, function.
410 (ospf_write_frags) fragmented write support, moved from previous.
paul87d6f872004-09-24 08:01:38 +0000411
hasso52dc7ee2004-09-23 19:18:23 +00004122004-09-23 Hasso Tepper <hasso at quagga.net>
413
414 * *.[c|h]: list -> struct list *, listnode -> struct listnode *.
415
paul68b73392004-09-12 14:21:37 +00004162004-09-12 Paul Jakma <paul@dishone.st>
417
418 * ospf_packet.c: Fix bugzilla #107
419 (ospf_packet_max) get rid of the magic 88 constant
420 (ospf_swab_iph_ton) new function. set ip header to network order,
421 taking BSDisms into account.
422 (ospf_swab_iph_toh) the inverse.
423 (ospf_write) Add support for IP fragmentation, will only work on
424 linux though, other kernels make it impossible. get rid of the
425 magic 4 constant.
426 (ospf_make_ls_upd) Bound check to end of stream, not to
427 interface mtu.
428 (ospf_ls_upd_packet_new) New function, allocate upd packet
429 taking oversized LSAs into account.
430 (ospf_ls_upd_queue_send) use ospf_ls_upd_packet_new to allocate,
431 rather than statically allocating mtu sized packet buffer, which
432 actually was wrong - it didnt take ip header into account, which
433 should not be included in packet buffer.
434 (ospf_ls_upd_send_queue_event) minor tweaks and remove
435 TODO comment.
436
gdt630e4802004-08-31 17:28:41 +00004372004-08-31 David Wiggins <dwiggins@bbn.com>
438
439 * ospf_spf.c (ospf_spf_calculate): Many more comments and debug
440 print statements. New function ospf_vertex_dump used in debugging.
441
4422004-08-31 David Wiggins <dwiggins@bbn.com>
443
444 * ospf_spf.h (struct vertex): Comments for flags and structure members.
445
4462004-08-31 David Wiggins <dwiggins@bbn.com>
447
448 * ospf_route.c: When finding an alternate route, log cost as well.
449
4502004-08-31 David Wiggins <dwiggins@bbn.com>
451
452 * ospf_interface.c (ospf_lookup_if_params): Initialize af in
453 struct prefix allocated on stack.
454
4552004-08-31 David Wiggins <dwiggins@bbn.com>
456
457 * ospf_packet.c (ospf_ls_ack_send_delayed): In p2mp mode, send
458 acks to AllSPFRouters, rather than All-DR.
459
hasso7b901432004-08-31 13:37:42 +00004602004-08-27 Hasso Tepper <hasso at quagga.net>
461
462 * ospf_vty.c: Don't print ospf network type under interface only
463 if interface is in broadcast mode and interface type really is
464 broadcast. Fixes Bugzilla #108.
465
gdtd7d93992004-08-27 12:03:42 +00004662004-08-27 David Wiggins <dwiggins@bbn.com>
467
468 * ospf_spf.c (ospf_nexthop_calculation): Initialize address family
469 in on-stack struct prefix_ipv4. Fixes point-to-multipoint SPF
470 calculation.
471
gdtd0deca62004-08-26 13:14:07 +00004722004-08-26 Greg Troxel <gdt@fnord.ir.bbn.com>
473
474 * ospf_packet.c (ospf_recv_packet): adjust size declaration of
gdtd7d93992004-08-27 12:03:42 +0000475 buffer used to get interface index so that it compiles on other
476 than Linux and includes the required alignment space. Probably
477 this was only working on sparc/sparc64 because most of
478 sockaddr_dl was not being written.
gdtd0deca62004-08-26 13:14:07 +0000479
paul863082d2004-08-19 04:43:43 +00004802004-08-19 Paul Jakma <paul@dishone.st>
481
482 * ospf_packet.c: update to match sockopt renames.
483
paul75ee0b82004-08-05 09:10:31 +00004842004-08-04 Paul Jakma <paul@dishone.st>
485
486 * ospf_spf.c: (ospf_spf_consider_nexthop) Add comment about issue.
487 Compare only against list head - all nexthops must be same cost
488 anyway, fixes a reference-listnode-after-delete bug noted by
489 Kir Kostuchenko.
490 (ospf_nexthop_calculation) Use ospf_spf_consider_nexthop for all
491 candidates attached to root.
492
paul36c64ef2004-07-27 11:19:11 +00004932004-07-27 Paul Jakma <paul@dishone.st>
494
paul48fe13b2004-07-27 17:40:44 +0000495 * ospf_packet.c: (ospf_ls_upd_send_queue_event) fix thinko from
496 last fix for ospfd wedging due to oversize LSAs: dont list loop on
497 ospf_ls_upd_queue_send() - guaranteed segfault.
498
4992004-07-27 Paul Jakma <paul@dishone.st>
500
paul36c64ef2004-07-27 11:19:11 +0000501 * ospf_opaque.c: (ospf_opaque_lsa_flush_schedule) do not NULL out
502 the LSA as then free_opaque_info_per_id() can never unlock (and
503 free) the LSA. Reported by Gunnar Stigen.
504
paul2dd8bb42004-07-23 15:13:48 +00005052004-07-23 Paul Jakma <paul@dishone.st>
506
507 * ospf_network.c: Replace PKTINFO/RECVIF with call to
508 setsockopt_pktinfo
509 * ospf_packet.c: Use getsockopt_pktinfo_ifindex and
510 SOPT_SIZE_CMSG_PKTINFO_IPV4.
511
paul59ea14c2004-07-14 20:50:36 +00005122004-07-14 Paul Jakma <paul@dishone.st>
513
514 * ospf_packet.c: (ospf_ls_upd_send_queue_event) Partial fix for
515 problem reported by Peter Frost amongst others, where function
516 will spin indefinitely if update list contains LSAs greater than
517 MTU-headers or other condition leading to update list never being
518 cleared. Problem of what to do with these LSAs remains.
519 (ospf_make_ls_upd) add comment about large LSA problem,
520 indentation cleanup.
521
gdtb2c1b282004-07-01 12:35:36 +00005222004-07-01 Greg Troxel <gdt@fnord.ir.bbn.com>
523
524 * Makefile.am (lib_LTLIBRARIES): make libospf shared
525
gdt87efd642004-06-30 17:36:11 +00005262004-06-30 Greg Troxel <gdt@poblano.ir.bbn.com>
527
528 * Makefile.am: Add shlib support.
529
hassobeebba72004-06-20 21:00:27 +00005302004-06-10 Hasso Tepper <hasso@estpak.ee>
531
532 * *: Removed ifdefs HAVE_NSSA.
533
paul553ff112004-06-06 09:41:00 +00005342004-06-06 Paul Jakma <paul@dishone.st>
535
536 * ospf_dump.c,ospf_lsa.c: Fix typos of merge of previous.
537 ospf_flood.c: (ospf_process_self_originated_lsa) fix zlog format
538
paul0c2be262004-05-31 14:16:54 +00005392004-05-31 Sagun Shakya <sagun.shakya@sun.com>
540
541 * ospf_dump.c: (ospf_lsa_header_dump) LOOKUP can return null if
542 index is out of range.
543 ospf_flood.c: endianness fix
544 ospf_lsa.c: Missing ntohl's on (struct lsa *)->data->ls_seqnum
545 in various places.
546
hassodd669bb2004-05-10 07:43:59 +00005472004-05-10 Hasso Tepper <hasso@estpak.ee>
548
549 * ospf_zebra.c, ospfd.c: Move ospf_prefix_list_update() function
550 to ospf_zebra.c from ospfd.c and add redistribution updates if
551 route-map is used in redistribution.
552 * ospf_main.c: Remove now useless call to ospf_init().
553
paul0a589352004-05-08 11:48:26 +00005542004-05-08 Paul Jakma <paul@dishone.st>
555
556 * ospf_zebra.c: Sync with lib/zclient changes
557
pauld3f0d622004-05-05 15:27:15 +00005582004-05-05 Paul Jakma <paul@dishone.st>
559
paul5bd41892004-05-05 17:29:24 +0000560 * ospf_network.c: (ospf_sock_init) Check whether IP_HDRINCL is
561 defined. Warn at compile and runtime. Use
562 IPTOS_PREC_INTERNETCONTROL otherwise.
pauld3f0d622004-05-05 15:27:15 +0000563 * ospf_packet.c: (ospf_associate_packet_vl) cleanup, move
564 some of the checks up to ospf_read, return either a
565 virtual link oi, or NULL.
566 (ospf_read) Cleanup, make it responsible for checks. Remove
567 the nbr lookup - moved to ospf_neighbor. Adjust all nbr
568 lookups to use new wrappers exported by ospf_neighbor.
569 * ospf_neighbor.h: Add ospf_neigbour_get and ospf_nbr_lookup.
570 * ospf_neighbor.c: (ospf_neigbour_get) Index ospf_interface
571 neighbour table by router-id for virtual-link ospf_interfaces,
572 not by peer_addr (which breaks for asymmetric vlinks)
573 (ospf_nbr_lookup) add a wrapper for nbr lookups to deal with
574 above.
paulcd59da62004-05-05 17:26:55 +0000575 * ospf_interface.c: (ospf_vl_set_params) Catch changes of interface
576 address for either end of a virtual-link, and hence potential cost
577 changes.
578
hassoa0a39762004-04-23 08:51:10 +00005792004-04-22 Hasso Tepper <hasso@estpak.ee>
580
581 * ospf_zebra.c: Don't ignore reject/bh routes, it's the only way
582 to "summarize" routes in ASBR at the moment.
583
hasso8585d4e2004-04-20 17:25:12 +00005842004-04-20 Hasso Tepper <hasso@estpak.ee>
585
586 * ospfd.c: Unset NP flag if area is going to be normal or stub.
587 Fixes UNH OSPF_NSSA.1.2a comment.
588 * ospf_abr.c: Originate default into stub/nssa area even if
589 summaries are disabled.
590 * ospf_zebra.c: Don't attempt to redistribute 127.0.0.0/8.
591
hassoc266ac72004-04-19 17:31:00 +00005922004-04-19 Hasso Tepper <hasso@estpak.ee>
593
594 * ospf_vty.c: Don't warn that export- and import-list can't be
595 configured to backbone area if they are applied and are working
596 fine.
597
hasso128d31d2004-04-04 12:52:33 +00005982004-02-19 Sowmini Varadhan <sowmini.varadhan@sun.com>
599
600 * ospf_packet.c: Don't drop packets in Solaris x86.
601 [quagga-dev 1005].
602
hasso0d85b992004-03-18 19:18:33 +00006032004-03-18 Amir Guindehi <amir@datacore.ch>
604
605 * ospf_opaque.c: Attempt to correct the incorrect behavior of
606 Quagga's ospfd in the special situation that a node's opaque
607 capability has changed as "ON -> OFF -> ON". [quagga-dev 843].
608
paul7f352b82004-02-19 19:37:47 +00006092004-02-19 Sowmini Varadhan <sowmini.varadhan@sun.com>
610
611 * ospf_abr.c: (ospf_abr_update_aggregate) UNH 3.12b,c, address range
612 should be configured with the highest cost path within the range,
613 not lowest.
614
paul940b01a2004-02-17 20:07:30 +00006152004-02-17 Paul Jakma <paul@dishone.st>
616
617 * ospf_zebra.c: (ospf_interface_delete) Do not delete the interface
618 params, nor the interface structure, if an interface delete
619 message is received from zebra.
620 * ospf_interface.c: (ospf_if_delete_hook) Delete the interface
621 params and interface, ie that which was previously removed in
622 (ospf_interface_delete) above.
623
hasso2db3d052004-02-11 21:52:13 +00006242004-02-11 Hasso Tepper <hasso@estpak.ee>
625 * ospf_interface.c, ospf_zebra.c: Don't attempt to read path->oi->ifp
626 if oi doesn't exist any more.
627
hassocb05eb22004-02-11 21:10:19 +00006282004-02-11 Vadim Suraev <vadim.suraev@terayon.com>
629 * ospf_packet.c (ospf_ls_upd): Router should flush received network
630 LSA if it was originated with older router-id ([zebra 14710] #6).
631
6322003-12-08 Mattias Amnefelt <mattiasa@kth.se>
paul239aecc2003-12-08 10:34:54 +0000633
634 * ospf_packet.c: (ospf_recv_packet) OpenBSD now leaves iph.ip_len
635 network byte order.
636
gdt8f40e892003-12-05 14:01:43 +00006372003-12-05 Greg Troxel <gdt@poblano.ir.bbn.com>
638
639 * ospfd.c (ospf_network_match_iface): Rewrite code for clarity
640 while trying not to change semantics. Add ifdefed-out code to
641 avoid matching ppp interfaces whose destination address does not
642 also match the prefix under consideration, to help out people with
643 problems due to as-yet-unfixed bugs with p2p interfaces coming and
644 going.
645
paul736d3442003-07-24 23:22:57 +00006462003-07-25 kamatchi soundaram <kamatchi@tdd.sj.nec.com>
647
648 * ospf_packet.c (ospf_ls_upd_send_queue_event): get next route
649 node in body of the loop to avoid chance that route node
650 is unlocked and deleted before the next iteration tries to
651 get next route node.
652
paul0a825c72003-05-24 13:48:16 +00006532003-05-24 Kenji Yabuuchi
654
655 * ospf_interface.c(ospf_if_lookup_recv_if): Use the most specific
656 match for interface lookup.
657
paul551a8972003-05-18 15:22:55 +00006582003-05-18 Hasso Tepper <hasso@estpak.ee>
paul445f1432003-05-16 19:00:31 +0000659
paul551a8972003-05-18 15:22:55 +0000660 * ospf_vty.c: Show NSSA LSA route info in "show ip ospf database"
661 output
paul445f1432003-05-16 19:00:31 +0000662
pauld7480322003-05-16 17:31:51 +00006632003-05-16 Hasso Tepper <hasso@estpak.ee>
664
665 * ospf_lsa.c: Fix handling of NSSA
666
paul551a8972003-05-18 15:22:55 +00006672003-04-23 Hasso Tepper <hasso@estpak.ee>
668
669 * ospf_vty.c: fix "router xxx" node commands in vtysh
670
paul445f1432003-05-16 19:00:31 +00006712003-04-19 Hasso Tepper <hasso@estpak.ee>
672
673 * {ospf_abr,ospfd}.c: area id's DECIMAL -> ADDRESS
674 * ospf_routemap.c: sync daemon's route-map commands to have same
675 syntax.
676
6772003-04-19 Sergey Vyshnevetskiy <serg@vostok.net>
678
679 * ospf_packet.c: Add missing param to zlog
680 * ospf_flood.c: remove unused vars
681
6822003-04-17 Denis Ovsienko <zebra@pilot.org.ua>
683
684 * ospf_interface.c: fix incorrect memset
685
paul28a13842003-05-16 20:30:37 +00006862003-04-10 Amir Guindehi <amir@datacore.ch>
paul445f1432003-05-16 19:00:31 +0000687
688 * ospf_lsa.[ch]: opaque LSA fix, use ospf_lookup.
689
6902003-04-03 David Watson <dwatson@eecs.umich.edu>
691
692 * ospf_lsa.c: byte order fix
693
paul07661cb2003-03-18 00:03:05 +00006942002-03-17 Amir Guindehi <amir@datacore.ch>
695
696 * ospf_apiserver.[ch]: Merge Ralph Keller's OSPFAPI support.
697 * ospf_api.[ch]: Merge Ralph Keller's OSPFAPI support.
698 * ospfclient: OSPFAPI demonstration client.
699
7002003-01-23 Masahiko Endo <endo@suri.co.jp>
701
702 * ospf_ism.c: NSM event schedule bug fix.
703
7042002-10-30 Greg Troxel <gdt@ir.bbn.com>
705
706 * ospf_packet.c (ospf_make_md5_digest): MD5 length fix.
707
paul718e3742002-12-13 20:15:29 +00007082002-10-23 endo@suri.co.jp (Masahiko Endo)
709
710 * ospf_opaque.c: Update Opaque LSA patch.
711
7122002-10-23 Ralph Keller <keller@tik.ee.ethz.ch>
713
714 * ospf_vty.c (show_ip_ospf_database): Fix CLI parse.
715
7162002-10-23 Juris Kalnins <juris@mt.lv>
717
718 * ospf_interface.c (ospf_if_stream_unset): When write queue
719 becomes empty stop write timer.
720
7212002-10-10 Greg Troxel <gdt@ir.bbn.com>
722
723 * ospf_packet.c (ospf_check_md5_digest): Change >= to > to make it
724 conform to RFC.
725
7262002-07-07 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
727
728 * zebra-0.93 released.
729
7302002-06-19 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
731
732 * ospf_spf.c (ospf_nexthop_calculation): Add NULL set to oi and
733 check of l2. Reported by: Daniel Drown <dan-zebra@drown.org>
734 (ospf_lsa_has_link): LSA Length calculation fix. Reported by:
735 Paul Jakma <paulj@alphyra.ie>.
736
737 * ospfd.c (ospf_if_update): Fix nextnode reference bug. Reported
738 by: juris@mt.lv.
739
7402002-01-21 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
741
742 * ospfd.c: Merge [zebra 11445] Masahiko ENDO's Opaque-LSA support.
743
7442001-08-27 Kunihiro Ishiguro <kunihiro@zebra.org>
745
746 * ospf_interface.c (ospf_add_to_if): Use /32 address to register
747 OSPF interface information.
748 (ospf_delete_from_if): Likewise.
749
750 * ospf_zebra.c (ospf_interface_address_delete): Likewise.
751
7522001-08-23 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
753
754 * ospf_zebra.c (ospf_redistribute_unset): When redistribute type
755 is OSPF, do not unset redistribute flag.
756
7572001-08-19 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
758
759 * zebra-0.92a released.
760
7612001-08-15 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
762
763 * zebra-0.92 released.
764
7652001-08-12 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
766
767 * ospfd.c (ospf_config_write): auto-cost reference-bandwidth
768 configuration display.
769
7702001-07-24 David Watson <dwatson@eecs.umich.edu>
771
772 * ospf_spf.c (ospf_spf_next): Modify ospf_vertex_add_parent to
773 check for an existing link before connecting the parent and child.
774 ospf_nexthop_calculation is also modified to check for duplicate
775 entries when copying from the parent. Finally, ospf_spf_next
776 removes duplicates when it merges two equal cost candidates.
777
7782001-07-23 itojun@iijlab.net
779
780 * ospfd.c (show_ip_ospf_neighbor): Check ospf_top before use it
781 [zebra 8549].
782
7832001-07-23 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
784
785 * ospf_packet.c (ospf_write): Remove defined(__OpenBSD__) to make
786 it work on OpenBSD.
787
7882001-06-26 Kunihiro Ishiguro <kunihiro@zebra.org>
789
790 * ospf_zebra.c (config_write_ospf_default_metric): Display
791 default-metric configuration.
792
7932001-06-18 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
794
795 * ospf_ia.h (OSPF_EXAMINE_SUMMARIES_ALL): Remove old macros.
796
7972001-05-28 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
798
799 * ospf_snmp.c (ospfIfEntry): Fix interface lookup bug to avoid
800 crush.
801 (ospfIfMetricEntry): Likewise.
802
8032001-03-18 Kunihiro Ishiguro <kunihiro@zebra.org>
804
805 * ospf_packet.c (ospf_read): Fix typo. Reported by: "Jen B
806 Lin'Kova" <jen@stack.net>.
807
8082001-03-15 Gleb Natapov <gleb@nbase.co.il>
809
810 * ospf_interface.c (ip_ospf_network): Set interface parameter.
811 (interface_config_write): Add check for OSPF_IFTYPE_LOOPBACK.
812
813 * ospf_zebra.c (ospf_interface_add): Set interface parameter.
814
8152001-02-21 Kunihiro Ishiguro <kunihiro@zebra.org>
816
817 * ospf_packet.c (ospf_recv_packet): Solaris also need to add
818 (iph.ip_hl << 2) to iph.ip_len.
819
8202001-02-09 Kunihiro Ishiguro <kunihiro@zebra.org>
821
822 * ospfd.h (OSPF_LS_REFRESH_TIME): Fix OSPF_LS_REFRESH_TIME value.
823 Suggested by: David Watson <dwatson@eecs.umich.edu>.
824
825 * ospf_zebra.c (zebra_init): Remove zebra node.
826
827 * ospfd.c (ospf_area_range_set): Function name is changed from
828 ospf_ara_range_cmd.
829 (ospf_area_range_unset): New function which separated from DEFUN.
830 New commands are added:
831 "no area A.B.C.D range A.B.C.D/M advertise"
832 "no area <0-4294967295> range A.B.C.D/M advertise"
833 "no area A.B.C.D range A.B.C.D/M not-advertise"
834 "no area <0-4294967295> range A.B.C.D/M not-advertise"
835
836 * ospf_lsa.c (ospf_lsa_more_recent): Fix previous change.
837
8382001-02-08 Matthew Grant <grantma@anathoth.gen.nz>
839
840 * ospf_network.c (ospf_if_add_allspfrouters): Use
841 setsockopt_multicast_ipv4.
842 (ospf_if_drop_allspfrouters): Likewise.
843
844 * ospf_lsa.c (ospf_router_lsa_install): Add rt_recalc flag.
845 (ospf_network_lsa_install): Likewise.
846 (ospf_summary_lsa_install): Likewise.
847 (ospf_summary_asbr_lsa_install): Likewise.
848 (ospf_external_lsa_install): Likewise.
849 (ospf_lsa_install): Call ospf_lsa_different to check this LSA is
850 new one or not.
851
8522001-02-08 Kunihiro Ishiguro <kunihiro@zebra.org>
853
854 * ospf_zebra.c (ospf_interface_delete): Do not free interface
855 structure when ospfd receive interface delete message to support
856 pseudo interface.
857
8582001-02-01 Dick Glasspool <dick@ipinfusion.com>
859
860 * ospfd.c (area_range_notadvertise): Change area range "suppress"
861 command to "not-advertise".
862
863 * ospfd.h (OSPF_LS_REFRESH_TIME): Change OSPF_LS_REFRESH_TIME from
864 1800 to 60.
865
866 * ospf_abr.c (ospf_abr_update_aggregate): When update_aggregate is
867 updating the area-range, the lowest cost is now saved.
868
869 * ospf_lsa.c (ospf_lsa_more_recent): Routing to compare sequence
870 numbers rather than creating overflow during calculation.
871
8722001-02-01 Kunihiro Ishiguro <kunihiro@zebra.org>
873
874 * zebra-0.91 is released.
875
8762001-01-31 Kunihiro Ishiguro <kunihiro@zebra.org>
877
878 * ospf_packet.c (ospf_db_desc_proc): Do not continue process when
879 NSM_SeqNumberMismatch is scheduled.
880 (ospf_ls_req): Free ls_upd when return from this function.
881 (ospf_ls_upd_timer): When update list is empty do not call
882 ospf_ls_upd_send(). Suggested by: endo@suri.co.jp (Masahiko
883 Endo).
884
8852001-01-26 Kunihiro Ishiguro <kunihiro@zebra.org>
886
887 * ospf_lsa.c (ospf_maxage_flood): Flood LSA when it reaches
888 MaxAge. RFC2328 Section 14.
889 (ospf_maxage_lsa_remover): Call above function during removing
890 MaxAge LSA.
891
8922001-01-26 Dick Glasspool <dick@ipinfusion.com>
893
894 * ospf_flood.c (ospf_flood_through_as): Function is updated for
895 NSSA Translations now done at ospf_abr.c with no change in P-bit.
896
897 * ospf_lsa.c (ospf_get_nssa_ip): Get 1st IP connection for Forward
898 Addr.
899 (ospf_install_flood_nssa): Leave Type-7 LSA at Lock Count = 2.
900
901 * ospf_ase.c (ospf_ase_calculate_route): Add debug codes.
902
903 * ospf_abr.c (ospf_abr_translate_nssa): Recalculate LSA checksum.
904
905 * ospf_packet.h (OSPF_SEND_PACKET_LOOP): Added for test packet.
906
907 * ospf_dump.c (ospf_lsa_type_msg): Add OSPF_GROUP_MEMBER_LSA and
908 OSPF_AS_NSSA_LSA.
909
910 * ospfd.c (data_injection): Function to inject LSA. This is
911 debugging command.
912
9132001-01-11 Kunihiro Ishiguro <kunihiro@zebra.org>
914
915 * ospf_route.c (ospf_route_match_same): Remove function.
916 (ospf_route_match_same_new): Renamed to ospf_route_match_same.
917
918 * ospf_zebra.c (ospf_interface_address_delete): Add check for
919 oi->address. Suggested by Matthew Grant
920 <grantma@anathoth.gen.nz>.
921 (ospf_zebra_add): Remove function.
922 (ospf_zebra_add_multipath): Rename to ospf_zebra_add.
923
924 * ospf_interface.c: Remove HAVE_IF_PSEUDO part.
925
926 * ospf_zebra.c: Likewise.
927
9282001-01-10 Kunihiro Ishiguro <kunihiro@zebra.org>
929
930 * ospf_ase.c: Remove OLD_RIB part.
931
932 * ospf_route.c: Likewise.
933
934 * zebra-0.90 is released.
935
936 * ospf_packet.c (ospf_recv_packet): Use ip_len adjestment code to
937 NetBSD.
938
9392001-01-09 Kunihiro Ishiguro <kunihiro@zebra.org>
940
941 * ospf_route.c (ospf_route_delete): Use
942 ospf_zebra_delete_multipath.
943
9442001-01-09 Matthew Grant <grantma@anathoth.gen.nz>
945
946 * ospf_interface.c (ospf_if_cleanup): Function name is renamed
947 from ospf_if_free(). Rewrite whole procudure to support primary
948 address deletion.
949
950 * ospf_zebra.c (ospf_interface_address_delete): Add primary
951 address deletion process.
952
9532001-01-09 Kunihiro Ishiguro <kunihiro@zebra.org>
954
955 * ospf_packet.c (ospf_recv_packet): OpenBSD has same ip_len
956 treatment like FreeBSD.
957
9582001-01-09 endo@suri.co.jp (Masahiko Endo)
959
960 * ospf_packet.c (ospf_recv_packet): FreeBSD kernel network code
961 strips IP header size from receiving IP Packet. So we adjust
962 ip_len to whole IP packet size by adding IP header size.
963
9642001-01-08 endo@suri.co.jp (Masahiko Endo)
965
966 * ospf_network.c (ospf_serv_sock): When socket() is failed return
967 immediately.
968 (ospf_serv_sock): Close socket when it is not used.
969
970 * ospf_packet.c (ospf_write): Set sin_len when HAVE_SIN_LEN is
971 defined.
972 (ospf_write): When bind is fined, close sock.
973
9742001-01-07 Gleb Natapov <gleb@nbase.co.il>
975
976 * ospf_zebra.c (ospf_interface_state_up): Fixes coredump that
977 appears when you try to configure bandwidth on the ppp interface
978 that is not yet configured in ospfd.
979
9802001-01-07 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
981
982 * ospf_route.c (show_ip_ospf_route_external): "show ip ospf route"
983 will print nexthops for AS-external routes.
984
985 * ospf_ase.c (ospf_ase_route_match_same): New function to compare
986 ASE route under multipath environment.
987 (ospf_ase_compare_tables): Likewise.
988
9892001-01-01 Kunihiro Ishiguro <kunihiro@zebra.org>
990
991 * ospfd.h (OSPF_VTYSH_PATH): Change "/tmp/ospfd" to "/tmp/.ospfd".
992
9932000-12-28 Kunihiro Ishiguro <kunihiro@zebra.org>
994
995 * ospf_route.c (ospf_route_install): Install multipath information
996 to zebra daemon.
997
998 * ospf_zebra.c (ospf_zebra_add_multipath): Function for passing
999 multipath information to zebra daemon.
1000
10012000-12-25 Dick Glasspool <dick@ipinfusion.com>
1002
1003 * ospf_packet.c (ospf_write): Call ospf_packet_delete when sendto
1004 fail.
1005 (DISCARD_LSA): Add argument N for logging point of DISCARD_LSA is
1006 called.
1007
1008 * ospf_lsa.c (ospf_external_lsa_refresh): NSSA install_flood will
1009 leave Type-7 LSA at Lock Count = 2.
1010
1011 * ospf_flood.c (ospf_flood_through): Flood_though_as updated for
1012 NSSA no P-bit off during Area flooding, but P-bit is turned off
1013 for mulitple NSSA AS flooding.
1014
1015 * ospf_ase.c (ospf_ase_calculate_timer): Added calculations for
1016 Type-7 LSDB.
1017
1018 * ospf_abr.c (ospf_abr_translate_nssa): Removed one unlock call.
1019 (ospf_abr_announce_nssa_defaults): Corrected Debug from EVENT to
1020 NSSA.
1021
10222000-12-25 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1023
1024 * ospf_zebra.c (ospf_zebra_read_ipv4): Checking the age of the
1025 found LSA and if the LSA is MAXAGE we should call refresh instead
1026 of originate.
1027
10282000-12-18 Dick Glasspool <dick@ipinfusion.com>
1029
1030 * ospf_abr.c: Removed redundant "...flood" in
1031 announce_network_to_area(). Repaired nssa Unlock by using
1032 discard.
1033
1034 * ospf_packet.c: Removed old NSSA translate during mk_ls_update.
1035
1036 * ospfd.c: Free up all data bases including NSSA.
1037
1038 * ospf_lsa.c: Now allow removal of XLATE LSA's Check in
1039 discard_callback. Added routine to get ip addr from within the
1040 ifp.
1041
1042 * ospf_flood.c: Now set Forward Address for outgoing Type-7.
1043
1044 * ospf_lsa.h: Added prototype for the below. struct in_addr
1045 ospf_get_ip_from_ifp (struct interface *ifp).
1046
10472000-12-14 Gleb Natapov <gleb@nbase.co.il>
1048
1049 * ospf_packet.c (ospf_recv_packet): New OSPF pakcet read method.
1050 Now maximum packet length may be 65535 bytes (maximum IP packet
1051 length).
1052
1053 * ospf_interface.c (ospf_if_stream_set): Don't make input buffer.
1054
1055 * ospfd.c (config_write_network_area): Remove unnecessary area
1056 lookup code.
1057
10582000-12-13 Kunihiro Ishiguro <kunihiro@zebra.org>
1059
1060 * ospf_packet.c (ospf_read): Accept packet bigger than MTU value.
1061
10622000-12-13 Gleb Natapov <gleb@nbase.co.il>
1063
1064 * ospfd.c (config_write_network_area): Fix bug in
1065 config_write_network_area function.
1066
10672000-12-12 Gleb Natapov <gleb@nbase.co.il>
1068
1069 * ospf_abr.c (ospf_abr_announce_network_to_area): Make Summary
1070 LSA's origination and refreshment as same as other type of LSA.
1071
1072 * ospf_lsa.c (ospf_summary_lsa_refresh): Return struct ospf_lsa *.
1073
1074 * ospf_lsa.c (ospf_summary_asbr_lsa_refresh): Likewise.
1075
10762000-12-08 Dick Glasspool <dick@ipinfusion.com>
1077
1078 The bulk of NSSA changes are contained herein; This version will
1079 require manual setting of "always" for NSSA Translator, and will
1080 not perform aggregation yet.
1081
1082 * ospf_dump.c: "debug ospf nssa" is added.
1083
1084 * ospf_dump.h: Likewise.
1085
1086 * ospf_packet.c (ospf_hello): Display router ID on Bad NSSA Hello.
1087
1088 * ospfd.c: Discard_LSA to stay away from LOCAL_XLT Process NSSA
1089 'never, candidate, always'. Change "suppress" to "not-advertise".
1090
1091 * ospfd.h: Add TranslatorRole to struct ospf_area. Add anyNSSA to
1092 struct ospf.
1093
1094 * ospf_ase.c (ospf_ase_calculate_route): External to stay away
1095 from LOCAL_XLT
1096
1097 * ospf_nsm.c (ospf_db_summary_add): External to stay away from
1098 LOCAL_XLT
1099
1100 * ospf_abr.c: Major logic added for abr_nssa_task(). If ABR, and
1101 NSSA translator, then do it. Approve the global list, and flush
1102 any unapproved.
1103
1104 * ospf_lsa.h: New LSA flag OSPF_LSA_LOCAL_XLT to indicate that the
1105 Type-5 resulted from a Local Type-7 translation; not used for
1106 flooding, but used for flushing.
1107
1108 * ospf_flood.c: New NSSA flooding.
1109
11102000-12-08 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1111
1112 * ospfd.c (ospf_find_vl_data): New function for looking up virtual
1113 link data.
1114 (ospf_vl_set_security): Virtual link configuration with
1115 authentication.
1116 (ospf_vl_set_timers): Set timers for virtual link.
1117
1118 * New commands are added.
1119 "area A.B.C.D virtual-link A.B.C.D"
1120 "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>"
1121 "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"
1122 "area A.B.C.D virtual-link A.B.C.D authentication-key AUTH_KEY"
1123 "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"
1124 "area A.B.C.D virtual-link A.B.C.D message-digest-key <1-255> md5 KEY"
1125
1126 * ospf_packet.c (ospf_check_md5_digest): Add neighbor's
1127 cryptographic sequence number treatment.
1128 (ospf_check_auth): OSPF input buffer is added to argument.
1129 (ospf_read): Save neighbor's cryptographic sequence number.
1130
1131 * ospf_nsm.c (nsm_change_status): Clear cryptographic sequence
1132 number when neighbor status is changed to NSM down.
1133
1134 * ospf_neighbor.c (ospf_nbr_new): Set zero to crypt_seqnum.
1135
1136 * ospf_neighbor.h (struct ospf_neighbor): Add cryptographic
1137 sequence number to neighbor structure.
1138
11392000-11-29 Kunihiro Ishiguro <kunihiro@zebra.org>
1140
1141 * ospf_snmp.c (ospfIfLookup): OSPF MIB updates.
1142 (ospfExtLsdbEntry): Add OspfExtLsdbTable treatment.
1143
11442000-11-28 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1145
1146 * ospfd.c (ospf_interface_down): Clear a ls_upd_queue queue of the
1147 interface.
1148 (ospf_ls_upd_queue_empty): New function to empty ls update queue
1149 of the OSPF interface.
1150 (no_router_ospf): 'no router ospf' unregister redistribution
1151 requests from zebra.
1152
11532000-11-28 Kunihiro Ishiguro <kunihiro@zebra.org>
1154
1155 * ospf_ism.c (ism_change_status): Increment status change number.
1156
1157 * ospf_interface.h (struct ospf_interface): Add new member for
1158 status change statistics.
1159
1160 * Makefile.am: Update dependencies.
1161
1162 * ospf_zebra.c (ospf_interface_add): OSPF SNMP interface update.
1163 (ospf_interface_delete): OSPF SNMP interface delete.
1164
1165 * ospf_snmp.h: New file is added.
1166
11672000-11-23 Dick Glasspool <dick@ipinfusion.com>
1168
1169 * ospfd.h: Add new ospf_area structure member for
1170 NSSATranslatorRole and NSSATranslator state.
1171
1172 * ospfd.c: Provided for eventual commands to specify NSSA
1173 elections for "translator- ALWAYS/NEVER/CANDIDATE". Provided for
1174 decimal integer version of area-suppress.
1175
1176 * ospf_flood.c: Flood Type-7's only into NSSA (not AS).
1177
1178 * ospf_lsa.c: Undo some previous changes for NSSA. If NSSA
1179 translator, advertise Nt bit.
1180
1181 * ospf_route.c: 1st version of "sh ip os border-routers".
1182
11832000-11-23 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1184
1185 * ospfd.c (area_vlink): Virtual link can not configured in stub
1186 area.
1187
11882000-11-23 Gleb Natapov <gleb@nbase.co.il>
1189
1190 * ospf_packet.c (ospf_db_desc): In states Loading and Full the
1191 slave must resend its last Database Description packet in response
1192 to duplicate Database Description packets received from the
1193 master. For this reason the slave must wait RouterDeadInterval
1194 seconds before freeing the last Database Description packet.
1195 Reception of a Database Description packet from the master after
1196 this interval will generate a SeqNumberMismatch neighbor
1197 event. RFC2328 Section 10.8
1198 (ospf_make_db_desc): DD Master flag treatment.
1199
1200 * ospf_nsm.c (nsm_twoway_received): Move DD related procedure to
1201 nsm_change_status().
1202 (nsm_bad_ls_req): Likewise.
1203 (nsm_adj_ok): Likewise.
1204 (nsm_seq_number_mismatch): Likewise.
1205 (nsm_oneway_received): Likewise.
1206
1207 * ospf_neighbor.h (struct ospf_neighbor): New structure member
1208 last_send_ts for timestemp when last Database Description packet
1209 was sent.
1210
1211 * ospf_nsm.c (ospf_db_desc_timer): Make it sure nbr->last_send is
1212 there. Call ospf_db_desc_resend() in any case.
1213
12142000-11-16 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1215
1216 * ospf_lsa.c (lsa_link_broadcast_set): When there is no DR on
1217 network (suppose you have only one router with interface priority
1218 0). It's router LSA does not contain the link information about
1219 this network.
1220
1221 * ospf_nsm.c (nsm_timer_set): When you change a priority of
1222 interface from/to 0 ISM_NeighborChange event should be scheduled
1223 in order to elect new DR/BDR on the network.
1224
1225 * ospf_interface.c (ip_ospf_priority): Likewise.
1226
1227 * ospf_flood.c (ospf_ls_retransmit_add): When we add some LSA into
1228 retransmit list we need to check whether the present old LSA in
1229 retransmit list is not more recent than the new
1230 one.
1231
12322000-11-09 Dick Glasspool <dick@ipinfusion.com>
1233
1234 * ospf_packet.c: Allows for NSSA Type-7 LSA's throughout the NSSA
1235 area. Any that exit the NSSA area are translated to type-5 LSA's.
1236 The instantiated image is restored after translation.
1237 (ospf_ls_upd_send_list): Renamed to ospf_ls_upd_queu_send().
1238 (ospf_ls_upd_send): Old function which enclosed by #ifdef 0 is
1239 removed.
1240 (ospf_ls_ack_send): Likewise.
1241
1242 * ospf_flood.c: NSSA-LSA's without P-bit will be restricted to
1243 local area. Otherwise they are allowed out the area to be
1244 translated by ospf_packet.c.
1245
1246 * ospf_lsa.c: Undo some previous changes for NSSA.
1247
1248 * ospf_lsdb.h: New access for type 7.
1249
12502000-11-07 Kunihiro Ishiguro <kunihiro@zebra.org>
1251
1252 * ospf_route.c (ospf_path_exist): New function to check nexthop
1253 and interface are in current OSPF path or not.
1254 (ospf_route_copy_nexthops_from_vertex): Add nexthop to OSPF path
1255 when it is not there. Reported by Michael Rozhavsky
1256 <mrozhavsky@opticalaccess.com>
1257
12582000-11-06 Kunihiro Ishiguro <kunihiro@zebra.org>
1259
1260 * ospf_dump.c (config_write_debug): Add seventh string "detail" is
1261 added for flag is OSPF_DEBUG_SEND | OSPF_DEBUG_RECV |
1262 OSPF_DEBUG_DETAIL.
1263
12642000-11-06 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1265
1266 * ospf_lsa.c (router_lsa_flags): ASBR can't exit in stub area.
1267
12682000-11-06 Kunihiro Ishiguro <kunihiro@zebra.org>
1269
1270 * ospf_lsa.c (ospf_router_lsa_originate): Reduce unconditional
1271 logging.
1272
12732000-11-06 Dick Glasspool <dick@ipinfusion.com>
1274
1275 * ospfd.h: Add ait_ntoa function prototype.
1276
1277 * ospfd.c (ait_ntoa): New function for displaying area ID and
1278 Stub/NSSA status.
1279 (show_ip_ospf_interface_sub): Use ait_ntoa.
1280 (show_ip_ospf_nbr_static_detail_sub): Likewise.
1281 (show_ip_ospf_neighbor_detail_sub): Likewise.
1282
1283 * ospf_route.c (ospf_intra_route_add): Set external routing type
1284 to ospf route.
1285 (ospf_intra_add_router): Likewise.
1286 (ospf_intra_add_transit): Likewise.
1287 (ospf_intra_add_stub): Likewise.
1288 (ospf_add_discard_route): Likewise.
1289 (show_ip_ospf_route_network): Use ait_ntoa.
1290 (show_ip_ospf_route_network): Likewise.
1291 (show_ip_ospf_route_router): Likewise.
1292
1293 * ospf_lsa.c (show_lsa_detail): Use ait_ntoa.
1294 (show_lsa_detail_adv_router): Likewise.
1295 (show_ip_ospf_database_summary): Likewise.
1296
1297 * ospf_route.h (struct route_standard): Add new member
1298 external_routing.
1299
1300 * ospf_ia.c (process_summary_lsa): Set external routing tyep to ospf
1301 route.
1302 (ospf_update_network_route): Likewise.
1303 (ospf_update_router_route): Likewise.
1304
13052000-11-04 Kunihiro Ishiguro <kunihiro@zebra.org>
1306
1307 * ospf_flood.c (ospf_process_self_originated_lsa): Enclose
1308 OSPF_AS_NSSA_LSA treatment with #ifdef HAVE_NSSA.
1309
13102000-11-03 Kunihiro Ishiguro <kunihiro@zebra.org>
1311
1312 * Unconditional logging is enclosed with if (IS_DEBUG_OSPF_EVENT).
1313 Please specify "debug ospf event" for enable logging.
1314
1315 * ospf_ism.c: Do not extern debug flag varible. It is done by
1316 ospf_debug.h
1317 * ospf_asbr.c: Likewise.
1318 * ospf_lsa.c: Likewise.
1319 * ospf_nsm.c: Likewise.
1320 * ospf_zebra.c: Likewise.
1321
1322 * ospf_dump.c (debug_ospf_event): New command "debug ospf event"
1323 is added.
1324
1325 * ospfd.c (router_ospf): Change logging from vty_out() to
1326 zlog_info().
1327 (ospf_area_stub_cmd): Likewise.
1328
1329 * ospf_dump.h: Extern term_debug flags.
1330 (OSPF_DEBUG_EVENT): Add new flag.
1331 (IS_DEBUG_OSPF_EVENT): Add new macro.
1332
13332000-11-03 Dick Glasspool <dick@ipinfusion.com>
1334
1335 * ospf_flood.c (ospf_process_self_originated_lsa):
1336 OSPF_AS_NSSA_LSA is treated as same as OSPF_AS_EXTERNAL_LSA.
1337 (ospf_flood): Type-5's have no change. Type-7's can be received,
1338 and will Flood the AS as Type-5's They will also flood the local
1339 NSSA Area as Type-7's. The LSDB will be updated as Type-5's, and
1340 during re-fresh will be converted back to Type-7's (if within an
1341 NSSA).
1342 (ospf_flood_through): Incoming Type-7's were allowed here if our
1343 neighbor was an NSSA. So Flood our area with the Type-7 and also
1344 if we are an ABR, flood thru AS as Type-5.
1345
1346 * ospf_lsa.c (ospf_external_lsa_refresh): Flood NSSA both NSSA
1347 area and other area.
1348
1349 * ospf_packet.c (ospf_db_desc_proc): When AS External LSA is
1350 exists in DD packet, make it sure that this area is not stub.
1351 (ospf_ls_upd_list_lsa): When LSA type is NSSA then set lsa's area
1352 to NULL.
1353 (ospf_ls_upd): If the LSA is AS External LSA and the area is stub
1354 then discard the lsa. If the LSA is NSSA LSA and the area is not
1355 NSSA then discard the lsa.
1356
13572000-11-03 Kunihiro Ishiguro <kunihiro@zebra.org>
1358
1359 * ospfd.c (ospf_interface_run): Fix bug of Hello packet's option
1360 is not properly set when interface comes up.
1361
13622000-11-02 Kunihiro Ishiguro <kunihiro@zebra.org>
1363
1364 * ospfd.h (OSPF_OPTION_O): Add new hello header option.
1365
13662000-11-01 Dick Glasspool <dick@ipinfusion.com>
1367
1368 * ospf_lsa.h: Define OSPF_MAX_LSA to 8 when HAVE_NSSA is enabled.
1369 (OSPF_GROUP_MEMBER_LSA): Define OSPF_GROUP_MEMBER_LSA.
1370
1371 * ospf_lsa.c (show_database_desc): Add "Group Membership LSA"
1372 string.
1373
13742000-10-31 Dick Glasspool <dick@ipinfusion.com>
1375
1376 * ospf_lsa.h (OSPF_AS_NSSA_LSA): Define OSPF_AS_NSSA_LSA.
1377
1378 * ospf_lsa.c (show_ip_ospf_database): NSSA database display
1379 function is added. ALIASES which have "show ip ospf database
1380 nssa-external" is added.
1381 (show_ip_ospf_border_routers): New command "show ip ospf
1382 border-routers" is added.
1383
13842000-10-30 Dick Glasspool <dick@ipinfusion.com>
1385
1386 * ospfd.c (router_ospf): NSSA Enabled message is added for
1387 testing.
1388 (ospf_area_type_set): Are type set for NSSA area.
1389 (ospf_area_stub_cmd): Special translation of no_summary into NSSA
1390 and summary information. If NSSA is enabled pass the information
1391 to ospf_area_type_set().
1392 (area_nssa): New commands are added:
1393 "area A.B.C.D nssa"
1394 "area <0-4294967295> nssa"
1395 "area A.B.C.D nssa no-summary"
1396 "area <0-4294967295> nssa no-summary"
1397 (ospf_no_area_stub_cmd): Special translation of no_summary into
1398 NSSA and summary information. If external_routing is
1399 OSPF_AREA_NSSA unset area with ospf_area_type_set (area,
1400 OSPF_AREA_DEFAULT).
1401 (show_ip_ospf_area): Display NSSA status.
1402 (config_write_ospf_area): Show NSSA configuration.
1403
1404 * ospf_packet.c (ospf_hello): For NSSA support, ensure that NP is
1405 on and E is off.
1406
14072000-10-26 Gleb Natapov <gleb@nbase.co.il>
1408
1409 * ospf_lsa.c (ospf_network_lsa_body_set): The network-LSA lists
1410 those routers that are fully adjacent to the Designated Router;
1411 each fully adjacent router is identified by its OSPF Router ID.
1412 The Designated Router includes itself in this list. RFC2328,
1413 Section 12.4.2.
1414
14152000-10-23 Jochen Friedrich <jochen@scram.de>
1416
1417 * ospf_snmp.c: ospf_oid and ospfd_oid are used in smux_open after
1418 it is registered. So those variables must be static.
1419
14202000-10-18 K N Sridhar <sridhar@euler.ece.iisc.ernet.in>
1421
1422 * ospfd.c: Add area_default_cost_decimal_cmd and
1423 no_area_default_cost_decimal_cmd alias.
1424
14252000-10-05 Gleb Natapov <gleb@nbase.co.il>
1426
1427 * ospfd.c (ospf_network_new): Fix setting area format.
1428 (no_router_ospf): Check area existance when calling
1429 ospf_interface_down().
1430
1431 * ospf_flood.c (ospf_external_info_check): Fix bug of refreshing
1432 default route.
1433
14342000-10-02 Kunihiro Ishiguro <kunihiro@zebra.org>
1435
1436 * zebra-0.89 is released.
1437
14382000-09-29 Kunihiro Ishiguro <kunihiro@zebra.org>
1439
1440 * ospf_snmp.c (ospfHostEntry): OSPF Host MIB is implemented.
1441
1442 * ospfd.c (ospf_nbr_static_cmp): OSPF neighbor is sorted by it's
1443 address.
1444
14452000-09-28 Michael Rozhavsky <mike@nbase.co.il>
1446
1447 * ospf_interface.c (ospf_if_free): Fix deleting self neighbor twice.
1448
14492000-09-27 Kunihiro Ishiguro <kunihiro@zebra.org>
1450
1451 * ospf_packet.c (ospf_read): Solaris on x86 has ip_len with host
1452 byte order.
1453
14542000-09-25 Toshiaki Takada <takada@zebra.org>
1455
1456 * ospfd.c (ospf_compatible_rfc1583), (no_ospf_compatible_rfc1583):
1457 Add CISCO compatible command.
1458
14592000-09-25 Kunihiro Ishiguro <kunihiro@zebra.org>
1460
1461 * ospf_abr.c (ospf_area_range_lookup): New function is added for
1462 area range lookup in OSPF-MIB.
1463 (ospf_area_range_lookup_next): Likewise.
1464
14652000-09-22 Kunihiro Ishiguro <kunihiro@zebra.org>
1466
1467 * ospfd.c (no_router_ospf): Delete virtual link before deleting
1468 area structure.
1469
1470 * ospf_lsa.c (ospf_external_lsa_refresh_type): Check
1471 EXTERNAL_INFO(type).
1472
1473 * ospfd.c (no_router_ospf): Call ospf_vl_delete() instead of
1474 ospf_vl_data_free().
1475
1476 * ospf_interface.c (ospf_vl_shutdown): Execute ISM_InterfaceDown
1477 when ospf_vl_shutdown is called.
1478 (ospf_vl_delete): Call ospf_vl_shutdown() to delete virtual link
1479 interface's thread.
1480
14812000-09-21 Gleb Natapov <gleb@nbase.co.il>
1482
1483 * ospf_lsa.c: New implementation of OSPF refresh.
1484
14852000-09-20 Kunihiro Ishiguro <kunihiro@zebra.org>
1486
1487 * ospf_snmp.c (ospfLsdbLookup): Add LSDB MIB implementation.
1488
14892000-09-18 Kunihiro Ishiguro <kunihiro@zebra.org>
1490
1491 * ospf_snmp.c (ospfStubAreaEntry): Add OSPF stub area MIB.
1492
14932000-09-18 Gleb Natapov <gleb@nbase.co.il>
1494
1495 * ospf_route.h (route_standard): Change member from `struct area'
1496 to area_id.
1497
1498 * ospf_abr.c (ospf_abr_announce_network), (ospf_abr_should_announce),
1499 (ospf_abr_process_network_rt), (ospf_abr_announce_rtr),
1500 (ospf_abr_process_router_rt):
1501 * ospf_ase.c (ospf_find_asbr_route),
1502 (ospf_find_asbr_router_through_area),
1503 * ospf_ia.c (ospf_find_abr_route), (ospf_ia_router_route),
1504 (process_summary_lsa), (ospf_update_network_route),
1505 (ospf_update_router_route):
1506 * ospf_route.c (ospf_intra_route_add), (ospf_intra_add_router),
1507 (ospf_intra_add_transit), (ospf_intra_add_stub),
1508 (ospf_route_table_dump), (show_ip_ospf_route_network),
1509 (show_ip_ospf_route_router), (ospf_asbr_route_cmp),
1510 (ospf_prune_unreachable_routers):
1511 * ospf_spf.c (ospf_rtrs_print):
1512 * ospfd.c (ospf_rtrs_free): Fix the struct change above.
1513
15142000-09-14 Kunihiro Ishiguro <kunihiro@zebra.org>
1515
1516 * ospf_network.c (ospf_serv_sock_init): Enclose SO_BINDTODEVICE
1517 with ifdef.
1518
15192000-09-13 Gleb Natapov <gleb@nbase.co.il>
1520
1521 * ospf_ism.c (ospf_elect_dr), (ospf_elect_bdr): Fix DR election.
1522
1523 * ospf_network.c (ospf_serv_sock_init): Add socket option
1524 SO_BINDTODEVICE on read socket.
1525
1526 * ospf_packet.c (ospf_hello): Ignore Hello packet if E-bit does
1527 not match.
1528
1529 * ospfd.c (ospf_area_check_free), (ospf_area_get),
1530 (ospf_area_add_if): New function added.
1531
15322000-09-13 Kunihiro Ishiguro <kunihiro@zebra.org>
1533
1534 * ospf_route.c (ospf_intra_add_router): Update ABR and ASBR router
1535 count.
1536
1537 * ospf_spf.c (ospf_spf_init): Rest ABR and ASBR router count
1538 starting SPF calculation.
1539
1540 * ospfd.h (struct ospf_area): Add ABR and ASBR router count.
1541
15422000-09-12 Kunihiro Ishiguro <kunihiro@zebra.org>
1543
1544 * ospfd.c (ospf_area_id_cmp): New area structure is sorted by area
1545 ID.
1546
1547 * ospf_lsa.c (ospf_router_lsa_originate): For OSPF MIB update
1548 lsa_originate_count.
1549 (ospf_network_lsa_originate): Likewise.
1550 (ospf_summary_lsa_originate): Likewise.
1551 (ospf_summary_asbr_lsa_originate): Likewise.
1552 (ospf_external_lsa_originate): Likewise.
1553
15542000-09-11 Kunihiro Ishiguro <kunihiro@zebra.org>
1555
1556 * ospf_snmp.c (ospf_variables): ospfRouterID's type RouterID
1557 syntax is IpAddress.
1558 (ospf_admin_stat): New function for OSPF administrative status
1559 check.
1560
15612000-09-10 Jochen Friedrich <jochen@scram.de>
1562
1563 * ospf_snmp.c: Implement OSPF MIB skeleton.
1564
15652000-09-08 Kunihiro Ishiguro <kunihiro@zebra.org>
1566
1567 * ospf_snmp.c: New file is added.
1568
15692000-09-07 David Lipovkov <davidl@nbase.co.il>
1570
1571 * ospf_zebra.c (ospf_interface_delete): Add pseudo interface
1572 treatment.
1573
1574 * ospf_interface.c (interface_config_write): Likewise.
1575
15762000-08-17 Kunihiro Ishiguro <kunihiro@zebra.org>
1577
1578 * zebra-0.88 is released.
1579
15802000-08-17 Michael Rozhavsky <mike@nbase.co.il>
1581
1582 * ospfd.c (ospf_area_free): Remove virtual link configuration only
1583 when Area is removed.
1584
15852000-08-17 Kunihiro Ishiguro <kunihiro@zebra.org>
1586
1587 * ospfd.c (network_area): Revert check for EXTERNAL_INFO
1588 (ZEBRA_ROUTE_CONNECT).
1589 (no_network_area): Likewise.
1590
15912000-08-16 Kunihiro Ishiguro <kunihiro@zebra.org>
1592
1593 * ospfd.h (struct ospf): Add distance_table and
1594 distance_{all,intra,inter,external}.
1595
1596 * ospf_zebra.c: Add OSPF distance related functions.
1597
15982000-08-15 Gleb Natapov <gleb@nbase.co.il>
1599
1600 * ospf_asbr.c (ospf_external_info_find_lsa): New function added.
1601
1602 * ospf_lsa.c (ospf_default_external_info),
1603 (ospf_default_originate_timer), (ospf_external_lsa_refresh_default):
1604 New function added.
1605
1606 * ospf_zebra.c
1607 (ospf_default_information_originate_metric_type_routemap),
1608 (ospf_default_information_originate_always_metric_type_routemap):
1609 Change name and add route-map function.
1610 (ospf_default_information_originate_metric_routemap),
1611 (ospf_default_information_originate_routemap),
1612 (ospf_default_information_originate_type_metric_routemap):
1613 New DEFUN added.
1614
16152000-08-14 Kunihiro Ishiguro <kunihiro@zebra.org>
1616
1617 * ospf_zebra.c (zebra_interface_if_set_value): Change ifindex
1618 restore size from two octet to four.
1619
16202000-08-14 Michael Rozhavsky <mike@nbase.co.il>
1621
1622 * ospf_ase.c (ospf_ase_incremental_update): Implement incremental
1623 AS-external-LSA in 16.6 of RFC2328.
1624
16252000-08-14 Matthew Grant <grantma@anathoth.gen.nz>
1626
1627 * ospf_interface.c (ospf_if_get_output_cost): Change cost
1628 calculation algorithm.
1629
1630 * ospf_packet (ospf_ls_upd): Fix problem of LSA retransmitting.
1631
16322000-08-11 Michael Rozhavsky <mike@nbase.co.il>
1633
1634 * ospf_lsa.c (ospf_maxage_lsa_remover): Fix maxage remover for
1635 AS-external-LSAs.
1636
16372000-08-10 Toshiaki Takada <takada@zebra.org>
1638
1639 * ospfd.c (auto_cost_reference_bandwidth): New DEFUN added.
1640 `auto-cost reference-bandwidth' OSPF router command added.
1641
16422000-08-08 Gleb Natapov <gleb@nbase.co.il>
1643
1644 * ospf_routemap.c (ospf_route_map_update): New function added.
1645 Add route-map event hook.
1646
16472000-08-08 Toshiaki Takada <takada@zebra.org>
1648
1649 * ospf_zebra.c (ospf_distribute_check_connected): If redistribute
1650 prefix is connected route on OSPF enabled interface, suppress to
1651 announce it.
1652
16532000-08-08 Matthew Grant <grantma@anathoth.gen.nz>
1654
1655 * ospf_interface.c (ospf_if_get_output_cost):
1656 New function added. Handle bandwidth parameter for cost
1657 calculation.
1658
16592000-08-08 Michael Rozhavsky <mike@nbase.co.il>
1660
1661 * ospf_interface.c (interface_config_write): Show interface
1662 configuration regardless interface is down.
1663
1664 * ospf_ase.c (ospf_ase_caocluate_route): Whole rewritten external
1665 route calculate function.
1666
16672000-08-08 Gleb Natapov <gleb@nbase.co.il>
1668
1669 * ospf_routemap.c: New file added.
1670
1671 * ospf_asbr.c (ospf_reset_route_map_set_values),
1672 (ospf_route_map_set_compare): New function added.
1673
1674 * ospf_lsa.c (ospf_external_lsa_body_set): Set routemap metric
1675 with AS-external-LSA.
1676
16772000-08-05 Kunihiro Ishiguro <kunihiro@zebra.org>
1678
1679 * ospf_ase.c (ospf_ase_calculate_route_add): Pass new->cost to
1680 ospf_zebra_add as metric.
1681 (ospf_ase_calculate_route_add): Likewise.
1682
1683 * ospf_route.c (ospf_route_install): Pass or->cost to
1684 ospf_zebra_add as metric.
1685
1686 * ospf_zebra.c (ospf_zebra_add): Add metric arguemnt.
1687 (ospf_zebra_delete): Likewise.
1688
16892000-08-03 Matthew Grant <grantma@anathoth.gen.nz>
1690
1691 * ospf_flood.c (ospf_flood_delayed_lsa_ack): New function added.
1692 Dispatch delayed-ACK with flooding AS-external-LSA across virtual
1693 link.
1694
16952000-07-31 Matthew Grant <grantma@anathoth.gen.nz>
1696
1697 * ospfd.c (show_ip_ospf_area): Fix lack of VTY_NEWLINE when
1698 `show ip ospf'.
1699
1700 * ospf_interface.c (ospf_if_free): Fix bug of crash with
1701 Point-to-Point interface.
1702
17032000-07-27 Michael Rozhavsky <mike@nbase.co.il>
1704
1705 * ospf_flood.c (ospf_process_self_originated_lsa):
1706 Make sure to clear LSA->param (redistributed external information)
1707 before refreshment.
1708
17092000-07-27 Gleb Natapov <gleb@nbase.co.il>
1710
1711 * ospfd.c (refresh_group_limit), (refresh_per_slice),
1712 (refresh_age_diff): New defun added. Refresher related parameter
1713 can be configurable.
1714
17152000-07-27 Akihiro Mizutani <mizutani@dml.com>
1716
1717 * ospf_interface.c (interface_config_write): Print `description'
1718 config directive to work.
1719
17202000-07-24 Akihiro Mizutani <mizutani@dml.com>
1721
1722 * ospf_interface.c (ospf_if_init): Use install_default for
1723 INTERFACE_NODE.
1724
17252000-07-24 Gleb Natapov <gleb@nbase.co.il>
1726
1727 * ospf_packet.c (ospf_ls_upd_send_list), (ospf_ls_upd_send_event),
1728 (ospf_ls_ack_send_list), (ospf_ls_ack_send_event): New function added.
1729 This make sending always as many LS update/Ack combined in one ospf
1730 packet.
1731
17322000-07-24 Gleb Natapov <gleb@nbase.co.il>
1733
1734 * ospf_packet.c (ospf_ls_upd_list_lsa): Set NULL to lsa->area if
1735 LSA is AS-external-LSA.
1736
1737 * ospf_nsm.c (nsm_reset_nbr): Do not cancel Inactivity timer.
1738
17392000-07-21 Toshiaki Takada <takada@zebra.org>
1740
1741 * ospf_zebra.c (ospf_default_originate_timer): Set timer for
1742 `default-information originate'. Fix some default originate
1743 related functions.
1744
17452000-07-12 Toshiaki Takada <takada@zebra.org>
1746
1747 * ospf_lsa.c (stream_put_ospf_metric): New function added.
1748
17492000-07-12 Toshiaki Takada <takada@zebra.org>
1750
1751 * ospf_lsa.c (show_ip_ospf_database_router),
1752 (show_ip_ospf_database_network), (show_ip_ospf_database_summary),
1753 (show_ip_ospf_database_summary_asbr), (show_ip_ospf_database_externel),
1754 (show_router_lsa), (show_any_lsa), (show_router_lsa_self),
1755 (show_any_lsa_self): Functions removed.
1756
1757 (show_lsa_prefix_set), (show_lsa_detail_proc), (show_lsa_detail),
1758 (show_lsa_detail_adv_router_proc), (show_lsa_detail_adv_router):
1759 New functions added. Replace above functions.
1760
1761 (show_ip_ospf_database_all), (show_ip_ospf_database_self_originated):
1762 Functions removed.
1763 (show_ip_ospf_database_summary): New functions added. Replace
1764 above functions.
1765
1766 (show_ip_ospf_database_cmd): DEFUN rearranged.
1767 (show_ip_ospf_database_type_id_cmd),
1768 (show_ip_ospf_database_type_id_adv_router_cmd),
1769 (show_ip_ospf_database_type_is_self_cmd): New ALIASes added.
1770 (show_ip_ospf_database_type_adv_rotuer_cmd): New DEFUN added.
1771 (show_ip_ospf_database_type_self_cmd): New ALIAS added.
1772
17732000-07-11 Toshiaki Takada <takada@zebra.org>
1774
1775 * ospf_asbr.c (ospf_external_info_new),
1776 (ospf_external_info_free): New functions added.
1777
1778 * ospf_lsa.h (ospf_lsa): Add new member `void *param' to set
1779 origination parameter for external-LSA.
1780 Remove member `redistribute'.
1781
1782 * ospf_zebra.c (ospf_redistirbute_set): When `redistribute'
1783 command executed, metric and metric-type values are overridden.
1784 If one of those is changed refresh AS-external-LSAs for appropriate
1785 type.
1786
17872000-07-11 Michael Rozhavsky <mike@nbase.co.il>
1788
1789 * ospf_lsa.c (ospf_summary_lsa_refresh),
1790 (ospf_summary_asbr_lsa_refresh): Make sure to refresh summary-LSAs.
1791
1792 * ospf_abr.c (set_metric): New function added.
1793
17942000-07-07 Toshiaki Takada <takada@zebra.org>
1795
1796 * ospf_zebra.c (ospf_default_information_originate_metric_type),
1797 (ospf_default_information_originate_type_metric): New defun added.
1798 Metic and Metric type can be set to default route.
1799 (ospf_default_information_originate_always_metric_type):
1800 (ospf_default_information_originate_always_type_metric):
1801 New defun added. Metric and Metric type can be set to default
1802 always route.
1803
1804 * ospf_zebra.c (ospf_default_metric), (no_ospf_default_metric):
1805 New defun added.
1806
18072000-07-06 Gleb Natapov <gleb@nbase.co.il>
1808
1809 * ospf_flood.c (ospf_flood_through_area): Fix bug of considering
1810 on the same interface the LSA was received from.
1811
18122000-07-06 Michael Rozhavsky <mike@nbase.co.il>
1813
1814 * ospfd.c (ospf_config_write): Fix bug of printing `area stub'
1815 command with `write mem'.
1816
1817 * ospfd.c (no_router_ospf): Remove installed routes from zebra.
1818
1819 * ospf_zebra.c (ospf_interface_delete): Fix function to handle
1820 zebra interface delete event.
1821
18222000-07-06 Toshiaki Takada <takada@zebra.org>
1823
1824 * ospf_zebra.c (ospf_default_information_originate),
1825 (ospf_default_information_originate_always): New DEFUN added.
1826
18272000-07-05 Michael Rozhavsky <mike@nbase.co.il>
1828
1829 * ospf_route.c (ospf_terminate): Make sure to remove external route
1830 when SIGINT received.
1831
18322000-07-03 Gleb Natapov <gleb@nbase.co.il>
1833
1834 * ospf_flood.c, ospf_ism.c, ospf_lsa,c, ospfd.c: Make sure to free
1835 many structure with `no router ospf'.
1836
18372000-06-30 Gleb Natapov <gleb@nbase.co.il>
1838
1839 * ospf_neighbor.c (ospf_nbr_new),
1840 ospf_nsm.c (nsm_timer_set): Start LS update timer only
1841 when neighbor enters Exchange state.
1842
18432000-06-29 Gleb Natapov <gleb@nbase.co.il>
1844
1845 * ospf_nsm.c (nsm_timer_set), (nsm_exchange_done),
1846 ospf_packet.c (ospf_db_desc_proc):
1847 Do not cancel DD retransmit timer when Master.
1848
18492000-06-29 Gleb Natapov <gleb@nbase.co.il>
1850
1851 * ospf_abr.c (ospf_abr_announce_network_to_area),
1852 (ospf_abr_announce_rtr_to_area)
1853 ospf_ase.c (ospf_ase_rtrs_register_lsa),
1854 ospf_flood.c (ospf_process_self_originated_lsa),
1855 (ospf_flood_through_area), (ospf_ls_request_delete),
1856 ospf_interface.c (ospf_if_free),
1857 ospf_ism.c (ism_change_status),
1858 ospf_lsa.c (ospf_router_lsa_update_timer),
1859 (ospf_router_lsa_install), (ospf_network_lsa_install),
1860 (ospf_lsa_maxage_delete), (ospf_lsa_action),
1861 (ospf_schedule_lsa_flood_area),
1862 ospf_nsm.c (nsm_change_status),
1863 ospf_packet.c (ospf_make_ls_req_func), (ospf_make_ls_ack):
1864 Use ospf_lsa_{lock,unlock} for all looking-up of LSA.
1865
1866 * ospf_flood.c (ospf_ls_request_free): Function deleted.
1867
1868 * ospf_lsa.c (ospf_discard_from_db): New function added.
1869
18702000-06-26 Toshiaki Takada <takada@zebra.org>
1871
1872 * ospfd.h (ospf): struct member `external_lsa' name changed to
1873 `lsdb'.
1874
18752000-06-26 Toshiaki Takada <takada@zebra.org>
1876
1877 * ospf_lsa.c (ospf_lsa_install), (ospf_router_lsa_install),
1878 (ospf_network_lsa_install), (ospf_summary_lsa_install),
1879 (ospf_summary_asbr_lsa_install), (ospf_external_lsa_install):
1880 Functions re-arranged.
1881
1882 * ospf_lsa.c (IS_LSA_MAXAGE), (IS_LSA_SELF): Macro added.
1883
18842000-06-20 Michael Rozhavsky <mike@nbase.co.il>
1885
1886 * ospf_packet.c (ospf_ls_req), (ospf_ls_upd), (ospf_ls_ack): Add
1887 verification of LS type.
1888
18892000-06-20 Gleb Natapov <gleb@nbase.co.il>
1890
1891 * ospf_ase.c (ospf_ase_calculate_timer): Add more sanity check
1892 whether rn->info is NULL.
1893
18942000-06-20 Toshiaki Takada <takada@zebra.org>
1895
1896 * ospfd.c (show_ip_ospf_interface_sub): Show Router-ID of both
1897 DR and Backup correctly with `show ip ospf interface' command.
1898
18992000-06-20 Toshiaki Takada <takada@zebra.org>
1900
1901 * ospf_lsa.c (ospf_lsa_lock), (ospf_lsa_unlock),
1902 (ospf_lsa_discard): These functions are used for avoiding
1903 unexpected reference to freed LSAs.
1904
19052000-06-13 Kunihiro Ishiguro <kunihiro@zebra.org>
1906
1907 * ospf_packet.c (ospf_ls_upd): Initialize lsa by NULL to avoid
1908 warning.
1909
19102000-06-12 Kunihiro Ishiguro <kunihiro@zebra.org>
1911
1912 * ospf_ase.h (ospf_ase_rtrs_register_lsa): Add prototype.
1913
19142000-06-12 Toshiaki Takada <takada@zebra.org>
1915
1916 * ospf_lsa.c (ospf_external_lsa_install): Make sure to register
1917 LSA to rtrs_external when replacing AS-external-LSAs in LSDB.
1918 Fix core dump.
1919
19202000-06-10 Toshiaki Takada <takada@zebra.org>
1921
1922 * ospf_lsdb.c (id_to_prefix), (ospf_lsdb_hash_key),
1923 (ospf_lsdb_hash_cmp), (ospf_lsdb_new), (ospf_lsdb_iterator),
1924 (lsdb_free), (ospf_lsdb_free), (ospf_lsdb_add), (ospf_lsdb_delete),
1925 (find_lsa), (ospf_lsdb_lookup), (find_by_id),
1926 (ospf_lsdb_lookup_by_id), (ospf_lsdb_lookup_by_header): Functinos
1927 removed for migration to new_lsdb.
1928
1929 * ospf_lsa.c (ospf_summary_lsa_install),
1930 (ospf_summary_asbr_lsa_install), (ospf_maxage_lsa_remover),
1931 (ospf_lsa_maxage_walker), (ospf_lsa_lookup),
1932 (ospf_lsa_lookup_by_id): Use new_lsdb instead of ospf_lsdb.
1933 (count_lsa), (ospf_lsa_count_table), (ospf_lsa_count),
1934 (ospf_get_free_id_for_prefix): Funcitions removed.
1935
19362000-06-09 Gleb Natapov <gleb@nbase.co.il>
1937
1938 * ospf_ism.c (ism_interface_down): Prevent some unneeded DR changes.
1939
1940 * ospf_packet.c (ospf_db_desc_proc): Fix memory leak.
1941 (ospf_hello): Always copy router-ID when hello is received.
1942
19432000-06-08 Gleb Natapov <gleb@nbase.co.il>
1944
1945 * ospf_lsa.h (struct ospf_lsa): Add member of pointer to struct
1946 ospf_area.
1947
19482000-06-08 Michael Rozhavsky <mike@nbase.co.il>
1949
1950 * ospf_ase.c (ospf_asbr_route_same): New function added.
1951 This function makes sure external route calculation more
1952 precisely.
1953
19542000-06-07 Michael Rozhavsky <mike@nbase.co.il>
1955
1956 * ospf_ism.c (ism_change_status): Use ospf_lsa_flush_area for
1957 network-LSA deletion instead of using ospf_lsdb_delete.
1958 Also cancel network-LSA origination timer.
1959
19602000-06-07 Levi Harper <lharper@kennedytech.com>
1961
1962 * ospf_interface.c (ospf_if_down): Close read fd when an interface
1963 goes down.
1964
19652000-06-05 Kunihiro Ishiguro <kunihiro@zebra.org>
1966
1967 * ospf_asbr.c (ospf_external_info_lookup): Add explicit brace for
1968 avoid ambiguous else.
1969
1970 * ospf_flood.c (ospf_external_info_check): Likewise.
1971
19722000-06-05 Toshiaki Takada <takada@zebra.org>
1973
1974 * ospf_nsm.c (nsm_adj_ok): Fix bug of DR election.
1975
19762000-06-04 Toshiaki Takada <takada@zebra.org>
1977
1978 * ospf_zebra.c (ospf_default_information_originate),
1979 (no_ospf_default_information_originate): New DEFUN added.
1980
19812000-06-03 Toshiaki Takada <takada@zebra.org>
1982
1983 * ospf_lsa.h, ospf_asbr.h (external_info): Struct moved from
1984 ospf_lsa.h to ospf_asbr.h.
1985
1986 * ospf_lsa.c, ospf_asbr.c (ospf_external_info_add),
1987 (ospf_external_info_delete): Function moved from ospf_lsa.c
1988 to ospf_asbr.c.
1989
19902000-06-03 Toshiaki Takada <takada@zebra.org>
1991
1992 * ospf_flood.c (ospf_external_info_check): New function added.
1993 (ospf_process_self_orignated_lsa): Make sure to flush
1994 self-originated AS-external-LSA, when router reboot and no longer
1995 originate those AS-external-LSA.
1996
19972000-06-02 Toshiaki Takada <takada@zebra.org>
1998
1999 * ospf_network.c (ospf_serv_sock): Remove SO_DONTROUTE
2000 socket option.
2001
2002 * ospf_packet.c (ospf_write): Set MSG_DONTROUTE flag for
2003 unicast destination packets.
2004
20052000-06-02 Toshiaki Takada <takada@zebra.org>
2006
2007 * ospf_lsdb.c (new_lsdb_delete): Delete entry from LSDB only when
2008 specified LSA matches.
2009
20102000-06-02 Gleb Natapov <gleb@nbase.co.il>
2011
2012 * ospf_network.c (ospf_serv_sock): Set SO_DONTROUTE
2013 socket option.
2014
20152000-06-01 Akihiro Mizutani <mizutani@dml.com>
2016
2017 * ospf_dump.c: Replace string `Debugging functions\n' with DEBUG_STR.
2018 Replace string `OSPF information\n' with OSPF_STR.
2019
20202000-06-01 Toshiaki Takada <takada@zebra.org>
2021
2022 * ospf_lsdb.[ch]: Use new_lsdb struct for network-LSA instead of
2023 ospf_lsdb.
2024
20252000-06-01 Toshiaki Takada <takada@zebra.org>
2026
2027 * ospf_dump.c (config_debug_ospf_packet), (config_debug_ospf_event),
2028 (config_debug_ospf_ism), (config_debug_ospf_nsm),
2029 (config_debug_ospf_lsa), (config_debug_ospf_zebra),
2030 (term_debug_ospf_packet), (term_debug_ospf_event),
2031 (term_debug_ospf_ism), (term_debug_ospf_nsm),
2032 (term_debug_ospf_lsa), (term_debug_ospf_zebra): Repalce debug_ospf_*
2033 variable to use for debug option flags.
2034
2035 (debug_ospf_packet), (debug_ospf_ism), (debug_ospf_nsm),
2036 (debug_ospf_lsa), (debug_ospf_zebra): Set {config,term}_debug_*
2037 flags when vty->node is CONFIG_NODE, otherwise set only term_debug_*
2038 flags.
2039
2040 * ospf_dump.h (CONF_DEBUG_PACKET_ON), (CONF_DEBUG_PACKET_OFF),
2041 (TERM_DEBUG_PACKET_ON), (TERM_DEBUG_PACKET_OFF),
2042 (CONF_DEBUG_ON), (CONF_DEBUG_OFF), (IS_CONF_DEBUG_OSPF_PACKET),
2043 (IS_CONF_DEBUG_OSPF): New Macro added.
2044
20452000-05-31 Toshiaki Takada <takada@zebra.org>
2046
2047 * ospfd.c (clear_ip_ospf_neighbor): New DEFUN added.
2048 Currently this command is used for only debugging.
2049
2050 * ospf_nsm.c (nsm_change_status): Make sure thread cancellation
2051 for network-LSA when DR has no full neighbors.
2052
2053 * ospf_nsm.c (ospf_db_summary_clear): New function added.
2054
20552000-05-30 Toshiaki Takada <takada@zebra.org>
2056
2057 * ospf_lsdb.c (new_lsdb_insert): LSAs are always freed by
2058 maxage_lsa_remover when LSA is replaced.
2059
20602000-05-25 Gleb Natapov <gleb@nbase.co.il>
2061
2062 * ospf_flood.c (ospf_ls_retransmit_delete_nbr_all): Add argument
2063 `struct ospf_area' to remove LSA from Link State retransmission list
2064 of neighbor from only one Area.
2065
20662000-05-24 Michael Rozhavsky <mike@nbase.co.il>
2067
2068 * ospf_lsdb.c (ospf_lsdb_add): Preserve flags field when
2069 overriting old LSA with new LSA.
2070
20712000-05-24 Gleb Natapov <gleb@nbase.co.il>
2072
2073 * ospf_lsa.c (ospf_router_lsa_body_set): Fix bug of router-LSA
2074 size calculation.
2075
20762000-05-22 Michael Rozhavsky <mike@nbase.co.il>
2077
2078 * ospf_route.c (ospf_intra_add_stub):
2079 * ospf_spf.h (struct vertex): Use u_int32_t for distance (cost)
2080 value instead of u_int16_t.
2081
20822000-05-22 Axel Gerlach <agerlach@datus.datus.com>
2083
2084 * ospf_ia.c (ospf_ia_network_route): Fix bug of Inter-area route
2085 equal cost path calculation.
2086
20872000-05-21 Toshiaki Takada <takada@zebra.org>
2088
2089 * ospf_ase.c (ospf_ase_calculate_route_delete): New function added.
2090 Make sure, when rotuer route is deleted, related external routes
2091 are also deleted.
2092
20932000-05-20 Toshiaki Takada <takada@zebra.org>
2094
2095 * ospfd.c (ospf_interface_down): Make sure interface flag is disable
2096 and set fd to -1.
2097
20982000-05-16 Toshiaki Takada <takada@zebra.org>
2099
2100 * ospf_asbr.c (ospf_asbr_should_announce), (ospf_asbr_route_remove):
2101 Functions removed.
2102
2103 * ospfd.h (EXTERNAL_INFO): Macro added.
2104 Substitute `ospf_top->external_info[type]' with it.
2105
21062000-05-16 Toshiaki Takada <takada@zebra.org>
2107
2108 * ospf_lsa.c (ospf_rtrs_external_remove): New function added.
2109
21102000-05-14 Gleb Natapov <gleb@nbase.co.il>
2111
2112 * ospf_flood.c (ospf_ls_retransmit_delete_nbr_all)
2113 * ospf_lsdb.c (new_lsdb_insert)
2114 * ospf_packet.c (ospf_ls_ack): Fix database synchonization problem.
2115
21162000-05-14 Gleb Natapov <gleb@nbase.co.il>
2117
2118 * ospf_lsa.h (tv_adjust), (tv_ceil), (tv_floor), (int2tv),
2119 (tv_add), (tv_sub), (tv_cmp): Prototype definition added.
2120
2121 * ospf_nsm.h (ospf_db_summary_delete_all): Prototype definition added.
2122
21232000-05-13 Toshiaki Takada <takada@zebra.org>
2124
2125 * ospf_lsa.[ch] (ospf_lsa): struct timestamp type is changed from
2126 time_t to struct timeval.
2127 (tv_adjust), (tv_ceil), (tv_floor), (int2tv), (tv_add),
2128 (tv_sub), (tv_cmp): timeval utillity functions added.
2129
21302000-05-12 Toshiaki Takada <takada@zebra.org>
2131
2132 * ospf_lsa.[ch] (ospf_schedule_update_router_lsas): Delete function.
2133 Change to use macro OSPF_LSA_UPDATE_TIMER instead of using
2134 this function.
2135 router-LSA refresh timer related stuff is re-organized.
2136
21372000-05-10 Gleb Natapov <gleb@nbase.co.il>
2138
2139 * ospf_interface.c (ospf_vl_set_params):
2140 * ospf_packet.c (ospf_check_network_mask):
2141 * ospf_spf.[ch] (ospf_spf_next):
2142 Remove field address from `struct vertex', and search for peer
2143 address of virtual link in function `ospf_vl_set_params' instead.
2144
21452000-05-10 Gleb Natapov <gleb@nbase.co.il>
2146
2147 * ospf_packet.c (ospf_ls_upd): Fix some memory leak related LSA.
2148
21492000-05-08 Thomas Molkenbur <tmo@datus.com>
2150
2151 * ospf_packet.c (ospf_packet_dup): Replace ospf_steram_copy()
2152 with ospf_stream_dup() to fix memory leak.
2153
21542000-05-08 Michael Rozhavsky <mike@nbase.co.il>
2155
2156 * ospf_flood.c (ospf_flood_through_area): Fix the problem of
2157 LSA update without DROther.
2158
21592000-05-04 Gleb Natapov <gleb@nbase.co.il>
2160
2161 * ospf_spf.c (ospf_vertex_free): Fix memory leak of SPF calculation.
2162
21632000-05-03 Toshiaki Takada <takada@zebra.org>
2164
2165 * ospf_neighbor.c (ospf_db_summary_add): Use new_lsdb struct
2166 instead linked-list.
2167 (ospf_db_summary_count), (ospf_db_summary_isempty):
2168 New function added.
2169
2170 * ospf_lsa.c (ospf_rotuer_lsa): Re-arrange and divide functions.
2171
21722000-05-02 Gleb Natapov <gleb@nbase.co.il>
2173
2174 * ospf_lsdb.c (new_lsdb_cleanup): Fix memory leak. When LSDB are
2175 not needed any more, then free them.
2176
21772000-05-02 Toshiaki Takada <takada@zebra.org>
2178
2179 * ospfd.c (timers_spf), (no_timers_spf): New defun added.
2180 SPF calculation timers related stuff is rearranged.
2181
2182 * ospf_spf.c (ospf_spf_calculate_timer_add): Function removed.
2183 SPF timer is scheduled by SPF calculation delay and holdtime
2184 configuration variable.
2185
2186 * ospf_lsa.c (ospf_external_lsa_nexthop_get): Set AS-external-LSA's
2187 forwarding address when nexthop learned by other protocols is
2188 in the OSPF domain.
2189
2190 * ospf_zebra.c (ospf_redistribute_source_metric_type),
2191 (ospf_redistribute_source_type_metric): Re-arrange DEFUNs and
2192 ALIASes.
2193
21942000-05-01 Toshiaki Takada <takada@zebra.org>
2195
2196 * ospf_flood.c (ospf_ls_retransmit_count),
2197 (ospf_ls_retransmit_isempty): New function added.
2198
2199 (ospf_ls_retransmit_add), (ospf_ls_retransmit_delete),
2200 (ospf_ls_retransmit_clear), (ospf_ls_retransmit_lookup),
2201 (ospf_ls_retransmit_delete_all), (ospf_ls_retransmit_delete_nbr_all),
2202 (ospf_ls_retransmit_add_nbr_all): Replace these functions to use
2203 new_lsdb.
2204
22052000-04-29 Toshiaki Takada <takada@zebra.org>
2206
2207 * ospfd.c (no_network_area): Add check Area-ID whether specified
2208 Area-ID with prefix matches config.
2209
22102000-04-27 Toshiaki Takada <takada@zebra.org>
2211
2212 * ospf_lsa.c (ospf_maxage_lsa_remover): Fix problem of
2213 remaining withdrawn routes on zebra.
2214
22152000-04-25 Michael Rozhavsky <mike@nbase.co.il>
2216
2217 * ospf_nsm.c (nsm_kill_nbr), (nsm_ll_down), (nsm_change_status),
2218 (ospf_nsm_event): Fix network-LSA re-origination problem.
2219
22202000-04-24 Toshiaki Takada <takada@zebra.org>
2221
2222 * ospf_nsm.c (ospf_db_desc_timer): Fix bug of segmentation fault
2223 with DD retransmission.
2224
2225 * ospf_nsm.c (nsm_kill_nbr): Fix bug of re-origination when
2226 a neighbor disappears.
2227
22282000-04-23 Michael Rozhavsky <mike@nbase.co.il>
2229
2230 * ospf_abr.c (ospf_abr_announce_network_to_area): Fix bug of
2231 summary-LSAs reorigination. Correctly copy OSPF_LSA_APPROVED
2232 flag to new LSA. when summary-LSA is reoriginatd.
2233
2234 * ospf_flood.c (ospf_flood_through_area): Fix bug of flooding
2235 procedure. Change the condition of interface selection.
2236
22372000-04-21 Toshiaki Takada <takada@zebra.org>
2238
2239 * ospf_lsa.c (ospf_refresher_register_lsa): Fix bug of refresh never
2240 occurs.
2241
2242 * ospfd.c (show_ip_ospf_neighbor_id): New defun added.
2243 `show ip ospf neighbor' related commands are re-arranged.
2244
22452000-04-20 Toshiaki Takada <takada@zebra.org>
2246
2247 * ospf_dump.c (debug_ospf_zebra): New defun added.
2248 Suppress zebra related debug information.
2249
22502000-04-19 Toshiaki Takada <takada@zebra.org>
2251
2252 * ospf_zebra.c (ospf_distribute_list_update_timer),
2253 (ospf_distribute_list_update), (ospf_filter_update):
2254 New function added. Re-organize `distribute-list' router ospf
2255 command.
2256
22572000-04-13 Michael Rozhavsky <mike@nbase.co.il>
2258
2259 * ospf_packet.c (ospf_make_ls_upd): Add check for MAX_AGE.
2260
22612000-04-14 Michael Rozhavsky <mike@nbase.co.il>
2262
2263 * ospf_packet.c (ospf_make_ls_upd): Increment LS age by configured
2264 interface transmit_delay.
2265
22662000-04-14 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2267
2268 * ospf_interface.c (ip_ospf_cost), (no_ip_ospf_cost):
2269 Add to schedule router_lsa origination when the interface cost changes.
2270
22712000-04-12 Toshiaki Takada <takada@zebra.org>
2272
2273 * ospf_lsa.c (ospf_refresher_register_lsa),
2274 (ospf_refresher_unregister_lsa): Fix bug of core dumped.
2275
2276 * ospfd.c (no_router_ospf): Fix bug of core dumped.
2277
22782000-03-29 Toshiaki Takada <takada@zebra.org>
2279
2280 * ospf_nsm.c (nsm_oneway_received): Fix bug of MS flag unset.
2281
22822000-03-29 Michael Rozhavsky <mike@nbase.co.il>
2283
2284 * ospf_lsa.c (ospf_network_lsa):
2285 * ospf_nsm.c (ospf_nsm_event): Fix bug of Network-LSA originated
2286 in stub network.
2287
22882000-03-28 Toshiaki Takada <takada@zebra.org>
2289
2290 * ospf_nsm.c (nsm_bad_ls_req), (nsm_seq_number_mismatch),
2291 (nsm_oneway_received): Fix bug of NSM state flapping between
2292 ExStart and Exchange.
2293
22942000-03-28 Toshiaki Takada <takada@zebra.org>
2295
2296 * ospf_packet.h (strcut ospf_header): Fix the size of ospf_header,
2297 change u_int8_t to u_char.
2298
22992000-03-27 Toshiaki Takada <takada@zebra.org>
2300
2301 * ospf_lsa.c (ospf_lsa_checksum): Take care of BIGENDIAN architecture.
2302
23032000-03-27 Toshiaki Takada <takada@zebra.org>
2304
2305 * ospfd.c (ospf_interface_run): Make sure Address family matches.
2306
23072000-03-26 Love <lha@s3.kth.se>
2308
2309 * ospf_packet.c (ospf_write): Chack result of sendto().
2310
23112000-03-26 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2312
2313 * ospf_nsm.c (nsm_oneway_received): Fix bug of 1-WayReceived in NSM.
2314
23152000-03-23 Libor Pechacek <farco@clnet.cz>
2316
2317 * ospf_lsa.c (ospf_network_lsa)
2318 * ospf_lsdb.c (new_lsdb_insert): Fix bug of accessing to
2319 unallocated memory.
2320
23212000-03-23 Toshiaki Takada <takada@zebra.org>
2322
2323 * ospfd.c (ospf_config_write): Fix bug of duplicate line for
2324 `area A.B.C.D authentication'.
2325
23262000-03-22 Toshiaki Takada <takada@zebra.org>
2327
2328 * ospf_debug.c (debug_ospf_lsa), (no_debug_ospf_lsa): Defun added.
2329 Suppress all zlog related to LSAs with this config option.
2330
23312000-03-21 Kunihiro Ishiguro <kunihiro@zebra.org>
2332
2333 * ospf_nsm.c (ospf_nsm_event): Add check for NSM_InactivityTimer.
2334
23352000-03-21 Toshiaki Takada <takada@zebra.org>
2336
2337 * ospf_packet.c (ospf_ls_upd_timer), (ospf_ls_req):
2338 Fix bug of memory leak about linklist.
2339
2340 * ospf_flood.c (ospf_flood_through_area): Likewise.
2341
23422000-03-18 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2343
2344 * ospf_flood.c (ospf_ls_retransmit_lookup): Add checksum comparison
2345 to identify LSA uniquely. This fix routes lost.
2346
23472000-03-18 Toshiaki Takada <takada@zebra.org>
2348
2349 * ospf_ase.c (ospf_find_asbr_route): Add sanity check with router
2350 routing table.
2351
23522000-03-17 Alex Zinin <zinin@amt.ru>
2353
2354 * ospf_spf.[ch]: Bug fix.
2355 The 2nd stage of Dijkstra could consider one vertex
2356 more than once if there is more than one link
2357 between the routers, thus adding extra CPU overhead
2358 and extra next-hops.
2359 Fixed.
2360
23612000-03-15 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2362
2363 * ospf_nsm.c (nsm_inactivity_timer): Changed to call nsm_kill_nbr().
2364
23652000-03-14 Toshiaki Takada <takada@zebra.org>
2366
2367 * ospf_route.c (ospf_route_copy_nexthops): Fix bug of memory leak of
2368 ospf_path. Actually ignore merging ospf_route with completely same
2369 paths.
2370
23712000-03-12 Toshiaki Takada <takada@zebra.org>
2372
2373 * ospf_lsa.c (show_as_external_lsa_detail): fix bug of
2374 external route tag byte order.
2375
23762000-03-11 Toshiaki Takada <takada@zebra.org>
2377
2378 * ospf_lsdb.c (ospf_lsdb_insert): New function added.
2379
23802000-03-09 Toshiaki Takada <takada@zebra.org>
2381
2382 * ospf_lsa.c (ospf_external_lsa_install),
2383 (ospf_lsa_lookup), (show_ip_ospf_database_all),
2384 (show_ip_ospf_database_self_originate): Use struct new_lsdb for
2385 LSDB of AS-external-LSAs instead of ospf_lsdb.
2386
2387 * ospf_lsa.c (ospf_lsa_unique_id): New function added.
2388 Use for assigning Unique Link State ID instead of
2389 ospf_get_free_id_for_prefix().
2390
23912000-03-09 Toshiaki Takada <takada@zebra.org>
2392
2393 * ospf_ase.c (ospf_ase_calculate_timer): Fix bug of segmentation
2394 fault reported by George Bonser <george@siteROCK.com>.
2395
23962000-03-07 Libor Pechacek <farco@clnet.cz>
2397
2398 * ospfd.c (ospf_interface_down): Fix bug of segmentation fault.
2399
24002000-03-06 Toshiaki Takada <takada@zebra.org>
2401
2402 * ospf_route.c (ospf_route_cmp): Change meaning of return values.
2403
24042000-03-02 Alex Zinin <zinin@amt.ru>
2405 * ospfd.h, ospf_ia.h
2406 New Shortcut ABR code. Now area's flag can be configured
2407 with Default, Enable, and Disable values.
2408 More info will be in the new ver of I-D soon (see IETF web).
2409
24102000-02-25 Toshiaki Takada <takada@zebra.org>
2411
2412 * ospf_lsa.c (ospf_lsa_header_set), (ospf_external_lsa_body_set),
2413 (osfp_external_lsa_originate), (ospf_external_lsa_queue),
2414 (ospf_external_lsa_originate_from_queue): New function added.
2415 (ospf_external_lsa): Function removed.
2416
2417 * ospf_zebra.c (ospf_zebra_read_ipv4): Originate AS-external-LSA
2418 when listen a route from Zebra, instead creating external route.
2419
2420 * ospf_asbr.c (ospf_asbr_route_add_flood_lsa),
2421 (ospf_asbr_route_add_queue_lsa),
2422 (ospf_asbr_route_install_lsa), (ospf_asbr_route_add):
2423 Functions removed.
2424
2425 * ospf_ase.c (process_ase_lsa): Function will not be used.
2426 (ospf_ase_calculate), (ospf_ase_calculate_route_add),
2427 (ospf_ase_calculate_new_route), (ospf_ase_caluculate_asbr_route):
2428 process_ase_lsa () is separated to these functions.
2429
2430 OSPF AS-external-LSA origination is whole re-organized.
2431
24322000-02-18 Toshiaki Takada <takada@zebra.org>
2433
2434 * ospf_packet.c (ospf_ls_upd): Fix bug of OSPF LSA memory leak.
2435
2436 * ospf_asbr.c (ospf_asbr_route_add_flood_lsa),
2437 (ospf_asbr_route_add_queue_lsa): Fix bug of OSPF external route
2438 memory leak.
2439
24402000-02-12 Kunihiro Ishiguro <kunihiro@zebra.org>
2441
2442 * ospf_asbr.c (ospf_asbr_route_install_lsa): Re-calculate LSA
2443 checksum after change Advertised Router field.
2444
24452000-02-09 Toshiaki Takada <takada@zebra.org>
2446
2447 * ospf_asbr.c (ospf_external_route_lookup): Add new function.
2448
24492000-02-08 Toshiaki Takada <takada@zebra.org>
2450
2451 * ospfd.c (ospf_router_id_get), (ospf_router_id_update),
2452 (ospf_router_id_update_timer): Router ID decision algorithm is changed.
2453 Router ID is chosen from all of eligible interface addresses even if
2454 it is not enable to OSPF.
2455
24562000-02-08 Toshiaki Takada <takada@zebra.org>
2457
2458 * ospf_asbr.c (ospf_asbr_route_add): Function divided to
2459 ospf_asbr_route_add_flood_lsa, ospf_asbr_route_add_queue_lsa and
2460 ospf_asbr_route_install_lsa. If Router-ID is not set, then LSA is
2461 waited to install to LSDB.
2462 `0.0.0.0 adv_router' AS-external-LSA origination bug was fixed.
2463
24642000-02-01 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2465
2466 * ospf_flood.c (ospf_ls_retransmit_lookup): Compare LS seqnum
2467 in the ACK before deleting.
2468
2469 * ospf_packet.c (ospf_hello): Reset the flags after a shutdown
2470 and no shutdown of the interface.
2471
24722000-01-31 Toshiaki Takada <takada@zebra.org>
2473
2474 * ospf_packet.c (ospf_ls_req): Send multiple Link State Update
2475 packets respond to a Link State Request packet.
2476
2477 * ospfd.c (show_ip_ospf_neighbor_detail_sub): Show thread state.
2478
2479 * ospf_interface.c (ospf_vl_new): Crash when backbone area
2480 is not configured and set virtual-link to no-backbone area,
2481 bug fixed.
2482
24832000-01-30 Kunihiro Ishiguro <kunihiro@zebra.org>
2484
2485 * ospf_neighbor.h (struct ospf_neighbor): Add pointer to last send
2486 LS Request LSA.
2487
2488 * ospf_packet.c (ospf_ls_upd): Comment out LS request list
2489 treatment. That should be done in OSPF flooding procedure.
2490
2491 * ospf_flood.c (ospf_flood_through_area): Enclose
2492 ospf_check_nbr_loding inside if-else close.
2493
24942000-01-31 Toshiaki Takada <takada@zebra.org>
2495
2496 * ospf_packet.c (ospf_make_ls_upd): Fix bug of #LSAs counting.
2497
24982000-01-29 Toshiaki Takada <takada@zebra.org>
2499
2500 * ospf_packet.c (ospf_make_md5_digest): Fix bug of md5 authentication.
2501
25022000-01-28 Toshiaki Takada <takada@zebra.org>
2503
2504 * ospfd.c (show_ip_ospf): Show Number of ASE-LSAs.
2505
25062000-01-27 Kunihiro Ishiguro <kunihiro@zebra.org>
2507
2508 * ospf_packet.c (ospf_make_db_desc): Don't use rm_list for
2509 removing LSA from nbr->db_summary.
2510
25112000-01-27 Sira Panduranga Rao <pandu@euler.ece.iisc.ernet.in>
2512
2513 * ospf_packet.c (ospf_ls_upd_send): Set AllSPFRouters to
2514 destination when the link is point-to-point.
2515 (ospf_ls_ack_send_delayed): Likewise.
2516
25172000-01-27 Kunihiro Ishiguro <kunihiro@zebra.org>
2518
2519 * ospf_flood.c (ospf_ls_request_delete_all): Fix bug of next
2520 pointer lookup after the node is freed.
2521
25222000-01-26 Kunihiro Ishiguro <kunihiro@zebra.org>
2523
2524 * ospf_asbr.c (ospf_asbr_route_add): Instead of scanning all AS
2525 external route, use ospf_top->external_self.
2526
25272000-01-27 Toshiaki Takada <takada@zebra.org>
2528
2529 * ospf_lsa.c (ospf_forward_address_get): New function added.
2530
2531 * ospf_asbr.c (ospf_asbr_check_lsas): Originate AS-external-LSA
2532 only when it should be replaced.
2533
25342000-01-25 Kunihiro Ishiguro <kunihiro@zebra.org>
2535
2536 * ospf_flood.c (ospf_ls_retransmit_clear): Delete list node.
2537
2538 * ospf_lsa.c (ospf_lsa_free): Reduce logging message using
2539 ospf_zlog value.
2540
2541 * ospf_ism.c (ism_change_status): Fix bug of DR -> non DR status
2542 change. Self originated LSA is freed but not deleted from lsdb.
2543
25442000-01-24 Kunihiro Ishiguro <kunihiro@zebra.org>
2545
2546 * ospf_ism.c (ism_interface_down): Don't use router_id for
2547 detecting self neighbor structure. Instead of that compare
2548 pointer itself.
2549
2550 * ospf_neighbor.c (ospf_nbr_free): Cancel all timer when neighbor
2551 is deleted.
2552 (ospf_nbr_free): Free last send packet.
2553
2554 * ospf_neighbor.h (struct ospf_neighbor): Remove host strucutre.
2555 Instead of that src is introduced.
2556
2557 * ospf_nsm.h: Enclose macro defenition with do {} while (0).
2558
25592000-01-17 Kunihiro Ishiguro <kunihiro@zebra.org>
2560
2561 * ospfd.c: Change part of passive interface implementation. For
2562 passive interface just disabling sending/receiving Hello on the
2563 interface.
2564
25652000-01-16 Kai Bankett <kai.bankett@vew-telnet.net>
2566
2567 * ospf_interface.h (OSPF_IF_PASSIVE): Add passive flag.
2568 * ospf_interface.c (ospf_if_lookup_by_name): Add new function.
2569 * ospf_lsa.c (ospf_router_lsa): Skip passive interface.
2570 * ospfd.c (passive_interface): New command passive-interface is
2571 added.
2572 (ospf_config_write): Print passive interface.
2573
25742000-01-15 Toshiaki Takada <takada@zebra.org>
2575
2576 * ospf_interface.h (crypt_key): New struct added to store
2577 multiple cryptographic autheitication keys.
2578 (ospf_interface): struct changed.
2579
2580 * ospf_interface.c: ospf_crypt_key_new, ospf_crypt_key_add,
2581 ospf_crypt_key_lookup, ospf_crypt_key_delete: new functions added.
2582
2583 * ospf_packet.c (ip_ospf_message_digest_key): Changed to store
2584 multiple cryptographic authentication keys.
2585
25862000-01-14 Toshiaki Takada <takada@zebra.org>
2587
2588 * ospf_interface.c: DEFUN (if_ospf_*) commands changed name to
2589 ip_ospf_* ().
2590 Old notation `ospf *' still remains backward compatibility.
2591
25921999-12-29 Alex Zinin <zinin@amt.ru>
2593 * ospf_lsa.c: ospf_lsa_more_recent() bug fix
2594 * ospf_nsm.c, ospf_packet.c: remove nbr data struct when
2595 int goes down, also check DD flags correctly (bug fix)
2596
25971999-12-28 Alex Zinin <zinin@amt.ru>
2598 * "redistribute <source> metric-type (1|2) metric <XXX>" added
2599
26001999-12-23 Alex Zinin <zinin@amt.ru>
2601 * added RFC1583Compatibility flag
2602 * added dynamic interface up/down functionality
2603
26041999-11-19 Toshiaki Takada <takada@zebra.org>
2605
2606 * ospf_neighbor.h (struct ospf_neighbor): Add member state_change
2607 for NSM state change statistics.
2608
26091999-11-19 Toshiaki Takada <takada@zebra.org>
2610
2611 * ospfd.c (show_ip_ospf_neighbor_detail),
2612 (show_ip_ospf_neighbor_int_detail): DEFUN Added.
2613
26141999-11-14 Kunihiro Ishiguro <kunihiro@zebra.org>
2615
2616 * ospf_asbr.c (ospf_asbr_check_lsas): Add check of
2617 lsa->refresh_list.
2618
26191999-11-11 Toshiaki Takada <takada@zebra.org>
2620
2621 * ospf_ia.[ch] (OSPF_EXAMINE_SUMMARIES_ALL): Macro added.
2622 This macro is expanded to ospf_examine_summaries ()
2623 for SUMMARY_LSA and SUMMARY_LSA_ASBR.
2624 (OSPF_EXAMINE_TRANSIT_SUMMARIES_ALL): Macro added.
2625 This macro is expanded to ospf_examine_transit_summaries ()
2626 for SUMMARY_LSA and SUMMARY_LSA_ASBR.
2627
26281999-11-11 Toshiaki Takada <takada@zebra.org>
2629
2630 * ospf_lsa.[ch] (ospf_find_self_summary_lsa_by_prefix): Changed to
2631 macro OSPF_SUMMARY_LSA_SELF_FIND_BY_PREFIX.
2632 (ospf_find_self_summary_asbr_lsa_by_prefix): Changed to
2633 macro OSPF_SUMMARY_ASBR_LSA_SELF_FIND_BY_PREFIX.
2634 (ospf_find_self_external_lsa_by_prefix): Changed to
2635 macro OSPF_EXTERNAL_LSA_SELF_FIND_BY_PREFIX.
2636
26371999-11-11 Toshiaki Takada <takada@zebra.org>
2638
2639 * ospfd.c (ospf_abr_type): ospf_abr_type_cisco, ospf_abr_type_ibm,
2640 ospf_abr_type_shortcut and ospf_abr_type_standard DEFUNs are
2641 combined.
2642 * ospfd.c (no_ospf_abr_type): no_ospf_abr_type_cisco,
2643 no_ospf_abr_type_ibm and no_ospf_abr_type_shortcut DEFUNS are
2644 combined.
2645
26461999-11-10 Toshiaki Takada <takada@zebra.org>
2647
2648 * ospf_route.c (ospf_lookup_int_by_prefix): Move function to
2649 ospf_interface.c and change name to ospf_if_lookup_by_prefix ().
2650
26511999-11-01 Alex Zinin <zinin@amt.ru>
2652 * ospf_packet.c
2653 some correction to LSU processing
2654
2655 * ospf_lsa.c ospfd.h
2656 randomize initial LSA refreshment interval
2657 and limit the size of LSA-group to 10
2658 to let randomization work more effectively.
2659
26601999-10-31 Alex Zinin <zinin@amt.ru>
2661 * ospf_interface.c
2662 cancel t_network_lsa_self
2663 when freeing int structure
2664
2665 * ospf_abr.c ospf_asbr.c ospf_flood.c ospf_lsa.c
2666 ospf_lsa.h ospf_lsdb.h ospfd.c ospfd.h
2667
2668 Summary and ASE LSA refreshment functions
2669 added---LSA refreshment is paced to 70 LSAs
2670 per sec to avoid link overflow. Refreshment events
2671 are further randomized within a 10 sec interval
2672 to avoid syncing.
2673
2674 Also the sigfault of memcmp() in ospf_lsa_is_different()
2675 is fixed.
2676
26771999-10-30 Alex Zinin <zinin@amt.ru>
2678 * ospf_nsm.c
2679 Fix the bug where MAX_AGE LSAs
2680 are included into the DB summary.
2681
2682 * ospf_interface.c
2683 allocate 2*MTU input buffer instead of just MTU
2684 for the cases when the other router mistakenly
2685 sends larger packets thus causing fragmentation, etc.
2686
2687 * ospf_nsm.c
2688 in nsm_reset_nbr() lists should be freed
2689 not when they are empty.
2690
26911999-10-29 Kunihiro Ishiguro <kunihiro@zebra.org>
2692
2693 * ospf_zebra.c (ospf_acl_hook): Move OSPF_IS_ASBR and OSPF_IS_ABR
2694 check inside of if (ospf_top).
2695
26961999-10-29 Alex Zinin <zinin@amt.ru>
2697 * ospf_lsa.c ospf_lsdb.c :
2698 add assertion in lsa and lsa->data alloc functions,
2699 as well as in lsdb_add for new->data
2700
2701 * ospf_lsdb.c: free hash table correctly
2702
27031999-10-28 John Capo <jc@irbs.com>
2704
2705 * ospf_packet.h (OSPF_PACKET_MAX): Correct MAX packet length
2706 calculation
2707
27081999-10-27 Kunihiro Ishiguro <kunihiro@zebra.org>
2709
2710 * OSPF-TRAP-MIB.txt: New file added. Edited version of RFC1850.
2711
2712 * OSPF-MIB.txt: New file added. Edited version of RFC1850.
2713
27141999-10-27 Alex Zinin <zinin@amt.ru>
2715 * ospfd, ospf_zebra, ospf_abr
2716 "area import-list" command is added.
2717 This command allows to filter the inter-area routes
2718 injected into an area. Access list hook function
2719 extended to invalidate area exp/imp lists.
2720
27211999-10-25 Yoshinobu Inoue <shin@nd.net.fujitsu.co.jp>
2722
2723 * ospfd.c (ospf_interface_run): Enable to detect P2P network
2724 on an OSPF interface.
2725
27261999-10-19 Jordan Mendelson <jordy@wserv.com>
2727
2728 * ospf_lsdb.c (ospf_lsdb_add): Fix bug of crash
2729 in ospf_ls_retransmit_lookup ().
2730
27311999-10-19 Vladimir B. Grebenschikov <vova@express.ru>
2732
2733 * ospf_route.c: Workaround about installation of OSPF routes into
2734 the zebra daemon. Add checking of existance routes. Free
2735 ospf_top->old_table if it exists.
2736
27371999-10-15 Jordan Mendelson <jordy@wserv.com>
2738
2739 * Add support for MD5 authentication.
2740
27411999-10-12 Alex Zinin <zinin@amt.ru>
2742 * ospfd.c, ospfd.h, ospf_abr.c:
2743 a new command "area export-list" was added, it allows
2744 the admin. to control which intra-area routes are
2745 announced to other areas by the ABR
2746
27471999-10-12 Alex Zinin <zinin@amt.ru>
2748 * ospf_asbr.c (ospf_asbr_check_lsas): Fix bug of coredump
2749 when "no redistribute" is used after a distribute list
2750 denying some networks was used
2751
27521999-10-05 Toshiaki Takada <takada@zebra.org>
2753
2754 * ospf_route.c (ospf_path_dup): New function added.
2755
27561999-10-05 Toshiaki Takada <takada@zebra.org>
2757
2758 * ospf_interface.[ch]: Some of VL related funciton name changed.
2759
27601999-09-27 Alex Zinin <zinin@amt.ru>
2761
2762 * ospf_zebra.c: Distribute-list functionality added
2763
27641999-09-27 Toshiaki Takada <takada@zebra.org>
2765
2766 * ospfd.c (show_ip_ospf): Fix bug of segmentation fault when no ospf
2767 instance exists.
2768
27691999-09-25 Kunihiro Ishiguro <kunihiro@zebra.org>
2770
2771 * ospfd.c (ospf_interface_down): Fix bug of misusing nextnode()
2772 instead of node->next. Reported by Hiroki Ishibashi
2773 <ishibasi@dcd.abk.nec.co.jp>.
2774
2775 * ospf_route.c (show_ip_ospf_route): Add check for ospf is enabled
2776 or not.
2777
27781999-09-23 Alex Zinin <zinin@amt.ru>
2779
2780 * stub area support added
2781
27821999-09-23 Alex Zinin <zinin@amt.ru>
2783
2784 * fwd_addr in ASE-LSAs is now set correctly
2785 * ASE routing changed to check the fwd_addr
2786 and skip the route if the addr points to one
2787 of our interfaces to avoid loops.
2788
27891999-09-22 Alex Zinin <zinin@amt.ru>
2790
2791 * ospf_interface:
2792 ospf_vls_in_area() added, it returns
2793 the number of VLs configured through the area
2794
2795 * ospf_interface.c ospf_lsa.c ospf_lsdb.c ospfd.c
2796 honor correct mem alloc
2797
27981999-09-22 Alex Zinin <zinin@amt.ru>
2799
2800 * memory.[ch]:
2801 Some OSPF mem types added,
2802 plus more info in "show mem"
2803
28041999-09-21 Alex Zinin <zinin@amt.ru>
2805
2806 * ospfd.c:
2807 "area range substitute" added.
2808 It can be used on NAT-enabled (IP-masquarade)
2809 routers to announce private networks
2810 from an area as public ones into the outside
2811 world (not in the RFC, btw :)
2812
28131999-09-21 Alex Zinin <zinin@amt.ru>
2814
2815 * ospfd.c:
2816 "area range suppress" added.
2817 This command allows to instruct the router
2818 to be silent about specific ranges, i.e.,
2819 it is a method of route filtering on area
2820 borders
2821
28221999-09-21 Alex Zinin <zinin@amt.ru>
2823
2824 * ospfd.c VLs removed when "no network area" executed
2825
28261999-09-20 Alex Zinin <zinin@amt.ru>
2827
2828 * ospf_ase.c bug fix for not-zero fwd_addr
2829 and directly connected routes.
2830
28311999-09-20 Yon Uriarte <yon@plannet.de>
2832
2833 * ospf_packet.c (ospf_make_ls_req): Introduce delta value for
2834 checking the length of OSPF packet exceeds MTU or not.
2835
2836 * ospf_lsa.c (ospf_lsa_different): Apply ntohs for checking
2837 l1->data->length.
2838
28391999-09-18 Alex Zinin <zinin@amt.ru>
2840
2841 * ospf_lsa.c bug fix for ospf_network_lsa() to
2842 include itself into the RID list
2843
28441999-09-10 Alex Zinin <zinin@amt.ru>
2845
2846 * Alternative ABR behaviors IBM/Cisco/Shortcut
2847 implemented
2848
28491999-09-10 Alex Zinin <zinin@amt.ru>
2850
2851 * router and network-LSA origination
2852 changed to honor MinLSInterval
2853
28541999-09-08 Alex Zinin <zinin@amt.ru>
2855
2856 * modified ABR behavior to honor VLs and transit
2857 areas
2858
28591999-09-07 Alex Zinin <zinin@amt.ru>
2860
2861 * completed VL functionality
2862
28631999-09-06 Kunihiro Ishiguro <kunihiro@zebra.org>
2864
2865 * ospf_asbr.c: New file.
2866 ospf_asbr.h: New file.
2867
2868 * ospf_zebra.c (ospf_redistribute_connected): Add redistribute
2869 related stuff.
2870
28711999-09-05 Kunihiro Ishiguro <kunihiro@zebra.org>
2872
2873 * ospfd.h (OSPF_FLAG_VIRTUAL_LINK): Change OSPF_FLAG_VEND to
2874 OSPF_FLAG_VIRTUAL_LINK for comprehensiveness.
2875
28761999-09-03 Kunihiro Ishiguro <kunihiro@zebra.org>
2877
2878 * ospf_spf.c (ospf_spf_register): Change name from
2879 ospf_spf_route_add() to ospf_spf_register().
2880 Include "ospfd/ospf_abr.h" for ospf_abr_task() prototype.
2881
28821999-09-02 Kunihiro Ishiguro <kunihiro@zebra.org>
2883
2884 * ospf_lsa.c (ospf_external_lsa_install): Change to update
2885 lsa->data rather than install new one, when same id lsa is already
2886 installed.
2887
28881999-09-01 Kunihiro Ishiguro <kunihiro@zebra.org>
2889
2890 * ospf_lsa.c (ospf_router_lsa_install): Return lsa value.
2891 (ospf_network_lsa_install): Likewise.
2892 (ospf_summary_lsa_install): Likewise.
2893 (ospf_summary_asbr_lsa_install): Likewise.
2894 (ospf_external_lsa_install): Likewise.
2895
2896 * ospf_spf.c (ospf_spf_calculate): Comment out debug function
2897 ospf_rtrs_print().
2898
28991999-08-31 Kunihiro Ishiguro <kunihiro@zebra.org>
2900
2901 * ospf_spf.c (ospf_rtrs_free): Add ospf_spf_calculate() for
2902 freeing rtrs.
2903
29041999-08-31 Toshiaki Takada <takada@zebra.org>
2905
2906 * ospf_lsa.c (show_ip_ospf_database_summary),
2907 (show_ip_ospf_database_summary_asbr),
2908 (show_ip_ospf_database_external): New function added.
2909 `show ip ospf database summary',
2910 `show ip ospf database asbr-summary'
2911 `show ip ospf database external' command can be used.
2912
2913 * ospf_lsa.c (ospf_lsa_count_table): New function added.
2914 (show_ip_ospf_database_all): show nothing if a type of LSA
2915 does not exist.
2916
29171999-08-31 Kunihiro Ishiguro <kunihiro@zebra.org>
2918
2919 * ospf_lsa.c (ospf_maxage_lsa_remover): Preserve next pointer when
2920 the node is deleted.
2921
29221999-08-31 Toshiaki Takada <takada@zebra.org>
2923
2924 * ospf_flood.c (ospf_ls_retransmit_lookup): change to return
2925 struct ospf_lsa *.
2926 (ospf_ls_request_new), (ospf_ls_request_free),
2927 (ospf_ls_request_add), (ospf_ls_request_delete),
2928 (ospf_ls_request_delete_all), (ospf_ls_request_lookup):
2929 New function added.
2930
2931 * ospf_packet.c (ospf_ls_upd_send_lsa): New function added.
2932
2933 * ospf_lsa.h (LS_AGE): Slightly change macro definition.
2934
2935 * ospf_lsa.c (ospf_lsa_more_recent), (ospf_lsa_diffrent):
2936 Use LS_AGE macro.
2937
29381999-08-30 Alex Zinin <zinin@amt.ru>
2939
2940 * ospfd.c
2941 fix a bug with area range config write
2942 added "show ip ospf" command, it will be enhanced later on
2943
29441999-08-30 Alex Zinin <zinin@amt.ru>
2945
2946 * ospf_lsa.c
2947 updated ospf_router_lsa() to honor flags (B-bit)
2948
29491999-08-30 Alex Zinin <zinin@amt.ru>
2950
2951 * ospf_abr.c
2952 wrote major functions implementing ABR activity
2953
29541999-08-30 Alex Zinin <zinin@amt.ru>
2955
2956 * ospf_ia.c ospf_route.c ospf_route.h
2957 fixed the bug with ospf_route.origin field.
2958 Now it holds pointer to lsa_header
2959
29601999-08-30 Alex Zinin <zinin@amt.ru>
2961
2962 * ospf_flood.c ospf_flood.h:
2963 transformed ospf_flood_if_select into ospf_flood_through_area()
2964 added new ospf_flood_if_select() and ospf_flood_through_as()
2965
29661999-08-30 Toshiaki Takada <takada@zebra.org>
2967
2968 * ospf_flood.[ch]: New file added.
2969
2970 * ospf_packet.c (ospf_lsa_flooding),
2971 (ospf_lsa_flooding_select_if): functions move to ospf_flood.c
2972
2973 * ospf_neighbor.c (ospf_put_lsa_on_retransm_list),
2974 (ospf_remove_lsa_from_retransm_list),
2975 (ospf_nbr_remove_all_lsas_from_retransm_list),
2976 (ospf_lsa_remove_from_ls_retransmit):
2977 (ospf_lsa_retransmit): functions move to
2978 ospf_flood.c, and change function's name:
2979
2980 ospf_put_lsa_on_retransm_list ()
2981 -> ospf_ls_retransmit_add ()
2982 ospf_remove_lsa_from_retransm_list ()
2983 -> ospf_ls_retransmit_delete ()
2984 ospf_nbr_remove_all_lsas_from_retransm_list ()
2985 -> ospf_ls_retransmit_clear ()
2986 ospf_lsa_remove_from_ls_retransmit ()
2987 -> ospf_ls_retransmit_delete_nbr_all ()
2988 ospf_lsa_retransmit ()
2989 -> ospf_ls_retransmit_add_nbr_all ()
2990
2991 * ospf_lsa.c (ospf_lsa_lookup_from_list): function move to
2992 ospf_flood.c, and change name to ospf_ls_retransmit_lookup ().
2993
29941999-08-30 Kunihiro Ishiguro <kunihiro@zebra.org>
2995
2996 * ospf_neighbor.c (ospf_nbr_lookup_by_addr): Use
2997 route_node_lookup() instead of route_node_get().
2998
2999 * ospf_packet.c (ospf_ls_upd): Temporary comment out (6) check.
3000
30011999-08-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3002
3003 * ospf_route.c (ospf_lookup_int_by_prefix): Add check of
3004 oi->address.
3005
30061999-08-29 Alex Zinin <zinin@amt.ru>
3007 * ospf_lsa.c
3008 MaxAge LSA deletion functions added.
3009
30101999-08-29 Alex Zinin <zinin@amt.ru>
3011 * ospf_neighbor.c
3012 ospf_nbr_lookup_by_addr(): added route_unlock_node()
3013 when function returns NULL if (rn->info == NULL)
3014
30151999-08-29 Alex Zinin <zinin@amt.ru>
3016 * ospfd.c
3017 added a hack for area range deletion
3018
30191999-08-29 Alex Zinin <zinin@amt.ru>
3020 * ospf_lsa.h
3021 included lsdb field into struct ospf_lsa, to find
3022 LSDB easier when removing MaxAge LSAs.
3023
30241999-08-29 Alex Zinin <zinin@amt.ru>
3025 * ospf_lsa.c ospf_neighbor.c ospf_nsm.c
3026 ospf_packet.c changed to honor new retransmit list
3027 management functions
3028
30291999-08-29 Alex Zinin <zinin@amt.ru>
3030 * ospf_neighbor.c , .h added new retransmit list functions.
3031
30321999-08-29 Alex Zinin <zinin@amt.ru>
3033 * Makefile.in
3034 added ospf_ase, ospf_abr, ospf_ia
3035
30361999-08-29 Alex Zinin <zinin@amt.ru>
3037 * ospf_spf.c:
3038 - changed ospf_next_hop_calculation() to include interface
3039 and nexthop addr for directly connected routers---more informative
3040 and solves problem with route installation into the kernel
3041 - changed ospf_nexthop_out_if_addr() to support routers, not only
3042 transit networks
3043 - added ospf_process_stubs();
3044
30451999-08-29 Alex Zinin <zinin@amt.ru>
3046 * ospf_lsa.c:
3047 - changed ospf_router_lsa() to provide correct links
3048 for p-t-p interfaces;
3049 - changed ospf_summary_lsa_install() to support table
3050 of self-originated summary-LSAs;
3051 - added ospf_summary_asbr_lsa_install() and ospf_external_lsa_install()
3052 - changed ospf_lsa_install() accordingly
3053 - changed show_ip_ospf_database_router_links() to support p-t-p
3054
30551999-08-29 Kunihiro Ishiguro <kunihiro@zebra.org>
3056
3057 * ospf_packet.c (ospf_make_db_desc): Only master can clear more
3058 flag.
3059
30601999-08-29 Kunihiro Ishiguro <kunihiro@zebra.org>
3061
3062 * ospf_packet.c (ospf_read): Add check of IP src address.
3063
30641999-08-28 Alex Zinin <zinin@amt.ru>
3065 * ospf_neighbor.h
3066 added ospf_nbr_lookup_by_routerid()
3067
30681999-08-28 Alex Zinin <zinin@amt.ru>
3069 * ospfd.h
3070 added ABR/ASBR flag definitions and fields;
3071 added iflist field to area structure;
3072 summary_lsa_self and summary_lsa_asbr_self are changed
3073 to be route tables;
3074 added ranges field---configured area ranges;
3075 A separate Routers RT added;
3076 area range config commands and config write added
3077
3078
30791999-08-28 Alex Zinin <zinin@amt.ru>
3080 * ospf_route.c :
3081 ospf_route_free()--added code to free the list of paths;
3082 The following functions added:
3083 ospf_intra_add_router();
3084 ospf_intra_add_transit();
3085 ospf_intra_add_stub();
3086 the last function uses new ospf_int_lookup_by_prefix();
3087 show_ip_ospf_route_cmd()--changed to support new RT structure;
3088 added ospf_cmp_routes()--general route comparision function;
3089 added ospf_route_copy_nexthops() and ospf_route_copy_nexthops_from_vertex()
3090 they are used in ASE and IA routing;
3091 added ospf_subst_route() and ospf_add_route();
3092
30931999-08-28 Alex Zinin <zinin@amt.ru>
3094 * ospf_route.h :
3095 changed struct ospf_path to include output interface,
3096 changed struct ospf_route to support IA and ASE routing.
3097 added prototypes of the function used in IA and ASE modules.
3098
30991999-08-28 Alex Zinin <zinin@amt.ru>
3100 * ospf_lsa.h ospf_lsa.c :
3101 added ospf_my_lsa(), an interface independent version of
3102 ospf_lsa_is_self_originated(), it will be used in ASE and IA-routing.
3103
31041999-08-27 Kunihiro Ishiguro <kunihiro@zebra.org>
3105
3106 * ospf_interface.c (interface_config_write): Add check for
3107 oi->nbr_self.
3108
31091999-08-25 Toshiaki Takada <takada@zebra.org>
3110
3111 * ospf_lsa.c (ospf_lsa_dup): New function added.
3112
3113 * ospf_packet.c (ospf_write), (ospf_read): Print send/recv
3114 interface in debug message.
3115
31161999-08-25 Toshiaki Takada <takada@zebra.org>
3117
3118 * ospf_packet.c (ospf_ls_ack_send): The name is changed from
3119 `ospf_ls_ack_send'.
3120 (ospf_ls_ack_send_delayed) (ospf_ls_ack_timer): New function added.
3121 Delayed Link State Acknowledgment is scheduled by timer.
3122
31231999-08-25 Alex Zinin <zinin@amt.ru>
3124
3125 * ospf_lsa.c (ospf_router_lsa): Incorrectly included link to
3126 a stub network instead of link to a transit network into
3127 originated router-LSA, bug fixed.
3128
31291999-08-24 Toshiaki Takada <takada@zebra.org>
3130
3131 * ospfd.c (ospf_update_router_id): New function added.
3132
3133 * ospf_network.c (ospf_write): Create new socket per transmission.
3134 And select outgoing interface whether dst is unicast or multicast.
3135
3136 * ospf_packet.c: LSA flooding will work.
3137
31381999-08-24 VOP <vop@unity.net>
3139
3140 * ospf_route.c: Include "sockunion.h"
3141
31421999-08-24 Kunihiro Ishiguro <kunihiro@zebra.org>
3143
3144 * ospf_network.c (ospf_serv_sock_init): Enclose
3145 IPTOS_PREC_INTERNETCONTROL setting with #ifdef for OS which does
3146 not have the definition.
3147
31481999-08-23 Toshiaki Takada <takada@zebra.org>
3149
3150 * ospf_packet.c: Fix bug of DD processing.
3151
31521999-08-18 Toshiaki Takada <takada@zebra.org>
3153
3154 * ospf_lsa.c (show_ip_ospf_database): Show actual `LS age'.
3155
31561999-08-17 Toshiaki Takada <takada@zebra.org>
3157
3158 * ospf_lsa.h (OSPF_MAX_LSA): The value of OSPF_MAX_LSA is
3159 corrected. The bug of `mes_lookup' is fixed.
3160 This had been reported by Poul-Henning Kamp <phk@freebsd.org>.
3161
3162 * ospf_lsa.c (ospf_router_lsa_install): The name is changed from
3163 `ospf_add_router_lsa'.
3164 (ospf_network_lsa_install): The name is changed from
3165 `ospf_add_network_lsa'.
3166
3167 * ospf_interface.h (ospf_interface): Add member `nbr_self'.
3168
3169 * ospf_interface.c (ospf_if_is_enable): New function added.
3170
31711999-08-16 Toshiaki Takada <takada@zebra.org>
3172
3173 * ospf_lsa.h (struct lsa_header): The name is changed from
3174 `struct ospf_lsa'.
3175 (struct ospf_lsa): New struct added to control each LSA's aging
3176 and timers.
3177
3178 * ospf_lsa.c (ospf_lsa_data_free): The name is change from
3179 `ospf_lsa_free'.
3180 (ospf_lsa_data_new), (ospf_lsa_new), (ospf_lsa_free),
3181 (ospf_lsa_different), (ospf_lsa_install): New function added.
3182
3183 * ospf_packet.c (ospf_ls_upd_list_lsa): New function added.
3184
31851999-08-12 Toshiaki Takada <takada@zebra.org>
3186
3187 * ospf_nsm.c (nsm_reset_nbr): New function added.
3188 KillNbr and LLDown neighbor event call this function.
3189
31901999-08-10 Toshiaki Takada <takada@zebra.org>
3191
3192 * ospf_packet.c (ospf_ls_retransmit)
3193 (ospf_ls_upd_timer): New function added.
3194 Set retransmission timer for Link State Update.
3195
31961999-07-29 Toshiaki Takada <takada@zebra.org>
3197
3198 * ospf_ism.c (ospf_dr_election): Fix bug of DR election.
3199
32001999-07-28 Toshiaki Takada <takada@zebra.org>
3201
3202 * ospf_network.c (ospf_serv_sock_init): Set IP precedence field
3203 with IPTOS_PREC_INTERNET_CONTROL.
3204
3205 * ospf_nsm.c (nsm_change_status): Schedule NeighborChange event
3206 if NSM status change.
3207
3208 * ospf_packet.c (ospf_make_hello): Never include a neighbor in
3209 Hello packet, when the neighbor goes down.
3210
32111999-07-26 Kunihiro Ishiguro <kunihiro@zebra.org>
3212
3213 * Makefile.am (noinst_HEADERS): Add ospf_route.h.
3214
3215 * ospf_route.c (show_ip_ospf_route): Add `show ip ospf route'
3216 command.
3217
32181999-07-25 Toshiaki Takada <takada@zebra.org>
3219
3220 * ospf_lsa.c (ospf_router_lsa): Fix bug of LS sequence number
3221 assignement.
3222
32231999-07-25 Kunihiro Ishiguro <kunihiro@zebra.org>
3224
3225 * ospf_route.c (ospf_route_table_free): New function added.
3226
3227 * ospf_spf.c (ospf_spf_next): Free vertex w when cw's and w's
3228 distance is same.
3229
3230 * ospfd.h (struct ospf): Add old_table.
3231
3232 * ospf_main.c (sighup): Call of log_rotate () removed.
3233
3234 * ospf_lsa.c (ospf_lsa_is_self_originated): Fix bug of checking
3235 area->lsa as self LSA. This should be area->lsa_self.
3236
32371999-07-24 Kunihiro Ishiguro <kunihiro@zebra.org>
3238
3239 * ospf_zebra.c (ospf_zebra_add): ospf_zebra_add
3240 (),ospf_zebra_delete () added.
3241
3242 * ospf_spf.c (ospf_spf_calculate): Call ospf_intra_route_add ().
3243
32441999-07-24 Toshiaki Takada <takada@zebra.org>
3245
3246 * ospf_lsa.c: Change LS sequence number treatment.
3247 (ospf_lsa_is_self_originated): New function added.
3248 (show_ip_ospf_database_self_originated): New DEFUN added.
3249
32501999-07-23 Kunihiro Ishiguro <kunihiro@zebra.org>
3251
3252 * ospf_interface.c (ospf_if_lookup_by_addr): Add loopback check.
3253
32541999-07-22 Toshiaki Takada <takada@zebra.org>
3255
3256 * ospf_spf.c (ospf_nexthop_new), (ospf_nexthop_free),
3257 (ospf_nexthop_dup): function added.
3258 (ospf_nexthop_calculation): function changed.
3259
3260 * ospf_interface.c (ospf_if_lookup_by_addr): function added.
3261
32621999-07-21 Toshiaki Takada <takada@zebra.org>
3263
3264 * ospf_spf.c (ospf_spf_closest_vertex): function removed.
3265
32661999-07-21 Kunihiro Ishiguro <kunihiro@zebra.org>
3267
3268 * ospf_spf.c (ospf_spf_next): Apply ntohs for fetching metric.
3269
32701999-07-21 Toshiaki Takada <takada@zebra.org>
3271
3272 * ospf_neighbor.c (ospf_nbr_lookup_by_router_id): fundtion removed.
3273
3274 * ospf_lsa.c (show_ip_ospf_database_router): describe each
3275 connected link.
3276
32771999-07-21 Kunihiro Ishiguro <kunihiro@zebra.org>
3278
3279 * ospf_spf.c (ospf_spf_next): V is router LSA or network LSA so
3280 change behavior according to LSA type.
3281 (ospf_lsa_has_link): Link check function is added.
3282
32831999-07-20 Kunihiro Ishiguro <kunihiro@zebra.org>
3284
3285 * ospf_spf.c (ospf_spf_calculate_schedule): Add new function for
3286 SPF calcultion schedule addtition.
3287 (ospf_spf_calculate_timer_add): Rough 30 sec interval SPF calc
3288 timer is added.
3289 (ospf_spf_next_router): Delete ospf_spf_next_network ().
3290
3291 * ospf_lsa.c (show_ip_ospf_database_all): Network-LSA display
3292 header typo correction. Display of router LSA's #link added.
3293
32941999-07-19 Toshiaki Takada <takada@zebra.org>
3295
3296 * ospf_packet.c (ospf_check_network_mask): Added new function for
3297 receiving Raw IP packet on an appropriate interface.
3298
32991999-07-16 Toshiaki Takada <takada@zebra.org>
3300
3301 * ospfd.c (ospf_router_id): new DEFUN added.
3302
33031999-07-15 Toshiaki Takada <takada@zebra.org>
3304
3305 * ospf_spf.c (ospf_spf_init), (ospf_spf_free),
3306 (ospf_spf_has_vertex), (ospf_vertex_lookup),
3307 (ospf_spf_next_router), (ospf_spf_next_network),
3308 (ospf_spf_closest_vertex), (ospf_spf_calculate):
3309 function added.
3310
33111999-07-13 Toshiaki Takada <takada@zebra.org>
3312
3313 * ospf_ism.c: fix bug of DR Election.
3314
3315 * ospf_nsm.c: fix bug of adjacency forming.
3316
33171999-07-05 Kunihiro Ishiguro <kunihiro@zebra.org>
3318
3319 * ospfd.c (ospf_init): Change to use install_default.
3320
33211999-07-01 Rick Payne <rickp@rossfell.co.uk>
3322
3323 * ospf_zebra.c (zebra_init): Install standard commands to
3324 ZEBRA_NODE.
3325
33261999-06-30 Toshiaki Takada <takada@zebra.org>
3327
3328 * ospf_dump.c: Whole debug command is improved.
3329 (ISM|NSM) (events|status|timers) debug option added.
3330 (show_debugging_ospf): new DEFUN added.
3331
33321999-06-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3333
3334 * ospf_lsa.c (ospf_lsa_lookup_from_list): Change !IPV4_ADDR_CMP to
3335 IPV4_ADDR_SAME.
3336
33371999-06-29 Toshiaki Takada <takada@zebra.org>
3338
3339 * ospf_dump.c (ospf_summary_lsa_dump): Add summary-LSA dump routine.
3340 (ospf_as_external_lsa_dump): Add AS-external-LSA dump routine.
3341
3342 * ospf_nsm.c (nsm_twoway_received): fix condtion of adjacnet.
3343
3344 * ospf_ism.c (ospf_dr_election): fix DR Election.
3345
3346 * ospf_dump.c (ospf_nbr_state_message): fix `show ip ospf neighbor'
3347 command's state.
3348
33491999-06-29 Kunihiro Ishiguro <kunihiro@zebra.org>
3350
3351 * ospf_dump.c (ospf_router_lsa_dump): Add router-LSA dump routine.
3352
33531999-06-28 Toshiaki Takada <takada@zebra.org>
3354
3355 * ospf_lsa.c (show_ip_ospf_database_network): fix bug of
3356 `show ip ospf database network' command output.
3357
3358 * ospf_nsm.c (nsm_inactivity_timer): Clear list of Link State
3359 Retransmission, Database Summary and Link State Request.
3360
3361 * ospf_packet.c (ospf_ls_req_timer): New function added.
3362 Set Link State Request retransmission timer.
3363
33641999-06-27 Kunihiro Ishiguro <kunihiro@zebra.org>
3365
3366 * ospf_main.c (main): Change default output from ZLOG_SYSLOG to
3367 ZLOG_STDOUT.
3368
3369 * ospfd.c (ospf_init): Register show_ip_ospf_interface_cmd and
3370 show_ip_ospf_neighbor_cmd to VIEW_NODE.
3371
3372 * ospf_lsa.c (ospf_lsa_init): Register show_ip_ospf_database_cmd
3373 and show_ip_ospf_database_type_cmd to VIEW_NODE.
3374
33751999-06-25 Toshiaki Takada <takada@zebra.org>
3376
3377 * ospf_packet.c: fix bug of DD making.
3378 fix bug of LS-Update reading.
3379
33801999-06-23 Toshiaki Takada <takada@zebra.org>
3381
3382 * ospf_packet.c: All type of packets are changed to use
3383 fifo queue structure.
3384 (ospf_fill_header) function added.
3385
33861999-06-22 Toshiaki Takada <takada@zebra.org>
3387
3388 * ospf_packet.c (ospf_packet_new): New function added to handle
3389 sending ospf packet by fifo queue structure.
3390 (ospf_packet_free), (ospf_fifo_new), (ospf_fifo_push),
3391 (ospf_fifo_pop), (ospf_fifo_head), (ospf_fifo_flush),
3392 (ospf_fifo_free): Likewise.
3393
33941999-06-21 Toshiaki Takada <takada@zebra.org>
3395
3396 * ospf_nsm.c (ospf_db_desc_timer): function added.
3397 (nsm_timer_set) function added.
3398 * ospf_dump.c (ospf_option_dump): function added.
3399 * ospf_packet.c (ospf_ls_req) (ospf_make_ls_req): function added.
3400
34011999-06-20 Toshiaki Takada <takada@zebra.org>
3402
3403 * ospf_lsa.c (ospf_lsa_more_recent): function added.
3404 * ospf_neighbor.h (struct ospf_neighbor): Change member ms_flag
3405 to dd_flags.
3406
34071999-06-19 Toshiaki Takada <takada@zebra.org>
3408
3409 * ospf_lsa.c: DEFUN (show_ip_ospf_database) Added.
3410 * ospf_interface.c (if_ospf_cost), (if_ospf_dead_interval),
3411 (if_ospf_hello_interval), (if_ospf_priority),
3412 (if_ospf_retransmit_interval), (if_ospf_transmit_delay)
3413 argument changed from NUMBER to <range>.
3414 DEFUN (if_ospf_network_broadcast),
3415 DEFUN (if_ospf_network_non_broadcast),
3416 DEFUN (if_ospf_network_point_to_multipoint),
3417 DEFUN (if_ospf_network_point_to_point) functions are combined to
3418 DEFUN (if_ospf_network).
3419
34201999-06-18 Toshiaki Takada <takada@zebra.org>
3421
3422 * ospf_lsa.c: ospf_add_router_lsa (), ospf_add_network_lsa (),
3423 ospf_lsa_lookup (), ospf_lsa_count () Added.
3424
34251999-06-15 Toshiaki Takada <takada@zebra.org>
3426
3427 * DEFUN (ospf_debug_ism), DEFUN (ospf_debug_nsm),
3428 DEFUN (no_ospf_debug_ism), DEFUN (no_ospf_debug_nsm) Added.
3429 `debug ospf ism' command shows debug message.
3430 `debuf ospf nsm' command shows debug message.
3431
34321999-06-14 Toshiaki Takada <takada@zebra.org>
3433
3434 * ospf_lsa.c: ospf_network_lsa () Added.
3435 ospf_lsa_checksum () Added.
3436 * DEFUN (ospf_debug_packet), DEFUN (no_ospf_debug_packet) Added.
3437 `debug ospf packet' command shows debug message.
3438
34391999-06-13 Toshiaki Takada <takada@zebra.org>
3440
3441 * ospf_packet.h: Remove struct ospf_ls_req {}, ospf_ls_upd {},
3442 ospf_ls_ack {}.
3443
34441999-06-11 Toshiaki Takada <takada@zebra.org>
3445
3446 * ospf_dump.c: fix IP packet length treatment.
3447
34481999-06-10 Toshiaki Takada <takada@zebra.org>
3449
3450 * ospf_ism.h: Add OSPF_ISM_EVENT_EXECUTE() Macro Added.
3451 * ospf_nsm.h: Add OSPF_NSM_EVENT_EXECUTE() Macro Added.
3452
3453 * ospf_packet.c: ospf_db_desc (), ospf_db_desc_send () Added.
3454 ospf_make_hello (), ospf_make_db_desc () Added.
3455 ospf_db_desc_proc () Added.n
3456
3457 * Database Description packet can be processed.
3458
34591999-06-08 Toshiaki Takada <takada@zebra.org>
3460
3461 * ospf_lsa.c: New file.
3462
34631999-06-07 Toshiaki Takada <takada@zebra.org>
3464
3465 * ospf_neighbor.c: ospf_fully_adjacent_count () Added.
3466
34671999-06-07 Kunihiro Ishiguro <kunihiro@zebra.org>
3468
3469 * ospf_spf.[ch]: New file.
3470
34711999-05-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3472
3473 * ospf_zebra.c: Changed to use lib/zclient.c routines.
3474
3475 * ospf_zebra.h (zebra_start): Remove struct zebra.
3476
34771999-05-29 Kunihiro Ishiguro <kunihiro@zebra.org>
3478
3479 * ospfd.c (ospf_config_write): Add cast (unsigned long int) to
3480 ntohl for sprintf warning.
3481
34821999-05-19 Toshiaki Takada <takada@zebra.org>
3483
3484 * ospf_ism.c (ospf_dr_election): Join AllDRouters Multicast group
3485 if interface state changes to DR or BDR.
3486
34871999-05-14 Stephen R. van den Berg <srb@cuci.nl>
3488
3489 * ospf_main.c (signal_init): SIGTERM call sigint.
3490 (sigint): Logging more better message.
3491
34921999-05-12 Toshiaki Takada <takada@zebra.org>
3493
3494 * ospfd.c: Fix bug of `no router ospf' statement, it will work.
3495
34961999-05-11 Toshiaki Takada <takada@zebra.org>
3497
3498 * ospf_neighbor.c: ospf_nbr_free () Added.
3499
35001999-05-10 Toshiaki Takada <takada@zebra.org>
3501
3502 * ospfd.h: struct ospf_area { }, struct ospf_network { } Changed.
3503 * Fix bug of `no network' statement, it will work.
3504
35051999-05-07 Toshiaki Takada <takada@zebra.org>
3506
3507 * ospf_interface.c, ospf_zebra.c: Fix bug of last interface is not
3508 updated by ospf_if_update ().
3509
35101999-04-30 Kunihiro Ishiguro <kunihiro@zebra.org>
3511
3512 * Makefile.am (noinst_HEADERS): Add ospf_lsa.h for distribution.
3513
35141999-04-25 Toshiaki Takada <takada@zebra.org>
3515
3516 * ospf_interface.c: DEFUN (no_if_ospf_cost),
3517 DEFUN (no_if_ospf_dead_interval),
3518 DEFUN (no_if_ospf_hello_interval),
3519 DEFUN (no_if_ospf_priority),
3520 DEFUN (no_if_ospf_retransmit_interval),
3521 DEFUN (no_if_ospf_transmit_delay) Added.
3522
3523 interface_config_write () suppress showing interface
3524 default values.
3525
35261999-04-25 Kunihiro Ishiguro <kunihiro@zebra.org>
3527
3528 * ospf_dump.c (ospf_timer_dump): If thread is NULL return "inactive".
3529
3530 * ospfd.c (ospf_if_update): Fix bug of using ospf_area { } instead
3531 of ospf_network { }. So `router ospf' statement in ospfd.conf
3532 works again.
3533 (ospf_if_update): Call ospf_get_router_id for updating router ID.
3534
35351999-04-25 Toshiaki Takada <takada@zebra.org>
3536
3537 * ospf_interface.c: DEFUN (if_ospf_network) deleted.
3538 DEFUN (if_ospf_network_broadcast),
3539 DEFUN (if_ospf_network_non_broadcast),
3540 DEFUN (if_ospf_network_point_to_multipoint),
3541 DEFUN (if_ospf_network_point_to_point),
3542 DEFUN (no_if_ospf_network) Added.
3543
35441999-04-23 Toshiaki Takada <takada@zebra.org>
3545
3546 * ospfd.h: struct area { } changed to struct ospf_network { }.
3547 Add struct ospf_area { }.
3548 * ospfd.c: Add ospf_area_lookup_by_area_id (), ospf_network_new (),
3549 and ospf_network_free ().
3550 DEFUN (area_authentication), DEFUN (no_area_authentication) Added.
3551
35521999-04-22 Toshiaki Takada <takada@zebra.org>
3553
3554 * ospf_lsa.h: New file.
3555 * ospf_packet.h: LSA related struct definition are moved to
3556 ospf_lsa.h.
3557 * ospf_packet.c: ospf_verify_header () Added.
3558
35591999-04-21 Toshiaki Takada <takada@zebra.org>
3560
3561 * ospf_ism.c: ospf_elect_dr () and related function is changed.
3562 DR Election bug fixed.
3563 * ospf_dump.c: ospf_nbr_state_message (), ospf_timer_dump () Added.
3564 * ospfd.c: DEFUN (show_ip_ospf_neighbor) Added.
3565
35661999-04-19 Kunihiro Ishiguro <kunihiro@zebra.org>
3567
3568 * ospf_main.c (main): access_list_init () is added for vty
3569 connection filtering.
3570
35711999-04-16 Toshiaki Takada <takada@zebra.org>
3572
3573 * ospfd.c: DEFUN (show_ip_ospf_interface) Added.
3574 * ospf_neighbor.c: ospf_nbr_count () Added.
3575
35761999-04-15 Toshiaki Takada <takada@zebra.org>
3577
3578 * ospfd.h: struct ospf { } Changed.
3579 * ospfd.c: ospf_lookup_by_process_id () Deleted.
3580 * ospf_ism.c: ospf_wait_timer () Added. WaitTimer will work.
3581
35821999-04-14 Toshiaki Takada <takada@zebra.org>
3583
3584 * ospf_ism.c: ospf_elect_dr () Added.
3585 * ospf_network.c: ospf_if_ipmulticast () Added.
3586
35871999-04-11 Toshiaki Takada <takada@zebra.org>
3588
3589 * ospf_interface.c: interface_config_write (),
3590 DEFUN (if_ip_ospf_cost),
3591 DEFUN (if_ip_ospf_dead_interval),
3592 DEFUN (if_ip_ospf_hello_interval),
3593 DEFUN (if_ip_ospf_priority),
3594 DEFUN (if_ip_ospf_retransmit_interval) and
3595 DEFUN (if_ip_ospf_transmit_delay) Added.
3596
35971999-04-08 Toshiaki Takada <takada@zebra.org>
3598
3599 * ospf_dump.c: ospf_packet_db_desc_dump () Added.
3600 * ospf_neighbor.c: ospf_nbr_bidirectional () Added.
3601 * ospf_nsm.c: nsm_twoway_received () Added.
3602
36031999-04-02 Toshiaki Takada <takada@zebra.org>
3604
3605 * ospf_neighbor.c: New file.
3606 * ospf_neighbor.h: New file.
3607 * ospf_nsm.c: New file.
3608 * ospf_nsm.h: New file.
3609 * ospf_packet.c: Add ospf_make_header (), ospf_hello () and
3610 ospf_hello_send (). Now OSPFd can receive Hello and send Hello.
3611
36121999-03-27 Kunihiro Ishiguro <kunihiro@zebra.org>
3613
3614 * ospf_packet.c: Add ospf_recv_packet (). Now OSPF Hello can receive.
3615
36161999-03-19 Toshiaki Takada <takada@zebra.org>
3617
3618 * ospf_packet.c: New file.
3619 * ospf_packet.h: New file.
3620 * ospf_network.c: New file.
3621 * ospf_network.h: New file.
3622 * ospfd.h: move OSPF message structure has moved to ospf_packet.h.
3623
36241999-03-17 Kunihiro Ishiguro <kunihiro@zebra.org>
3625
3626 * ospf_zebra.c (ospf_zebra_get_interface): Fix for IPv6 interface
3627 address.
3628
3629 * Makefile.am (install-sysconfDATA): Overwrite install-sysconfDATA
3630 for install ospfd.conf.sample as owner read only file.
3631
3632 * ospf_main.c (usage): Change to use ZEBRA_BUG_ADDRESS.
3633
36341999-03-15 Toshiaki Takada <takada@zebra.org>
3635
3636 * ospf_ism.c: New file.
3637 * ospf_ism.h: New file.
3638 * ospf_dump.c: New file.
3639 * ospf_dump.h: New file.
3640
3641 * ospfd.h: Add (struct ospf), (struct config_network),
3642 (struct message) structure.
3643
3644 * ospf_interface.c: Add ospf_if_match_network ().
3645 * ospf_interface.h (struct ospf_interface): Change struct members.
3646
3647 * ospfd.c: ospf_lookup_by_process_id (), ospf_network_new (),
3648 DEFUN (network_area): Added.
3649
3650 * ospfd.conf.sample: Change sample configuration.
3651
36521999-03-05 Toshiaki Takada <takada@zebra.org>
3653
3654 * ospf_interface.c: New file.
3655 * ospf_interface.h: New file.
3656 * ospf_zebra.h: New file.
3657 * ospf_zebra.c: Add interface function for zebra daemon.
3658 * ospfd.c: New file.
3659
36601999-02-23 Kunihiro Ishiguro <kunihiro@zebra.org>
3661
3662 * Move IPv6 codes and files to ospf6d directory.
3663
36641999-02-18 Peter Galbavy <Peter.Galbavy@knowledge.com>
3665
3666 * syslog support added
3667
36681998-12-22 Toshiaki Takada <takada@zebra.org>
3669
3670 * ospfd.h: New file.
3671 * ospf_lsa.h: New file.
3672
36731998-12-15 Kunihiro Ishiguro <kunihiro@zebra.org>
3674
3675 * Makefile.am: New file.
3676 * ospf_main.c: New file.
3677