blob: cbfb4b66774c6a6d15cf02d8a4a40339585c2ace [file] [log] [blame]
hassoebf1ead2005-09-21 14:58:20 +000012005-09-21 David Young <dyoung@ojctech.com>
2
3 * zebra_rib.c: Reduce the height of some staircases. Fix
4 rib_delete_ipv6() to match routes in the RIB by their gateway as
5 well as by destination.
6
paul319572c2005-09-21 12:30:08 +000072005-09-21 Paul Jakma <paul.jakma@sun.com>
8
9 * zebra_rib.c: (static_uninstall_ipv{4,6}) Fix regression wrt
10 removal of static routes with multiple-hops introduced with
11 the workqueue conversion. We should free the relevant
12 nexthop and then get rib_process to run, otherwise we just
13 get same static route back again (with no way to unconfigure
14 it, because its already deleted from configuration).
15
paulca162182005-09-12 16:58:52 +0000162005-09-12 Paul Jakma <paul.jakma@sun.com>
17
18 * (general) RTM_CHANGE and implicit withdraw on RTM_NEWADDR
19 support.
20 * connected.c: (connected_withdraw) new function. withdraw a
21 connected subnet address set from zebra, and pass information
22 along to clients.
23 (connected_announce) similar, but to announce a new connected
24 subnet address set.
25 (connected_check_ipv4) renamed to connected_check, as its
26 AFI independent.
27 (connected_add_ipv{4,6}) Remove the connected address announce
28 stuff, use connected_announce instead.
29 If connected_check indicates address is already present,
30 treat it as an implicit withdraw of the existing address, ie
31 remove the old address details and replace with the new
32 details.
33 (connected_delete_ipv{4,6}) Use connected_withdraw.
34 (connected_check_ipv6) deleted in favour of connected_check.
35 * connected.h: Rename connected_check_ipv4 to connected_check.
36 delete connected_check_ipv6.
37 * interface.c: Use connected_check rather than the AFI specific
38 symbols.
39 * kernel_socket.c: (rtm_read) RTM_CHANGE support. Create a
40 rib delete event for the existing route, before adding route
41 again.
42 (kernel_read) we can handle RTM_CHANGE now.
43
hassobe61c4e2005-08-27 06:05:47 +0000442005-08-27 Hasso Tepper <hasso at quagga.net>
45
46 * zebra_rib.c, rib.h: Add distance and metric arguments to the
47 rib_add_ipv6() function so that IPv6 routes in RIB can have correct
48 metric. No IPv6 routing daemon uses distance yet though.
49 * zserv.c, connected.c, kernel_socket.c, rt_netlink.c,
50 rtread_proc.c,zserv.c: Pass metric and distance info to the
51 rib_add_ipv6().
52
paul6eb88272005-07-29 14:36:00 +0000532005-07-29 Paul Jakma <paul.jakma@sun.com>
54
55 * interface.c: (if_delete_update) should always be available, not
56 just on RTM_IFANNOUNCE/NETLINK systems.
57 * kernel_socket.c: (ifan_read) only call if_delete_update when
58 interface departs, dont if_delete, because we wish to retain
59 interface configuration state even when interfaces are removed.
60 (ifm_read) If we dont have RTM_IFANNOUNCE, then transitioning
61 to down state is only chance we have to clean up interface in case
62 it is deleted (eg Solaris down -> unplumb -> plumb up).
63 * redistribute.c: (zebra_interface_delete_update) should always be
64 available, we /will/ call it now on all systems, via
65 if_delete_update.
66 * zserv.c: (zsend_interface_delete) ditto
67 (zsend_interface_address) Update the call-flow diagramme, to
68 reflect that if_delete_update /is/ now called on all systems,
69 potentially.
70 * zserv.h: (zsend_interface_delete) unconditionally exported, as
71 above.
72
paula1ac18c2005-06-28 17:17:12 +0000732005-06-28 Paul Jakma <paul.jakma@sun.com>
74
75 * (global) Extern and static'ification, with related fixups
76 of declarations, ensuring files include their own headers, etc.
paulea6f82b2005-06-28 17:20:26 +000077 * if_ioctl.c: (interface_info_ioctl) fix obvious arg mis-order in
paula1ac18c2005-06-28 17:17:12 +000078 list loop
paulea6f82b2005-06-28 17:20:26 +000079 * kernel_socket.c: (RTA_{ADDR,ATTR}_GET) fix mistake, NULL check
80 should be on DEST argument
paula1ac18c2005-06-28 17:17:12 +000081
paul62debbb2005-06-14 14:07:07 +0000822005-06-14 Paul Jakma <paul.jakma@sun.com>
83
84 * kernel_socket.c: consolidate the IFAM{ADDR,MASK}GET and
85 RTM{ADDR,MASK}GET macros into generic rta_addrs macros,
86 RTA_{ADDR,ATTR}_GET.
87 (af_check) could use 'inline' attribute
88 (ifam_read_mesg) remove IFAM{ADDR,MASK}GET macro, change to
89 generic macro.
90 (rtm_read_mesg) similar
91
hasso1ada8192005-06-12 11:28:18 +0000922005-06-12 Hasso Tepper <hasso at quagga.net>
93
94 * rt_netlink.c: Remove netlink-addr socket declaration, it's not used.
95 * rt_netlink.c (netlink_parse_info): Fix debug messages - nlmsg_pid is
96 unsigned and one zlog call had swapped arguments.
97 * rt_netlink.c (netlink_route_multipath): Fix compile with disabled
98 IPv6 support.
99
paul1dcb5172005-05-31 08:38:50 +00001002005-05-31 Paul Jakma <paul.jakma@sun.com>
101
102 * zserv.c: (zsend_route_multipath) Fix bug if route is sent
103 with no NEXTHOP_FLAG_FIB nexthops. As ZAPI_MESSAGE_IFINDEX
104 and ZAPI_MESSAGE_NEXTHOP are always set, clients would try
105 read non-existent nexthop information and hit stream assert.
106 Zserv is still broken for multi-nexthop messages, but it always was.
107
paul69e10ad2005-05-06 21:27:33 +00001082005-05-06 Paul Jakma <paul.jakma@sun.com>
109
110 * zserv.h: Remove ZEBRA_PORT definition, its in lib/zebra.h now
111
paul4d38fdb2005-04-28 17:35:14 +00001122005-04-28 Paul Jakma <paul.jakma@sun.com>
113
114 * rib.h: (struct rib) Add lock field for refcounting.
115 * zserv.h: (struct zebra_t) Add a ribq workqueue to the zebra
116 'master' struct.
117 * zserv.c: (zread_ipv4_add) XMALLOC then memset should be XCALLOC.
118 * zebra_rib.c: Clean up refcounting of route_node, make struct rib
119 refcounted and convert rib_process to work-queue. In general,
120 rib's should be rib_addnode'd and delnode'd to route_nodes, and
121 these symmetrical functions will manage the locking of referenced
122 route_node and freeing of struct rib - rather than having users
123 manage each seperately - with much scope for bugs..
124 (newrib_free) removed and replaced with rib_lock
125 (rib_lock) new function, check state of lock and increment.
126 (rib_unlock) new function, check lock state and decrement. Free
127 struct rib if refcount hits 0, freeing struct nexthop's, as
128 newrib_free did.
129 (rib_addnode) Add RIB to route_node, locking both.
130 (rib_delnode) Delete RIB from route_node, unlocking each.
131 (rib_process) Converted to a work-queue work function.
132 Functional changes are minimal, just arguments, comments and
133 whitespace.
134 (rib_queue_add_qnode) Helper function to setup a ribq item.
135 (rib_queue_add) Helper function, same arguments as old
136 rib_process, to replace in callers of rib_process.
137 (rib_queue_qnode_del) ribq deconstructor.
138 (rib_queue_init) Create the ribq.
139 (rib_init) call rib_queue_init.
140 (remainder) Sanitise refcounting of route_node's. Convert to
141 rib_queue_add, rib_addnode and rib_delnode. Change XMALLOC/memset
142 to XCALLOC. Remove calls to nexthop_delete and nexthop_free.
143
paulcf460ef2005-04-10 16:54:26 +00001442005-04-10 Paul Jakma <paul@dishone.st>
145
146 * if_ioctl_solaris.c: (if_lookup_linklocal) fix order of args
147 in ALL_LIST_ELEMENTS_RO macro.
148
ajs57a14772005-04-10 15:01:56 +00001492005-04-10 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
150
151 * zserv.c (zebra_client_read): Fix bug: first read attempt should
152 read ZEBRA_HEADER_SIZE minus the number of bytes already read.
153 Improve efficiency by maintaining a calculation of the number
154 of bytes read instead of calling stream_get_endp multiple times.
155 If message length is too small, issue a warning message (not debug)
156 before closing the connection. And also check that message length
157 is not too big.
158
hasso206d8052005-04-09 16:38:51 +00001592005-04-09 Hasso Tepper <hasso at quagga.net>
160
hassofa599802005-04-09 16:59:28 +0000161 * rt_netlink.c: One tiny missing comma caused pointless debug messages
162 about IPv6 nexthops.
163
1642005-04-09 Hasso Tepper <hasso at quagga.net>
165
hasso206d8052005-04-09 16:38:51 +0000166 * rt_netlink.c (netlink_parse_info): Fix warning. It's safe to cast
167 status to unsigned here, because we already checked that it isn't
168 negative or 0.
169 * rt_netlink.c (netlink_interface_addr): Prefix length belongs to the
170 address, not to the interface.
171 * rt_netlink.c (netlink_route_multipath): Fix debug. No useless info
172 is printed out now and IPv6 info is handeled.
173
paul3d1dc852005-04-05 00:45:23 +00001742005-04-05 Paul Jakma <paul@dishone.st>
175
176 * zserv.c: print more helpful errors when we fail to successfully
177 bind and listen on zserv socket. Closes bugzilla #163.
178
ajsd2fc8892005-04-02 18:38:43 +00001792005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
180
ajs08dbfb62005-04-03 03:40:52 +0000181 * if_ioctl.c: (interface_list_ioctl) Use if_get_by_name_len.
182 * if_proc.c: (ifaddr_proc_ipv6) Increase size of ifname buffer to
183 avoid overflow.
184 * kernel_socket.c: (ifan_read) Use if_get_by_name_len.
185
1862005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
187
ajsa3491982005-04-02 22:50:38 +0000188 * kernel_socket.c: (ifm_read) Use new if_lookup_by_name_len function
189 to save a memcpy.
190 * if_ioctl_solaris.c: (interface_list_ioctl) Fix subtle bug with new
191 if_get_by_name_len function.
192
1932005-04-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
194
ajsd2fc8892005-04-02 18:38:43 +0000195 * interface.c: (if_new_intern_ifindex) Remove obsolete function.
196 (if_delete_update) After distributing the interface deletion message,
197 set ifp->ifindex to IFINDEX_INTERNAL.
198 (if_dump_vty) Detect pseudo interface by checking if ifp->ifindex is
199 IFINDEX_INTERNAL.
200 (zebra_interface) Check return code from interface_cmd.func.
201 Do not set internal ifindex values to if_new_intern_ifindex(),
202 since we now use IFINDEX_INTERNAL for all pseudo interfaces.
203 * kernel_socket.c: (ifm_read) Fix code and comments to reflect that
204 all internal interfaces now have ifp->ifindex set to IFINDEX_INTERNAL.
205 * rt_netlink.c: (set_ifindex) New function used to update ifp->ifindex.
206 Detects interface rename events by checking if that ifindex is already
207 being used. If it is, delete the old interface before assigning
208 the ifindex to the new interface.
209 (netlink_interface, netlink_link_change) Call set_ifindex to update
210 the ifindex.
211
hassob7ed1ec2005-03-31 20:13:49 +00002122005-03-31 Hasso Tepper <hasso at quagga.net>
213
214 * rt_netlink.c (netlink_talk_filter): Show always warning message,
215 it's not for debug.
216 * rt_netlink.c (netlink_talk): Don't assume we use netlink_cmd
217 although we do now actually.
218 * rt_netlink.c (netlink_route, netlink_route_multipath): Always use
219 netlink_cmd to send messages to the kernel.
220
ajs2da40f42005-03-30 16:33:13 +00002212005-03-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
222
223 * irdp.h: Add prototype for irdp_sock_init, and fix protos for
224 other irdp_* functions.
225 * irdp_interface.c: (irdp_if_start) If irdp_sock is negative,
226 call irdp_sock_init to create the IRDP socket.
227 (irdp_if_init) Rename to irdp_init().
228 (get_iflist_ifp) Remove function that is a duplicate of
229 if_lookup_by_index.
230 (*) Make many functions static. And remove superfluous "\n" from
231 several zlog messages.
232 * irdp_main.c: (irdp_init) Remove function that used to call
233 irdp_if_init() and irdp_sock_init(), since we will now create
234 the socket only upon first use.
235 (irdp_sock_init) Do not update global irdp_sock variable, just
236 return the fd and assume that the caller will do so. If setsockopt
237 calls fail, close the socket before returning -1.
238 (*) Make many functions static.
239 * irdp_packet.c: Initialize irdp_sock to -1.
240 (irdp_read_raw) Call standard library function if_lookup_by_index
241 instead of get_iflist_ifp.
242 (irdp_recvmsg) Should be static, not global.
243
ajsa608bbf2005-03-29 17:03:49 +00002442005-03-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
245
246 * rt_netlink.c: (netlink_link_change) If the status of an
247 operative interface changes (e.g. MTU changes), the client
248 daemons should be notified by calling zebra_interface_up_update.
249 Previously, the information was being updated in zebra's
250 interface structure, but the clients were not notified of
251 changes to an operative interface.
252
vincent7cee1bb2005-03-25 13:08:53 +00002532005-03-25 Jean-Mickael Guerin <jean-mickael.guerin@6wind.com>
254 * interface.c, interface.h, rtadv.c, rtadv.h: modifications to
255 IPv6 Neighbor Discovery according to RFC3775, section 7:
256 o 1-bit Home Agent flag management in Router Advertisement (7.1).
257 o 1-bit Router Address flag management in Prefix Information
258 Option (7.2).
259 o Advertisement Interval Option (7.3)
260 o Home Agent Information Option (7.4)
261 o Changes to Sending Router Advertisements more frequently (7.5)
262
hassoed9bb6d2005-03-13 19:17:21 +00002632005-03-13 Hasso Tepper <hasso at quagga.net>
264
265 * zebra/interaface.c: "show interface description" command
266 implemented.
267
paulc1f01f32005-03-12 06:33:14 +00002682005-03-12 Paul Jakma <paul@dishone.st>
269
270 * rt_netlink.c: (netlink_route_multipath) dont set equalise flag.
271 No stock Linux kernel has ever supported it, and even if it had
272 it's not generally a good idea.
273
hasso42a66d72005-03-07 08:19:44 +00002742005-03-07 Michael Sandee <voidptr@voidptr.sboost.org>
275
276 * if_proc.c, ipforward_proc.c, rtread_proc.c: Fix fd leaks.
277
hasso3452d472005-03-06 13:42:05 +00002782005-03-06 Hasso Tepper <hasso at quagga.net>
279
280 * interface.c: Fix CRC and frame errors statistics in Linux.
281
ajs719e9742005-02-28 20:52:15 +00002822005-02-28 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
283
284 * zserv.c: Must include network.h and buffer.h for non-blocking I/O.
285 Remove global message_queue and t_write (need separate buffering for
286 each client).
287 (zebra_server_dequeue,zebra_server_enqueue) Remove functions
288 related to old buggy buffering code.
289 (zserv_delayed_close) New thread callback function to delete a client.
290 (zserv_flush_data) New thread callback function to flush buffered
291 data to client.
292 (zebra_server_send_message) Rewritten to use buffer_write (so
293 buffering of writes and non-blocking I/O work properly).
294 (zsend_interface_add,zsend_interface_delete,zsend_interface_address,
295 zsend_interface_update) Return 0 instead of -1 if !client->ifinfo
296 (this is not really an error). Return value from
297 zebra_server_send_message.
298 (zsend_route_multipath,zsend_ipv4_nexthop_lookup,
299 zsend_ipv4_import_lookup) Return value from zebra_server_send_message.
300 (zsend_ipv6_nexthop_lookup) Fix scope to static, and return value
301 from zebra_server_send_message.
302 (zsend_router_id_update) Must use zebra_server_send_message instead
303 of deprecated writen function. Return 0 instead of -1 if this client
304 is not subscribed to router-id updates (since this is not really
305 an error).
306 (zread_interface_add) Change type to static int. If
307 zsend_interface_add fails or zsend_interface_address fails, return -1
308 immediately (since the client has had an I/O error).
309 (zread_interface_delete,zread_ipv4_add,zread_ipv4_delete,
310 zread_ipv6_add,zread_ipv6_delete,zread_router_id_delete) Return 0
311 to indicate success.
312 (zread_ipv4_nexthop_lookup) Return value from
313 zsend_ipv4_nexthop_lookup.
314 (zread_ipv4_import_lookup) Return value from zsend_ipv4_import_lookup.
315 (zebra_read_ipv6) Remove unused function.
316 (zread_ipv6_nexthop_lookup) Return value from
317 zsend_ipv6_nexthop_lookup.
318 (zread_router_id_add) Return value from zsend_router_id_update.
319 (zebra_client_close) Call buffer_free(client->wb) and
320 thread_cancel(client->t_suicide).
321 (zebra_client_create) Allocate client->wb using buffer_new.
322 (zebra_client_read) Support non-blocking I/O by using stream_read_try.
323 Use ZEBRA_HEADER_SIZE instead of 3.
324 (zebra_accept) Fix bug: reset accept thread at top. Make client
325 socket non-blocking using the set_nonblocking function.
326 (config_write_forwarding) Fix scope to static.
327 (zebra_init) Remove initialization code for old buggy write buffering.
328 * zserv.h: Add 2 new fields to struct zserv: struct buffer *wb
329 (to enable buffered writes with non-blocking I/), and
330 struct thread *t_suicide to support delayed close on I/O
331 errors.
332 * router-id.h: Remove prototypes for zread_router_id_add and
333 zread_router_id_delete (their scope should be static to zserv.c).
334
ajs27da3982005-02-24 16:06:33 +00003352005-02-24 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
336
337 * redistribute.c: (zebra_check_addr,is_default,
338 zebra_redistribute_default,zebra_redistribute) Fix scope to be static.
339
hassoe8274dc2005-02-20 19:09:23 +00003402005-02-20 Hasso Tepper <hasso at quagga.net>
341
342 * rt_netlink.c: Don't show messages "ignoring message type 0x001[89]"
343 if we are not debugging.
344
paule31f2292005-02-19 02:00:26 +00003452005-02-19 Paul Jakma <paul@dishone.st>
346
347 * zserv.c: (zebra_read_ipv6) replace the char * arithmetic with
348 STREAM_READABLE.
349
paul1e193152005-02-14 23:53:05 +00003502005-02-14 Paul Jakma <paul@dishone.st>
351
352 * Not all Linux netlink systems have IFLA_WIRELESS
353
ajs6a52d0d2005-01-30 18:49:28 +00003542005-01-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
355
356 * ioctl.c: (if_ioctl,if_ioctl_ipv6,if_get_flags) Replace perror with
357 zlog_err.
358 * ioctl_solaris.c: (if_ioctl,if_ioctl_ipv6) Replace perror with
359 zlog_err.
360
ajs4be019d2005-01-29 16:12:41 +00003612005-01-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
362
ajs4460e7a2005-01-29 17:07:40 +0000363 * if_ioctl_solaris.c: (interface_list_ioctl) Save errno before calling
364 zserv_privs.change.
365 * ioctl{,_solaris}.c: (if_ioctl,if_ioctl_ipv6) Save errno before calling
366 zserv_privs.change.
367 * ipforward_solaris.c: (solaris_nd) Save errno before calling
368 zserv_privs.change.
369 * irdp_main.c: (irdp_sock_init) Save errno before calling
370 zserv_privs.change.
371
3722005-01-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
373
ajs4be019d2005-01-29 16:12:41 +0000374 * rt_netlink.c: (netlink_socket,netlink_request,netlink_parse_info,
375 netlink_talk) Save errno before calling zserv_privs.change.
376
paulc15cb242005-01-24 09:05:27 +00003772005-01-24 Martin Pot <mpot at martybugs.net>
378
379 * zebra/rt_netlink.c: ignore wireless newlink netlink messages.
380
hasso6f2c27a2005-01-18 13:44:35 +00003812005-01-18 Hasso Tepper <hasso at quagga.net>
382
383 * interface.c: Better statistics output in "show interface" command in
384 case of /proc being used.
385
hasso583d8002005-01-16 23:34:02 +00003862005-01-17 Hasso Tepper <hasso at quagga.net>
387
388 * main.c: With --nl-bufsize argument is required.
389
paul865b8522005-01-05 08:30:35 +00003902005-01-05 Paul Jakma <paul@dishone.st>
391
392 * zserv.c: (zebra_accept) Comment out setting of socket to NONBLOCK
393 for now, as we dont actually deal with with resending.... See
394 bugzilla #122, fix from wawa@yandex-team.ru (Vladimir Ivanov).
395 * kernel_socket.c: (routing_socket) ditto.
396
ajsb99760a2005-01-04 16:24:43 +00003972005-01-04 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
398
399 * rtadv.c: (rtadv_recv_packet,rtadv_send_packet) Use ZCMSG_FIRSTHDR
400 instead of CMSG_FIRSTHDR.
401
ajs341a8f12004-12-22 16:32:16 +00004022004-12-22 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
403
404 * connected.c: (connected_add_ipv4) Limit warning about /32 addresses
405 with no peer specified to PtP interfaces only.
406
hassob8adec12004-12-18 16:03:28 +00004072004-12-18 Hasso Tepper <hasso at quagga.net>
408
409 * zebra_vty.c: Fix "show ipv6 route <proto>" command help and make it
410 work for isis routes.
411
gdt6a250b02004-12-09 14:48:12 +00004122004-12-09 Greg Troxel <gdt@fnord.ir.bbn.com>
413
414 * kernel_socket.c (rtmsg_debug): char * => const char *
415
ajs274a4a42004-12-07 15:39:31 +00004162004-12-07 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
417
ajsb6178002004-12-07 21:12:56 +0000418 * *.c: Change level of debug messages to LOG_DEBUG.
419
4202004-12-07 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
421
ajs274a4a42004-12-07 15:39:31 +0000422 * main.c: (main) The 2nd argument to openzlog has been removed.
423 So stdout logging will no longer be enabled by default.
424 * irdp_main.c: (irdp_finish) Reduce severity of shutdown message
425 from LOG_WARNING to LOG_INFO.
426
ajs887c44a2004-12-03 16:36:46 +00004272004-12-03 Andrew J. Schorr <ajschorr@alumni.princeton.edu>
428
429 * main.c: (sigint) Use zlog_notice for termination message.
430 (main) Add a startup announcement using zlog_notice.
431
hassoaccb1562004-11-25 19:21:07 +00004322004-11-25 Hasso Tepper <hasso at quagga.net>
433
434 * irdp_interface.c: Remove comment from DEFUN, it breaks vtysh because
435 it confuses extract.pl.
hassoc0652302004-11-25 19:33:48 +0000436 * main.c: Make group to run as configurable.
hassoaccb1562004-11-25 19:21:07 +0000437
hasso6bd7c6a2004-10-28 17:32:27 +00004382004-10-28 Hasso Tepper <hasso at quagga.net>
439
440 * interface.c: Remove dead "ip tunnel" command.
441
paul06f953f2004-10-22 17:00:38 +00004422004-10-22 Paul Jakma <paul@dishone.st>
443
444 * irdp_main.c: change setsockopt_pktinfo to setsockopt_ifindex
445
hasso3fb9cd62004-10-19 19:44:43 +00004462004-10-19 Andrew J. Schorr <aschorr@telemetry-investments.com>
447
448 * rt_netlink.c: (netlink_interface_addr) For PtP interfaces, ignore
449 tb[IFA_ADDRESS] if it's the same as tb[IFA_LOCAL].
450 * interface.c: (ip_address_install) Use new ipv4_broadcast_addr
451 function.
452 * connected.c: (connected_up_ipv4) Use CONNECTED_POINTOPOINT_HOST
453 macro.
454 (connected_down_ipv4) ditto.
455 (connected_add_ipv4) Validate destination address, print warnings
456 if it does not make sense.
457
hassoc1eaa442004-10-19 06:26:01 +00004582004-10-19 Hasso Tepper <hasso at quagga.net>
459
460 * zserv.c: Fix regression introduced with zserv cleanup.
461
hassoc75105a2004-10-13 10:33:26 +00004622004-10-13 Hasso Tepper <hasso at quagga.net>
463
464 * zebra_snmp.c: Remove defaults used to initialize smux connection to
465 snmpd. Connection is initialized only if smux peer is configured.
hassob71f00f2004-10-13 12:20:35 +0000466 * zserv.c: Remove useless warnings "forwarding is already on".
hassoc75105a2004-10-13 10:33:26 +0000467
hasso39ff11d2004-10-12 15:55:19 +00004682004-10-12 Hasso Tepper <hasso at quagga.net>
469
470 * zebra_vty.c: Unbreak "show ip route" command help and make it work
471 for isis routes.
hasso39db97e2004-10-12 20:50:58 +0000472 * interface.c(if_dump_vty): Show IPv6 addresses in "show interface"
473 output. Fixes Bugzilla #119.
474 * *.c: Make some strings const and some (unsigned) casts to fix
475 compiler warnings.
hasso39ff11d2004-10-12 15:55:19 +0000476
hassofce954f2004-10-07 20:29:24 +00004772004-10-07 Hasso Tepper <hasso at quagga.net>
478
479 * connected.c, main.c, rt_netlink.c, rtadv.c, zebra_rib.c, zserv.c:
480 Fix warnings: make strings const, signed -> unsigned.
481
paul72164662004-10-05 14:39:43 +00004822004-10-05 Paul Jakma <paul@dishone.st>
483
484 * irdp_packet.c: (parse_irdp_packet) style issues.
485 Use sockopt_iphdrincl_swab_systoh.
486 Try unbork the code. Checksum the ICMP data and actually
487 compare it to received checksum. Check data length against
488 claimed length in header.
489 Always use ntoh.. when accessing addresses, even when the
490 comparison happens to be endian-safe.
491 (send_packet) minor style isues. Use
492 sockopt_iphdrincl_swab_htosys.
493 (irdp_iph_hton/ntoh) IP header to/from network/host order.
494
hassoeef1fe12004-10-03 18:46:08 +00004952004-10-03 Gilad Arnold <gilad.arnold at terayon.com>
496
497 * interface.c, interface.h: A new prefix tree of connected subnets is
498 associated with each interface structure in zebra, in which each
499 live (ie, non-synthetic) node holds a list of installed addresses
500 that belong to that prefix. Remove secondary address logic from cli.
501 See [quagga-dev 872] for detailed explanation.
502 * connected.c: Use if_subnet_add() and if_subnet_delete().
503
hasso18a6dce2004-10-03 18:18:34 +00005042004-10-03 James R. Leu <jleu at mindspring.com>
505
506 * router-id.c, router-id.h: New files. Router id selection process. If
507 there is non 127.x.x.x address in loopack interface, lowest of them
508 is chosen. If there isn't, lowest from other interfaces addresses
509 are chosen. "router-id x.x.x.x" vty command to manual override.
510 * Makefile.am: Compile new files.
511 * main.c: Initialize router id.
512 * redistribute.c: Add interface addresses into router id selection
513 lists as they (dis)appear.
514 * zserv.c, zserv.h: Sending router id related messages to daemons.
515
hassoc9e52be2004-09-26 16:09:34 +00005162004-09-26 Hasso Tepper <hasso at quagga.net>
517
518 * irdp_interface.c, irdp_main.c, irdp_packet.c, rt_netlink.c,
519 rtadv.c, zebra_vty.c: Fix compiler warnings.
520
paul0c0f9112004-09-24 08:24:42 +00005212004-09-24 Paul Jakma <paul@dishone.st>
522
paul26f7a242004-09-24 08:45:10 +0000523 * irdp_interface.c: (no_ip_irdp_address_preference_cmd)
524 add missing listnode declaration.
525
5262004-09-24 Paul Jakma <paul@dishone.st>
527
paul0c0f9112004-09-24 08:24:42 +0000528 * irdp_{interface,main}.c: lists typedef removal cleanup.
529 update some list loops to LIST_LOOP. some miscellaneous style
530 and indent fixups.
531 (no_ip_irdp_address_preference_cmd) Fix delete of referenced node
paul26f7a242004-09-24 08:45:10 +0000532 in loop.
paul0c0f9112004-09-24 08:24:42 +0000533 * irdp_packet.c: (irdp_recvmsg) Fix buggy assignment of integer
534 to pointer.
535 * if_ioctl{,_solaris}.c: lists typedef removal cleanup.
536 update some list loops to LIST_LOOP.
537
hasso52dc7ee2004-09-23 19:18:23 +00005382004-09-23 Hasso Tepper <hasso at quagga.net>
539
540 * *.[c|h]: list -> struct list *, listnode -> struct listnode *.
541
paul44983cf2004-09-22 13:15:58 +00005422004-09-22 Paul Jakma <paul.jakma@sun.com>
543
544 * zserv.c: (zsend_route_multipath) fix nasty bad memset of struct
545 in_addr to sizeof(struct in6_addr), causing odd and hard to debug
546 crash.
547
hassoc34b6b52004-08-31 13:41:49 +00005482004-08-31 Hasso Tepper <hasso at quagga.net>
549
550 * main.c, rt_netlink.c: Added -s command line switch for tuning
551 netlink receive buffer size in Linux to avoid buffer overruns.
552
gdta5ea6872004-08-26 13:24:00 +00005532004-08-26 Miles Nordin <carton@Ivy.NET>
554
555 * ipforward_sysctl.c (mib_ipv6): Use size_t for len, per
556 sysctl(3), rather than int. (Needed on NetBSD/alpha to display
557 forwarding status correctly.)
558
paul3e0b3a52004-08-23 18:58:32 +00005592004-08-23 Paul Jakma <paul@dishone.st>
560
561 * zserv.c: (zebra_init) remove implicit ip forward enabling
562
paul0de1cde2004-08-19 04:45:33 +00005632004-08-19 Paul Jakma <paul@dishone.st>
564
565 * irdp_main.c: update to match sockopt renames.
566 * irdp_packet.c: include sockopt.h and update to match sockopt
567 renames.
568
gdt57492d52004-08-11 18:06:38 +00005692004-08-11 Greg Troxel <gdt@fnord.ir.bbn.com>
570
571 * rtadv.c (rtadv_send_packet): Allocate space for control messages
572 more carefully; it was wrong on NetBSD/sparc where CMSG alignment
573 is to 8 bytes instead of 4, and overwriting the address. Use the
574 provided macros for determining lengths.
575
paul5b73a672004-07-23 15:26:14 +00005762004-07-23 Sowmini Varadhan <Sowmini.Varadhan@Sun.COM>
577
578 * if_ioctl_solaris.c: HAVE_IPV6 ifdef fixups
579 * zserv.c: ditto
580 * ioctl_solaris.c: ditto.
581 * interface.c: cast for LLADDR
582 * interface.h: Add guards, include redistribute.h and remove
583 extraneous definitions of zebra_interface_{up,down}_update
584 * ioctl.h: Add AF_IOCTL define for non SOLARIS_IPV6
585 * redistribute.h: include dependent header, zserv.h
586 * zserv.h: include dependent header, rib.h
587
paul1470baf2004-07-23 15:25:01 +00005882004-07-23 Paul Jakma <paul@dishone.st>
589
590 * irdp_main.c: use setsockopt_pktinfo_ipv4
591 * irdp_packet.c: use SOPT_SIZE_CMSG_PKTINFO_IPV4 and
592 getsockopt_pktinfo_ifindex()
593
gdtcced60d2004-07-13 16:45:54 +00005942004-07-13 David Wiggins <dwiggins@bbn.com
595
596 * kernel_socket.c (rtm_flag_dump): terminate buffer with '\0', not '0'.
597
hasso25dac852004-07-13 03:06:51 +00005982004-07-13 Hasso Tepper <hasso@estpak.ee>
599
600 * irdp_main.c: Add privilege change.
601
hasso996933f2004-07-12 16:32:56 +00006022004-07-12 Hasso Tepper <hasso@estpak.ee>
603
604 * irdp_interface.c: follow common style while naming vty command
605 functions. Avoids confusion in extract.pl.
606
gdt87efd642004-06-30 17:36:11 +00006072004-06-30 Greg Troxel <gdt@poblano.ir.bbn.com>
608
609 * main.c: define thread_master variable so that linking with
610 libzebra.so doesn't fail. Arguably zclient.o should be in a
611 separate library, but this is far less disruptive.
612
hassoca776982004-06-12 14:33:05 +00006132004-06-12 Robert Olsson <Robert.Olsson at data.slu.se>
614
615 * Added IRDP support.
616
hasso3e31cde2004-05-18 11:58:59 +00006172004-05-18 Hasso Tepper <hasso@estpak.ee>
618
619 * rtadv.c: Removed "[no] ipv6 nd send-ra" command. Replaced "ipv6 nd
620 prefix-advertisement" with "ipv6 nd prefix". Rewrite syntax of
621 "ipv6 nd prefix" command to allow various combinations of parameters
622 and flags. No defaults in configuration. Replaced on-link and
623 autoconfig with off-link and no-autoconfig flags in command syntax.
624 Cosmetic fixes in all commands. Documentation to reflect all changes.
625
paul19877dd2004-05-11 10:49:35 +00006262004-05-11 Paul Jakma <paul@dishone.st>
627
628 * Makefile.am: support for IOCTL_METHOD, as per Sowmini's patch.
paul48a46fa2004-05-11 10:55:22 +0000629 * if_ioctl_solaris.c: Fixup some erroneous privilege changes and
630 add privs.h header.
631 * ioctl_solaris.c: ditto
paulc50ae8b2004-05-11 11:31:07 +0000632 * ioctl.h: Add if_ioctl_ipv6 prototype and AF_IOCTL for SOLARIS_IPV6
633 * kernel_socket.c: Fix SAROUNDUP, compiler doesnt like do..while
634 RHS in assignments :)
635 * redistribute.c: (zebra_interface_delete_update) only used
636 if RTM_IFANNOUNCE and NETLINK is available.
637
paulb9df2d22004-05-09 09:09:59 +00006382004-05-09 Paul Jakma <paul@dishone.st>
639
640 * zserv.c: (zsend_route_multipath) Set the nexthop_num
641 field correctly. Add NEXTHOP_TYPE_IPV6_IFNAME for v6.
642 Conditionally set ZAPI_MESSAGE_METRIC flag - only for adds.
643 (zsend_ipv4_add) cruft, deleted.
644 (zsend_ipv4_delete) ditto.
645 (zsend_ipv6_add) ditto.
646 (zsend_ipv6_delete) ditto.
paul44145db2004-05-09 11:00:23 +0000647 * ioctl.c: (if_get_mtu) set mtu6 to mtu
648 * mtu_kvm.c: (if_kvm_get_mtu) set mtu6 to mtu
649 * rt_netlink.c: (netlink_interface) set mtu6 to mtu
650 (netlink_link_change) ditto
paul66e94882004-05-09 17:19:24 +0000651 * ipforward_solaris.c: fix typo of ND variable.
paul88424682004-05-09 18:21:35 +0000652 * if_ioctl_solaris.c: Add zprivs support.
653 * ioctl_solaris.c: ditto.
paul66e94882004-05-09 17:19:24 +0000654
paulb9df2d22004-05-09 09:09:59 +00006552004-05-09 Sowmini Varadhan <sowmini.varadhan@sun.com>
656
657 * zserv.c: (zsend_ipv{4,6}_{add,delete}_multipath) collapsed
658 into single zsend_route_multipath function.
659 (zsend_interface_{up,down}) collapsed into zsend_interface_update.
660 (zsend_interface_address_{add,delete}) collapsed into
661 zsend_interface_address.
662 (zsend_interface_add) send mtu6.
663 (zsend_interface_delete) ditto.
664 (zebra_write) remove unused function.
665 (various) Apply static qualifier. Add comments.
666 * zserv.h: Definitions changed as per above.
667 * redistribute.c: Changes as per zserv.c.
paul44145db2004-05-09 11:00:23 +0000668 * interface.c: (if_delete_update) only used with HAVE_NETLINK
669 and RTM_IFANNOUNCE.
670 (if_flag_dump_vty) Solaris IFF_IPV4 and IFF_IPV6 if flags
671 (if_dump_vty) print mtu6 if not same as mtu
paul88424682004-05-09 18:21:35 +0000672 * if_ioctl_solaris.c: New file, Solaris interface ioctl methods.
673 * ioctl_solaris.c: New file, Common solaris ioctl methods.
674
hasso34195bf2004-04-06 12:07:06 +00006752004-04-06 Krzysztof Oledzki <oleq@ans.pl>
676
677 * rt_netlink.c: Do not ignore metric when reading kernel routing
678 table on Linux with rt_netlink interface.
679
6802004-03-18 Hasso Tepper <hasso@estpak.ee>
hassof1d92e12004-03-18 15:40:33 +0000681
682 * interface.c: Temporary fix for handling secondary addresses
683 with label.
684
hasso55906722004-02-11 22:42:16 +00006852004-02-12 Hasso Tepper <hasso@estpak.ee>
hassof1d92e12004-03-18 15:40:33 +0000686
hasso55906722004-02-11 22:42:16 +0000687 * zserv.c: Added "ipv6 forwarding" command.
688
gdtb27900b2004-01-08 15:44:29 +00006892004-01-08 Greg Troxel <gdt@fnord.ir.bbn.com>
690
691 * kernel_socket.c (kernel_read): Use sockaddr_storage in buffer
692 for reading kernel messages to ensure enough space (necessary on
693 Solaris due to sockaddr_dl being large). Thanks to Sowmini
694 Varadhan for help with this change.
695
gdt9ccabd12004-01-06 18:23:02 +00006962004-01-06 Greg Troxel <gdt@t1.ir.bbn.com>
697
698 * rtadv.c (rtadv_send_packet): Change perror to zlog_err.
699
gdtdbee01f2004-01-06 00:36:51 +00007002004-01-05 Greg Troxel <gdt@fnord.ir.bbn.com>
gdt4bfbea82004-01-06 01:13:05 +0000701 * kernel_socket.c (ifm_read): Major cleanup. Use Sowmini's code
702 to find the sockaddr_dl in all cases, narrowing the Solaris ifdef
703 to just the accomodation of broken kernels. Check sockaddr_dl
704 carefully up front, and later assume any non-NULL sdl pointer is
705 valid. Clean up types and variable declarations, and rename
706 WRAPUP to SAROUNDUP to make the name fit the behavior.
707
7082004-01-05 Greg Troxel <gdt@fnord.ir.bbn.com>
gdtdbee01f2004-01-06 00:36:51 +0000709
710 * kernel_socket.c (kernel_read): Add a sockaddr_dl to the ifmsg
711 structure, because on Solaris sockaddr_dl is far larger than the
712 base sockaddr structure. (The code had previously been failing to
713 read all the data.)
gdt4bfbea82004-01-06 01:13:05 +0000714
gdtda26e3b2004-01-05 17:20:59 +00007152004-01-05 Greg Troxel <gdt@ahi.ir.bbn.com>
716
717 * kernel_socket.c (kernel_read): Look up interfaces by index
718 first, so that state changes which do not include a sockaddr_dl
719 now work. Add many sanity checks. In
720 particular, do not assume that a sockaddr_dl follows a message
721 without checking the ifm_addrs flags, and do not trust the length
722 in a sockaddr_dl. Add/clarify many comments.
723
gdt4b5e1352003-12-03 17:54:34 +00007242003-12-03 Greg Troxel <gdt@poblano.ir.bbn.com>
725
726 * rtadv.c: reorder includes to avoid compiler warning (define
727 structs before using them in prototypes)
728
hasso647e4f12003-05-25 11:43:52 +00007292003-05-25 Jim Crumpler <Jim.Crumpler@edion.com>
730
731 * zserv.c: Add "ip forwarding" command.
732
paul445f1432003-05-16 19:00:31 +00007332003-05-16 Gilad Arnold <gilad.arnold@terayon.com>
734
735 * zebra_rib.c: Fix memory leaks for ifname nexthops
736
7372003-04-19 Israel Keys <ikeys@agile.tv>
738
739 * rt_netlink.c: BLOCK on netlink while initialising
740
7412003-02-06 Francois Deppierraz <francois@ctrlaltdel.ch>
742
743 * rt_netlink.c (netlink_route_multipath): Set RTM_F_EQUALIZE when
744 it exists.
745
paul718e3742002-12-13 20:15:29 +00007462002-09-28 Akihiro Mizutani <mizutani@net-chef.net>
747
748 * zebra_rib.c (static_add_ipv4): Null0 static route is added.
749
7502002-09-10 Jochen Friedrich <chris+zebra@scram.de>
751
752 * rt_netlink.c: Add check for EAGAIN.
753 * kernel_socket.c: Likewise
754
7552002-06-12 Israel Keys <ikeys@oz.agile.tv>
756
757 * rt_netlink.c: Setting the NLM_F_ACK flag on the netlink command
758 message so that we get an ACK for successful netlink commands.
759 Change the netlink socket to BLOCKING while we wait for a
760 response; be it an ACK or an NLMSG_ERROR. Change
761 netlink_parse_info to deal with ACK messages.
762
7632001-11-01 Jun-ichiro itojun Hagino <itojun@iijlab.net>
764
765 * rtadv.c (rtadv_make_socket): setsockopt(IPV6_CHECKSUM) does not
766 work for ICMPv6 socket.
767
7682001-10-24 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
769
770 * rib.c (rib_process): Select connected route any case.
771
7722001-10-23 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
773
774 * interface.c (no_ip_address_secondary): Add "no" to command.
775
7762001-10-18 NOGUCHI Kay <kay@v6.access.co.jp>
777
778 * ioctl.c (if_prefix_add_ipv6): Set the prefered and valid lifetime
779 to infinity as the freebsd4.4 workaroud.
780
7812001-08-26 mihail.balikov@interbgc.com
782
783 * zebra_snmp.c: Fix snmpwalk problem such as IPv4 address
784 A.B.C.255.
785
7862001-08-22 NOGUCHI Kay <kay@v6.access.co.jp>
787
788 * rtadv.c: Do not send RA to loopback interface.
789
7902001-08-20 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
791
792 * ioctl.c (if_set_prefix): Remove Linux 2.0 specific connected
793 route treatment.
794
7952001-08-19 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
796
797 * zebra-0.92a released.
798
7992001-08-17 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
800
801 * rib.c: Kernel route is treated as EGP routes in nexthop active
802 check.
803
8042001-08-15 Kunihiro Ishiguro <kunihiro@ipinfusion.com>
805
806 * zebra-0.92 released.
807
8082001-08-08 "Akihiro Mizutani" <mizutani@dml.com>
809
810 * rib.c (show_ip_route_prefix_longer): Add longer-prefix option to
811 show route commands.
812
8132001-07-29 Yon Uriarte <havanna_moon@gmx.net>
814
815 * zserv.c (zsend_ipv4_add_multipath): Add
816 NEXTHOP_TYPE_IPV4_IFINDEX check.
817
8182001-07-29 NOGUCHI Kay <kay@v6.access.co.jp>
819
820 * rtadv.c: Apply valid lifetime, preferred lifetime, onilnk flag,
821 autonomous address-configuration flag patch.
822 (no_ipv6_nd_suppress_ra): Change "ipv6 nd send-ra" to "no ipv6 nd
823 suppress-ra".
824
8252001-07-24 NOGUCHI Kay <kay@v6.access.co.jp>
826
827 * rtadv.c (ipv6_nd_ra_interval): Add "ipv6 nd ra-interval SECONDS"
828 command.
829
8302001-07-24 Jun-ichiro itojun Hagino <itojun@iijlab.net>
831
832 * rt_socket.c (kernel_rtm_ipv4): Add KAME/NetBSD151 equal cost
833 multicast FIB support both IPv4 and IPv6.
834
8352001-07-24 Hal Snyder <hal@vailsys.com>
836
837 * if_ioctl.c (interface_list_ioctl): Fix bug of failing to get the
838 full list of interfaces on some configurations of OpenBSD.
839
8402001-07-23 NOGUCHI Kay <kay@v6.access.co.jp>
841
842 * rtadv.c (ipv6_nd_send_ra): Apply [zebra 9320] to fix "ipv6 nd
843 send-ra" bug.
844 (ipv6_nd_ra_lifetime): "ipv6 nd ra-lifetime 0" for default router
845 availability.
846 (ipv6_nd_managed_config_flag): "ipv6 nd managed-config-flag" is
847 added.
848 (ipv6_nd_other_config_flag): "ipv6 nd other-config-flag" is added.
849
8502001-07-23 Jun-ichiro itojun Hagino <itojun@iijlab.net>
851
852 * ioctl.c (if_ioctl): Change ioctl argument from int to u_long.
853
854 * rt_ioctl.c: Likewise.
855
8562001-07-23 Jun-ichiro itojun Hagino <itojun@iijlab.net>
857
858 * kernel_socket.c (rtm_write): Only set RTF_CLONING when the
859 interface is not p2p.
860
8612001-04-23 Kunihiro Ishiguro <kunihiro@zebra.org>
862
863 * ioctl.c (if_prefix_add_ipv6): Fix argument type.
864
8652001-04-06 Toshiaki Takada <takada@zebra.org>
866
867 * zserv.c (zsend_interface_delete): Use client->obuf instead of
868 allocating new stream.
869
8702001-03-10 Kunihiro Ishiguro <kunihiro@zebra.org>
871
872 * rt_netlink.c: Revert RTPROT_BOOT change.
873
8742001-03-08 Kunihiro Ishiguro <kunihiro@zebra.org>
875
876 * rt_netlink.c (netlink_route_change): Skip RTPROT_BOOT route.
877 (netlink_routing_table): Likewise.
878
8792001-03-07 "Akihiro Mizutani" <mizutani@dml.com>
880
881 * zserv.c (zsend_ipv4_add_multipath): Send metric value to
882 protocol daemons.
883
8842001-02-18 Kunihiro Ishiguro <kunihiro@zebra.org>
885
886 * rt_netlink.c (netlink_routing_table): Do not return
887 tb[RTA_GATEWAY] is NULL. Reported by: "Michael O'Keefe"
888 <mokeefe@qualcomm.com>.
889
8902001-02-08 Kunihiro Ishiguro <kunihiro@zebra.org>
891
892 * if_ioctl.c (interface_list_ioctl): Call if_add_update().
893 Suggested by: Chris Dunlop <chris@onthe.net.au>.
894
8952001-02-01 Kunihiro Ishiguro <kunihiro@zebra.org>
896
897 * rib.c (nexthop_active_ipv4): When nexthop type is
898 NEXTHOP_TYPE_IPV4_IFINDEX, propery set the ifindex to rifindex.
899
900 * zserv.c: Initialize rtm_table_default with 0.
901
902 * zebra-0.91 is released.
903
9042001-01-31 Kunihiro Ishiguro <kunihiro@zebra.org>
905
906 * kernel_socket.c (rtm_read): Filter cloned route. Suggested by:
907 Jun-ichiro itojun Hagino <itojun@iijlab.net>
908
9092001-01-30 Kunihiro Ishiguro <kunihiro@zebra.org>
910
911 * connected.c (connected_up_ipv6): When point-to-point destination
912 address is ::, use local address for connected network.
913 (connected_down_ipv6): Likewise.
914
9152001-01-25 Kunihiro Ishiguro <kunihiro@zebra.org>
916
917 * zserv.c (zebra_serv): Add missing close() call. Reported by:
918 David Waitzman <djw@vineyard.net>.
919
9202001-01-24 Kunihiro Ishiguro <kunihiro@zebra.org>
921
922 * rib.c (rib_lookup_ipv4): New function for checking exact match
923 IGP route.
924
9252001-01-23 Kunihiro Ishiguro <kunihiro@zebra.org>
926
927 * rib.c (show_ipv6_route_protocol): Fix bug of "show ip route
928 route-type".
929
9302001-01-22 Kunihiro Ishiguro <kunihiro@zebra.org>
931
932 * interface.c (zebra_interface): Do not call
933 zebra_interface_add_update for inactive interface.
934
935 * zserv.c (zsend_interface_address_add): Send interface address
936 flag.
937 (zsend_interface_address_delete): Likewise.
938
9392001-01-19 Kunihiro Ishiguro <kunihiro@zebra.org>
940
941 * interface.c (if_addr_add): Add flags.
942
943 * connected.c (ifa_add_ipv4): Add new function for interface
944 address handling.
945 (ifa_delete_ipv4): Likewise.
946
9472001-01-16 Kunihiro Ishiguro <kunihiro@zebra.org>
948
949 * rib.c (rib_update): Update IPv6 RIB.
950
951 * kernel_socket.c (ifam_read): Call if_refresh() for update
952 interface flag status. This is for implicit interface up on *BSD.
953
954 * interface.c (if_refresh): Add interface flag refresh function.
955
956 * kernel_socket.c (rtm_read): Fetch link-local address interface
957 index.
958 (ifan_read): We need to fetch interface information. Suggested
959 by: Yasuhiro Ohara <yasu@sfc.wide.ad.jp>.
960
961 * rib.c (static_ipv6_nexthop_same): Add check for
962 NEXTHOP_TYPE_IPV6_IFNAME.
963
9642001-01-15 Kunihiro Ishiguro <kunihiro@zebra.org>
965
966 * rib.h (NEW_RIB): Turn on NEW_RIB flag. IPv6 new RIB code are
967 taken into place.
968
9692001-01-14 Kunihiro Ishiguro <kunihiro@zebra.org>
970
971 * rib.c (static_ipv6_write): Display STATIC_IPV6_GATEWAY_IFNAME
972 configuration.
973 (rib_delete_ipv6): Handle same route conter for IPv6 connected
974 route.
975 (show_ipv6_route_protocol): New command.
976 (show_ipv6_route_addr): Likewise.
977 (show_ipv6_route_prefix): Likewise.
978 (rib_update): Sweep kernel route when it is cleaned up.
979
980 * rt_socket.c (kernel_add_ipv6): Add NEXTHOP_IPV6_IFNAME
981 treatmenet.
982
983 * rt_netlink.c (kernel_init): Likewise.
984
985 * rt_ioctl.c (kernel_ioctl_ipv6_multipath): Likewise.
986
987 * rib.c (rib_add_ipv4): Cope with same connected route on a
988 interface. Suggested by: Matthew Grant <grantma@anathoth.gen.nz>.
989 (nexthop_ipv6_ifname_add): Add NEXTHOP_IPV6_IFNAME treatmenet.
990
991 * rib.h (struct new_rib): Add refcnt to keep track on the
992 reference of same connected route.
993
994 * ioctl.c (if_set_prefix): Add check for GNU_LINUX.
995
9962001-01-13 Yasuhiro Ohara <yasu@sfc.wide.ad.jp>
997
998 * kernel_socket.c (ifan_read, rtm_type_str): Add RTM_OIFINFO check.
999 (rtm_type_str): Add RTM_IFANNOUNCE check.
1000 (ifan_read): New function.
1001 (kernel_read): Add case for RTM_IFANNOUNCE.
1002
10032001-01-13 Kunihiro Ishiguro <kunihiro@zebra.org>
1004
1005 * rt_ioctl.c (kernel_ioctl_ipv6_multipath): New function.
1006
1007 * rt_netlink.c (netlink_route_multipath): IPv6 address ifindex
1008 treatment.
1009
1010 * connected.c (connected_up_ipv6): Add dest value check.
1011
1012 * rib.c (nexthop_active_ipv6): Do not touch IPv6 nexthop's
1013 ifindex.
1014 (rib_add_ipv4): Import rib_add_ipv6() same route check code.
1015 (nexthop_active_check): NEXTHOP_TYPE_IPV6_IFINDEX activity is only
1016 checked by ifindex.
1017
1018 * rt_socket.c (kernel_rtm_ipv6_multipath): New function.
1019
1020 * redistribute.c (redistribute_add): Use
1021 zsend_ipv6_add_multipath().
1022 (redistribute_delete_multipath): Use
1023 zsend_ipv6_delete_multipath().
1024
1025 * interface.c (ip_address): Check current IP address to avoid
1026 duplicate.
1027
1028 * rib.c (rib_delete_ipv4): When deleted route is connected route,
1029 check ifindex.
1030 (rib_add_ipv4): When connected route is added do not perform
1031 implicit withdraw.
1032 (rib_delete_ipv4): Check ifindex for connected route.
1033
1034 * kernel_socket.c (rtm_read): When route has RTF_STATIC, set
1035 ZEBRA_FLAG_STATIC for indicate as persistent route.
1036 (ifam_read): Unset interface index from link-local address when
1037 IPv6 stack is KAME.
1038
1039 * rib.c (rib_update): Do not delete persistent kernel route.
1040
1041 * rib.h (struct new_rib): Integrate RIB_FLAG_* to ZEBRA_FLAG_*.
1042
1043 * rt_socket.c (kernel_add_ipv6_multipath): Add placeholder.
1044 (kernel_delete_ipv6_multipath): Likewise.
1045
1046 * rt_netlink.c (netlink_talk): Give struct nlsock to netlink_talk.
1047
10482001-01-12 Kunihiro Ishiguro <kunihiro@zebra.org>
1049
1050 * rib.c (rib_update): Revert Matthew Grant's patch
1051 zebra_cvs_newribfix.patch. Use struct rib->ifindex for kernel
1052 interface index. Introduce NEXTHOP_TYPE_IPV4_IFINDEX to support
1053 that. Add support for address deletion situation.
1054
10552001-01-11 Kunihiro Ishiguro <kunihiro@zebra.org>
1056
1057 * interface.c: Remove HAVE_IF_PSEUDO part.
1058
1059 * rib.h: Likewise.
1060
1061 * rt_netlink.c (netlink_link_change): Likewise.
1062
10632001-01-10 Kunihiro Ishiguro <kunihiro@zebra.org>
1064
1065 * zserv.c: Remove OLD_RIB codes.
1066
10672001-01-09 Kunihiro Ishiguro <kunihiro@zebra.org>
1068
1069 * zebra-0.90 is released.
1070
10712001-01-09 Matthew Grant <grantma@anathoth.gen.nz>
1072
1073 * interface.c (if_new_intern_ifindex): Allocate a new internal
1074 interface index.
1075 (if_addr_refresh): Fix up ip addresses configured via zebra.
1076 (if_add_update): Handle an interface addition.
1077 (if_delete_update): Handle an interface delete event.
1078
1079 * rib.c (nexthop_ipv4_add): Add kernel route deletion process when
1080 interface goes down.
1081
10822001-01-08 Kunihiro Ishiguro <kunihiro@zebra.org>
1083
1084 * interface.c (if_dump_vty): When HAVE_NET_RT_IFLIST is defined,
1085 NetBSD also use this function. Suggested by Jasper Wallace
1086 <jasper@ivision.co.uk>.
1087
10882001-01-07 Kunihiro Ishiguro <kunihiro@zebra.org>
1089
1090 * rib.c (nexthop_active_ipv4): Move back to set methodo to old
1091 one.
1092
10932001-01-05 Kunihiro Ishiguro <kunihiro@zebra.org>
1094
1095 * rib.c (rib_add_ipv4): EBGP multihop set ZEBRA_FLAG_INTERNAL
1096 flag, so treat it.
1097
10982001-01-04 Kunihiro Ishiguro <kunihiro@zebra.org>
1099
1100 * rt_netlink.c (netlink_talk_ipv6): When IPv6 route message is
1101 sent from netlink_cmd, the same message comes from netlink. To
1102 avoid confusion, temporary netlink_talk_ipv6 use netlink.sock
1103 instead of netlink_cmd.sock.
1104
11052001-01-01 Kunihiro Ishiguro <kunihiro@zebra.org>
1106
1107 * zserv.h (ZEBRA_SERV_PATH): Change "/tmp/zebra" to "/tmp/.zebra".
1108 Change "/tmp/zserv" to "/tmp/.zserv".
1109
11102000-12-29 Frank van Maarseveen <F.vanMaarseveen@inter.NL.net>
1111
1112 * rt_netlink.c (struct nlsock): Divide kernel message into listen
1113 socket and command socket.
1114 (netlink_talk): Remove socket listen code. Use netlink_parse_info
1115 for read kernel response.
1116
11172000-12-29 Kunihiro Ishiguro <kunihiro@zebra.org>
1118
1119 * rib.c (vty_show_ip_route): Show uptime of the RIP,OSPF,BGP
1120 routes.
1121
11222000-12-27 Kunihiro Ishiguro <kunihiro@zebra.org>
1123
1124 * rt_netlink.c (netlink_route_multipath): Metric value is
1125 reflected to kernel routing table.
1126
1127 * rt_ioctl.c (kernel_ioctl_ipv4_multipath): Likewise.
1128
1129 * kernel_socket.c (rtm_write): Likewise.
1130
1131 * rib.c (nexthop_active_ipv4): Only iBGP route perform recursive
1132 nexthop lookup.
1133
1134 * rt_ioctl.c (kernel_ioctl_ipv4_multipath): Add ioctl version of
1135 new RIB implementation.
1136
11372000-12-26 Kunihiro Ishiguro <kunihiro@zebra.org>
1138
1139 * rib.h: Remove MULTIPATH_NUM. It is defined by configure script.
1140
11412000-12-25 Michael Rozhavsky <mrozhavsky@opticalaccess.com>
1142
1143 * rib.c (rib_if_up): Call rib_fib_set instead of RIB_FIB_SET for
1144 proper redistribution.
1145
11462000-12-19 Kunihiro Ishiguro <kunihiro@zebra.org>
1147
1148 * rib.c (nexthop_active_ipv4): Add self lookup nexthop check.
1149 (show_ip_route_protocol): Support new RIB.
1150
1151 * rt_netlink.c (netlink_route_change): Do not return when gate is
1152 NULL.
1153
11542000-12-18 Kunihiro Ishiguro <kunihiro@zebra.org>
1155
1156 * rib.c (rib_lookup_ipv4_nexthop): IBGP nexthop check function is
1157 updated.
1158 (rib_add_ipv4): Free implicit withdraw route's RIB.
1159
11602000-12-15 Kunihiro Ishiguro <kunihiro@zebra.org>
1161
1162 * rib.c (nexthop_active_ipv4): Check indirect nexthop.
1163
1164 * redistribute.c (redistribute_add_multipath): Redistribution
1165 works with new rib code.
1166
11672000-12-14 Kunihiro Ishiguro <kunihiro@zebra.org>
1168
1169 * rt_netlink.c (netlink_route_multipath): Check useful nexthop
1170 number.
1171 (netlink_route_multipath): Clear rtnh_flags and rtnh_hops.
1172
1173 * rib.c (nexthop_active_update): Set flag for the rib's nexthop
1174 activity is changed.
1175 (nexthop_active_check): Before checking interface is up, make it
1176 sure the interface exist.
1177
11782000-11-20 Kunihiro Ishiguro <kunihiro@zebra.org>
1179
1180 * rib.c (ip_route): New RIB prototype.
1181
11822000-11-16 Yon Uriarte <ukl2@rz.uni-karlsruhe.de>
1183
1184 * zserv.c (zsend_interface_add): Send hardware address when
1185 hw_addr_len is greater than 0.
1186
11872000-11-07 Kunihiro Ishiguro <kunihiro@zebra.org>
1188
1189 * connected.c (connected_up_ipv4): Fix ptop bug. The destination
1190 network should be installed into routing table.
1191 (connected_down_ipv4): Likewise.
1192 (connected_add_ipv4): Change to use connected_up_ipv4.
1193 (connected_delete_ipv4): Likewise.
1194
11952000-11-06 Kunihiro Ishiguro <kunihiro@zebra.org>
1196
1197 * rt_netlink.c (netlink_interface_addr): Revert Harald Welte
1198 <laforge@gnumonks.org>'s ptop patch then back to original code to
1199 avoid duplicated connected route problem. Suggested by Frank van
1200 Maarseveen <F.vanMaarseveen@inter.NL.net>.
1201
1202 * kernel_socket.c (rtm_read): Make behavior consistent even #ifdef
1203 DEBUG is defined. Reported by Jun-ichiro itojun Hagino
1204 <itojun@iijlab.net>.
1205
12062000-10-23 Jochen Friedrich <jochen@scram.de>
1207
1208 * main.c (main): Call zebra_snmp_init() when it is enabled.
1209
12102000-10-23 Kunihiro Ishiguro <kunihiro@zebra.org>
1211
1212 * zserv.c (zebra_serv_un): UNIX domain socket server of zebra
1213 protocol.
1214
12152000-10-19 Kunihiro Ishiguro <kunihiro@zebra.org>
1216
1217 * rib.c (rib_add_ipv4): Same check bug is fixed.
1218
12192000-10-03 Kunihiro Ishiguro <kunihiro@zebra.org>
1220
1221 * rib.c (rib_if_down): Remove kernel route when the interface goes
1222 down.
1223
1224 * debug.c: New command "debug zebra kernel" is added.
1225
12262000-10-02 Kunihiro Ishiguro <kunihiro@zebra.org>
1227
1228 * zebra-0.89 is released.
1229
12302000-09-24 Harald Welte <laforge@gnumonks.org>
1231
1232 * rt_netlink.c (netlink_interface_addr): Fix point-to-point address
1233 treatment in netlink interface.
1234
12352000-09-21 David Lipovkov <dlipovkov@OpticalAccess.com>
1236
1237 * rib.c (rib_if_down): Pull static route only. Protocol daemon
1238 must withdraw routes when interface goes down.
1239 (rib_add_ipv4): Check nexthop when replace route.
1240
12412000-09-21 Kunihiro Ishiguro <kunihiro@zebra.org>
1242
1243 * if_ioctl.c (if_getaddrs): New function for looking up
1244 interface's address by getifaddrs().
1245
12462000-09-10 Kunihiro Ishiguro <kunihiro@zebra.org>
1247
1248 * connected.c (connected_delete_ipv4): Add check for connected
1249 address is found or not.
1250 (connected_add_ipv6): Reflect IPv6 connected address change to
1251 protocol daemons.
1252 (connected_delete_ipv6): Likewise.
1253
12542000-09-07 David Lipovkov <davidl@nbase.co.il>
1255
1256 * rib.c (rib_delete_ipv4): Reverted the change from pseudo
1257 interface patch to original. Because ospfd deletes routes using
1258 zero ifindex.
1259
12602000-08-17 Kunihiro Ishiguro <kunihiro@zebra.org>
1261
1262 * zebra-0.88 is released.
1263
12642000-08-15 "Akihiro Mizutani" <mizutani@dml.com>
1265
1266 * rib.c (show_ip_route_protocol): Help string correction.
1267 (show_ip_route_prefix): Check prefix mask.
1268 (show_ip_route_vty_detail): Display distance and metric.
1269
12702000-08-14 Kunihiro Ishiguro <kunihiro@zebra.org>
1271
1272 * zserv.c (zsend_interface_add): Change ifindex store size from
1273 two octet to four.
1274 (zsend_interface_delete): Likewise.
1275 (zsend_interface_address_add): Likewise.
1276 (zsend_interface_address_delete): Likewise.
1277 (zsend_interface_up): Likewise.
1278 (zsend_interface_down): Likewise.
1279
12802000-08-13 Kunihiro Ishiguro <kunihiro@zebra.org>
1281
1282 * rib.c (rib_add_ipv4): Do not install distance 255 route.
1283
12842000-08-10 Toshiaki Takada <takada@zebra.org>
1285
1286 * interface.c (bandwidth_if), (no_bandwidth_if): Call
1287 zebra_interface_up_update () instead of using if_up() and if_down().
1288
12892000-08-07 "Akihiro Mizutani" <mizutani@dml.com>
1290
1291 * interface.c (bandwidth_if): Fix help string.
1292
12932000-08-07 Matthew Grant <grantma@anathoth.gen.nz>
1294
1295 * interface.c (if_dump_vty): Display bandwidth value.
1296 (bandwidth_if): New command "bandwidth <1-10000000>" is added.
1297 When interface is up, force protocol daemons to recalculate routes
1298 due to cost change.
1299 (no_bandwidth_if): Likewise.
1300 (if_config_write): Output bandwidth configuration.
1301
1302 * zserv.c (zsend_interface_add): Send bandwidth value.
1303 (zsend_interface_up): Likewise.
1304 (zsend_interface_down): Likewise.
1305
1306
13072000-08-07 Michael Rozhavsky <mike@nbase.co.il>
1308
1309 * rib.c (show_ip_route_protocol): "show ip route
1310 (bgp|connected|kernel|ospf|rip|static)" is added.
1311
13122000-08-07 Kunihiro Ishiguro <kunihiro@zebra.org>
1313
1314 * rib.c (rib_lookup_ipv4_nexthop): Check parent node until IGP
1315 nexthop is found.
1316 (rib_add_ipv4_internal): Set fib ifindex to rib ifindex.
1317
13182000-08-06 Kunihiro Ishiguro <kunihiro@zebra.org>
1319
1320 * redistribute.c (redistribute_delete): Fix bug of default route
1321 redistribute treatment.
1322
13232000-08-05 Kunihiro Ishiguro <kunihiro@zebra.org>
1324
1325 * rib.c (rib_init): Install ip_node in rib.c instead of zserv.c.
1326 Change default distance value.
1327
1328 Old New
1329 ------------------------------------------
1330 system 10 0
1331 kernel 20 0
1332 connected 30 0
1333 static 40 1
1334 rip 50 120
1335 ripng 50 120
1336 ospf 60 110
1337 ospf6 49 110
1338 bgp 70 200(iBGP) 20(eBGP)
1339 ------------------------------------------
1340
1341 * zserv.c (client_lookup): Function removed.
1342 (zsend_interface_add): Use client's output buffer. Check ifinfo
1343 flag.
1344 (zsend_interface_delete): Likewise.
1345 Delete ipv4_static_radix and ipv6_static_radix.
1346
13472000-08-02 Kunihiro Ishiguro <kunihiro@zebra.org>
1348
1349 * zserv.h (struct zebra_client): When client request interface
1350 information, ifinfo is set.
1351
1352 * rib.c: Temporary Revert changes for pseudo interface.
1353
1354 * rib.h: Likewise.
1355
1356 * zserv.c: Likewise.
1357
1358 * interface.c: Likewise.
1359
13602000-08-02 David Lipovkov <davidl@nbase.co.il>
1361
1362 * interface.c (zebra_if_init): Install interface "pseudo"
1363 commands.
1364
1365 * rib.c (rib_create): ifname argument is added.
1366 (rib_add_ipv4_pseudo): New function is added.
1367 (rib_delete_ipv4_pseudo): Likewise.
1368
1369 * rib.h : Delete INTERFACE_UNKNOWN definition. Add prototype for
1370 pseudo interface functions.
1371
1372 * rt_netlink.c (netlink_link_change): Check for pseudo interface.
1373
1374 * zserv.c (ip_route): When destination is pseudo interface, call
1375 rib_add_ipv4_pseudo().
1376
1377 * zserv.c (no_ip_route): Trim "unknown" argument.
1378
13792000-07-26 kunitake@dti.ad.jp
1380
1381 * if_ioctl.c (if_get_hwaddr): Fix hardware address length from 8
1382 to 6.
1383
1384 * rtadv.c (rtadv_send_packet): Fix shift bug for hardware address.
1385
13862000-07-24 Akihiro Mizutani <mizutani@dml.com>
1387
1388 * interface.c: Use install_default() for common VTY commands.
1389
13902000-07-23 Kunihiro Ishiguro <kunihiro@zebra.org>
1391
1392 * if_ioctl.c (interface_list_ioctl): A interface list size is
1393 calculated from ifreq->if_addr.sa_len. This is for OpenBSD.
1394
1395 * ioctl.c (if_get_mtu): Remove codes for SIOCGIFDATA.
1396
13972000-07-09 Chris Dunlop <chris@onthe.net.au>
1398
1399 * if_ioctl.c (if_get_index): Add check for HAVE_BROKEN_ALIASES.
1400
14012000-07-04 Kunihiro Ishiguro <kunihiro@zebra.org>
1402
1403 * zserv.c (zebra_client_read): Add ZEBRA_REDISTRIBUTE_{ADD,DELETE}
1404 message handling.
1405
14062000-07-02 David Lipovkov <davidl@nbase.co.il>
1407
1408 * zserv.c: "ip route A.B.C.D/M unknown" command is added.
1409
14102000-06-28 Michael Rozhavsky <mike@nbase.co.il>
1411
1412 * rib.c: Remove old kernel route when new route comes in.
1413
14142000-06-13 David Lipovkov <davidl@nbase.co.il>
1415
1416 * rib.c (rib_if_up): Add check for unknown interface.
1417
14182000-06-13 Kunihiro Ishiguro <kunihiro@zebra.org>
1419
1420 * rib.h: Define INTERFACE_UNKNOWN.
1421
14222000-06-08 Kunihiro Ishiguro <kunihiro@zebra.org>
1423
1424 * Makefile.am (EXTRA_DIST): Move irdp.c until implementation is
1425 finished.
1426
14272000-06-05 David Lipovkov <davidl@nbase.co.il>
1428
1429 * interface.c (if_zebra_delete_hook): Call rib_if_delete().
1430
1431 * redistribute.c (zebra_interface_delete_update): New function.
1432
1433 * redistribute.h (zebra_interface_delete_update): New function
1434 prototype.
1435
1436 * rib.c (rib_if_delete): New function. Walk down all routes and
1437 delete all on the interface.
1438
1439 * rib.h: New function prototype.
1440
1441 * rt_netlink.c (netlink_link_change): Call
1442 zebra_interface_delete_update ().
1443
14442000-05-10 Kunihiro Ishiguro <kunihiro@zebra.org>
1445
1446 * if_ioctl.c (interface_info_ioctl): Check interface's flag before
1447 checking interface's address.
1448
14492000-04-26 Jochen Friedrich <jochen@nwe.de>
1450
1451 * GNOME-PRODUCT-ZEBRA-MIB: New file.
1452
1453 * GNOME-SMI: New file.
1454
14552000-04-23 Kunihiro Ishiguro <kunihiro@zebra.org>
1456
1457 * irdp.c: New file from 1997 development code.
1458 * irdp.h: Likewise.
1459
14602000-04-19 Kunihiro Ishiguro <kunihiro@zebra.org>
1461
1462 * rtadv.c (rtadv_send_packet): Enclose router advertisement
1463 logging with IS_ZEBRA_DEBUG_PACKET.
1464
14652000-04-17 Kunihiro Ishiguro <kunihiro@zebra.org>
1466
1467 * zserv.c (zebra_client_close): Remove client structure from
1468 client_list when connection is terminated.
1469
14702000-03-21 David Lipovkov <davidl@nbase.co.il>
1471
1472 * connected.c (connected_add_ipv4): Allows all necessary structure
1473 updates for connected route, but doesn't insert it into rib if
1474 it's interface is down.
1475
14762000-01-21 Hideto Yamakawa <hideto.yamakawa@soliton.co.jp>
1477
1478 * rtread_getmsg.c: Set some definition for Solaris 2.5 and Solaris
1479 2.5.1.
1480
14812000-01-21 Kunihiro Ishiguro <kunihiro@zebra.org>
1482
1483 * rib.c (no_ipv6_route_ifname): Fix buf of cheking return value
1484 from str2prefix_ipv6().
1485
14862000-01-14 Kunihiro Ishiguro <kunihiro@zebra.org>
1487
1488 * rt_socket.c: Revert to use RTF_HOST for IPv4 with /32 route and
1489 IPv6 with /128 routes.
1490 (kernel_rtm_ipv4): In case of /32 route's gateway is interface. It
1491 should have mask for cloning.
1492
14931999-12-26 Jochen.Friedrich@genorz.de
1494
1495 * interface.c (if_dump_vty): Fix a bug of missing VTY_NEWLINE.
1496
14971999-12-23 Alex Zinin <zinin@amt.ru>
1498 * interface.*: dynamic int up/down support
1499
15001999-12-09 Kunihiro Ishiguro <kunihiro@zebra.org>
1501
1502 * ipforward_proc.c (dropline): Move dropline() from lib/dropline.c
1503
1504 * rtread_proc.c (proc_route_read): Don't use dropline().
1505
15061999-12-08 Kunihiro Ishiguro <kunihiro@zebra.org>
1507
1508 * kernel_socket.c (rtm_read): When message is RTM_GET, it has own
1509 process's pid.
1510
15111999-12-04 Kunihiro Ishiguro <kunihiro@zebra.org>
1512
1513 * main.c (main): Change to default log output to ZLOG_STDOUT.
1514
1515 * zserv.c (zebra_serv): More detailed error print.
1516
15171999-11-30 Kunihiro Ishiguro <kunihiro@zebra.org>
1518
1519 * kernel_socket.c (rtm_read): Check old pid for static route
1520 insertion check.
1521
15221999-11-30 Kunihiro Ishiguro <kunihiro@zebra.org>
1523
1524 * interface.c (if_dump_vty): BSDI/OS uses 64bit for interface
1525 statistics counter.
1526
1527 * mtu_kvm.c: New file added.
1528
15291999-11-27 Vladimir B. Grebenschikov <vova@express.ru>
1530
1531 * kernel_socket.c (rtm_write): Set RTF_CLONING flag for
1532 route to the directly connected interface.
1533
15341999-11-27 Kunihiro Ishiguro <kunihiro@zebra.org>
1535
1536 * rt_socket.c: Delete USE_HOST_BIT definition.
1537
15381999-11-21 Michael Handler <handler@sub-rosa.com>
1539
1540 * rtread_getmsg.c: Undef some definition to resolve conflict.
1541
15421999-11-27 Kunihiro Ishiguro <kunihiro@zebra.org>
1543
1544 * kernel_socket.c (rtm_write): Change to use pre stored struct_dl
1545 value for gateway specification.
1546
15471999-11-25 Kunihiro Ishiguro <kunihiro@zebra.org>
1548
1549 * rt_socket.c (kernel_rtm_ipv4): Even mask is 32 under IPv4 or
1550 128 under IPv6, don't use RTF_HOST.
1551
15521999-11-21 Kunihiro Ishiguro <kunihiro@zebra.org>
1553
1554 * Makefile.am (EXTRA_DIST): Add rtread_getmsg.c.
1555
15561999-11-21 Michael Handler <handler@sub-rosa.com>
1557
1558 * rtread_getmsg.c: Added for Solaris 2.6 support.
1559
15601999-11-18 Kunihiro Ishiguro <kunihiro@zebra.org>
1561
1562 * rtread_sysctl.c (rtm_read_route): RTM_DELETE handling added.
1563
1564 * rt_socket.c (kernel_read): Better BSD routing socket support.
1565
15661999-10-19 Kunihiro Ishiguro <kunihiro@zebra.org>
1567
1568 * client_main.c: Disable making obsolete zebra test `client'
1569 command.
1570
15711999-10-18 Kunihiro Ishiguro <kunihiro@zebra.org>
1572
1573 * zebra.c: Renamed to zserv.c.
1574
1575 * zebra.h: Global definitions are moved to lib/zebra.h. Then
1576 renamed to zserv.h.
1577
15781999-10-15 Jordan Mendelson <jordy@wserv.com>
1579
1580 * if_ioctl.c: Add Linux 2.2.X's alias support and dynamic
1581 interface. Remove ugly MAX_INTERFACE handling codes.
1582
15831999-09-17 Satosi KOBAYASI <kobayasi@north.ad.jp>
1584
1585 * Fix serious bug of IPv6 route deletion.
1586
15871999-09-11 Kunihiro Ishiguro <kunihiro@zebra.org>
1588
1589 * ioctl.c (if_set_prefix): Properly set broadcast address.
1590
15911999-09-04 Yasuhiro Ohara <yasu@sfc.wide.ad.jp>
1592
1593 * rib.c (rib_add_ipv6, rib_delete_ipv6): now protocol daemons
1594 can install connected route to kernel via zebra
1595
15961999-08-24 VOP <vop@unity.net>
1597
1598 * rib.c: Include "sockunion.h"
1599
16001999-08-22 Kunihiro Ishiguro <kunihiro@zebra.org>
1601
1602 * ipforward.h: New file.
1603
1604 * zebra.h: Obsolete message ZEBRA_GET_ALL_INTERFACE,
1605 ZEBRA_GET_ONE_INTERFACE, ZEBRA_GET_HOSTINFO are deleted.
1606
16071999-08-18 Kunihiro Ishiguro <kunihiro@zebra.org>
1608
1609 * zebra.h (ZEBRA_INTERFACE_ADDRESS_ADD):
1610 ZEBRA_INTERFACE_{ADD,DELETE} added.
1611
16121999-08-15 Kunihiro Ishiguro <kunihiro@zebra.org>
1613
1614 * rib.c: show ip route A.B.C.D works.
1615
1616 * zebra.c (zebra_read_ipv4): Add ifindex to zebra messages.
1617
16181999-08-12 Kunihiro Ishiguro <kunihiro@zebra.org>
1619
1620 * zebra.h: New Zebra message ZEBRA_INTERFACE_{ADD,DELETE} added.
1621
16221999-08-09 Kunihiro Ishiguro <kunihiro@zebra.org>
1623
1624 * interface.h: New file.
1625 * Makefile.am: Add interface.h
1626
16271999-08-04 Yasuhiro Ohara <yasu@sfc.wide.ad.jp>
1628
1629 * redistribute.c (zebra_redistribute): give ifindex to client.
1630
16311999-08-02 Kunihiro Ishiguro <kunihiro@zebra.org>
1632
1633 * main.c (longopts): -k, --keep_kernel option added.
1634
16351999-07-18 Yasuhiro Ohara <yasu@sfc.wide.ad.jp>
1636
1637 * rt_socket.c (rtm_write): forgot closing socket bug fixed.
1638
16391999-07-17 Yasuhiro Ohara <yasu@sfc.wide.ad.jp>
1640
1641 * rib.c (show_ipv6_cmd): if rib is link show interface name.
1642
16431999-07-17 Yasuhiro Ohara <yasu@sfc.wide.ad.jp>
1644
1645 * rt_socket.c (rtm_write): use sockaddr_dl when null gateway.
1646
16471999-07-16 Yasuhiro Ohara <yasu@sfc.wide.ad.jp>
1648
1649 * rt_socket.c (rtm_write): ipv6 route table bug fixed.
1650
16511999-07-15 Yasuhiro Ohara <yasu@sfc.wide.ad.jp>
1652
1653 * zebra.c (zebra_read_ipv6): read link prefix from ospf6 support
1654
16551999-07-15 Yasuhiro Ohara <yasu@sfc.wide.ad.jp>
1656
1657 * rt_socket.c (kernel_rtm_ipv6): gate treatment bug fixed.
1658
16591999-07-15 Kunihiro Ishiguro <kunihiro@zebra.org>
1660
1661 * if_sysctl.c (ifm_read): Clear sockunion argument before fetching
1662 data. Suggested by "Chris P. Ross" <cross@eng.us.uu.net>
1663
16641999-07-08 HEO SeonMeyong <seirios@Matrix.IRI.Co.Jp>
1665
1666 * interface.c (if_tun_add): Add KAME's gif tunnel setting codes.
1667
16681999-06-26 Kunihiro Ishiguro <kunihiro@zebra.org>
1669
1670 * zebra.c (zebra_serv): Only accept loopback address connection.
1671
16721999-06-25 Kunihiro Ishiguro <kunihiro@zebra.org>
1673
1674 * zebra.h (ZEBRA_ROUTE_EXTERNAL): Add zebra messages flags
1675
16761999-06-17 Kunihiro Ishiguro <kunihiro@zebra.org>
1677
1678 * ipforward_proc.c: ipforward_on () and ipforward_off () added.
1679
16801999-06-14 Kunihiro Ishiguro <kunihiro@zebra.org>
1681
1682 * ipforward_proc.c (ipforward_ipv6): Check for IPv6 forwarding
1683 using /proc file system is added.
1684
16851999-06-06 Kunihiro Ishiguro <kunihiro@zebra.org>
1686
1687 * if_ioctl.c (if_get_index): Interface index set bug is fixed by
1688 adding #else at the middle of function. Suggested by David Luyer
1689 <luyer@ucs.uwa.edu.au>.
1690
16911999-05-29 <kunihiro@zebra.org>
1692
1693 * rt_ioctl.c: Comment out #include <linux/ipv6_route.h>.
1694
16951999-05-26 Kunihiro Ishiguro <kunihiro@zebra.org>
1696
1697 * zebra.h (ZEBRA_ROUTE_MAX): Add new define for the max value of
1698 the sort of routes.
1699
17001999-05-25 Patrick Koppen <koppen@rhrk.uni-kl.de>
1701
1702 * rt_netlink.c (netlink_socket): Make netlink socket non-blocking.
1703 (netlink_parse_info): If errno is EWOULDBLOCK then continue to
1704 parse the message.
1705 (netlink_talk): Likewise
1706
17071999-05-17 <kunihiro@zebra.org>
1708
1709 * redistribute.c (zebra_check_addr): Added for loopback address
1710 check.
1711
17121999-05-15 Kunihiro Ishiguro <kunihiro@zebra.org>
1713
1714 * rt_netlink.c (netlink_route_change): Tempolary bypass ipv6 route
1715 change treatment.
1716
1717 * Makefile.am (noinst_HEADERS): redistribute.h added.
1718
1719 * redistribute.h: New file.
1720
17211999-05-14 Stephen R. van den Berg <srb@cuci.nl>
1722
1723 * zebra.c (show_table): Show all table configuration DEFUN.
1724 (config_table): Config table number DEFUN.
1725
1726 * rt_netlink.c: Add support for multiple routing table.
1727
1728 * rib.c (rib_weed_table): New function added for delete all
1729 routes from specified routing table.
1730
1731 * main.c (signal_init): SIGTERM call sigint.
1732 (sigint): Loggging more better message.
1733
17341999-05-09 Kunihiro Ishiguro <kunihiro@zebra.org>
1735
1736 * rt_netlink.c: Change log () to zlog ().
1737
17381999-05-07 <kunihiro@zebra.org>
1739
1740 * zebra.h (ZEBRA_ROUTE_OSPF6): Added for ospf6d route.
1741
17421999-04-20 Kunihiro Ishiguro <kunihiro@zebra.org>
1743
1744 * interface.c: Add `no ip address' command.
1745
17461999-04-10 Kunihiro Ishiguro <kunihiro@zebra.org>
1747
1748 * rt_netlink.c (kernel_read): Function added for asynchronous
1749 zebra between kernel communication.
1750
17511999-03-25 Kunihiro Ishiguro <kunihiro@zebra.org>
1752
1753 * rtread_sysctl.c (rtm_read): Fix address memcopy overrun bug.
1754 Reported by Achim Patzner <ap@bnc.net>.
1755
17561999-03-03 Kunihiro Ishiguro <kunihiro@zebra.org>
1757
1758 * Makefile.am: Install configuration sample with 600 permission.
1759
17601999-03-02 Kunihiro Ishiguro <kunihiro@zebra.org>
1761
1762 * Makefile.am: Add -I.. to INCLUDES.
1763
17641999-02-18 Peter Galbavy <Peter.Galbavy@knowledge.com>
1765
1766 * syslog support added
1767
17681999-02-17 Peter Galbavy <Peter.Galbavy@knowledge.com>
1769
1770 * if_sysctl.c (interface_list): allocated memory free when unknown
1771 ifm_type is returned.
1772
1773 * ioctl.c (if_get_mtu): added SIOCGIFDATA treatment.
1774
17751998-12-15 Magnus Ahltorp <map@stacken.kth.se>
1776
1777 * interface.c: Header include added.
1778
17791998-12-14 Kunihiro Ishiguro <kunihiro@zebra.org>
1780
1781 * rt.h (kernel_delete_ipv6): change int index to unsigned int index.
1782
17831998-12-13 Kunihiro Ishiguro <kunihiro@zebra.org>
1784
1785 * if_ioctl.c (interface_list_ioctl): interface flag must be
1786 checked before check addresses of the interface.
1787
17881998-12-07 Kunihiro Ishiguro <kunihiro@zebra.org>
1789
1790 * Makefile.am (INCLUDES): add @INCLUDES@ for Linux IPv6.
1791
17921998-10-14 Kunihiro Ishiguro <kunihiro@zebra.org>
1793
1794 * ioctl.c: Linux version before 2.1.0 need interface route setup.
1795
17961998-09-15 HEO SeonMeyong <seirios@matrix.iri.co.jp>
1797
1798 * change HYDRANGEA to KAME
1799
18001998-09-01 Kunihiro Ishiguro <kunihiro@zebra.org>
1801
1802 * if_ioctl.c (if_addr_ioctl): set address family for getting
1803 interface's address.
1804 (if_get_index): silently return when can't get interface's index.
1805
18061998-08-17 Kunihiro Ishiguro <kunihiro@zebra.org>
1807
1808 * main.c (main): batch mode option '-b' added.
1809
18101998-08-16 Kunihiro Ishiguro <kunihiro@zebra.org>
1811
1812 * ioctl.c (if_set_prefix): add `ip address IPV4ADDR' command.
1813 * interface.c (shutdown_if): add interface shutdown and no
1814 shutdown command.
1815
18161998-08-12 Kunihiro Ishiguro <kunihiro@zebra.org>
1817
1818 * rib.c (rib_add_ipv6): delete rib_add_in6.
1819
18201998-07-27 Kunihiro Ishiguro <kunihiro@zebra.org>
1821
1822 * main.c: retain flag is added.
1823
18241998-07-08 Kunihiro Ishiguro <kunihiro@zebra.org>
1825
1826 * rtable.[ch]: merged with rib.[ch]
1827
18281998-07-07 Kunihiro Ishiguro <kunihiro@zebra.org>
1829
1830 * connected.h: renamed from ifa.h.
1831
18321998-06-09 Kunihiro Ishiguro <kunihiro@zebra.org>
1833
1834 * rename if.c to interface.c
1835 * rename ifa.c to connected.c
1836
1837 * Porting to Debian GNU/Linux 2.0 (hamm).
1838
18391998-06-08 Kunihiro Ishiguro <kunihiro@zebra.org>
1840
1841 * rt_netlink.c: renamed from krt_netlink.c
1842
1843 * fib.c: deleted.
1844 * rt_kvm.c: deleted.
1845 * rtread_getmsg.c: deleted.
1846
18471998-06-07 Kunihiro Ishiguro <kunihiro@zebra.org>
1848
1849 * if.c (multicast): add multicast flag [un]set fucntion.
1850
18511998-05-19 Yamshita TAKAO <jargon@lares.dti.ne.jp>
1852
1853 * rt_socket.c: Modify for compile on Solaris, but dont't work it.
1854 rt_socket.c have some undefined function, so add directive "IMPLEMENT"
1855
18561998-05-18 Yamshita TAKAO <jargon@lares.dti.ne.jp>
1857
1858 * zebra.c: Modify for compile on Solaris.
1859
18601998-05-03 Kunihiro Ishiguro <kunihiro@zebra.org>
1861
1862 * main.c: change CONFDIR to SYSCONFDIR.
1863
18641998-05-01 Kunihiro Ishiguro <kunihiro@zebra.org>
1865
1866 * .cvsignore: added.
1867
18681998-04-02 Kunihiro Ishiguro <kunihiro@zebra.org>
1869
1870 * client.c: moves to ../lib.
1871
18721998-03-30 Kunihiro Ishiguro <kunihiro@zebra.org>
1873
1874 * if_ioctl.c (if_get_addr): Change address copy from memcopy() to
1875 structure assignment.
1876
18771998-03-30 URA Hiroshi <ura@yamato.ibm.co.jp>
1878
1879 * if_sysctl.c (ifm_interface_add): sdl->sdl_data copy bug fixed.
1880
18811998-02-23 "Hannes R. Boehm" <hannes@boehm.org>
1882
1883 * if.c (if_init): add config_exit_cmd and config_help_cmd.
1884
18851998-01-24 Kunihiro Ishiguro <kunihiro@zebra.org>
1886
1887 * rt_ioctl.c (route_ioctl): EPERM treatment added.
1888
18891998-01-05 Kunihiro Ishiguro <kunihiro@zebra.org>
1890
1891 * rt_socket.c (kernel_read): communication port zebra between
1892 kernel is now handled by kernel_read.
1893
18941998-01-02 Kunihiro Ishiguro <kunihiro@zebra.org>
1895
1896 * main.c (main): zebra [-P port] can specify vty port number.
1897
18981997-12-25 Kunihiro Ishiguro <kunihiro@zebra.org>
1899
1900 * zebra.c: change select will be block.
1901
19021997-12-04 Kunihiro Ishiguro <kunihiro@zebra.org>
1903
1904 * add static route treatment.
1905
19061997-11-25 Kunihiro Ishiguro <kunihiro@zebra.org>
1907
1908 * rt_netlink.c: add netlink support over GNU/Linux system.
1909
19101997-11-23 Kunihiro Ishiguro <kunihiro@zebra.org>
1911
1912 * all inet_addr is changed to inet_aton.
1913
1914 * zebra.c (ip_route): add ip route command for static routes.
1915
19161997-11-20 Kunihiro Ishiguro <kunihiro@zebra.org>
1917
1918 * if.c (if_flag_dump): Linux port of if_flag_dump and _vty.
1919
19201997-11-19 Kunihiro Ishiguro <kunihiro@zebra.org>
1921
1922 * if.c: add interface command.
1923
19241997-11-18 Kunihiro Ishiguro <kunihiro@zebra.org>
1925
1926 * ipforward_proc.c : Now works on Linux.
1927
19281997-10-25 Kunihiro Ishiguro <kunihiro@zebra.org>
1929
1930 * command.c : add completion feature.
1931
19321997-10-18 Kunihiro Ishiguro <kunihiro@zebra.org>
1933
1934 * vty.c (vty_command): add vty interface.
1935
19361997-10-13 Kunihiro Ishiguro <kunihiro@zebra.org>
1937
1938 * zebra.c: add verbose mode.
1939
19401997-10-12 SonMyong Ho <s-ho@Matrix.IRI.Co.Jp>
1941
1942 * Hydrangea for FreeBSD supported
1943 * in.h: add some prototype.
1944
19451997-10-11 Kunihiro Ishiguro <kunihiro@zebra.org>
1946
1947 * rt_socket.c and rtread.c completely rewritten.
1948
19491997-10-05 Kunihiro Ishiguro <kunihiro@zebra.org>
1950
1951 * rt_socket.c: rename kernel_sock to routing_socket
1952
19531997-10-04 Kunihiro Ishiguro <kunihiro@zebra.org>
1954
1955 * if.c (if_new): interface structure change from linklist to vector.
1956
19571997-10-03 Kunihiro Ishiguro <kunihiro@zebra.org>
1958
1959 * vector.c (vector_init): create vector related function
1960
19611997-09-25 Kunihiro Ishiguro <kunihiro@zebra.org>
1962
1963 * Makefile.in: add tags target
1964
1965 * start IPv6 support for INRIA FreeBSD.
1966