3
0
mirror of https://git.kernel.org/pub/scm/network/wireless/iwd.git synced 2024-12-18 09:12:43 +01:00
Commit Graph

55 Commits

Author SHA1 Message Date
Sergei Trofimovich
901305dcdd wired: fix -std=c23 build failure
gcc-15 switched to -std=c23 by default:

    https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=55e3bd376b2214e200fa76d12b67ff259b06c212

As a result `iwd` fails the build as:

    wired/ethdev.c: In function 'pae_open':
    wired/ethdev.c:340:55:
      error: passing argument 4 of 'l_io_set_read_handler'
        from incompatible pointer type [-Wincompatible-pointer-types]
      340 |         l_io_set_read_handler(pae_io, pae_read, NULL, pae_destroy);
          |                                                       ^~~~~~~~~~~
          |                                                       |
          |                                                       void (*)(void)
    In file included from ...-ell-0.70-dev/include/ell/ell.h:19,
                     from wired/ethdev.c:38:
    ...-ell-0.70-dev/include/ell/io.h:33:68:
      note: expected 'l_io_destroy_cb_t' {aka 'void (*)(void *)'}
        but argument is of type 'void (*)(void)'
       33 |                                 void *user_data, l_io_destroy_cb_t destroy);
          |                                                  ~~~~~~~~~~~~~~~~~~^~~~~~~

C23 changed the meaning of `void (*)()` from partially defined prototype
to `void (*)(void)`.
2024-11-20 11:34:03 -06:00
Denis Kenzior
d7f669dd7c wired: Update to the new l_netlink_send API 2024-07-26 17:37:29 -05:00
Marcel Holtmann
27a00a6806 build: Add documention of manual pages to systemd service file 2022-11-18 10:50:31 +01:00
James Prestwood
559a4058cd wired: check return of l_settings_load_from_file
Caught by static analysis
2022-03-18 11:34:44 -05:00
James Prestwood
34ba0d7d4a wired: check return of modify_membership
This could fail and was not being checked. It was minimally changed to
take the ifindex directly (this was the only thing needed from the ethdev)
which allows checking prior to initializing the ethdev.
2022-03-18 11:33:50 -05:00
James Prestwood
78301ec9cb wired: check eap_load_settings
Caught by static analysis
2022-03-18 11:33:18 -05:00
Denis Kenzior
ceb43cb354 dbus: ead: Remove at_console usage
For reasons already outlined in commit:
010b0e27f9 ("dbus: Remove 'at_console', add 'netdev' settings")
2022-01-31 14:04:15 -06:00
Alvin Šipraga
e03b1e263d build: add After=network-pre.target to service files
systemd specifies a special passive target unit 'network-pre.target'
which may be pulled in by services that want to run before any network
interface is brought up or configured. Correspondingly, network
management services such as iwd and ead should specify
After=network-pre.target to ensure a proper ordering with respect to
this special target. For more information on network-pre.target, see
systemd.special(7).

Two examples to explain the rationale of this change:

1. On one of our embedded systems running iwd, a oneshot service is
   run on startup to configure - among other things - the MAC address of
   the wireless network interface based on some data in an EEPROM.
   Following the systemd documentation, the oneshot service specifies:

        Before=network-pre.target
        Wants=network-pre.target

   ... to ensure that it is run before any network management software
   starts. In practice, before this change, iwd was starting up and
   connecting to an AP before the service had finished. iwd would then
   get kicked off by the AP when the MAC address got changed. By
   specifying After=network-pre.target, systemd will take care to avoid
   this situation.

2. An administrator may wish to use network-pre.target to ensure
   firewall rules are applied before any network management software is
   started. This use-case is described in the systemd documentation[1].
   Since iwd can be used for IP configuration, it should also respect
   the After=network-pre.target convention.

Note that network-pre.target is a passive unit that is only pulled in if
another unit specifies e.g. Wants=network-pre.target. If no such unit
exists, this change will have no effect on the order in which systemd
starts iwd or ead.

[1] https://www.freedesktop.org/wiki/Software/systemd/NetworkTarget/
2021-01-22 14:17:16 -06:00
Diego Santa Cruz
f0e3defa3e wired: use 802.1X-2001 instead of 802.1X-2004
For wired authentication the protocol version used in the EAPOL
packets sent by ead is fixed to 802.1X-2004 (2) but some switches
implementing only 802.1X-2001 erroneously ignore these packets.

As ead only sends EAPOL-Start and EAP-Packet packets and these have
not changed between 802.1X-2001 and 802.1X-2004 there should be
no reason to use 802.1X-2004. Hence, this changes ead to always use
802.1X-2001 (1) instead.

Switches implementing newer versions of 802.1X should not have
problems responding to packets using the original version.
2020-04-24 22:04:22 -05:00
Denis Kenzior
bc076834b0 wired: Update to the new ell API 2020-01-27 14:30:42 -06:00
Marcel Holtmann
fa3db055ce wired: Utilize module system for daemon init 2019-11-07 23:59:54 +01:00
Denis Kenzior
74e814a537 wired: Introduce EAD_BASE_PATH 2019-10-28 15:48:12 -05:00
Denis Kenzior
161d1c8d78 wired: Update to the new ell api 2019-10-28 15:48:04 -05:00
Marcel Holtmann
152b56a12a treewide: Move the Intel copyright forward to 2019 2019-10-25 00:43:08 +02:00
James Prestwood
a30620d8a9 wired: update with new eap_init 2019-10-11 15:45:25 -05:00
Marcel Holtmann
765bb92084 build: Add skeleton manual pages for all installed binaries 2019-09-22 21:57:47 +02:00
Marcel Holtmann
1104d69e29 build: Add StateDirectoryMode=0700 option to systemd service 2019-09-09 06:55:22 +02:00
Marcel Holtmann
41f865d4df build: Use NotifyAccess=main feature when running under systemd 2019-09-08 20:36:57 +02:00
Marcel Holtmann
e6a99f461a build: Start using CapabilityBoundingSet option from systemd 2019-09-08 20:26:49 +02:00
Marcel Holtmann
71ae0bee9c build: Add StateDirectory= option to service files 2019-09-08 19:56:21 +02:00
Marcel Holtmann
8e3acef914 wired: Add support for utilizing STATE_DIRECTORY environment 2019-09-08 19:54:00 +02:00
Marcel Holtmann
351e21f7c7 build: Add ConfigurationDirectory= option to service files 2019-09-08 10:25:39 +02:00
Marcel Holtmann
16c489490c build: Fix issue with incorrect ReadWritePaths in unit files 2019-08-03 09:52:28 +02:00
James Prestwood
e963e64f9b eap: export session ID as key materials
ERP/FILS requires the session ID which is derived internally to an
EAP method.
2019-04-10 16:55:29 -05:00
Marcel Holtmann
d0fd928af2 wired: Fix includes for using with -std=c99 compiler option 2018-11-01 22:23:53 +01:00
Marcel Holtmann
72a64fa7fb build: Adjust to the latest ELL signal API changes 2018-11-01 22:09:19 +01:00
Marcel Holtmann
e77cd821d0 wired: Hook up EAP key material and event callback functions 2018-10-17 14:12:36 +02:00
Marcel Holtmann
be6a2495ca wired: Relax the EAPoL packet body length safety check 2018-10-16 18:54:42 +02:00
Marcel Holtmann
f68ee5ac74 wired: Fix memory leak when terminating application 2018-10-16 17:59:53 +02:00
Marcel Holtmann
2000a24ff6 wired: Check that packets are either unicast or multicast 2018-10-16 15:12:53 +02:00
Marcel Holtmann
e0e046c784 wired: Include extra check for ARPHRD_ETHER on packet reception 2018-10-16 14:40:18 +02:00
Marcel Holtmann
da70b2d1c2 wired: The supplicant always uses PAE group address for transmission 2018-10-14 07:55:29 +02:00
Marcel Holtmann
60a74c46a0 wired: Default to using PAE group address for transmission 2018-10-14 05:34:01 +02:00
Marcel Holtmann
15a19330da wired: Subscribe to PAE group address for packet reception 2018-10-14 05:29:39 +02:00
Marcel Holtmann
d7dbbf66a0 wired: Handle replacing of storage files correctly 2018-10-04 23:28:03 +02:00
Marcel Holtmann
70f58f640d wired: Use l_dir_watch for monitoring storage directory 2018-10-04 23:12:04 +02:00
Marcel Holtmann
ce91b7c27b wired: Store network basename and filter out by prefix 2018-09-21 18:07:53 -05:00
Marcel Holtmann
292f9dd3f6 wired: Issue all property changed signals when link goes down 2018-09-21 18:07:53 -05:00
Marcel Holtmann
4b853f115b wired: Make sure that property changed signals are sent 2018-09-21 18:07:53 -05:00
Marcel Holtmann
111af84d91 wired: Move net/if_arp.h before Linux header includes 2018-09-19 22:12:57 +02:00
Marcel Holtmann
c043a93784 wired: Add initial set of D-Bus properties for Ethernet adapters 2018-09-17 11:23:49 +02:00
Marcel Holtmann
807a7802d8 wired: Fix handling of interface whitelist and blacklist 2018-09-17 10:10:33 +02:00
Marcel Holtmann
05ccd73818 wired: Add concept of D-Bus application and async shutdown handling 2018-09-16 20:48:32 +02:00
Marcel Holtmann
8bc97d7caa wired: Add accessor for bus connection object 2018-09-16 00:45:59 +02:00
Marcel Holtmann
a924de37c3 wired: Return bus connection object via ready and shutdown callbacks 2018-09-15 21:52:38 +02:00
Marcel Holtmann
975e3714b8 wired: Move system setup after aquiring bus name 2018-09-15 21:40:32 +02:00
Marcel Holtmann
247b2ccc5c wired: Move D-Bus setup into separate source file 2018-09-14 23:29:46 +02:00
Marcel Holtmann
78dd20131a wired: Fix issue with destroying EAPoL seesions list on IFF_LOWER_UP 2018-09-14 22:35:36 +02:00
Marcel Holtmann
f8b2610046 wired: Start and stop EAPoL session based on IFF_LOWER_UP signalling 2018-09-14 22:29:38 +02:00
Marcel Holtmann
ee755490c1 wired: Add support for D-Bus setup and requesting well known name 2018-09-14 21:16:50 +02:00