]> git.ipfire.org Git - network.git/log
network.git
2 years agoconfig: Fail if there is garbage after intergers
Michael Tremer [Sat, 15 Apr 2023 10:46:32 +0000 (10:46 +0000)] 
config: Fail if there is garbage after intergers

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agoaddress: Fix output buffer size when formatting MAC addresses
Michael Tremer [Sat, 15 Apr 2023 10:45:53 +0000 (10:45 +0000)] 
address: Fix output buffer size when formatting MAC addresses

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Collect stats regulary and emit them on dbus
Michael Tremer [Fri, 14 Apr 2023 17:43:12 +0000 (17:43 +0000)] 
networkd: Collect stats regulary and emit them on dbus

This is useful for us monitoring interface throughput (e.g. in
collecty).

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: daemon: Correctly store reference to bus
Michael Tremer [Fri, 14 Apr 2023 17:35:48 +0000 (17:35 +0000)] 
networkd: daemon: Correctly store reference to bus

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: ports: Create dummy function to create links
Michael Tremer [Fri, 14 Apr 2023 14:29:22 +0000 (14:29 +0000)] 
networkd: ports: Create dummy function to create links

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Automatically reference/dereference links to zones/ports
Michael Tremer [Fri, 14 Apr 2023 14:15:01 +0000 (14:15 +0000)] 
networkd: Automatically reference/dereference links to zones/ports

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Implement deleting links
Michael Tremer [Fri, 14 Apr 2023 13:33:13 +0000 (13:33 +0000)] 
networkd: Implement deleting links

This is a little bit rough but generally does work.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Try to reconfigure all ports and zones on startup
Michael Tremer [Fri, 14 Apr 2023 13:06:25 +0000 (13:06 +0000)] 
networkd: Try to reconfigure all ports and zones on startup

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: config: Add functions to handle boolean values
Michael Tremer [Fri, 14 Apr 2023 13:04:17 +0000 (13:04 +0000)] 
networkd: config: Add functions to handle boolean values

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: zones: Keep a permanent reference to links
Michael Tremer [Fri, 14 Apr 2023 12:02:40 +0000 (12:02 +0000)] 
networkd: zones: Keep a permanent reference to links

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: ports: Keep a permanent reference to links
Michael Tremer [Fri, 14 Apr 2023 11:57:48 +0000 (11:57 +0000)] 
networkd: ports: Keep a permanent reference to links

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Fix finding links by name
Michael Tremer [Fri, 14 Apr 2023 11:57:19 +0000 (11:57 +0000)] 
networkd: Fix finding links by name

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkctl: Implement "zone list" command
Michael Tremer [Fri, 14 Apr 2023 11:26:43 +0000 (11:26 +0000)] 
networkctl: Implement "zone list" command

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Implement ListZones bus command
Michael Tremer [Fri, 14 Apr 2023 11:25:56 +0000 (11:25 +0000)] 
networkd: Implement ListZones bus command

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkctl: Implement a basic command dispatcher
Michael Tremer [Wed, 1 Mar 2023 16:55:45 +0000 (16:55 +0000)] 
networkctl: Implement a basic command dispatcher

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkctl: Add some help and version arguments
Michael Tremer [Wed, 1 Mar 2023 16:13:11 +0000 (16:13 +0000)] 
networkctl: Add some help and version arguments

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkctl: Connect to the system bus
Michael Tremer [Wed, 1 Mar 2023 15:52:20 +0000 (15:52 +0000)] 
networkctl: Connect to the system bus

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkctl: Create some scaffolding
Michael Tremer [Wed, 1 Mar 2023 15:41:17 +0000 (15:41 +0000)] 
networkctl: Create some scaffolding

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Install in /usr/lib/network
Michael Tremer [Wed, 1 Mar 2023 15:34:32 +0000 (15:34 +0000)] 
networkd: Install in /usr/lib/network

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Log to journald
Michael Tremer [Mon, 13 Feb 2023 16:00:43 +0000 (16:00 +0000)] 
networkd: Log to journald

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Add methods to check zones/ports for carrier
Michael Tremer [Mon, 13 Feb 2023 15:34:40 +0000 (15:34 +0000)] 
networkd: Add methods to check zones/ports for carrier

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Add function to check whether a link has a carrier
Michael Tremer [Mon, 13 Feb 2023 15:14:01 +0000 (15:14 +0000)] 
networkd: Add function to check whether a link has a carrier

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Store operstate, too
Michael Tremer [Mon, 13 Feb 2023 15:10:01 +0000 (15:10 +0000)] 
networkd: Store operstate, too

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Store any flags
Michael Tremer [Mon, 13 Feb 2023 15:05:41 +0000 (15:05 +0000)] 
networkd: Store any flags

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Save configuration when the daemon exits
Michael Tremer [Sat, 11 Feb 2023 18:29:32 +0000 (18:29 +0000)] 
networkd: Save configuration when the daemon exits

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Refactor enumerating zones
Michael Tremer [Sat, 11 Feb 2023 18:00:26 +0000 (18:00 +0000)] 
networkd: Refactor enumerating zones

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Store a reference to the daemon in zone
Michael Tremer [Sat, 11 Feb 2023 17:51:28 +0000 (17:51 +0000)] 
networkd: Store a reference to the daemon in zone

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Use typedef to keep type names shorter
Michael Tremer [Sat, 11 Feb 2023 17:44:42 +0000 (17:44 +0000)] 
networkd: Use typedef to keep type names shorter

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Add method to fetch corresponding link to port
Michael Tremer [Sat, 11 Feb 2023 14:10:16 +0000 (14:10 +0000)] 
networkd: Add method to fetch corresponding link to port

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: ports: Export Ethernet address over dbus
Michael Tremer [Sat, 11 Feb 2023 13:54:33 +0000 (13:54 +0000)] 
networkd: ports: Export Ethernet address over dbus

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: address: Fix buffer to Ethernet address strings
Michael Tremer [Sat, 11 Feb 2023 13:53:52 +0000 (13:53 +0000)] 
networkd: address: Fix buffer to Ethernet address strings

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Export ports over dbus
Michael Tremer [Sat, 11 Feb 2023 12:34:41 +0000 (12:34 +0000)] 
networkd: Export ports over dbus

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Check if Ethernet addresses from config are usable
Michael Tremer [Sat, 11 Feb 2023 12:10:15 +0000 (12:10 +0000)] 
networkd: Check if Ethernet addresses from config are usable

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Introduce address flags for better readability
Michael Tremer [Sat, 11 Feb 2023 12:06:18 +0000 (12:06 +0000)] 
networkd: Introduce address flags for better readability

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Generate a random Ethernet address for ports
Michael Tremer [Sat, 11 Feb 2023 12:01:42 +0000 (12:01 +0000)] 
networkd: Generate a random Ethernet address for ports

This happens when either no address was set, or it cannot be parsed.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Read Ethernet address from configuration
Michael Tremer [Sat, 11 Feb 2023 11:48:23 +0000 (11:48 +0000)] 
networkd: Read Ethernet address from configuration

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Perform port setup from configuration
Michael Tremer [Sat, 11 Feb 2023 11:21:02 +0000 (11:21 +0000)] 
networkd: Perform port setup from configuration

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Enumerate ports on startup
Michael Tremer [Sat, 11 Feb 2023 10:59:03 +0000 (10:59 +0000)] 
networkd: Enumerate ports on startup

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Add port container
Michael Tremer [Fri, 10 Feb 2023 16:26:36 +0000 (16:26 +0000)] 
networkd: Add port container

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Add scaffolding for ports
Michael Tremer [Fri, 10 Feb 2023 16:15:46 +0000 (16:15 +0000)] 
networkd: Add scaffolding for ports

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: config: Implement reading configuration files
Michael Tremer [Fri, 10 Feb 2023 15:24:53 +0000 (15:24 +0000)] 
networkd: config: Implement reading configuration files

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: config: Actually return entry instead of freeing it straight away
Michael Tremer [Fri, 10 Feb 2023 15:24:19 +0000 (15:24 +0000)] 
networkd: config: Actually return entry instead of freeing it straight away

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Read link MTU
Michael Tremer [Fri, 10 Feb 2023 10:13:37 +0000 (10:13 +0000)] 
networkd: Read link MTU

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Import interface name
Michael Tremer [Fri, 10 Feb 2023 10:03:08 +0000 (10:03 +0000)] 
networkd: Import interface name

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Only add link if we created it
Michael Tremer [Fri, 10 Feb 2023 09:53:47 +0000 (09:53 +0000)] 
networkd: Only add link if we created it

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Create a link object for each interface
Michael Tremer [Thu, 9 Feb 2023 21:38:09 +0000 (21:38 +0000)] 
networkd: Create a link object for each interface

We are also listening for netlink events that add and delete any
interfaces.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Enumerate all links on startup
Michael Tremer [Thu, 9 Feb 2023 20:41:02 +0000 (20:41 +0000)] 
networkd: Enumerate all links on startup

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Add a container for links
Michael Tremer [Thu, 9 Feb 2023 20:25:29 +0000 (20:25 +0000)] 
networkd: Add a container for links

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Add a link object
Michael Tremer [Thu, 9 Feb 2023 20:05:00 +0000 (20:05 +0000)] 
networkd: Add a link object

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Link against libnetwork
Michael Tremer [Thu, 9 Feb 2023 19:50:47 +0000 (19:50 +0000)] 
networkd: Link against libnetwork

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Connect to the kernel's netlink interface
Michael Tremer [Thu, 9 Feb 2023 19:46:25 +0000 (19:46 +0000)] 
networkd: Connect to the kernel's netlink interface

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Drop all capabilities except a few we would like to keep
Michael Tremer [Sun, 5 Feb 2023 13:17:21 +0000 (13:17 +0000)] 
networkd: Drop all capabilities except a few we would like to keep

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Change to a non-privileged user right away
Michael Tremer [Sun, 5 Feb 2023 12:06:19 +0000 (12:06 +0000)] 
networkd: Change to a non-privileged user right away

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Connect to udev
Michael Tremer [Sun, 5 Feb 2023 11:05:23 +0000 (11:05 +0000)] 
networkd: Connect to udev

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Add a test bus property to set the MTU
Michael Tremer [Sat, 4 Feb 2023 22:10:56 +0000 (22:10 +0000)] 
networkd: Add a test bus property to set the MTU

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Split daemon bus implementation into a separate file
Michael Tremer [Thu, 2 Feb 2023 01:23:31 +0000 (01:23 +0000)] 
networkd: Split daemon bus implementation into a separate file

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Return zone when it is being accessed by its path
Michael Tremer [Thu, 2 Feb 2023 01:07:51 +0000 (01:07 +0000)] 
networkd: Return zone when it is being accessed by its path

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Implement enumerating zones on the bus
Michael Tremer [Thu, 2 Feb 2023 00:53:21 +0000 (00:53 +0000)] 
networkd: Implement enumerating zones on the bus

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Move zone list into an own object
Michael Tremer [Thu, 2 Feb 2023 00:38:13 +0000 (00:38 +0000)] 
networkd: Move zone list into an own object

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Pass daemon to all functions called by the bus
Michael Tremer [Wed, 1 Feb 2023 23:25:17 +0000 (23:25 +0000)] 
networkd: Pass daemon to all functions called by the bus

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Add a dummy bus implementation for zones
Michael Tremer [Wed, 1 Feb 2023 23:19:03 +0000 (23:19 +0000)] 
networkd: Add a dummy bus implementation for zones

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: bus: Create a unified function to register an interface
Michael Tremer [Wed, 1 Feb 2023 23:04:27 +0000 (23:04 +0000)] 
networkd: bus: Create a unified function to register an interface

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Read all zones from configuration
Michael Tremer [Wed, 1 Feb 2023 22:40:04 +0000 (22:40 +0000)] 
networkd: Read all zones from configuration

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: zones: Try to read configuration automatically
Michael Tremer [Wed, 1 Feb 2023 22:39:34 +0000 (22:39 +0000)] 
networkd: zones: Try to read configuration automatically

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Store the path with the configuration object
Michael Tremer [Wed, 1 Feb 2023 22:37:06 +0000 (22:37 +0000)] 
networkd: Store the path with the configuration object

This makes it easier to call read and write functions without
re-composing the path again and again...

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Change config read functions to not create a new instance
Michael Tremer [Wed, 1 Feb 2023 22:03:29 +0000 (22:03 +0000)] 
networkd: Change config read functions to not create a new instance

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: config: Split flushing all entries into a function
Michael Tremer [Wed, 1 Feb 2023 21:46:11 +0000 (21:46 +0000)] 
networkd: config: Split flushing all entries into a function

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Asynchronously register to the bus
Michael Tremer [Wed, 1 Feb 2023 15:27:18 +0000 (15:27 +0000)] 
networkd: Asynchronously register to the bus

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Fully implement bus handler for Reload
Michael Tremer [Wed, 1 Feb 2023 15:26:57 +0000 (15:26 +0000)] 
networkd: Fully implement bus handler for Reload

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Install a systemd service file
Michael Tremer [Wed, 1 Feb 2023 15:26:34 +0000 (15:26 +0000)] 
networkd: Install a systemd service file

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Call function when we are connected to dbus
Michael Tremer [Mon, 30 Jan 2023 20:55:42 +0000 (20:55 +0000)] 
networkd: Call function when we are connected to dbus

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Install some simple PolicyKit policy
Michael Tremer [Mon, 30 Jan 2023 19:26:35 +0000 (19:26 +0000)] 
networkd: Install some simple PolicyKit policy

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agoman: Fix incorrect name on IPsec man page
Michael Tremer [Mon, 30 Jan 2023 19:03:41 +0000 (19:03 +0000)] 
man: Fix incorrect name on IPsec man page

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Move systemd notifications into daemon object
Michael Tremer [Mon, 30 Jan 2023 19:00:51 +0000 (19:00 +0000)] 
networkd: Move systemd notifications into daemon object

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agolibnetwork: Fix prototype of network_version()
Michael Tremer [Mon, 30 Jan 2023 18:56:17 +0000 (18:56 +0000)] 
libnetwork: Fix prototype of network_version()

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agoconfigure: Drop non-sensical CFLAGS and add more warnings
Michael Tremer [Mon, 30 Jan 2023 18:54:54 +0000 (18:54 +0000)] 
configure: Drop non-sensical CFLAGS and add more warnings

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agoconfigure: Tidy up dbus path detection
Michael Tremer [Mon, 30 Jan 2023 18:51:34 +0000 (18:51 +0000)] 
configure: Tidy up dbus path detection

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Install a dbus policy
Michael Tremer [Mon, 30 Jan 2023 18:47:30 +0000 (18:47 +0000)] 
networkd: Install a dbus policy

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Install a dbus service file
Michael Tremer [Mon, 30 Jan 2023 04:05:07 +0000 (04:05 +0000)] 
networkd: Install a dbus service file

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Add scaffolding for zones
Michael Tremer [Mon, 30 Jan 2023 03:42:57 +0000 (03:42 +0000)] 
networkd: Add scaffolding for zones

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Set configuration path from build scripts
Michael Tremer [Mon, 30 Jan 2023 03:29:45 +0000 (03:29 +0000)] 
networkd: Set configuration path from build scripts

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Read main configuration file
Michael Tremer [Mon, 30 Jan 2023 03:20:23 +0000 (03:20 +0000)] 
networkd: Read main configuration file

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Implement writing configuration files
Michael Tremer [Mon, 30 Jan 2023 03:17:30 +0000 (03:17 +0000)] 
networkd: Implement writing configuration files

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Implement reading configuration values
Michael Tremer [Mon, 30 Jan 2023 03:09:57 +0000 (03:09 +0000)] 
networkd: Implement reading configuration values

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Implement setting configuration values
Michael Tremer [Mon, 30 Jan 2023 03:04:01 +0000 (03:04 +0000)] 
networkd: Implement setting configuration values

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Add scaffolding to read configuration files
Michael Tremer [Mon, 30 Jan 2023 02:26:41 +0000 (02:26 +0000)] 
networkd: Add scaffolding to read configuration files

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Add scaffolding for config objects
Michael Tremer [Mon, 30 Jan 2023 02:16:06 +0000 (02:16 +0000)] 
networkd: Add scaffolding for config objects

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Add scaffolding to connect to dbus
Michael Tremer [Mon, 30 Jan 2023 02:08:50 +0000 (02:08 +0000)] 
networkd: Add scaffolding to connect to dbus

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agoconfigure: Enable system extensions to define _GNU_SOURCE
Michael Tremer [Sun, 29 Jan 2023 22:52:37 +0000 (22:52 +0000)] 
configure: Enable system extensions to define _GNU_SOURCE

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Add scaffolding to reload the daemon
Michael Tremer [Sun, 29 Jan 2023 22:29:05 +0000 (22:29 +0000)] 
networkd: Add scaffolding to reload the daemon

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Register SIGTERM/SIGINT/SIGHUP
Michael Tremer [Sun, 29 Jan 2023 22:24:53 +0000 (22:24 +0000)] 
networkd: Register SIGTERM/SIGINT/SIGHUP

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Add some very simple logging
Michael Tremer [Sun, 29 Jan 2023 21:57:32 +0000 (21:57 +0000)] 
networkd: Add some very simple logging

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Enable the service watchdog
Michael Tremer [Sun, 29 Jan 2023 21:53:19 +0000 (21:53 +0000)] 
networkd: Enable the service watchdog

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Create an event loop
Michael Tremer [Sun, 29 Jan 2023 21:49:22 +0000 (21:49 +0000)] 
networkd: Create an event loop

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Create a simple daemon class
Michael Tremer [Sun, 29 Jan 2023 21:29:09 +0000 (21:29 +0000)] 
networkd: Create a simple daemon class

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Tell systemd about the daemon status
Michael Tremer [Sun, 29 Jan 2023 21:18:53 +0000 (21:18 +0000)] 
networkd: Tell systemd about the daemon status

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agonetworkd: Link against systemd
Michael Tremer [Sun, 29 Jan 2023 21:18:34 +0000 (21:18 +0000)] 
networkd: Link against systemd

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agoMakefile: Add scaffolding for networkd
Michael Tremer [Sun, 22 Jan 2023 12:41:47 +0000 (12:41 +0000)] 
Makefile: Add scaffolding for networkd

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2 years agoconfigure: Check for libsystemd
Michael Tremer [Sun, 22 Jan 2023 12:33:11 +0000 (12:33 +0000)] 
configure: Check for libsystemd

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
5 years agoDisable copybreak
Michael Tremer [Thu, 7 May 2020 19:30:03 +0000 (20:30 +0100)] 
Disable copybreak

Some network interface drivers employ a scheme known as "copybreak"
in which they make a copy of a received skb if the size of the
buffer is below a particular threshold, then return the original
receive skb back to the pool.  Since these drivers initially
allocate a buffer size that is larger than the largest possible
packet, this scheme returns that large buffer to the pool quickly,
and uses a smaller one.

The primary benefit of copybreak is better memory utilization.  On
systems where the data is ultimately going to be copied out to user
space, the copybreak scheme is "low cost" because it has the side
benefit of priming the cache for that later copy.  But on a router
that only touches the header fields of a received packet, the cost
can be relatively higher.  And on modern systems the memory savings
is rarely an important consideration.

Some of the drivers that employ copybreak make the feature
configurable via a module parameter.  This file disables copybreak
in some of those drivers.  Generally this results in an improvement
in forwarding performance for traffic using these drivers.

Fixes: #11930
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>