Felix Fietkau [Sat, 30 Nov 2013 18:46:12 +0000 (19:46 +0100)]
wireless: add some device/vif error debug messages
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Sat, 30 Nov 2013 18:44:14 +0000 (19:44 +0100)]
wireless: fix channel check
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Sat, 30 Nov 2013 17:17:55 +0000 (18:17 +0100)]
wireless: fix use-after-free bug
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Sat, 30 Nov 2013 15:49:04 +0000 (16:49 +0100)]
wireless: show the virtual interface section name in wireless status
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Sat, 30 Nov 2013 15:40:39 +0000 (16:40 +0100)]
wireless: show the ifname in wireless status
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Fri, 29 Nov 2013 14:54:02 +0000 (15:54 +0100)]
wireless: add support for global up/down command
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Helmut Schaa [Fri, 29 Nov 2013 14:22:34 +0000 (15:22 +0100)]
netifd: Fix possible segfault in bridge code
Need to check calloc result. In case of failure the bridge member will be missing.
Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com>
Felix Fietkau [Mon, 21 Oct 2013 18:15:31 +0000 (20:15 +0200)]
add initial support for handling wireless devices via scripts
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Thu, 28 Nov 2013 17:34:14 +0000 (18:34 +0100)]
utils.sh: add N (newline)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Steven Barth [Wed, 27 Nov 2013 13:52:31 +0000 (14:52 +0100)]
IPv6: add class support to regular IPv6 addresses
Felix Fietkau [Thu, 31 Oct 2013 11:20:32 +0000 (12:20 +0100)]
proto-shell: fix legacy proto_config_add_* functions, make them wrap around config_add_*
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Steven Barth [Wed, 30 Oct 2013 12:18:24 +0000 (13:18 +0100)]
IPv6: Export delegation setting via ubus
This allows foreign prefix delegators to quickly distinguish between
managed and unmanaged prefixes.
Signed-off-by: Steven Barth <steven@midlink.org>
Felix Fietkau [Tue, 29 Oct 2013 15:58:16 +0000 (16:58 +0100)]
proto-shell: replace variable length name char arrays with pointers, using calloc_a
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Tue, 29 Oct 2013 15:59:05 +0000 (16:59 +0100)]
bridge: fix stray semicolon, fixes a bug in bridge primary port reset
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Tue, 29 Oct 2013 15:11:55 +0000 (16:11 +0100)]
scripts/utils.sh: add a function for setting a variable default
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Mon, 21 Oct 2013 13:49:11 +0000 (15:49 +0200)]
utils: add a function for checking if a process given by pid is still alive
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Sat, 19 Oct 2013 14:43:22 +0000 (16:43 +0200)]
add helper function for adding/removing devices to interfaces
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Tue, 24 Sep 2013 09:56:43 +0000 (11:56 +0200)]
handler: include config.h
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Tue, 24 Sep 2013 09:53:48 +0000 (11:53 +0200)]
proto-shell: move more core to handler.c
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Tue, 24 Sep 2013 09:01:07 +0000 (11:01 +0200)]
proto-shell: move script handler config parse code to handler.c
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Tue, 24 Sep 2013 08:47:47 +0000 (10:47 +0200)]
proto-shell: move script handler dump code to handler.c
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Tue, 24 Sep 2013 08:39:15 +0000 (10:39 +0200)]
proto-shell: make handler dump code more generic
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Tue, 22 Oct 2013 12:10:20 +0000 (14:10 +0200)]
scripts: make config_add_* parameters take multiple arguments
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Tue, 24 Sep 2013 07:44:40 +0000 (09:44 +0200)]
scripts: add config_add_array() to utils
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Tue, 24 Sep 2013 07:43:37 +0000 (09:43 +0200)]
scripts: remove the executable flag from netifd-proto.sh
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Tue, 24 Sep 2013 07:42:17 +0000 (09:42 +0200)]
scripts: move some utility functions out of netifd-proto.sh into utils.sh
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Tue, 24 Sep 2013 07:35:22 +0000 (09:35 +0200)]
scripts: reorganize directory layout
move example scripts from dummy/ to examples/
keep scripts that can be used as-is in scripts/
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Tue, 24 Sep 2013 07:31:15 +0000 (09:31 +0200)]
scripts: delete ifup/ifdown, they are unused
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Sat, 5 Oct 2013 19:41:52 +0000 (21:41 +0200)]
interface: rework code to get rid of arbitrary IFNAMSIZ limitation for interface names
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Sat, 19 Oct 2013 15:30:04 +0000 (17:30 +0200)]
interface: remove "dynamic" argument for interface_init, add the interface_set_dynamic function instead
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Steven Barth [Sat, 19 Oct 2013 11:00:49 +0000 (13:00 +0200)]
Fix ifupdate events
Steven Barth [Fri, 18 Oct 2013 13:15:49 +0000 (15:15 +0200)]
Reevaluate target routes also on interface update
Steven Barth [Fri, 18 Oct 2013 12:18:32 +0000 (14:18 +0200)]
Add option "delegate" to toggle prefix delegation
Steven Barth [Fri, 18 Oct 2013 10:09:42 +0000 (12:09 +0200)]
Add source-restricted routes
Steven Barth [Wed, 16 Oct 2013 09:58:12 +0000 (11:58 +0200)]
key to data elements point at wrong memory area
Steven Barth [Thu, 17 Oct 2013 14:51:49 +0000 (16:51 +0200)]
Add protocol update notifications and hotplug legacy calls
Steven Barth [Thu, 17 Oct 2013 14:49:23 +0000 (16:49 +0200)]
Add ubus function to create nested interfaces
Steven Barth [Thu, 17 Oct 2013 14:43:18 +0000 (16:43 +0200)]
Add ubus methods for global interface status
Felix Fietkau [Mon, 7 Oct 2013 13:47:43 +0000 (15:47 +0200)]
macvlan: turns out netinet/ether.h is needed on some linux systems
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Fri, 4 Oct 2013 14:08:01 +0000 (16:08 +0200)]
macvlan: include net/ethernet.h instead of netinet/ether.h (more portable)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Thu, 3 Oct 2013 14:50:51 +0000 (16:50 +0200)]
device: add macvlan support
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
Felix Fietkau [Thu, 3 Oct 2013 14:15:29 +0000 (16:15 +0200)]
device.c: report device type when claim fails
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Thu, 3 Oct 2013 13:10:33 +0000 (15:10 +0200)]
device_add_user: return immediately if the new device is the same as the old device
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Steven Barth [Tue, 1 Oct 2013 16:01:16 +0000 (18:01 +0200)]
Don't delete / readd IP addresses when only their lifetime has changed
Nathan Hintz [Tue, 24 Sep 2013 18:21:02 +0000 (11:21 -0700)]
vlan: set the name of vlan devices earlier
Set the device name earlier so that the logging done inside of
'device_init_virtual' can print the name of the device being
initialized (instead of an empty string).
Signed-off-by: Nathan Hintz <nlhintz@hotmail.com>
Luka Perkov [Thu, 29 Aug 2013 13:28:27 +0000 (15:28 +0200)]
bridge: fix corner case with network reload
After removing all ifname options from bridge interface and executing network
reload the configuration was not applied properly on the system. With this
change that is no longer a issue.
Signed-off-by: Luka Perkov <luka@openwrt.org>
Steven Barth [Tue, 16 Jul 2013 12:01:52 +0000 (14:01 +0200)]
IPv6: fix prefix assignment with continuous hints
Luka Perkov [Thu, 11 Jul 2013 22:20:59 +0000 (00:20 +0200)]
bridge: add bridge_empty option which allows creation of empty bridges
Signed-off-by: Luka Perkov <luka@openwrt.org>
Felix Fietkau [Tue, 18 Jun 2013 16:24:37 +0000 (18:24 +0200)]
interface: fix NULL pointer defref in interface_set_main_dev
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Steven Barth [Mon, 17 Jun 2013 21:28:30 +0000 (23:28 +0200)]
IPv6: Reverse assignment sorting order
Steven Barth [Mon, 17 Jun 2013 21:15:02 +0000 (23:15 +0200)]
IPv6: Satisfy unhinted assignments ordered by prefix length
Felix Fietkau [Mon, 10 Jun 2013 12:31:02 +0000 (14:31 +0200)]
config: use the new uci_blob library code
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Mon, 10 Jun 2013 11:23:06 +0000 (13:23 +0200)]
config: replace config_memdup with blob_memdup from libubox
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Steven Barth [Mon, 10 Jun 2013 10:33:32 +0000 (12:33 +0200)]
Change IP reloading order
Steven Barth [Mon, 10 Jun 2013 08:01:20 +0000 (10:01 +0200)]
Reuse automatic ip6table value
Steven Barth [Mon, 3 Jun 2013 16:42:10 +0000 (18:42 +0200)]
IPv6: Improve source-routing policies
* Set a default policy-failed rule per prefix (based on a patch by Jonas Gorski)
* Use input interface in addition to source for filtering
* Avoid duplicate routing policies
Steven Barth [Fri, 31 May 2013 15:05:58 +0000 (17:05 +0200)]
IPv6: fix device_prefix vlist_key to not include prefix class
Steven Barth [Fri, 31 May 2013 14:56:07 +0000 (16:56 +0200)]
move excluded prefix and length out of key for device_prefix
Steven Barth [Thu, 30 May 2013 14:33:44 +0000 (16:33 +0200)]
Add missing update-triggers for source-based routing
Steven Barth [Thu, 30 May 2013 14:32:00 +0000 (16:32 +0200)]
IPv6: reorganize prefix assignment
* put parameters in a more suitable place
* add support for prefix classes
Steven Barth [Thu, 30 May 2013 07:37:34 +0000 (09:37 +0200)]
IPv6: Log a warning if users have prefixes but haven't assigned them
Steven Barth [Wed, 29 May 2013 07:36:20 +0000 (09:36 +0200)]
IPv6: remove ULA prefix-trigger (unused)
Steven Barth [Tue, 28 May 2013 18:47:33 +0000 (20:47 +0200)]
IPv6: fix address-lifetime overflows on 64-bit architectures
Steven Barth [Tue, 28 May 2013 17:59:19 +0000 (19:59 +0200)]
IPv6: fix wrap-arounds in address lifetimes
Jo-Philipp Wich [Tue, 28 May 2013 10:11:12 +0000 (12:11 +0200)]
Make sure that iprule flushing happens after system_init(), otherwise the rtnl_socket is not available
Jo-Philipp Wich [Mon, 27 May 2013 17:57:58 +0000 (19:57 +0200)]
Move iprule flushing to the init function to make the timing predictable
Jo-Philipp Wich [Mon, 27 May 2013 17:45:20 +0000 (19:45 +0200)]
Move initial iprule flushing to system_add_iprule() to not collide with generic multiwan support
Steven Barth [Fri, 17 May 2013 14:24:37 +0000 (16:24 +0200)]
Add option to define target routing table for protocol routes.
This unifies source-routing for both IPv6 and IPv4 (default off).
Based on a patch by Kristian Evensen
Steven Barth [Mon, 13 May 2013 16:41:00 +0000 (18:41 +0200)]
IPv6: Set loopback-policy for output traffic
Signed-off-by: Steven Barth <steven@midlink.org>
Steven Barth [Mon, 13 May 2013 09:12:10 +0000 (11:12 +0200)]
Use logical instead of physical name for tunnel underlying link.
Signed-off-by: Steven Barth <steven@midlink.org>
Steven Barth [Mon, 13 May 2013 08:55:01 +0000 (10:55 +0200)]
Add support for IPv6 and interface target-routes & dependencies
Signed-off-by: Steven Barth <steven@midlink.org>
Steven Barth [Mon, 13 May 2013 07:23:06 +0000 (09:23 +0200)]
Add support for IP in IPv6 tunnels (DS-Lite)
Signed-off-by: Steven Barth <steven@midlink.org>
Steven Barth [Sat, 11 May 2013 10:56:02 +0000 (12:56 +0200)]
IPv6: Use source-routing to allow multi-wan
Steven Barth [Wed, 8 May 2013 14:47:55 +0000 (16:47 +0200)]
IPv6: Use key=val format for prefix options
Jo-Philipp Wich [Thu, 2 May 2013 08:47:40 +0000 (10:47 +0200)]
utils: use list_add_tail() in vlist_simple_add() to preserve user-defined order of entries
Jo-Philipp Wich [Sat, 27 Apr 2013 09:14:07 +0000 (11:14 +0200)]
bridge: disable multicast snooping by default
Felix Fietkau [Thu, 25 Apr 2013 16:27:20 +0000 (18:27 +0200)]
interface: fix removing main_dev on config reload changes if ifname is reset to NULL
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Thu, 25 Apr 2013 16:19:45 +0000 (18:19 +0200)]
interface: rework reload, ensure that all changes are applied before restarting the interface
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Jo-Philipp Wich [Tue, 23 Apr 2013 14:04:36 +0000 (16:04 +0200)]
set default bridge priority to 0x7FFF
Niels Boehm [Mon, 4 Feb 2013 18:05:17 +0000 (18:05 +0000)]
add bridge priority option
[netifd] add bridge priority option
Using the bridge priority (lower numbers are higher in the
hierarchy), one can ensure that the router is chosen as root
bridge in a setup with spanning tree protocol.
For instance, one can set the priority of network lan to 32767,
causing the router to win over all directly and indirectly
connected nodes that have a default priority of 32768.
The reason for doing that is that otherwise it has a default
priority 32768 as well and any other connected node could win and
get root bridge. In a home setup, those nodes are often desktop
or laptop boxes and get switched off from time to time. As a
consequence, root bridges vanish or new root bridges get chosen
relatively often, resulting in frequent topology changes to the
STP network. While the new topology has not settled, packets can
get lost, causing noticeable interruptions of network traffic.
Setting the router's bridge on a lower numbered priority (and thus
higher in the selection hierarchy) solves the problem in the vast
majority of the cases by ensuring that the device that is most
likely powered on 24/7 gets chosen as root and prevents topology
changes.
Signed-off-by: Niels Boehm <blubberdiblub@gmail.com>
Steven Barth [Fri, 19 Apr 2013 13:36:19 +0000 (15:36 +0200)]
IPv6: Try harder to assign prefix parts
Felix Fietkau [Mon, 15 Apr 2013 14:20:50 +0000 (16:20 +0200)]
device: use safe_list for device event, fixes some hang issues
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Steven Barth [Tue, 9 Apr 2013 13:41:00 +0000 (15:41 +0200)]
IPv6: Remove local ULA if there is an external one
Jo-Philipp Wich [Tue, 9 Apr 2013 12:16:19 +0000 (14:16 +0200)]
Fix comparisation conditions in route_cmp()
Steven Barth [Fri, 5 Apr 2013 13:25:38 +0000 (15:25 +0200)]
Fix a memory corruption when updating IPv6 prefixes
Jo-Philipp Wich [Fri, 5 Apr 2013 11:45:08 +0000 (13:45 +0200)]
Maintain config order of ip rules unless user explicitely provides priority
Felix Fietkau [Fri, 5 Apr 2013 11:14:44 +0000 (13:14 +0200)]
fix route sorting order
New sorting order:
- prefix length (descending)
- metric (ascending)
- flags
- target address
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Steven Barth [Fri, 5 Apr 2013 11:31:37 +0000 (13:31 +0200)]
Add myself to header for IPv6 work
Jo-Philipp Wich [Fri, 5 Apr 2013 10:24:13 +0000 (12:24 +0200)]
Fix system_resolve_rt_table() stub in system-dummy.c
Jo-Philipp Wich [Fri, 5 Apr 2013 09:15:58 +0000 (11:15 +0200)]
Incorperate route table into avl key
Jo-Philipp Wich [Thu, 4 Apr 2013 12:41:40 +0000 (14:41 +0200)]
Expose route table if route is not in the main table
Jo-Philipp Wich [Thu, 4 Apr 2013 12:41:39 +0000 (14:41 +0200)]
Add support for ip rules
Jo-Philipp Wich [Thu, 4 Apr 2013 12:41:38 +0000 (14:41 +0200)]
Implement support for route / route6 table attribute
Steven Barth [Wed, 3 Apr 2013 18:03:15 +0000 (20:03 +0200)]
Rewrite IPv6 prefix assignment
Steven Barth [Tue, 19 Mar 2013 10:13:15 +0000 (11:13 +0100)]
Fix IPv6 RDNSS writing to resolv.conf (buffer was too short)
Thomas Gstädtner [Sun, 3 Mar 2013 17:20:10 +0000 (18:20 +0100)]
fix libnl detection
Steven Barth [Tue, 19 Feb 2013 08:36:23 +0000 (09:36 +0100)]
Only update resolv.conf if changed (avoid logspam)
Felix Fietkau [Mon, 11 Feb 2013 21:10:03 +0000 (22:10 +0100)]
prefer to link against libjson-c over libjson (the new library name in git versions of json-c)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Sun, 10 Feb 2013 18:14:35 +0000 (19:14 +0100)]
device: protect device event broadcast against simultaneous deletions of multiple receivers in the callback (can happen with aliases)
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Felix Fietkau [Sun, 10 Feb 2013 18:02:49 +0000 (19:02 +0100)]
proto: default to 128 instead of the "netmask" option for ipv6 addresses
Signed-off-by: Felix Fietkau <nbd@openwrt.org>