summaryrefslogtreecommitdiffhomepage
path: root/system-dummy.c
AgeCommit message (Collapse)Author
2020-11-05system-dummy: set present state only for simple devicesFelix Fietkau
Fixes an issue with bringing up VLANs/bridges too early Signed-off-by: Felix Fietkau <nbd@nbd.name>
2020-07-18bridge: add support for adding vlans to a bridgeJohn Crispin
Add a rtnl helper for adding vlans to a bridge interface. Signed-off-by: John Crispin <john@phrozen.org> Signed-off-by: Felix Fietkau <nbd@nbd.name>
2020-07-18bridge: add support for turning on vlan_filteringJohn Crispin
If we want a bridge to be vlan aware we need to be able to turn on filtering. Signed-off-by: John Crispin <john@phrozen.org> Signed-off-by: Felix Fietkau <nbd@nbd.name>
2020-07-18system-dummy: fix resolving ifindexFelix Fietkau
Fixes bringup of devices Signed-off-by: Felix Fietkau <nbd@nbd.name>
2020-06-04system-dummy: fix missing returnFelix Fietkau
Signed-off-by: Felix Fietkau <nbd@nbd.name>
2020-04-14interface, system: clean up netns functionalityDaniel Golle
Use struct device pointer as parameter instead of bare ifname allows for some simplication and again removing system_ifname_resolve() function introduced in commit d93126d. Fixes: d93126d ("interface: allow renaming interface when moving to jail netns") Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2020-04-14interface: allow renaming interface when moving to jail netnsDaniel Golle
Introduce jail_ifname option to define the name of a Linux network interface when moved into a jail's network namespace. This is useful for containers which expect the network interface to have a specific name (eg. 'host0' in case of systemd). While at it, clean-up and fix bugs in jail interface up/down routines. Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2020-01-18add basic support for jail network namespacesDaniel Golle
Prepare netifd for handling procd service jails having their own network namespace. Intefaces having the jail attribute will only be brought inside the jail's network namespace by procd calling the newly introduced ubus method 'netns_updown'. Currently proto 'static' is supported and configuration changes are not yet being handled (ie. you'll have to restart the jailed service for changes to take effect). Example /etc/config/network snippet: config device 'veth0' option type 'veth' option name 'vhost0' option peer_name 'virt0' config interface 'virt' option type 'bridge' list ifname 'vhost0' option proto 'static' option ipaddr '10.0.0.1' option netmask '255.255.255.0' config interface 'virt0' option ifname 'virt0' option proto 'static' option ipaddr '10.0.0.2' option netmask '255.255.255.0' option gateway '10.0.0.1' option dns '10.0.0.1' option jail 'transmission' Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2019-04-15interface: add neighbor config supportmeurisa
The neighbor or neighbor6 network section makes neighbours configurable via UCI or proto shell handlers. It allows to install neighbor proxy entries or static neighbor entries The neighbor or neighbor6 section has the following types: interface : declares the logical OpenWrt interface ipaddr : the ip address of the neighbor mac : the mac address of the neighbor proxy : specifies whether the neighbor ia a proxy entry (can be 1 or 0) router : specifies whether the neighbor is a router (can be 1 or 0) Signed-off-by: Alexander Meuris <meurisalexander@gmail.com> Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-06-26netifd: Fix printf calls + function declarations.Rosen Penev
cppcheck found printf functions with signed instead of unsigned formats. Fix those as well as some non-matching function declarations. Signed-off by: Rosen Penev <rosenp@gmail.com>
2017-02-11device: add veth supportMatthias Schiffer
The veth config code mostly handles the primary interface of a veth pair, the secondary interface is not explicitly referenced and will be found as an unrelated interface after the pair has been created. This doesn't only allow us to keep the veth code simple (and similar to existing device handlers), but will also avoid complicating handling unnecessarily in case the secondary interface is moved into another network namespace. Signed-off-by: Matthias Schiffer <mschiffer@universe-factory.net>
2017-01-25interface-ip: route proto config support (FS#170)Hans Dedecker
Route proto support is usefull when using route distribution via a routing daemon. The route proto parameter can be specified via the route proto uci config parameter, it can hold a numerical value or the string values unspec, kernel, boot, static or a string present in /etc/iproute2/rt_protos. Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2015-11-17device: fetch settings from external devices to make them usable for status ↵Felix Fietkau
output Signed-off-by: Felix Fietkau <nbd@openwrt.org>
2014-12-23netifd: Add mldversion config supportSteven Barth
Config support to set the MLD host version on device level; possible values are : 1 : MLDv1 2 : MLDv2 Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> Cleaned up and simplified. Signed-off-by: Steven Barth <steven@midlink.org>
2014-12-08netifd: Add igmpversion config supportHans Dedecker
Config support to set the IGMP host version on device level; possible values are : 1 : IGMPv1 2 : IGMPv2 3 : IGMPv3 Signed-off-by: Hans Dedecker <dedeckeh@gmail.com> Cleand up and simplified Signed-off-by: Steven Barth <steven@midlink.org>
2014-11-19netifd: Add rpfilter config supportHans Dedecker
Reverse path filtering config support; possible values are: 0: no source validation 1|strict: strict mode as packet will be dropped if the incoming interface is not the best reverse path 2|loose: loose mode as packet will be dropped if the source address is not reachable via any interface Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2014-11-19netifd: Fix device ifindex overwrite when processing netlink event messagesHans Dedecker
When a device with the same name is deleted and created again in the kernel the ifindex changes. A race condition will occur when netlink event messages linked to the old device are processed and will thus overwrite the correct ifindex of the new device. Further make sure a valid ifindex is in place for both external and internal devices when setting the state to enabled. Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2014-07-30netifd: GRE tunnel supportHans Dedecker
Adds support for gre, gretap, grev6 and grev6tap tunnels Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2014-06-26system-dummy: set present flags on all devicesFelix Fietkau
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
2014-06-20system: fix treatment of RT_TABLE_MAINSteven Barth
Do not treat RT_TABLE_MAIN as RT_TABLE_UNSPEC in system_resolve_rt_table() in order to allow ip rules with lookup main to work as expected. Provide a new function system_is_default_rt_table() to allow calling code to specifically test for RT_TABLE_MAIN, this is going to be needed for the backwards compatible handling of the table attribute in route objects. Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2014-06-18netifd: Route type supportHans Dedecker
Patch adds route type support in netifd by means of the route parameter type. By default the route type was unicast; the parameter adss support for local/broadcast/multicast/unicast routes which will be put into the appropriate routing table. If route type parameter is unset the route type will be unicast as before. Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2014-06-11Add vlan 802.1q/802.1ad support as netifd devicesGioacchino Mazzurco
At moment netifd supports just 802.1q vlan, you can configure them using a concise but "hacky" syntax using an interface config section, with this patch netifd acquire the capability of configuring 802.1ad and 802.1q vlan using config device sections, so you can define a vlan device plus interface with something like this: config device 'test' option type '8021ad' option name 'test' option ifname 'eth0' option vid '1000' config interface 'testif' option ifname 'test' option proto 'none' option auto '1' old syntax for 802.1q keeps working so no retrocompatibility problems, to keep retrocompatibility means also that user must not use name/ifname like eth0.2 for devices declared with the new style because this would trigger the "old style" when interface config section is parsed Signed-off-by: Gioacchino Mazzurco <gmazzurco89@gmail.com>
2014-04-05system-dummy: indicate link on present devicesFelix Fietkau
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
2014-03-11netifd: Fix bridge MTU setting when a bridge member is addedHans Dedecker
Reapply bridge mtu setting as adding a bridge member will override the bridge mtu in the kernel Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2013-10-03device: add macvlan supportFelix Fietkau
Signed-off-by: Felix Fietkau <nbd@openwrt.org> Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>
2013-04-05Fix system_resolve_rt_table() stub in system-dummy.cJo-Philipp Wich
2013-04-04Add support for ip rulesJo-Philipp Wich
2013-04-04Implement support for route / route6 table attributeJo-Philipp Wich
2013-01-15Initial IPv6 prefix supportSteven Barth
Signed-off-by: Steven Barth <steven@midlink.org>
2012-09-06clean up and fix system-dummy addr/route messagesFelix Fietkau
2012-07-12expose system_if_apply_settings, make it ignore the mac address for external ↵Felix Fietkau
devices
2012-06-14ignore mac80211 devices specified in /etc/config/networkFelix Fietkau
2012-05-04add copyright headersFelix Fietkau
2012-03-15always create device routesFelix Fietkau
2012-03-15system-linux: add functions for adding/removing ip tunnels (currently only ↵Felix Fietkau
sit supported)
2012-03-09system-dummy: add route metric informationFelix Fietkau
2012-01-19export carrier status in device statsFelix Fietkau
2011-12-04add dummy code for testing system_if_get_parent()Felix Fietkau
2011-10-26recognize stacked interfaces (e.g. dsa) and handle their dependenciesFelix Fietkau
2011-10-14flush routes after bringing up/down an interfaceFelix Fietkau
2011-10-11implement a new ubus object "network.device", add a method for dumping ↵Felix Fietkau
detailed device information
2011-10-10add interface uptime to the status infoFelix Fietkau
2011-10-09remove a bogus return statementFelix Fietkau
2011-10-09fix clearing device state, trigger it on device_init()Felix Fietkau
2011-10-09add more options for bridges, enable stp by default and set forwarding delay ↵Felix Fietkau
to 1
2011-10-04rework debugging code, add debugging levelsFelix Fietkau
2011-09-23add a system_init function for system controlSteven Barth
2011-09-12system-dummy: print ipv6 addresses on address add/removeFelix Fietkau
2011-09-05move ip related functions and data structures to a separate header fileFelix Fietkau
2011-09-04fix compiler warningsFelix Fietkau