Jens Muecke [Mon, 31 Oct 2011 14:47:55 +0000 (15:47 +0100)]
Add time.h include
Found on compiling for x64
Felix Fietkau [Thu, 27 Oct 2011 19:09:47 +0000 (21:09 +0200)]
proto-shell: handle the "available" config flag
Felix Fietkau [Thu, 27 Oct 2011 18:04:52 +0000 (20:04 +0200)]
proto-shell: prefix protocol callback functions with proto_
Felix Fietkau [Thu, 27 Oct 2011 09:01:32 +0000 (11:01 +0200)]
fold the _init callback into _init_config
Felix Fietkau [Thu, 27 Oct 2011 08:39:13 +0000 (10:39 +0200)]
proto-shell: add a notify command for setting interface availability
Felix Fietkau [Wed, 26 Oct 2011 18:12:32 +0000 (20:12 +0200)]
recognize stacked interfaces (e.g. dsa) and handle their dependencies
Felix Fietkau [Wed, 26 Oct 2011 17:30:05 +0000 (19:30 +0200)]
ensure that iface->proto_handler gets initialized
Felix Fietkau [Wed, 26 Oct 2011 17:14:52 +0000 (19:14 +0200)]
on reload, check for null ifname before comparing it
Felix Fietkau [Mon, 24 Oct 2011 18:46:23 +0000 (20:46 +0200)]
initialize dns server/search lists
Felix Fietkau [Mon, 24 Oct 2011 18:46:07 +0000 (20:46 +0200)]
fix a logic error leading to segfaults on updates
Felix Fietkau [Sun, 23 Oct 2011 17:20:35 +0000 (19:20 +0200)]
fix handling bridge interfaces with no initial device
Felix Fietkau [Sun, 23 Oct 2011 15:22:31 +0000 (17:22 +0200)]
fix system_if_check
Felix Fietkau [Sun, 23 Oct 2011 15:10:17 +0000 (17:10 +0200)]
parse kobject uevent messages for figuring out when network devices appear, RTM_NEWLINK is unreliable for some virtual devices, e.g. tap
Felix Fietkau [Sun, 23 Oct 2011 14:04:50 +0000 (16:04 +0200)]
add a function for creating a raw event socket that does not use genl or rtnl
Felix Fietkau [Sun, 23 Oct 2011 14:02:18 +0000 (16:02 +0200)]
remove some more code duplication
Felix Fietkau [Sun, 23 Oct 2011 13:41:53 +0000 (15:41 +0200)]
move code for creating an event socket to a function
Felix Fietkau [Sun, 23 Oct 2011 13:27:07 +0000 (15:27 +0200)]
move all variables belonging to the netlink event socket to a common data structure
Felix Fietkau [Sun, 23 Oct 2011 13:20:19 +0000 (15:20 +0200)]
drop the cleanup path in system_init, since system_init failures are fatal anyway
Felix Fietkau [Fri, 21 Oct 2011 01:36:26 +0000 (03:36 +0200)]
fix the exit status for the proto-shell task, use WEXITSTATUS
Felix Fietkau [Fri, 21 Oct 2011 01:12:19 +0000 (03:12 +0200)]
fix initial bridge member bringup
Felix Fietkau [Fri, 21 Oct 2011 00:43:28 +0000 (02:43 +0200)]
fix device claim on interface reload
Felix Fietkau [Fri, 21 Oct 2011 00:41:44 +0000 (02:41 +0200)]
fold __interface_set_up into interface_set_up
Felix Fietkau [Fri, 21 Oct 2011 00:38:36 +0000 (02:38 +0200)]
fix duplicate bridge addif
Felix Fietkau [Fri, 21 Oct 2011 00:16:39 +0000 (02:16 +0200)]
clean up interface state change handling
Felix Fietkau [Thu, 20 Oct 2011 23:44:26 +0000 (01:44 +0200)]
proto-shell: allow protocol handlers to add interface error messages and block interface restart
Felix Fietkau [Thu, 20 Oct 2011 23:28:36 +0000 (01:28 +0200)]
proto-shell: pass the return code of the proto task to the teardown handler
Felix Fietkau [Thu, 20 Oct 2011 23:04:05 +0000 (01:04 +0200)]
in log read, check for EINTR instead of EAGAIN to avoid infinite loops
Felix Fietkau [Thu, 20 Oct 2011 21:38:34 +0000 (23:38 +0200)]
try to grab log data more aggressively
Felix Fietkau [Thu, 20 Oct 2011 21:32:37 +0000 (23:32 +0200)]
fix segfaults in log line processing
Felix Fietkau [Thu, 20 Oct 2011 21:10:01 +0000 (23:10 +0200)]
reduce stack usage
Felix Fietkau [Thu, 20 Oct 2011 20:09:33 +0000 (22:09 +0200)]
proto-shell: fix parsing of long proto handler descriptions, simplify code
Felix Fietkau [Thu, 20 Oct 2011 17:20:43 +0000 (19:20 +0200)]
do not clear device state for devices created by proto-up with address-external set
Felix Fietkau [Thu, 20 Oct 2011 14:29:58 +0000 (16:29 +0200)]
fix path and invocation for hotplug calls
Felix Fietkau [Wed, 19 Oct 2011 20:43:14 +0000 (22:43 +0200)]
add support for configuring static routes
Felix Fietkau [Wed, 19 Oct 2011 20:13:10 +0000 (22:13 +0200)]
minor cleanup
Felix Fietkau [Wed, 19 Oct 2011 19:15:26 +0000 (21:15 +0200)]
add -Wmissing-declarations to cflags
Felix Fietkau [Wed, 19 Oct 2011 19:15:18 +0000 (21:15 +0200)]
make a few more functions static
Felix Fietkau [Wed, 19 Oct 2011 19:14:39 +0000 (21:14 +0200)]
fix interface_add_dns_search_list
Felix Fietkau [Wed, 19 Oct 2011 19:04:52 +0000 (21:04 +0200)]
rename config_init_interfaces to config_init_all
Felix Fietkau [Wed, 19 Oct 2011 19:03:34 +0000 (21:03 +0200)]
remove the argument to config_init_interfaces
Felix Fietkau [Wed, 19 Oct 2011 18:51:57 +0000 (20:51 +0200)]
rework route handling, move parser code to interface-ip.c, add extra options and add further support for pulling routes from config
Felix Fietkau [Wed, 19 Oct 2011 16:46:53 +0000 (18:46 +0200)]
add support for keeping multiple ip addr/route/dns lists
Felix Fietkau [Wed, 19 Oct 2011 15:32:01 +0000 (17:32 +0200)]
fix device_lock
Felix Fietkau [Wed, 19 Oct 2011 15:31:32 +0000 (17:31 +0200)]
include the DEVICE variable in hotplug events
Felix Fietkau [Wed, 19 Oct 2011 01:20:09 +0000 (03:20 +0200)]
rework device hotplug handling some more, add device_lock/device_unlock to prevent use-after-free bugs
Felix Fietkau [Wed, 19 Oct 2011 00:08:25 +0000 (02:08 +0200)]
rework and fix hotplug interface handling
Felix Fietkau [Tue, 18 Oct 2011 23:32:55 +0000 (01:32 +0200)]
apply device settings to simple devices with config specified from the interface section (legacy format compatibility), but only if no other config was provided
Felix Fietkau [Tue, 18 Oct 2011 23:12:15 +0000 (01:12 +0200)]
apply low level device settings
Felix Fietkau [Tue, 18 Oct 2011 23:00:32 +0000 (01:00 +0200)]
set the igmp snooping option for bridges
Felix Fietkau [Tue, 18 Oct 2011 22:51:10 +0000 (00:51 +0200)]
disable ipv6 for bridge member interfaces
Felix Fietkau [Tue, 18 Oct 2011 22:17:06 +0000 (00:17 +0200)]
add log messages for interface up/down
Felix Fietkau [Tue, 18 Oct 2011 22:14:51 +0000 (00:14 +0200)]
move log levels to netifd.h
Felix Fietkau [Tue, 18 Oct 2011 18:42:48 +0000 (20:42 +0200)]
on proto event IFPEV_DOWN, do not attempt to bring up interfaces that are no longer available
Felix Fietkau [Tue, 18 Oct 2011 18:41:23 +0000 (20:41 +0200)]
add support for alias devices, which are activated based on hotplug events containing the real device name
Felix Fietkau [Tue, 18 Oct 2011 18:39:14 +0000 (20:39 +0200)]
increase sleep time for dummy pppoe handler
Felix Fietkau [Tue, 18 Oct 2011 18:38:44 +0000 (20:38 +0200)]
proto-shell: reset l3 device if it was set before
Felix Fietkau [Tue, 18 Oct 2011 18:32:00 +0000 (20:32 +0200)]
display device and l3_device separately in ubus status
Felix Fietkau [Tue, 18 Oct 2011 18:12:08 +0000 (20:12 +0200)]
fix interrupted read checks in log collection
Felix Fietkau [Tue, 18 Oct 2011 17:19:02 +0000 (19:19 +0200)]
reset l3 dev on interface reload
Felix Fietkau [Tue, 18 Oct 2011 17:17:05 +0000 (19:17 +0200)]
defer releasing the l3 dev so that the generic code can take care of cleaning system settings
Felix Fietkau [Tue, 18 Oct 2011 16:18:24 +0000 (18:18 +0200)]
directly pass the device name to the device create function
Felix Fietkau [Tue, 18 Oct 2011 15:06:17 +0000 (17:06 +0200)]
add interface users (similar to device users)
Felix Fietkau [Tue, 18 Oct 2011 13:30:54 +0000 (15:30 +0200)]
clear errors before attempting to bring up an interface
Felix Fietkau [Sun, 16 Oct 2011 14:25:59 +0000 (16:25 +0200)]
fix infinite loop in logging when the logged process dies
Felix Fietkau [Sun, 16 Oct 2011 00:11:23 +0000 (02:11 +0200)]
add support for a user-configurable log level
Felix Fietkau [Sun, 16 Oct 2011 00:01:36 +0000 (02:01 +0200)]
add support for logging messages via syslog (or optionally stdout)
Felix Fietkau [Sat, 15 Oct 2011 22:42:29 +0000 (00:42 +0200)]
detach stdin/stdout/stderr from child processes, implement a separate logging pipe and relay log messages with prefix
Felix Fietkau [Sat, 15 Oct 2011 17:06:28 +0000 (19:06 +0200)]
add support for tracking open file descriptors of modules and closing them for created child processes
Felix Fietkau [Sat, 15 Oct 2011 15:42:25 +0000 (17:42 +0200)]
move netifd_start_process dir_fd to the data structure
Felix Fietkau [Sat, 15 Oct 2011 15:15:47 +0000 (17:15 +0200)]
when killed, kill pending child processes
Felix Fietkau [Sat, 15 Oct 2011 15:00:24 +0000 (17:00 +0200)]
keep track of all running child processes in one place
Felix Fietkau [Fri, 14 Oct 2011 03:59:36 +0000 (05:59 +0200)]
clear existing addresses/routes on interfaces when clearing other state
Felix Fietkau [Fri, 14 Oct 2011 02:40:44 +0000 (04:40 +0200)]
flush routes after bringing up/down an interface
Felix Fietkau [Fri, 14 Oct 2011 01:35:52 +0000 (03:35 +0200)]
fix adding routes
Felix Fietkau [Fri, 14 Oct 2011 01:18:46 +0000 (03:18 +0200)]
proto-shell: fix parsing route netmask
Felix Fietkau [Fri, 14 Oct 2011 01:14:06 +0000 (03:14 +0200)]
fix passing routes to netifd
Felix Fietkau [Fri, 14 Oct 2011 00:46:31 +0000 (02:46 +0200)]
use json_close_object instead of json_close_table
Felix Fietkau [Fri, 14 Oct 2011 00:44:19 +0000 (02:44 +0200)]
proto-shell: for default routes push a string instead of an integer as netmask
Felix Fietkau [Thu, 13 Oct 2011 23:19:06 +0000 (01:19 +0200)]
proto-shell: allow proto handlers to export variables to child processes
Felix Fietkau [Thu, 13 Oct 2011 22:47:17 +0000 (00:47 +0200)]
proto-shell: add dns search domains
Felix Fietkau [Thu, 13 Oct 2011 22:30:54 +0000 (00:30 +0200)]
proto-shell: allow passing netmask in ip address format
Felix Fietkau [Thu, 13 Oct 2011 22:09:16 +0000 (00:09 +0200)]
proto-shell: allow proto setups without ifname (if interface main dev is present)
Felix Fietkau [Thu, 13 Oct 2011 22:01:42 +0000 (00:01 +0200)]
add support for killing running proto-shell tasks with an arbitrary signal and waiting for their completion
Felix Fietkau [Thu, 13 Oct 2011 21:57:39 +0000 (23:57 +0200)]
add proper parameters for protocol notify functions
Felix Fietkau [Thu, 13 Oct 2011 13:15:28 +0000 (15:15 +0200)]
add tmp to .gitignore
Felix Fietkau [Thu, 13 Oct 2011 13:13:22 +0000 (15:13 +0200)]
clean dns list if an interface is marked as down
Felix Fietkau [Thu, 13 Oct 2011 13:11:32 +0000 (15:11 +0200)]
proto-shell: fix updating settings, only issue ifup event after configuration has been applied
Felix Fietkau [Thu, 13 Oct 2011 13:03:29 +0000 (15:03 +0200)]
proto-shell: add dns server support
Felix Fietkau [Thu, 13 Oct 2011 12:58:51 +0000 (14:58 +0200)]
add functions for adding dns servers to the proto list, hook them up in proto-static.c
Felix Fietkau [Wed, 12 Oct 2011 14:35:48 +0000 (16:35 +0200)]
kill the proto task after teardown is complete, ignore proto task completion event while teardown is pending or active
Felix Fietkau [Wed, 12 Oct 2011 14:19:52 +0000 (16:19 +0200)]
if an interface is brought down by the proto handler and autostart is still active, restart the interface
Felix Fietkau [Wed, 12 Oct 2011 14:16:58 +0000 (16:16 +0200)]
move --std=gnu99 to the main cflags
Felix Fietkau [Wed, 12 Oct 2011 14:16:28 +0000 (16:16 +0200)]
define _GNU_SOURCE and include stdio.h in ubus.c to fix a compile error
Felix Fietkau [Wed, 12 Oct 2011 14:11:49 +0000 (16:11 +0200)]
add support for launching a long running command from a proto-shell handler that keeps the connection running. bring down the interface if that command dies
Felix Fietkau [Wed, 12 Oct 2011 14:07:46 +0000 (16:07 +0200)]
fix network interface object name
Felix Fietkau [Tue, 11 Oct 2011 13:29:05 +0000 (15:29 +0200)]
implement a new ubus object "network.device", add a method for dumping detailed device information
Felix Fietkau [Tue, 11 Oct 2011 12:44:19 +0000 (14:44 +0200)]
rename the network.interface ubus object to just network
Felix Fietkau [Mon, 10 Oct 2011 20:17:03 +0000 (22:17 +0200)]
add some code for keeping track of dns servers and search domains and for writing resolv.conf
Felix Fietkau [Mon, 10 Oct 2011 17:12:43 +0000 (19:12 +0200)]
add interface uptime to the status info
Felix Fietkau [Mon, 10 Oct 2011 14:30:42 +0000 (16:30 +0200)]
proto-shell: add a library function for sending protocol handler updates