oweals/netifd.git
12 years agoproto-shell: set sm to S_IDLE once the interface is up
Felix Fietkau [Thu, 12 Apr 2012 13:54:13 +0000 (15:54 +0200)]
proto-shell: set sm to S_IDLE once the interface is up

12 years agofix use-after-free when an interface event is pending while the interface is being...
Felix Fietkau [Thu, 29 Mar 2012 13:07:01 +0000 (16:07 +0300)]
fix use-after-free when an interface event is pending while the interface is being freed

12 years agonetifd: fix hotplug-adding of non-bridge interfaces by setting the l3 device early
Felix Fietkau [Wed, 28 Mar 2012 17:28:24 +0000 (20:28 +0300)]
netifd: fix hotplug-adding of non-bridge interfaces by setting the l3 device early

12 years agoallow proto handlers to attach data items in notify
Felix Fietkau [Fri, 23 Mar 2012 13:45:43 +0000 (15:45 +0200)]
allow proto handlers to attach data items in notify

12 years agoadd support for attaching arbitrary state data to interfaces
Felix Fietkau [Fri, 23 Mar 2012 13:25:39 +0000 (15:25 +0200)]
add support for attaching arbitrary state data to interfaces

12 years agomove l3 device tracking to interface core to enforce proper order of address/route...
Felix Fietkau [Fri, 23 Mar 2012 12:41:53 +0000 (14:41 +0200)]
move l3 device tracking to interface core to enforce proper order of address/route removal on device or interface state changes

12 years agodump interface routes via ubus
Felix Fietkau [Fri, 23 Mar 2012 11:48:53 +0000 (13:48 +0200)]
dump interface routes via ubus

12 years agoadd network addresses to interface status
Felix Fietkau [Fri, 23 Mar 2012 09:35:43 +0000 (10:35 +0100)]
add network addresses to interface status

12 years agoadd support for updating route metrics
Felix Fietkau [Mon, 19 Mar 2012 22:26:44 +0000 (23:26 +0100)]
add support for updating route metrics

12 years agoadd a flag to keep track of route metric overrides
Felix Fietkau [Mon, 19 Mar 2012 22:10:54 +0000 (23:10 +0100)]
add a flag to keep track of route metric overrides

12 years agofix vlist_simple_add version handling
Felix Fietkau [Mon, 19 Mar 2012 21:36:43 +0000 (22:36 +0100)]
fix vlist_simple_add version handling

12 years agoproperly flush routes and l3 devices when tearing down interfaces
Felix Fietkau [Mon, 19 Mar 2012 21:04:03 +0000 (22:04 +0100)]
properly flush routes and l3 devices when tearing down interfaces

12 years agomove device cleanup to common code, fixes use-after-free in tunnel code
Felix Fietkau [Mon, 19 Mar 2012 20:38:13 +0000 (21:38 +0100)]
move device cleanup to common code, fixes use-after-free in tunnel code

12 years agofix a memory leak
Felix Fietkau [Mon, 19 Mar 2012 20:18:52 +0000 (21:18 +0100)]
fix a memory leak

12 years agosimplify log buffer handling
Felix Fietkau [Mon, 19 Mar 2012 19:56:09 +0000 (20:56 +0100)]
simplify log buffer handling

12 years agofix log buffer splitting
Felix Fietkau [Mon, 19 Mar 2012 19:37:34 +0000 (20:37 +0100)]
fix log buffer splitting

12 years agoproto-shell: fix potential use-after-free
Felix Fietkau [Mon, 19 Mar 2012 19:07:12 +0000 (20:07 +0100)]
proto-shell: fix potential use-after-free

12 years agofix log buffer overflow handling
Felix Fietkau [Mon, 19 Mar 2012 18:34:37 +0000 (19:34 +0100)]
fix log buffer overflow handling

12 years agoremove some leftover debug code
Felix Fietkau [Thu, 15 Mar 2012 10:54:59 +0000 (11:54 +0100)]
remove some leftover debug code

12 years agofix ipv6 routes
Felix Fietkau [Thu, 15 Mar 2012 10:14:04 +0000 (11:14 +0100)]
fix ipv6 routes

12 years agoalways create device routes
Felix Fietkau [Thu, 15 Mar 2012 10:03:52 +0000 (11:03 +0100)]
always create device routes

12 years agoshell: add tunnel support
Felix Fietkau [Thu, 15 Mar 2012 09:46:31 +0000 (10:46 +0100)]
shell: add tunnel support

12 years agoshell: support routes without gateway
Felix Fietkau [Thu, 15 Mar 2012 09:46:22 +0000 (10:46 +0100)]
shell: support routes without gateway

12 years agoadd shell functions for adding tunnel data in proto notify
Felix Fietkau [Thu, 15 Mar 2012 00:54:09 +0000 (01:54 +0100)]
add shell functions for adding tunnel data in proto notify

12 years agoparse tunnel devices from config
Felix Fietkau [Wed, 14 Mar 2012 23:09:43 +0000 (00:09 +0100)]
parse tunnel devices from config

12 years agosystem-linux: add functions for adding/removing ip tunnels (currently only sit supported)
Felix Fietkau [Wed, 14 Mar 2012 23:09:20 +0000 (00:09 +0100)]
system-linux: add functions for adding/removing ip tunnels (currently only sit supported)

12 years agomake route metrics default to 0
Felix Fietkau [Fri, 9 Mar 2012 09:58:07 +0000 (10:58 +0100)]
make route metrics default to 0

12 years agosystem-dummy: add route metric information
Felix Fietkau [Fri, 9 Mar 2012 09:57:13 +0000 (10:57 +0100)]
system-dummy: add route metric information

12 years agobridge: turn stp off by default
Felix Fietkau [Mon, 5 Mar 2012 20:19:26 +0000 (21:19 +0100)]
bridge: turn stp off by default

12 years agobridge: increase the default forward delay to 2 seconds (minimum enforced by the...
Felix Fietkau [Mon, 5 Mar 2012 20:19:05 +0000 (21:19 +0100)]
bridge: increase the default forward delay to 2 seconds (minimum enforced by the kernel)

12 years agobridge: fix removal of present bridge members
Felix Fietkau [Mon, 5 Mar 2012 20:09:26 +0000 (21:09 +0100)]
bridge: fix removal of present bridge members

12 years agobridge: implement config reload support, preserves hotplug interfaces and adds fast...
Felix Fietkau [Mon, 5 Mar 2012 20:09:11 +0000 (21:09 +0100)]
bridge: implement config reload support, preserves hotplug interfaces and adds fast updates for adding/removing bridge members

12 years agosystem-linux: ignore errors in system_bridge_addif if the interface is already in...
Felix Fietkau [Mon, 5 Mar 2012 19:52:33 +0000 (20:52 +0100)]
system-linux: ignore errors in system_bridge_addif if the interface is already in the specified bridge

12 years agobridge: add a debug message when a device could not be added
Felix Fietkau [Mon, 5 Mar 2012 19:46:17 +0000 (20:46 +0100)]
bridge: add a debug message when a device could not be added

12 years agobridge: fix hotplug device removal
Felix Fietkau [Sun, 4 Mar 2012 00:18:45 +0000 (01:18 +0100)]
bridge: fix hotplug device removal

12 years agobridge: fix member list handling
Felix Fietkau [Sun, 4 Mar 2012 00:14:26 +0000 (01:14 +0100)]
bridge: fix member list handling

12 years agoremove redundant variable assignment
Felix Fietkau [Sun, 4 Mar 2012 00:01:30 +0000 (01:01 +0100)]
remove redundant variable assignment

12 years agodevice: differentiate between DEV_CONFIG_APPLIED (no device up/down), and DEV_CONFIG_...
Felix Fietkau [Sat, 3 Mar 2012 23:45:21 +0000 (00:45 +0100)]
device: differentiate between DEV_CONFIG_APPLIED (no device up/down), and DEV_CONFIG_RESTART (device restart)

12 years agoadd BUILD_BUG_ON from the kernel
Felix Fietkau [Sat, 3 Mar 2012 23:42:35 +0000 (00:42 +0100)]
add BUILD_BUG_ON from the kernel

12 years agovlist: add a special node version -1 for nodes that should not be flushed on updates
Felix Fietkau [Sat, 3 Mar 2012 23:31:50 +0000 (00:31 +0100)]
vlist: add a special node version -1 for nodes that should not be flushed on updates

12 years agobridge: use vlist instead of list
Felix Fietkau [Sat, 3 Mar 2012 23:26:22 +0000 (00:26 +0100)]
bridge: use vlist instead of list

12 years agosimplify vlist, move avl key handling to vlist_add()
Felix Fietkau [Sat, 3 Mar 2012 23:02:38 +0000 (00:02 +0100)]
simplify vlist, move avl key handling to vlist_add()

12 years agodo not bring down hotplug devices
Felix Fietkau [Sat, 3 Mar 2012 19:55:39 +0000 (20:55 +0100)]
do not bring down hotplug devices

12 years agopreserve interface main hotplug device on reload
Felix Fietkau [Sat, 3 Mar 2012 19:55:03 +0000 (20:55 +0100)]
preserve interface main hotplug device on reload

12 years agoubus: use interface_{add,remove}_link for hotplug ops
Felix Fietkau [Sat, 3 Mar 2012 19:21:53 +0000 (20:21 +0100)]
ubus: use interface_{add,remove}_link for hotplug ops

12 years agofix mac address parsing
Felix Fietkau [Tue, 28 Feb 2012 00:05:35 +0000 (01:05 +0100)]
fix mac address parsing

12 years agofix mac address handling
Felix Fietkau [Mon, 27 Feb 2012 23:54:19 +0000 (00:54 +0100)]
fix mac address handling

12 years agominor cleanup
Felix Fietkau [Sun, 26 Feb 2012 16:55:58 +0000 (17:55 +0100)]
minor cleanup

12 years agoparse and use the broadcast option
Felix Fietkau [Sun, 26 Feb 2012 16:49:03 +0000 (17:49 +0100)]
parse and use the broadcast option

12 years agomove broadcast address handling to the core
Felix Fietkau [Sun, 26 Feb 2012 16:43:10 +0000 (17:43 +0100)]
move broadcast address handling to the core

12 years agomake proto_parse_ip_addr_string() static
Felix Fietkau [Sun, 26 Feb 2012 16:21:26 +0000 (17:21 +0100)]
make proto_parse_ip_addr_string() static

12 years agoproto: move the dns search option handling to the core
Felix Fietkau [Sun, 26 Feb 2012 16:20:00 +0000 (17:20 +0100)]
proto: move the dns search option handling to the core

12 years agoproto-shell: process some common notify options using proto_apply_ip_settings()
Felix Fietkau [Sun, 26 Feb 2012 16:17:57 +0000 (17:17 +0100)]
proto-shell: process some common notify options using proto_apply_ip_settings()

12 years agoproto: add an option for specifying external addresses using proto_apply_ip_settings()
Felix Fietkau [Sun, 26 Feb 2012 16:12:59 +0000 (17:12 +0100)]
proto: add an option for specifying external addresses using proto_apply_ip_settings()

12 years agomove static address setup to proto.c in preparation for unifying it with the proto...
Felix Fietkau [Sun, 26 Feb 2012 16:08:17 +0000 (17:08 +0100)]
move static address setup to proto.c in preparation for unifying it with the proto-shell code doing similar things

12 years agosystem-linux: fix the default broadcast address for v4
Felix Fietkau [Sun, 26 Feb 2012 15:51:48 +0000 (16:51 +0100)]
system-linux: fix the default broadcast address for v4

12 years agoremove device_{route,addr}->device
Felix Fietkau [Sun, 26 Feb 2012 15:38:06 +0000 (16:38 +0100)]
remove device_{route,addr}->device

12 years agoset route metrics using netlink
Felix Fietkau [Wed, 15 Feb 2012 17:31:55 +0000 (18:31 +0100)]
set route metrics using netlink

12 years agoinitialize route->metric to -1
Felix Fietkau [Wed, 15 Feb 2012 17:30:25 +0000 (18:30 +0100)]
initialize route->metric to -1

12 years agoupdate the interface list version on config reload, fixes removing old interfaces
Felix Fietkau [Thu, 2 Feb 2012 23:15:04 +0000 (00:15 +0100)]
update the interface list version on config reload, fixes removing old interfaces

12 years agovlist: fix node version update for tree->keep_old/no_delete
Felix Fietkau [Thu, 2 Feb 2012 23:14:50 +0000 (00:14 +0100)]
vlist: fix node version update for tree->keep_old/no_delete

12 years agoremove an unnecessary check
Felix Fietkau [Tue, 24 Jan 2012 21:39:35 +0000 (22:39 +0100)]
remove an unnecessary check

12 years agomake sure iface->proto_handler is always initialized
Felix Fietkau [Tue, 24 Jan 2012 21:39:11 +0000 (22:39 +0100)]
make sure iface->proto_handler is always initialized

12 years agoadd a generic option for disabling the automatic default route on interfaces
Felix Fietkau [Mon, 23 Jan 2012 23:52:32 +0000 (00:52 +0100)]
add a generic option for disabling the automatic default route on interfaces

12 years agoalways call device_set_disabled, even if the "enabled" attribute is not present
Felix Fietkau [Mon, 23 Jan 2012 13:09:43 +0000 (14:09 +0100)]
always call device_set_disabled, even if the "enabled" attribute is not present

12 years agoproto-shell: merge setup/teardown task into one
Felix Fietkau [Sun, 22 Jan 2012 18:19:10 +0000 (19:19 +0100)]
proto-shell: merge setup/teardown task into one

12 years agoremove flags for device settings that could not be applied successfully
Felix Fietkau [Sun, 22 Jan 2012 18:11:19 +0000 (19:11 +0100)]
remove flags for device settings that could not be applied successfully

12 years agoshow mtu, macaddr and txqueuelen from cached device settings
Felix Fietkau [Sun, 22 Jan 2012 18:09:50 +0000 (19:09 +0100)]
show mtu, macaddr and txqueuelen from cached device settings

12 years agosave and restore previous device settings when overriding them via config
Felix Fietkau [Sun, 22 Jan 2012 18:00:04 +0000 (19:00 +0100)]
save and restore previous device settings when overriding them via config

12 years agomove device settings to a separate struct
Felix Fietkau [Sun, 22 Jan 2012 17:43:36 +0000 (18:43 +0100)]
move device settings to a separate struct

12 years agoquery available/used device speeds via ethtool
Felix Fietkau [Sun, 22 Jan 2012 17:18:50 +0000 (18:18 +0100)]
query available/used device speeds via ethtool

12 years agoalways use SIGKILL for netifd_kill_process, it is usually a last resort
Felix Fietkau [Sat, 21 Jan 2012 19:26:15 +0000 (20:26 +0100)]
always use SIGKILL for netifd_kill_process, it is usually a last resort

12 years agoproto-shell: rework task statemachine
Felix Fietkau [Sat, 21 Jan 2012 19:25:15 +0000 (20:25 +0100)]
proto-shell: rework task statemachine

Make handling setup/proto/teardown tasks more explicit and easier to read.
Should hopefully prevent some forms of deadlocks.

12 years agoadd mac address to device info
Felix Fietkau [Thu, 19 Jan 2012 16:38:01 +0000 (17:38 +0100)]
add mac address to device info

12 years agoexport carrier status in device stats
Felix Fietkau [Thu, 19 Jan 2012 16:14:52 +0000 (17:14 +0100)]
export carrier status in device stats

12 years agoallow devices to be disabled through a config option
Felix Fietkau [Wed, 18 Jan 2012 17:54:01 +0000 (18:54 +0100)]
allow devices to be disabled through a config option

12 years agouse the simplified vlist type for dns servers/search
Felix Fietkau [Sun, 15 Jan 2012 18:25:27 +0000 (19:25 +0100)]
use the simplified vlist type for dns servers/search

12 years agoadd a simplified vlist type
Felix Fietkau [Sun, 15 Jan 2012 18:25:03 +0000 (19:25 +0100)]
add a simplified vlist type

12 years agofix use-after-free on device free codepath due to recursion issues, and fix dev-...
Felix Fietkau [Sun, 4 Dec 2011 19:16:49 +0000 (20:16 +0100)]
fix use-after-free on device free codepath due to recursion issues, and fix dev->parent refcounting issues

12 years agoadd dummy code for testing system_if_get_parent()
Felix Fietkau [Sun, 4 Dec 2011 19:16:14 +0000 (20:16 +0100)]
add dummy code for testing system_if_get_parent()

12 years agofix use-after-free on config reload
Felix Fietkau [Sun, 4 Dec 2011 19:07:02 +0000 (20:07 +0100)]
fix use-after-free on config reload

13 years agoavoid deleting and re-adding duplicate ip addresses and routes, fixes tcp connection...
Felix Fietkau [Sun, 13 Nov 2011 16:12:49 +0000 (17:12 +0100)]
avoid deleting and re-adding duplicate ip addresses and routes, fixes tcp connection loss on dhcp rekey

13 years agodo not hardcode config package in config_init_package()
Felix Fietkau [Tue, 8 Nov 2011 21:58:45 +0000 (22:58 +0100)]
do not hardcode config package in config_init_package()

13 years agoadd a hotplug op for preparing an interface bridge so that it's ready when an externa...
Felix Fietkau [Fri, 4 Nov 2011 00:47:13 +0000 (01:47 +0100)]
add a hotplug op for preparing an interface bridge so that it's ready when an external process adds interfaces

13 years agobridge: fix cleanup path, avoid double free on hotplug device remove
Felix Fietkau [Thu, 3 Nov 2011 23:47:40 +0000 (00:47 +0100)]
bridge: fix cleanup path, avoid double free on hotplug device remove

13 years agofix interface event handling, suppress redundant down events
Felix Fietkau [Thu, 3 Nov 2011 19:57:06 +0000 (20:57 +0100)]
fix interface event handling, suppress redundant down events

13 years agomark hotplug-added devices as external
Felix Fietkau [Tue, 1 Nov 2011 21:54:42 +0000 (22:54 +0100)]
mark hotplug-added devices as external

13 years agoAdd time.h include
Jens Muecke [Mon, 31 Oct 2011 14:47:55 +0000 (15:47 +0100)]
Add time.h include

Found on compiling for x64

13 years agoproto-shell: handle the "available" config flag
Felix Fietkau [Thu, 27 Oct 2011 19:09:47 +0000 (21:09 +0200)]
proto-shell: handle the "available" config flag

13 years agoproto-shell: prefix protocol callback functions with proto_
Felix Fietkau [Thu, 27 Oct 2011 18:04:52 +0000 (20:04 +0200)]
proto-shell: prefix protocol callback functions with proto_

13 years agofold the _init callback into _init_config
Felix Fietkau [Thu, 27 Oct 2011 09:01:32 +0000 (11:01 +0200)]
fold the _init callback into _init_config

13 years agoproto-shell: add a notify command for setting interface availability
Felix Fietkau [Thu, 27 Oct 2011 08:39:13 +0000 (10:39 +0200)]
proto-shell: add a notify command for setting interface availability

13 years agorecognize stacked interfaces (e.g. dsa) and handle their dependencies
Felix Fietkau [Wed, 26 Oct 2011 18:12:32 +0000 (20:12 +0200)]
recognize stacked interfaces (e.g. dsa) and handle their dependencies

13 years agoensure that iface->proto_handler gets initialized
Felix Fietkau [Wed, 26 Oct 2011 17:30:05 +0000 (19:30 +0200)]
ensure that iface->proto_handler gets initialized

13 years agoon reload, check for null ifname before comparing it
Felix Fietkau [Wed, 26 Oct 2011 17:14:52 +0000 (19:14 +0200)]
on reload, check for null ifname before comparing it

13 years agoinitialize dns server/search lists
Felix Fietkau [Mon, 24 Oct 2011 18:46:23 +0000 (20:46 +0200)]
initialize dns server/search lists

13 years agofix a logic error leading to segfaults on updates
Felix Fietkau [Mon, 24 Oct 2011 18:46:07 +0000 (20:46 +0200)]
fix a logic error leading to segfaults on updates

13 years agofix handling bridge interfaces with no initial device
Felix Fietkau [Sun, 23 Oct 2011 17:20:35 +0000 (19:20 +0200)]
fix handling bridge interfaces with no initial device

13 years agofix system_if_check
Felix Fietkau [Sun, 23 Oct 2011 15:22:31 +0000 (17:22 +0200)]
fix system_if_check

13 years agoparse kobject uevent messages for figuring out when network devices appear, RTM_NEWLI...
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