blob: 50f8dfd7a3eddad7b839024e5dccf41713eb8481 [file] [log] [blame]
Paul Jakma9a57dc62006-06-30 16:58:53 +000012006-06-29 Paul Jakma <paul.jakma@sun.com>
2
3 * rip_zebra: (general) convert redistribute commands to use
4 the auto-generated defines.
5
Paul Jakma15a2b082006-05-04 07:36:34 +000062006-05-04 Paul Jakma <paul.jakma@sun.com>
7
8 * (general) Fixes for bugs #261 and 262. Thanks to
9 Konstantin V. Gavrilenko <kos@arhont.com> for the problem
10 reports, testing of a series of proposed patches and comment
11 on the proposed changes in behaviour.
12 * rip_interface.c: (ip_rip_authentication_mode_cmd) Parse all
13 of the command before making any changes to configured state.
14 * ripd.c: (rip_read) RIP version control should be absolute and
15 always apply, fixes bug #261 by allowing RIPv1 to be disabled.
16 Fix bug #262: If authentication is enabled, then
17 unauthenticated packets should not be accepted. We do however
18 make an exception for RIPv1 REQUEST packets, to which we will
19 reply as RIPv1 can now be disabled fully, to allow ripd to
20 still provide routing /information/ to simple devices.
21
Andrew J. Schorrb9d92882006-04-28 16:22:36 +0000222006-04-28 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
23
24 * ripd.c: (rip_update_process) Try to fix the logic for sending
25 an updated on each connected network. The new code will
26 attempt to send the update on each connected network, whereas
27 the previous code seemed to be attempting to avoid sending
28 more than one RIPv1 update on a given interface, but was coded
29 incorrectly. The actual effect of the old code was to send
30 an update only on the first connected address in the cases
31 where the interface is not multicast, or RIPv2 is not being used.
32
vincent7a383332006-01-30 18:12:42 +0000332006-01-30 Alain Ritoux <alain.ritoux@6wind.com>
34
35 * ripd.c: correct bug that allowed route learnt through RIP to take
36 precedence over connectd routes
37
paule8e19462006-01-19 20:16:55 +0000382006-01-19 Paul Jakma <paul.jakma@sun.com>
39
40 * ripd.c: (main) return from main, not exit, cause it annoys SOS.
41
paul98fd1e62006-01-17 17:26:25 +0000422006-01-17 Paul Jakma <paul.jakma@sun.com>
43
44 * ripd.c: (rip_auth_md5) remove pdigest, not needed.
45 Use a local buffer for the auth_str, where it can be properly
46 nul padded. Do so, hence fixing MD5 authentication.
47 Key looked up via key ring should be used in preference to
48 the RIPv1 simple password, not other way around.
49 No need to copy around digests, we can reference them
50 directly.
51 The auth_len received can't be trusted, some implementations
52 lie (e.g. older ripd).
53 (rip_auth_md5_ah_write) rename len local variable to doff
54 to be consistent with other functions.
55 (rip_auth_header_write) add the missing return.
56 (rip_auth_md5_set) use the proper constructs to access stream.
57
ajs35a60c22005-10-30 23:51:32 +0000582005-10-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
59
60 * ripd.c: (rip_response_process) Instead of calling
61 rip_interface.c:if_valid_neighbor(), call the equivalent
62 library function if_lookup_address().
63 * rip_interface.c: (if_valid_neighbor) Remove function, since it is
64 essentially equivalent to the if_lookup_address() library function.
65 * ripd.h: (if_valid_neighbor) Remove function declaration.
66
paul92779fe2005-10-28 10:23:09 +0000672005-10-28 Paul Jakma <paul.jakma@sun.com>
68
69 * Makefile.am: Add rip_interface.h, or else it doesn't get
70 included in dists.
71
pauldc63bfd2005-10-25 23:31:05 +0000722005-10-26 Paul Jakma <paul.jakma@sun.com>
73
74 * (general) static/extern functions and definitions.
75 * rip_interface.h: new file, export the public functions from
76 rip_interface.c
paul216565a2005-10-25 23:35:28 +000077 * ripd.c: Update couple more functions to specify void
78 explicitely.
pauldc63bfd2005-10-25 23:31:05 +000079
jardin38d3c162005-10-19 19:29:59 +0000802005-10-17 Vincent Jardin <vincent.jardin@6wind.com>
81
82 * ripd.c: rip_create_socket() for each packet, it does not bind to the
83 proper interfaces because we forget to use the from address when
84 it is specified.
85
vincentfac3e842005-10-06 07:45:43 +0000862005-10-06 Alain Ritoux <alain.ritoux@6wind.com>
87
88 * rip_interface.c: Now the command "no ip rip split-horizon
89 poisoned-reverse" just inhibates the poisoned-reverse effects
90 but keep spli-horizon activ.
91
ajsf52d13c2005-10-01 17:38:06 +0000922005-10-01 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
93
94 * rip_zebra.c: (config_write_rip_redistribute): Remove local hard-coded
95 table str[]. Replace str[] with calls to new library function
96 zebra_route_string().
97 * ripd.c: Remove local hard-coded table route_info[].
98 (show_ip_rip) Replace uses of str[] with calls to new library
99 functions zebra_route_char and zebra_route_string.
100
vincentfbf5d032005-09-29 11:25:50 +00001012005-09-29 Alain Ritoux <alain.ritoux@6wind.com>
102
103 * rip_snmp.c: rip2IfConfReceive() sends values in conformance
104 with RFC. Also PeerDomain is now set to a STRING type.
105 * ripd.h: rip_redistribute_add() API includes metric and distance
106 added field external_metric in routes.
107 * ripd.c: rip_redistribute_add() API i.e. stores metric and distance
108 Now allows a RIP-route to overcome a redistributed route coming
109 from a protocol with worse (higher) administrative distance
110 Metrics from redistribution are shown in show ip rip
111 * rip_zebra.c: adapt to the rip_redistribute_add() API, i.e.
112 provide distance and metric
113 * rip_interface.c: adapt to the rip_redistribute_add() API
114 * rip_routemap.c: no RMAP_COMPILE_ERROR on (metric > 16) usage
115 rather a CMD_WARNING, because set metric ius shared with other
116 protocols using larger values (such as OSPF)
117 The match metric action takes first external metric if present
118 (from redistribution) then RIP metric.
119
vincentc1a03d42005-09-28 15:47:44 +00001202005-09-28 Alain Ritoux <alain.ritoux@6wind.com>
121
122 * ripd.c: use new md5 API
123
paul2c61ae32005-08-16 15:22:14 +00001242005-08-16 Paul Jakma <paul.jakma@sun.com>
125
126 * ripd.c: (general) Fix previous commit, broke multicast bind and
127 hence setting of source port, which broke communication with
128 non-borken ripd. Fix removes more stuff from rip_interface.c
129 than it adds to ripd.c ;)
130 (rip_create_socket) the to argument really is a from argument,
131 rename it. Set the source port to RIP port unconditionally, it's
132 required.
133 (rip_send_packet) Set from address correctly for multicast.
134 (rip_output_process) trivial: num can be BSS specified, rather
135 than in body.
136 * rip_interface.c: (rip_interface_multicast_set) strip out
137 redundant stuff related to bind, which rip_create_socket does.
138 Just make it set the multicast socket option, as per the
139 interface concerned, no more.
140
paula4e987e2005-06-03 17:46:49 +00001412005-06-03 Paul Jakma <paul.jakma@sun.com>
142
143 * ripd.c: (rip_create_socket) move it up so rip_send_packet
paulf69bd9d2005-06-03 18:01:50 +0000144 can use it too. Make it static. Remove the getservbyname stuff,
145 as RFC2453 3.9.2 says non-RIP port messages should be discarded,
146 quagga doesnt accept them, no need to lookup port.
147 Take a 'to' argument, if socket should be bound to something else.
148 setsockopt_so_recvbuf might need privs, move it to the raised
149 privileges section.
150 dont forget to close the socket if bind fails.
151 (rip_send_packet) use strncpy, just in case (address is under
152 our control anyway, but still).
153 dont duplicate rip_create_socket - just use it.
154 (rip_create) rip_create_socket takes an argument now, modify.
155
paul7755a8c2005-06-02 08:20:53 +00001562005-06-01 Paul Jakma <paul.jakma@sun.com>
157
158 * rip_interface.c: Fix authentication, no-auth impossible to specify
159 (rip_interface_new) default to RIP_NO_AUTH
160 (rip_interface_reset) ditto
161 (rip_interface_config_write) write out config for simple
162
paul0cb8a012005-05-29 11:27:24 +00001632005-05-29 Paul Jakma <paul@dishone.st>
164
165 * ripd.c: (rip_output_process) fix error which crept in my
166 previous rip auth untanglement commit - it had become impossible
167 to not have authentication (even for v1).
168
hasso033e8612005-05-28 04:50:54 +00001692005-05-28 Hasso Tepper <hasso at quagga.net>
170
171 * rip_routemap.c: Fix set_metric_addsub_cmd help, it's not about BGP
172 metric.
173
hassocf96db12005-05-25 21:15:32 +00001742005-05-26 Hasso Tepper <hasso at quagga.net>
175
hassodc625e82005-05-26 06:26:40 +0000176 * rip_routemap.c: In case of '0.0.0.0' used as 'nexthop', use sender
177 address as nexthop in routemap.
178
1792005-05-26 Hasso Tepper <hasso at quagga.net>
180
hassocf96db12005-05-25 21:15:32 +0000181 * rip_routemap.c: Make "match interface" routemap command match both -
182 in and out interfaces.
183
ajsd4e47282005-05-11 15:56:21 +00001842005-05-11 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
185
186 * rip_interface.c (rip_interface_add): Need to call
187 rip_passive_interface_apply (was already calling it in
188 rip_interface_up).
189
ajs634f9ea2005-04-11 15:51:40 +00001902005-04-11 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
191
192 * rip_zebra.c (rip_redistribute_set, rip_redistribute_unset,
193 rip_redistribute_clean): Change 2nd arg to zebra_redistribute_send
194 from zclient->sock to zclient.
195
ajsd2fc8892005-04-02 18:38:43 +00001962005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
197
198 * rip_interface.c: (rip_interface_delete) After deleting, set
199 ifp->ifindex to IFINDEX_INTERNAL.
200
paulb14ee002005-02-04 23:42:41 +00002012005-02-04 Paul Jakma <paul@dishone.st>
202
203 * ripd.c: Untangle the construction of RIP auth data.
204 (rip_auth_prepare_str_send) new helper function, prepare
205 correct key string.
206 (rip_auth_simple_write) new helper, write out the
207 rip simple password auth psuedo-RTE.
208 (rip_auth_md5_ah_write) new helper, write out the
209 MD5 auth-header psuedo-RTE.
210 (rip_auth_header_write) new helper, write out correct
211 auth header data / psuedo-RTE.
212 (rip_auth_md5_set) rip out the memmove and writing of the
213 auth header psuedo-RTE. So that all that is left is to
214 write the trailing auth digest, and update digest offset
215 field in the original header.
216 (rip_write_rte) rip out writing of RIP header, writing of
217 simple auth data psuedo-RTE. Make it do what its name suggests,
218 write out actual RTEs.
219 (rip_output_process) remove the incorrect additional decrements
220 of rtemax. Prepare the auth_str, which simple or MD5 auth will
221 need. Move write out of RIP header and auth data to inside the
222 loop. Adjust paramaters as required.
223
ajs79853452005-01-30 17:40:29 +00002242005-01-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
225
ajs6a52d0d2005-01-30 18:49:28 +0000226 * ripd.c: (rip_create_socket) Replace perror with zlog_err.
227
2282005-01-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
229
ajs79853452005-01-30 17:40:29 +0000230 * ripd.c: (rip_create_socket) Save errno before calling
231 ripd_privs.change.
232
ajsb99760a2005-01-04 16:24:43 +00002332005-01-04 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
234
235 * ripd.c: (rip_recvmsg) Use ZCMSG_FIRSTHDR instead of CMSG_FIRSTHDR.
236
ajs766a0ca2004-12-15 14:55:51 +00002372004-12-15 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
238
239 * ripd.c: (rip_read) Improve 2 error messages to show the source of
240 the packet when the lookup fails.
241
ajs5d6c3772004-12-08 19:24:06 +00002422004-12-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
243
244 * *.c: Change level of debug messages to LOG_DEBUG.
245
ajs274a4a42004-12-07 15:39:31 +00002462004-12-07 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
247
248 * rip_main.c: (main) The 2nd argument to openzlog has been removed.
249
ajs887c44a2004-12-03 16:36:46 +00002502004-12-03 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
251
252 * rip_main.c: (sigint) Use zlog_notice for termination message.
253 (main) Add a startup announcement using zlog_notice.
254
hassoc0652302004-11-25 19:33:48 +00002552004-11-25 Hasso Tepper <hasso at quagga.net>
256
257 * rip_main.c: Make group to run as configurable.
258
paulc49ad8f2004-10-22 10:27:28 +00002592004-10-22 Paul Jakma <paul@dishone.st>
260
261 * ripd.c: Collapse redundant passing of various address structs,
262 struct interface and struct connected as arguments to functions
263 down to two key arguments, namely struct connected and, possibly,
264 address of source/destination. Testing for RIPv1 would be useful.
265 (rip_read) lookup struct connected for the received packet, pass
266 it on.
267 * rip_interface.c: With previous changes, we no longer have to tread
268 carefully with struct connected, as it will always be there and
269 valid.
270
hasso3fb9cd62004-10-19 19:44:43 +00002712004-10-19 Andrew J. Schorr <aschorr@telemetry-investments.com>
272
273 * ripd.c: (rip_update_interface) if connected->destination is NULL,
274 get the broadcast address with ipv4_broadcast_addr()
275 * rip_interface.c: (rip_interface_multicast_set)
276 connected->destination may be NULL. Improve message if
277 setsockopt_multicast_ipv4 fails. Improve message if bind fails.
278 (rip_request_interface_send) If connected->destination is NULL,
279 get the broadcast address with ipv4_broadcast_addr().
280 (if_valid_neighbor) Handle PtP subnet addressing properly.
281 Speed up code by using prefix_match properly.
282
hassoc75105a2004-10-13 10:33:26 +00002832004-10-13 Hasso Tepper <hasso at quagga.net>
284
285 * ripd_snmp.c: Remove defaults used to initialize smux connection to
286 snmpd. Connection is initialized only if smux peer is configured.
287
hasso98b718a2004-10-11 12:57:57 +00002882004-10-11 Hasso Tepper <hasso at quagga.net>
289
290 * *.c: Make more strings const.
291
hasso8a676be2004-10-08 06:36:38 +00002922004-10-08 Hasso Tepper <hasso at quagga.net>
293
294 * *.c: Fix compiler warnings: make strings const, signed -> unsigned
295 etc.
296
hasso1af81932004-09-26 16:11:14 +00002972004-09-26 Hasso Tepper <hasso at quagga.net>
298
299 * ripd.c: Fix compiler warning.
300
hasso52dc7ee2004-09-23 19:18:23 +00003012004-09-23 Hasso Tepper <hasso at quagga.net>
302
303 * *.[c|h]: list -> struct list *, listnode -> struct listnode *.
304
paul0b3acf42004-09-17 08:39:08 +00003052004-09-17 Paul Jakma <paul@dishone.st>
306
307 * ripd.c: set receive buffer to a decent size, some systems have low
308 defaults. Problem noted and fix suggested by Stephan Schweizer
309 in [zebra 20967].
310
paul1a517862004-08-19 04:03:08 +00003112004-08-19 Paul Jakma <paul@dishone.st>
312
313 * rip_interface.c: (rip_interface_multicast_set) get rid
314 of extraneous if_pointopoint arg. ifp is accessible via connected.
315 pass connected->ifp->ifindex to setsockopt_multicast_ipv4.
316 * ripd.c: (rip_send_packet) update call to
317 rip_interface_multicast_set
318 * ripd.h: update rip_interface_multicast_set prototype
319
paul02ff83c2004-06-11 11:27:03 +00003202004-06-11 Sowmini Varadhan <sowmini.varadhan@sun.com>
321
322 * ripd.c: (rip_distribute_update_all) distribute list hook
323 function pointer prototype requires struct prefix_list * arg.
324 (rip_distribute_update_all_wrapper) update to pass required arg,
325 NULL.
326
paulca5e5162004-06-06 22:06:33 +00003272004-06-06 Paul Jakma <paul.jakma@sun.com>
328
329 * ripd.h: Add define for the RIPv2 Authentication Data family
330 Move the auth type defines up to where other defines live.
331 Add RIP_AUTH_MD5_COMPAT_SIZE, for backwards compatible
332 md5->auth_len size. Add md5_auth_len field to struct
333 rip_interface: (rip_interface_new) Init md5_auth_len to compatible
334 size.
335 (ip_rip_authentication_mode_cmd) Extended to handle setting
336 md5 auth-length. Appropriate aliases added.
337 (no_ip_rip_authentication_mode_cmd) Reset md5_auth_len to
338 compatible size.
339 (rip_interface_config_write) Teach it about md5_auth_len.
340 _always_ write out the auth-length, so that everyone will get
341 the setting in their config file, and hence allow for a future
342 change of default for md5_auth_len to be less painful - every md5
343 user will have this setting in their config file.
344 ripd.c: (rip_packet_dump) Change nasty hard coded constants to
345 symbolic defines. Change various tests of 'ntoh.(variable) ==
346 constant' to test 'variable == ntoh.(constant)'. Clean up
347 indentation on some long lines.
348 (rip_auth_simple_password) ditto.
349 (rip_auth_md5) ditto, also add length argument and sanity check
350 md5 data offset field. Sanity check md5 auth length, accept RFC
351 or old-ripd/cisco lengths.
352 (rip_auth_md5_set) as per (rip_packet_dump), also write out
353 the configured md5 auth length for the interface (old-ripd or rfc)
354 (rip_read) as per (rip_packet_dump)
355 (rip_write_rte) ditto
356 (rip_response_process) ditto
357 (rip_write_rte) ditto
358
paulc2bfbcc2004-06-04 01:42:38 +00003592004-06-04 JJ Ludman <jacques.ludman@sun.com>
360
361 * ripd.c: Interoperability fix. Correct value for MD5 auth length
362 is 16. Accept packets with this set to >= 16, and set to 16
363 ourselves.
364
paul11dde9c2004-05-31 14:00:00 +00003652004-05-31 Sowmini Varadhan <sowmini.varadhan@sun.com>
366
367 * ripd.c: Fixup compile warnings
368 * rip_routemap.c: Ditto
369
paul0a589352004-05-08 11:48:26 +00003702004-05-08 Paul Jakma <paul@dishone.st>
371
372 * rip_zebra.c: sync with zclient changes.
373 * rip_interface.c: ditto.
374
paul239389b2004-05-05 14:09:37 +00003752004-05-05 Anthony.Golia@morganstanley.com
376
377 * ripd.c: (rip_update_jitter) Bound jitter to a more sensible
378 value, eg 1/4 of update time.
379
paula87552c2004-05-03 20:00:17 +00003802004-05-03 Paul Jakma <paul@dishone.st>
381
382 * ripd.c: (rip_rte_process) fix typo in merge of previous patch
383 and run function through indent.
384
paulb94f9db2004-05-01 20:45:38 +00003852004-03-19 Jean-Yves Simon <lethalwp@tiscali.be>
386
paula87552c2004-05-03 20:00:17 +0000387 * ripd.c: (rip_rte_process) make ripd also check on
388 administrative distance of his own links to update routes.
paulb94f9db2004-05-01 20:45:38 +0000389
hassoda9c9a22004-03-18 02:40:55 +00003902004-03-18 sowmini.varadhan@sun.com
391
392 * ripd.c: rip_send_packet can get null connected address when
393 called in response to a unicast rip-request. Handle correctly.
394
hassoa1455d82004-03-03 19:36:24 +00003952004-03-03 Krzysztof Oledzki <oleq@ans.pl>
396
hassocaa6f8a2004-03-03 19:48:48 +0000397 * ripd.c: fix "show ip rip" and per interface rip version selection.
hassoa1455d82004-03-03 19:36:24 +0000398
paul931cd542004-01-23 15:31:42 +00003992004-01-23 sowmini.varadhan@sun.com
400
401 * rip_interface.c: obsolete unbind code in
402 rip_interface_multicast_set, and instead do the more portable
403 (though slower) method of creating a socket for each outgoing packet
404 and binding the source address on the new socket.
405 * rip_interface.c, ripd.c, ripd.h: Modify rip_request_send so that
406 source address is determined by the caller of rip_request_send for
407 ripv1 packets and non-multicast interfaces (rip_request_send loops
408 over all connected address in all other cases).
409 * rip_send_packet: don't send packets with source set to
410 ZEBRA_IFA_SECONDARY connected addresses; improved debug messages;
411
paulf38a4712003-06-07 01:10:00 +00004122003-06-07 Andrew J. Schorr <aschorr@telemetry-investments.com>
413
414 * Allow ripd to receive RIPv1
415 * add default as valid param to passive-interface command
416
hasso16705132003-05-25 14:49:19 +00004172003-05-25 Vincent Jardin <vjardin@wanadoo.fr>
418
paulf38a4712003-06-07 01:10:00 +0000419 * 6Wind patch merge.
hasso16705132003-05-25 14:49:19 +0000420
paul445f1432003-05-16 19:00:31 +00004212003-04-19 Hasso Tepper <hasso@estpak.ee>
422
423 * rip_routemap.c: sync daemon's route-map commands to have same
424 syntax
425
paul718e3742002-12-13 20:15:29 +00004262002-07-07 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
427
428 * zebra-0.93 released.
429
4302002-06-30 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
431
432 * ripd.c (rip_output_process): When outgoing interface is same as
433 next hop interface, announce RIPv2 next hop otherwise set next hop
434 to 0. Revert previous change then take 6WIND way.
435
4362001-09-14 Akihiro Mizutani <mizutani@dml.com>
437
438 * ripd.c: RIP enabled interface's route is advertised by default.
439
4402001-08-28 NOGUCHI Kay <kay@v6.access.co.jp>
441
442 * rip_snmp.c (rip_ifaddr_delete): Add route_node_lookup() return
443 value check.
444
445 * rip_interface.c (rip_multicast_leave): Fix bug of multiple IP
446 address on one interface multicast join/leave bug.
447
4482001-08-26 NOGUCHI Kay <kay@v6.access.co.jp>
449
450 * rip_interface.c (no_rip_passive_interface): Add NO_STR.
451
4522001-08-19 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
453
454 * zebra-0.92a released.
455
4562001-08-15 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
457
458 * zebra-0.92 released.
459
4602001-06-17 Kunihiro Ishiguro <kunihiro@zebra.org>
461
462 * rip_routemap.c (route_match_ip_address_prefix_list): Add match
463 ip next-hop prefix-list WORD.
464
4652001-02-18 Kunihiro Ishiguro <kunihiro@zebra.org>
466
467 * rip_interface.c (rip_passive_interface_clean): Call
468 rip_passive_interface_apply_all.
469
4702001-02-12 Kunihiro Ishiguro <kunihiro@zebra.org>
471
472 * ripd.c (rip_response_process): Multicast address nexthop check
473 is moved from rip_nexthop_check.
474
4752001-02-08 Matthew Grant <grantma@anathoth.gen.nz>
476
477 * rip_interface.c (ipv4_multicast_join): Use
478 setsockopt_multicast_ipv4.
479 (ipv4_multicast_leave): Likewise.
480 (rip_if_ipv4_address_check): Interface which has IPv4 address can
481 be enabled.
482
4832001-02-08 Kunihiro Ishiguro <kunihiro@zebra.org>
484
485 * rip_interface.c (rip_interface_delete): To support pseudo
486 interface do not free interface structure.
487 * ripd.c (rip_output_process): If output interface is in simple
488 password authentication mode, we need space for authentication
489 data.
490
4912001-02-01 Kunihiro Ishiguro <kunihiro@zebra.org>
492
493 * ripd.c (rip_nexthop_check): Fix multicast address nexthop check.
494
495 * zebra-0.91 is released.
496
4972001-01-27 Kunihiro Ishiguro <kunihiro@zebra.org>
498
499 * ripd.c (show_ip_rip): Show metric infinity route's timeout.
500 (rip_rte_process): If current route is metric infinity, route is
501 replaced with received rte.
502 (rip_redistribute_delete): When redistribute route is deleted,
503 perform poisoned reverse.
504 (rip_redistribute_withdraw): Likewise.
505
5062001-01-25 Kunihiro Ishiguro <kunihiro@zebra.org>
507
508 * ripd.c (rip_response_process): RIPv2 routing table entry with
509 non directly reachable nexthop was dropped. The code is changed
510 to treat it as 0.0.0.0 nexthop.
511 (rip_destination_check): Check net 0 address destination.
512 (rip_nexthop_check): New function for checking nexthop address
513 validity.
514
5152001-01-15 Kunihiro Ishiguro <kunihiro@zebra.org>
516
517 * ripd.c (rip_request_process): Triggered update only send changed
518 route.
519
520 * rip_interface.c: Delete RIP_API part until new implementation
521 comes out.
522
523 * rip_snmp.: Likewise.
524
525 * rip_zebra.c: Likewise.
526
527 * ripd.c: Likewise.
528
5292001-01-11 Kunihiro Ishiguro <kunihiro@zebra.org>
530
531 * rip_interface.c (rip_if_init): Remove HAVE_IF_PSEUDO part.
532
5332001-01-09 Kunihiro Ishiguro <kunihiro@zebra.org>
534
535 * zebra-0.90 is released.
536
5372001-01-01 Kunihiro Ishiguro <kunihiro@zebra.org>
538
539 * ripd.h (RIP_VTYSH_PATH): Change "/tmp/ripd" to "/tmp/.ripd".
540
5412000-12-25 David Lipovkov <davidl@nbase.co.il>
542
543 * ripd.c (rip_rte_process): When a route is in garbage collection
544 process (invalid with metric 16) and a router receives the same
545 route with valid metric then route was not installed into zebra
546 rib, but only into ripd rib. Moreover , it will never get into
547 zebra rib, because ripd wrongly assumes it's already there.
548 (rip_redistribute_add): When doing redistribute into rip other
549 route (e.g. connected) and the same route exists in ripd rib we
550 changed it in place - bug. Now we don't forget to remove old route
551 from zebra.
552 (rip_timeout): When removing routes from zebra I made sure that we
553 remove route with the metric we have in zebra and not the new
554 one. It doesn't make a difference now,but could be significant
555 when multipath support is done.
556
5572000-12-25 David Lipovkov <davidl@nbase.co.il>
558
559 * rip_zebra.c (rip_metric_unset): Fix bug of metric value unset.
560
5612000-11-25 Frank van Maarseveen <F.vanMaarseveen@inter.NL.net>
562
563 * ripd.c (rip_request_process): Check passive flag of the
564 interface.
565
5662000-11-23 Frank van Maarseveen <F.vanMaarseveen@inter.NL.net>
567
568 * rip_interface.c (rip_multicast_join): When IP_ADD_MEMBERSHIP
569 failed do not set runnning flag to the interface.
570
5712000-11-16 Kunihiro Ishiguro <kunihiro@zebra.org>
572
573 * ripd.c (rip_output_process): Memory leak related classfull
574 network generation is fixed.
575
5762000-11-16 Frank van Maarseveen <F.vanMaarseveen@inter.NL.net>
577
578 * rip_interface.c (if_check_address): Obsolete pointopoint address
579 check is removed.
580
5812000-11-02 Frank van Maarseveen <F.vanMaarseveen@inter.NL.net>
582
583 * rip_interface.c (if_check_address): Add pointopoint address
584 check.
585 (rip_interface_up): Add check for passive interface when interface
586 goes up.
587
5882000-10-23 Jochen Friedrich <jochen@scram.de>
589
590 * rip_snmp.c: rip_oid and ripd_oid are used in smux_open after it
591 is registered. So those variables must be static.
592
5932000-10-19 Kunihiro Ishiguro <kunihiro@zebra.org>
594
595 * rip_interface.c: Change to "no ip rip (send|receive)" command
596 accept version number argument.
597
5982000-10-17 Akihiro Mizutani <mizutani@dml.com>
599
600 * rip_routemap.c (route_set_ip_nexthop_compile): Change "match ip
601 next-hop" from IP address to access-list name.
602
6032000-10-17 Kunihiro Ishiguro <kunihiro@zebra.org>
604
605 * rip_peer.c: Change ot use linklist.c instaed of newlist.c.
606
6072000-10-16 Kunihiro Ishiguro <kunihiro@zebra.org>
608
609 * rip_offset.c: Change to use linklist.c instead of newlist.c.
610
6112000-10-02 Kunihiro Ishiguro <kunihiro@zebra.org>
612
613 * zebra-0.89 is released.
614
6152000-09-26 Akihiro Mizutani <mizutani@dml.com>
616
617 * rip_routemap.c (match_ip_nexthop): Add next-hop format check.
618
6192000-09-18 David Lipovkov <dlipovkov@OpticalAccess.com>
620
621 * rip_interface.c (ripd_api_get_if_rx_version): Corrects rip SNMP
622 and rip API functions dealing with rip version.
623
624 * rip_snmp.c (Status_Valid): SNMPv2-TC TEXTUAL-CONVENTION.
625
6262000-09-10 Kunihiro Ishiguro <kunihiro@zebra.org>
627
628 * rip_snmp.c (rip2IfLookup): Use rip_ifaddr_lookup_next() instead
629 of rip_if_lookup_next().
630
631 * rip_interface.c (rip_enable_network_lookup): Interface enable
632 check by interface's address with /32 prefix.
633
634 * ripd.c (rip_read): When RIP is configured with authentication
635 and no authentication in incoming packet, drop the packet.
636
637 * rip_interface.c (rip_interface_reset): RIP_AUTH_SIMPLE_PASSWORD
638 is default mode of authentication.
639 (rip_interface_new): Likewise.
640 (no_ip_rip_authentication_mode): Likewise.
641
642 * ripd.c (rip_read): Likewise.
643
6442000-09-10 David Lipovkov <davidl@nbase.co.il>
645
646 * rip_snmp.c: Set ASN_INTEGER v->type where it is needed.
647
6482000-09-08 Kunihiro Ishiguro <kunihiro@zebra.org>
649
650 * ripd.c (rip_auth_simple_password): Simple password
651 authentication using key-chain.
652 (rip_write_rte): Likewise.
653
654 * rip_interface.c (ip_rip_authentication_key_chain): Add check for
655 authentication string configuration.
656
6572000-09-08 Akihiro Mizutani <mizutani@dml.com>
658
659 * ripd.c (rip_write_rte): Add check for ri->auth_str.
660
6612000-09-07 Kunihiro Ishiguro <kunihiro@zebra.org>
662
663 * ripd_api.h: New file is added.
664
6652000-08-22 Kunihiro Ishiguro <kunihiro@zebra.org>
666
667 * ripd.c (rip_rte_process): rip_route_process() is renamed to
668 rip_rte_process() to clarify meanings of the function.
669 rip_route_process() is newly added to process RIP route selection.
670
6712000-08-18 Kunihiro Ishiguro <kunihiro@zebra.org>
672
673 * ripd.c (rip_incoming_filter): Extract incoming filter code to
674 function from rip_route_process(). Add check for all interface
675 filter.
676 (rip_outgoing_filter): Extract incoming filter code to function
677 from rip_output_process(). Add check for all interface filter.
678
679 * rip_zebra.c (rip_redistribute_clean): Reset redistribute status
680 when "no router rip" is performed.
681
682 * rip_interface.c (rip_interface_clean): Reset interface's RIP
683 enable status.
684
6852000-08-17 Kunihiro Ishiguro <kunihiro@zebra.org>
686
687 * ripd.c (rip_route_process): When metric infinity is received the
688 route is removed from service immediately.
689 (rip_timeout): Likewise.
690 (rip_garbage_collect): Do not delete route in garbage collection.
691 (rip_output_process): Check metric_out exceed metric infinity.
692
693 * zebra-0.88 is released.
694
6952000-08-15 Kunihiro Ishiguro <kunihiro@zebra.org>
696
697 * ripd.c (rip_distance_apply): Unlock node when there is matched
698 node.
699
7002000-08-13 Akihiro Mizutani <mizutani@dml.com>
701
702 * rip_routemap.c (match_ip_nexthop): Add check for IP address
703 validness.
704 (no_set_metric): Add new ALIAS.
705
7062000-08-07 Kunihiro Ishiguro <kunihiro@zebra.org>
707
708 * ripd.h (struct rip ): Add distance.
709
7102000-08-05 Kunihiro Ishiguro <kunihiro@zebra.org>
711
712 * rip_zebra.c (rip_zebra_ipv4_add): Use new Zebra api to register
713 routes. Pass RIP metric value to zebra.
714
7152000-08-02 Kunihiro Ishiguro <kunihiro@zebra.org>
716
717 * rip_main.c (main): Make struct thread thread from global
718 variable to local variable in main.
719
7202000-08-06 Kunihiro Ishiguro <kunihiro@zebra.org>
721
722 * ripd.c (rip_packet_dump): Add MD5 authentication dump function.
723 (rip_auth_md5): RIP MD5 authentication packet receive works.
724
7252000-08-02 David Lipovkov <davidl@nbase.co.il>
726
727 * rip_interface.c (rip_if_init): Install interface "pseudo"
728 commands.
729 (rip_interface_delete): Do not call if_delete() when interface is
730 pseudo interface.
731
7322000-07-31 Kunihiro Ishiguro <kunihiro@zebra.org>
733
734 * rip_interface.c (ip_rip_authentication_mode): "ip rip
735 authentication mode (md5|text)" is added.
736 (ip_rip_authentication_key_chain): "ip rip authentication
737 key-chain KEY-CHAIN" is added.
738 (rip_interface_clean): Clean all interface configuration.
739 (rip_interface_reset): Reset all interface configuration.
740 (rip_clean_network): Clean rip_enable_network.
741
742 * ripd.h (struct rip_interface): Add key_chain member.
743
744 * ripd.c: Include md5-gnu.h.
745
7462000-07-30 Kunihiro Ishiguro <kunihiro@zebra.org>
747
748 * ripd.h (RIP_NO_AUTH): Change RIP_NO_AUTH value from 1 to 0.
749
750 * ripd.c (rip_authentication): Use RIP_AUTH_SIMPLE_PASSWORD
751 instead of raw value 2.
752 (rip_write_rte): Likewise.
753 (rip_write_rte): Check ri->auth_type instead of ri->auth_str.
754
7552000-07-30 David Lipovkov <davidl@nbase.co.il>
756
757 * rip_interface.c (rip_if_down): Do not delete ZEBRA_ROUTE_KERNEL
758 route.
759
7602000-07-27 Kunihiro Ishiguro <kunihiro@zebra.org>
761
762 * ripd.c (rip_update_process): Add "passive-interface" command.
763
764 * ripd.h (struct rip_interface): Add passive member to struct
765 rip_interface.
766
7672000-07-24 Kunihiro Ishiguro <kunihiro@zebra.org>
768
769 * rip_interface.c (rip_if_init): Multiple RIP routes for one
770 prefix change. The codes are enclosed by #ifdef NEW_RIP_TABLE.
771
7722000-07-24 Akihiro Mizutani <mizutani@dml.com>
773
774 * rip_interface.c (rip_if_init): Use install_default() for
775 INTERFACE_NODE.
776
7772000-07-24 Kunihiro Ishiguro <kunihiro@zebra.org>
778
779 * ripd.c: First update timer will be invoked in two seconds.
780
7812000-07-09 Jochen Friedrich <jochen@scram.de>
782
783 * rip_snmp.c: Local function definitions to static. Add INTEGER
784 ASN_INTEGER and TIMETICKS ASN_TIMETICKS definition.
785 (rip2PeerLookup): Peer with domain lookup implemented.
786 (rip2PeerTable): Temporary disable RIP2PEERLASTUPDATE value
787 support due to unknown SNMP agent startup time.
788
7892000-07-05 Kunihiro Ishiguro <kunihiro@zebra.org>
790
791 * ripd.h: Sweep obsolete definitions.
792
793 * rip_interface.c (rip_split_horizon): Add "ip split-horizon"
794 command.
795
796 * ripd.c (rip_output_process): Remove split_horizon argument.
797 (rip_update_process): Likewise.
798
799 * ripd.h (struct rip_interface): Add split_horizon flag to struct
800 rip_interface.
801
8022000-07-04 Akihiro Mizutani <mizutani@dml.com>
803
804 * ripd.c (rip_version): Change VERSION to <1-2>.
805 Add "no version" command.
806
8072000-07-03 Kunihiro Ishiguro <kunihiro@zebra.org>
808
809 * rip_zebra.c (rip_redistribute_type_metric): "redistribute TYPE
810 metric <0-16>" command is added.
811
812 * rip_routemap.c (route_set_metric): Set metric_set when metric is
813 modified.
814
815 * ripd.h (struct rip_info): To check route-map set metric or not,
816 new member metric_set is added to struct rip_info.
817
818 * ripd.c (rip_route_process): Move metric handling code from
819 rip_response_process() to rip_route_process().
820 (rip_output_process): Set output offset-list metric.
821
8222000-07-02 Kunihiro Ishiguro <kunihiro@zebra.org>
823
824 * rip_offset.c (rip_offset_list): New file for offset-list.
825
8262000-07-02 Akihiro Mizutani <mizutani@dml.com>
827
828 * ripd.h (struct rip ): Add default_metric.
829
830 * ripd.c (rip_default_metric): "default-metric <1-16>" command is
831 added.
832 (config_write_rip): Change configuration order.
833
834 * rip_zebra.c: Fix help strings.
835
8362000-07-02 David Lipovkov <davidl@nbase.co.il>
837
838 * rip_interface.c (rip_if_init): Add IF_DELETE_HOOK.
839
8402000-07-01 Kunihiro Ishiguro <kunihiro@zebra.org>
841
842 * ripd.c (rip_output_process): If specified route-map does not
843 exist, it treated as deny all.
844
8452000-06-30 Kunihiro Ishiguro <kunihiro@zebra.org>
846
847 * rip_routemap.c (rip_route_map_init): Call rip_route_map_update
848 when route-map is deleted.
849
8502000-06-28 Kunihiro Ishiguro <kunihiro@zebra.org>
851
852 * rip_routemap.c (set_metric): For consistency with bgpd's set
853 metric, value range is set to <0-4294967295>.
854
8552000-06-28 David Lipovkov <davidl@nbase.co.il>
856
857 * rip_routemap.c (rip_route_map_update): Add check for rip is
858 enabled or not for avoid core dump.
859
860 * rip_debug.c (debug_rip_packet_direct): Fix bug of setting
861 rip_debug_packet flag.
862
8632000-06-13 David Lipovkov <davidl@nbase.co.il>
864
865 * rip_interface.c (rip_interface_delete): All work is done in
866 rip_if_down().
867
8682000-06-06 Kunihiro Ishiguro <kunihiro@zebra.org>
869
870 * ripd.c (rip_redistribute_delete): Fix bug of missing
871 route_unlock_node() when redistribute route is not found.
872
8732000-06-05 Akihirof Mizutani <mizutani@dml.com>
874
875 * rip_debug.c (rip_debug_init): Disable show debugging in
876 VIEW_NODE like other protocol daemon.
877
878 * rip_routemap.c: Change command argument to more comprehensive.
879
880 METRIC -> <0-16>
881 IFNAME -> WORD
882 IP_ADDR -> A.B.C.D
883 ACCSESS_LIST -> WORD
884
8852000-06-05 David Lipovkov <davidl@nbase.co.il>
886
887 * rip_interface.c (rip_interface_delete): Delete all routes
888 include static and kernel through the interface , because even if
889 the interface is added again there is no guarantee that it will
890 get the same ifindex as before.
891
8922000-05-31 Akihirof Mizutani <mizutani@dml.com>
893
894 * rip_debug.c: Fix rip debug help string.
895
8962000-04-27 Mirko Karanovic <mkaranov@torsel.alcatel.com>
897
898 * rip_interface.c (rip_interface_down): Remove interface from
899 multicast group when interface goes down.
900
9012000-04-03 David Lipovkov <davidl@nbase.co.il>
902
903 * rip_interface.c (rip_interface_down): Implemented rip functions
904 for interface up/down events: rip_interface_up() and
905 rip_interface_down()
906
9072000-03-16 David Lipovkov <davidl@nbase.co.il>
908
909 * rip_zebra.c (rip_zclient_init): Added rip functions for
910 interface up/down events.
911
9122000-02-15 Hidetoshi Shimokawa <simokawa@sat.t.u-tokyo.ac.jp>
913
914 * ripd.c (rip_write_rte): "set metic" in route-map has no effect
915 for RIPv1 in ripd. It worked fine for RIPv2.
916
9172000-01-17 Kunihiro Ishiguro <kunihiro@zebra.org>
918
919 * ripd.c (show_ip_protocols_rip): Fix bug of "show ip protocls"
920 mis-display RIP version.
921
922 * ripd.h (struct rip_peer): Add timeout thread to rip_peer
923 structure.
924
9252000-01-16 Kunihiro Ishiguro <kunihiro@zebra.org>
926
927 * rip_peer.c: Add new file for supporting RIP peer.
928
9291999-12-26 David Lipovkov <davidl@nbase.co.il>
930
931 * ripd.c (rip_authentication): RIP authantication string is 16
932 bytes long.
933
9341999-12-10 Kunihiro Ishiguro <kunihiro@zebra.org>
935
936 * ripd.c (rip_read): Add check for minimum packet length.
937 Authentication check is moved from rip_process_response() to
938 rip_read(). Patch from David Lipovkov <davidl@nbase.co.il> is
939 applied then add rte number check by Kunihiro Ishiguro
940 <kunihiro@zebra.org>.
941
9421999-12-07 Kunihiro Ishiguro <kunihiro@zebra.org>
943
944 * ripd.c (rip_response_process): In case of packet is RIPv2 and
945 network is non zero and netmask is zero, apply netmask rule as
946 same as RIPv1.
947
9481999-11-06 Kunihiro Ishiguro <kunihiro@zebra.org>
949
950 * ripd.c (rip_timers): Fix bug of timers basic argument format.
951
9521999-11-03 Kunihiro Ishiguro <kunihiro@zebra.org>
953
954 * rip_snmp.c (rip2IfConfAddress): Forgot to include
955 RIP2IFCONFDOMAIN.
956
9571999-10-28 Kunihiro Ishiguro <kunihiro@zebra.org>
958
959 * ripd.h (struct rip_peer): New structure added.
960
9611999-10-26 Kunihiro Ishiguro <kunihiro@zebra.org>
962
963 * rip_zebra.c (rip_zebra_ipv4_add): Increment
964 rip_global_route_changes when route change occur.
965 (rip_zebra_ipv4_delete): Likewise.
966
967 * ripd.c (rip_request_process): Increment rip_global_queries when
968 reply to the query is sent.
969
9701999-10-25 Kunihiro Ishiguro <kunihiro@zebra.org>
971
972 * rip_debug.c (rip_debug_reset): Reset function added.
973
974 * ripd.c (rip_update_process): Logging bug is fixed.
975
9761999-10-10 Marc Boucher <marc@mbsi.ca>
977
978 * ripd.c (config_write_rip): Add config_write_distribute() call.
979
9801999-09-29 Kunihiro Ishiguro <kunihiro@zebra.org>
981
982 * ripd.c (rip_distribute_update): Fix bug of access-list
983 prefix-list updates.
984
9851999-09-10 VOP <vop@unity.net>
986
987 * rip_zebra.c: Add redistribute route-map feature.
988
9891999-09-10 Kunihiro Ishiguro <kunihiro@zebra.org>
990
991 * ripd.c (rip_response_process): Add check for given prefix is
992 given mask applied one.
993
9941999-09-03 VOP <vop@unity.net>
995
996 * rip_interface.c (rip_interface_multicast_set): Bug fix about
997 setting multicast interface.
998
9991999-09-02 VOP <vop@unity.net>
1000
1001 * rip_routemap.c: New file added.
1002
10031999-09-02 Kunihiro Ishiguro <kunihiro@zebra.org>
1004
1005 * ripd.c (show_ip_protocols_rip): Show next update time.
1006 (show_ip_protocols_rip): Show redistribute information.
1007
10081999-08-25 Kunihiro Ishiguro <kunihiro@zebra.org>
1009
1010 * RIPv2-MIB.txt: New file added.
1011
1012 * rip_snmp.c: New file added.
1013
10141999-08-24 Kunihiro Ishiguro <kunihiro@zebra.org>
1015
1016 * rip_interface.c (ip_rip_authentication_string): RIPv2
1017 authentication command is added.
1018
10191999-08-23 Kunihiro Ishiguro <kunihiro@zebra.org>
1020
1021 * rip_interface.c (rip_interface_multicast_set): Process of
1022 setting IP_MULTICAST_IF on specific interface.
1023
1024 * ripd.c (rip_read): Add packet size check.
1025
10261999-08-16 Kunihiro Ishiguro <kunihiro@zebra.org>
1027
1028 * ripd.c (rip_request_process): Fill in RIP_METRIC_INFINITY with
1029 network byte order using htonl ().
1030 (rip_response_process): Pass host byte order address to IN_CLASSC
1031 and IN_CLASSB macro.
1032
10331999-08-08 davidm@nbase.co.il (David Mozes)
1034
1035 * rip_zebra.c (rip_zebra_read_ipv4): Fix split horizon problem.
1036
10371999-07-03 Kunihiro Ishiguro <kunihiro@zebra.org>
1038
1039 * ripd.c (rip_timer_set): Function added.
1040
10411999-07-01 Kunihiro Ishiguro <kunihiro@zebra.org>
1042
1043 * rip_debug.c: New file added.
1044 rip_debug.h: New file added.
1045
10461999-07-01 Rick Payne <rickp@rossfell.co.uk>
1047
1048 * rip_zebra.c (zebra_init): Install standard commands to
1049 ZEBRA_NODE.
1050
10511999-06-01 David Luyer <luyer@ucs.uwa.edu.au>
1052
1053 * ripd.c (rip_process_route): Add support for RIP version 1.
1054
10551999-05-29 Kunihiro Ishiguro <kunihiro@zebra.org>
1056
1057 * rip_zebra.c: Change to use lib/zclient.[ch].
1058
10591999-05-20 Carlos Alberto Barcenilla <barce@frlp.utn.edu.ar>
1060
1061 * ripd.c (rip_add_route): Change the existance route's metric check
1062 to the condition specified by RFC2453.
1063
10641999-05-17 Carlos Alberto Barcenilla <barce@frlp.utn.edu.ar>
1065
1066 * ripd.c (rip_process_route): Add the if metric to the route metric.
1067
1068 * ripd.c (rip_add_route): Deleted add if metric to the route.
1069
10701999-05-16 Carlos Alberto Barcenilla <barce@frlp.utn.edu.ar>
1071
1072 * rip_interface.c (if_valid_neighbor): New function.
1073
1074 * ripd.c (rip_process_route): Added check whether the datagram
1075 is from a valid neighbor.
1076
10771999-05-15 Kunihiro Ishiguro <kunihiro@zebra.org>
1078
1079 * ripd.c (rip_process_route): Set interface pointer to rinfo.
1080
10811999-05-15 Carlos Alberto Barcenilla <barce@frlp.utn.edu.ar>
1082
1083 * ripd.c (rip_check_address): Unicast and not net 0 or 127 check
1084 added.
1085
10861999-05-14 Stephen R. van den Berg <srb@cuci.nl>
1087
1088 * rip_main.c (signal_init): SIGTERM call sigint.
1089 (sigint): Loggging more better message.
1090
10911999-05-10 Kunihiro Ishiguro <kunihiro@zebra.org>
1092
1093 * ripd.c (rip_add_route): Fix previous route_unlock_node() chenge.
1094
1095 * rip_main.c (main): Change default zlog output to ZLOG_STDOUT for
1096 debugging.
1097
10981999-05-09 Patrick Koppen <koppen@rhrk.uni-kl.de>
1099
1100 * rip_interface.c (rip_request): Fix old semantics for fetching
1101 connected address.
1102
1103 * ripd.c (rip_add_route): Update timer when the route is updated.
1104
11051999-05-09 Carlos Alberto Barcenilla <barce@frlp.utn.edu.ar>
1106
1107 * rip_zebra.c (struct zebra): Add ridist_static, ridist_connect,
1108 redist_rip, redist_ripng.
1109
1110 * rip_zebra.c (zebra_create): Updated for current zebra method.
1111
1112 * ripd.c (rip_add_route): Add missing route_unlock_node().
1113
11141999-05-03 Kunihiro Ishiguro <kunihiro@zebra.org>
1115
1116 * ripd.c (rip_add_route): Add metric check. Reported by Carlos
1117 Alberto Barcenilla <barce@frlp.utn.edu.ar>.
1118
11191999-02-18 Peter Galbavy <Peter.Galbavy@knowledge.com>
1120
1121 * syslog support added
1122
11231998-12-13 Kunihiro Ishiguro <kunihiro@zebra.org>
1124
1125 * ripd.c (rip_announce_func): Apply new lib functions.
1126
11271998-12-09 Kunihiro Ishiguro <kunihiro@zebra.org>
1128
1129 * ripd.c (config_write_rip): Delete vector v argument.
1130 * rip_zebra.c (config_write_zebra): Likewise.
1131 * rip_interface.c (interface_config_write): Likewise.
1132
11331998-09-07 Kunihiro Ishiguro <kunihiro@zebra.org>
1134
1135 * rip_announce.c (rip_rib_close): When ripd terminates delete all
1136 added route.
1137
11381998-09-01 Kunihiro Ishiguro <kunihiro@zebra.org>
1139
1140 * rip_interface.c: return read packet size.
1141
11421998-05-18 Yamshita TAKAO <jargon@lares.dti.ne.jp>
1143
1144 * ripd.h: Modify for compile on Solaris.
1145
11461998-05-07 Kunihiro Ishiguro <kunihiro@zebra.org>
1147
1148 * ripd.c: DEFUN function return CMD_SUCCESS.
1149 change xmalloc to XMALLOC macro.
1150
11511998-05-03 Kunihiro Ishiguro <kunihiro@zebra.org>
1152
1153 * rip_main.c: change CONFDIR to SYSCONFDIR.
1154
11551998-05-01 Kunihiro Ishiguro <kunihiro@zebra.org>
1156
1157 * .cvsignore: added.
1158
11591998-02-04 Kunihiro Ishiguro <kunihiro@zebra.org>
1160
1161 * rip_interface.c (config_write_interface): correct ADVERTISE spell.
1162
1163 * rip_main.c (main): add usage() and make cleanup.
1164
11651998-01-05 Kunihiro Ishiguro <kunihiro@zebra.org>
1166
1167 * ripd.c (rip_version): add rip version command.
1168
11691998-01-04 Kunihiro Ishiguro <kunihiro@zebra.org>
1170
1171 * rip_interface.c (zebra_get_interface): added to get
1172 interface's information.
1173
1174 * ChangeLog: create.