Files
packages/net
Florian Eckert eb8ea9a7c5 strongswan: support additional key exchange methods
With peers that support multiple IKEv2 key exchanges (RFC 9370), up
to seven additional key exchanges may be negotiated. strongSwan
configures them by prefixing the algorithm keyword with keX_ (X being
1..7), e.g. 'x25519-ke1_mlkem768'.

The 'dh_group' option only allows a single key exchange method. Add a
'ke' list option to the crypto_proposal sections, which holds the
additional key exchange methods. Both config_ike_proposal() and
config_esp_proposal() append them to the generated proposal after
dh_group, so 'x25519' plus 'list ke mlkem768' results in
'x25519-ke1_mlkem768'.

The keN_ prefix is generated by the init script from the position of
the entry in the list. Entries which already carry a keN_ prefix are
used verbatim with a warning, which keeps keX_none (used to make a
key exchange round optional) working. Entries beyond the seventh are
dropped with a warning. A warning is also emitted if key exchange
methods are configured without a dh_group, since the first key
exchange method is mandatory.

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2026-10-14 14:14:27 +02:00
..
2026-09-18 19:26:45 +03:00
2026-09-27 22:10:12 +02:00
2026-08-18 20:03:06 +03:00
2026-05-08 22:28:27 +02:00
2026-09-01 08:39:10 +02:00
2022-11-02 15:00:51 +02:00
2026-07-13 09:46:55 +02:00
2024-06-29 16:51:22 -07:00
2026-10-10 11:02:19 +03:00
2024-02-07 14:11:35 -08:00
2026-09-27 21:00:39 +02:00
2026-09-01 08:39:10 +02:00
2026-08-13 19:43:55 +03:00
2023-03-26 17:21:08 -06:00
…
2026-09-18 17:46:40 +02:00
2026-10-07 08:38:59 +02:00
2026-10-07 08:38:59 +02:00
…
2026-06-05 07:36:16 +03:00
2024-08-19 15:22:59 +02:00
2025-06-07 20:32:26 +02:00
2026-09-15 11:18:36 +02:00
2026-07-22 12:03:08 +08:00
2026-09-14 11:56:06 +01:00
2026-05-08 22:28:27 +02:00
2026-05-08 22:28:27 +02:00
2026-08-20 20:49:51 +03:00
2026-10-12 10:50:18 +02:00
2026-01-25 19:23:45 +02:00
2026-09-09 22:28:55 +02:00
2026-09-22 15:19:09 +02:00
2026-05-08 22:28:27 +02:00
2026-05-08 22:28:27 +02:00
2024-06-23 18:35:10 -07:00
2026-03-15 19:48:28 +02:00
2026-06-26 10:44:12 +02:00
2026-05-08 22:28:27 +02:00
2024-12-08 11:52:28 +02:00
2026-05-08 22:28:27 +02:00
2026-09-18 19:02:54 +03:00
2026-09-14 16:29:17 +08:00
2026-05-09 10:57:17 +08:00
2024-05-14 16:39:10 -07:00
2025-09-05 16:58:29 +08:00
2025-12-24 10:59:46 +01:00
2024-01-19 14:58:04 +01:00
2025-01-26 15:13:19 +01:00
2026-05-08 22:28:27 +02:00
2026-09-08 10:52:20 +03:00
2026-10-07 16:12:29 +03:00
2026-06-29 13:46:48 +02:00
2024-02-24 12:12:34 -08:00
2025-08-24 19:47:53 +03:00
2026-07-27 12:01:42 +08:00
2025-08-09 15:31:38 +08:00
2026-09-08 10:52:20 +03:00
2026-09-16 16:35:19 +01:00
2026-05-15 13:44:24 +01:00
2026-10-02 11:01:07 +02:00
2026-05-08 22:28:27 +02:00
2024-02-24 12:12:49 -08:00
2026-05-08 22:28:27 +02:00
2026-03-18 12:11:44 +02:00
2026-05-08 22:28:27 +02:00
2026-05-08 22:28:27 +02:00
2026-06-14 20:33:53 +03:00
2026-05-08 22:28:27 +02:00
2026-05-08 22:28:27 +02:00
2026-10-03 09:27:06 +03:00
2025-09-20 23:14:44 +08:00
2026-05-08 22:28:27 +02:00
2026-03-19 14:35:38 +02:00
2026-09-18 19:10:41 +03:00
2026-05-08 22:28:27 +02:00
2026-10-09 08:46:58 -04:00
2026-05-08 22:28:27 +02:00
2026-09-16 16:35:19 +01:00
2026-01-18 07:34:15 +02:00
2026-06-03 08:26:46 +02:00
2024-11-11 18:20:31 -08:00
2024-05-15 14:34:27 -07:00
2026-10-14 08:44:54 +02:00
2026-01-13 12:02:49 +01:00
2024-09-20 09:22:17 +02:00
2024-06-01 17:28:26 -07:00
2026-04-16 22:08:00 +03:00
2026-03-15 09:09:50 +02:00
2026-09-18 19:14:06 +03:00
2026-09-18 19:13:53 +03:00
2026-05-14 15:39:33 +03:00
2026-10-07 09:35:48 +03:00
2026-05-08 22:28:27 +02:00
2023-04-21 22:46:58 +02:00
2026-09-16 16:35:19 +01:00
2024-11-22 13:18:47 -08:00
…
2026-10-10 10:48:23 +03:00
2026-05-08 22:28:27 +02:00
2026-09-16 16:35:19 +01:00
2026-09-11 21:46:54 -03:00
2026-10-10 10:58:51 +03:00
2026-05-08 22:28:27 +02:00
2026-10-07 16:12:29 +03:00
2026-06-04 08:40:16 +03:00
2026-09-16 16:35:19 +01:00
2026-10-04 12:27:18 +02:00
2026-07-31 14:15:38 +03:00
2026-08-29 09:49:22 +01:00
2026-08-18 19:14:08 +02:00
2025-05-20 08:57:12 +02:00
2026-05-08 22:28:27 +02:00
2026-05-08 22:28:27 +02:00
2026-05-08 22:28:27 +02:00
2026-09-10 10:22:36 +02:00
2026-10-01 19:19:51 +03:00
2025-01-06 20:03:44 -08:00
2025-07-30 15:06:01 +08:00
2026-09-18 19:04:56 +03:00
2026-09-01 09:46:40 +08:00
2026-08-18 11:02:27 +02:00
2026-10-10 12:40:43 +03:00
2026-09-16 14:36:17 +03:00
2026-05-08 22:28:27 +02:00
2026-09-09 12:52:50 +02:00
2026-05-08 22:28:27 +02:00
2026-05-08 22:28:27 +02:00
2025-02-24 11:43:04 +01:00
2026-10-07 09:35:48 +03:00
2026-10-07 09:35:48 +03:00
2026-09-01 09:47:11 +08:00
2023-04-21 22:46:58 +02:00
2026-05-08 22:28:27 +02:00
2026-09-25 15:22:53 +03:00
2026-09-16 16:35:19 +01:00
2026-08-10 20:07:20 +03:00
2026-04-21 11:54:03 +03:00
2026-05-08 22:28:27 +02:00
2026-05-08 22:28:27 +02:00
2026-05-08 22:28:27 +02:00
2026-05-08 22:28:27 +02:00
2026-05-08 22:28:27 +02:00
2026-10-14 10:17:10 +02:00
2023-05-13 22:51:29 +02:00
2026-09-10 10:21:44 +02:00
2026-06-23 22:49:48 +08:00
2026-03-15 09:25:09 +02:00
2026-05-08 22:28:27 +02:00
2026-05-08 22:28:27 +02:00
2026-04-21 08:27:27 +02:00
2026-02-21 17:48:24 +02:00
2026-05-08 22:28:27 +02:00
2026-05-08 22:28:27 +02:00
2026-05-08 22:28:27 +02:00
2026-05-13 20:57:12 +03:00
2026-08-25 23:23:25 +03:00
2025-08-31 15:52:27 +08:00
2023-04-21 22:46:58 +02:00
2023-12-27 17:31:33 +00:00
2024-08-18 10:54:29 -07:00
2026-05-08 22:28:27 +02:00
2026-05-08 22:28:27 +02:00
2026-07-26 00:16:31 +02:00
2026-10-07 16:12:29 +03:00
2026-10-13 19:30:35 +03:00
2026-03-01 20:13:08 +00:00
2026-05-08 22:28:27 +02:00
2026-09-08 10:52:20 +03:00
2026-05-08 22:28:27 +02:00
2026-09-28 11:41:16 +03:00
2026-10-09 14:24:42 +02:00
2026-05-08 22:28:27 +02:00
2026-05-08 22:28:27 +02:00
2024-08-16 22:54:58 -07:00
2026-09-29 08:52:23 +02:00
2026-08-30 11:50:14 +02:00
2026-05-08 22:28:27 +02:00
2025-10-02 15:22:20 +02:00
2026-09-01 09:38:53 +08:00
2026-05-19 08:50:43 +03:00
2026-05-08 22:28:27 +02:00
2025-02-15 10:35:31 +02:00
2026-05-08 22:28:27 +02:00
2023-11-02 00:32:34 +08:00
2026-10-05 15:30:14 +02:00
2025-03-31 20:25:04 +03:00
2023-04-21 22:46:58 +02:00
2026-05-08 22:28:27 +02:00
2026-10-01 16:59:09 +03:00
2026-01-08 11:06:19 +02:00
2026-05-08 22:28:27 +02:00
2026-09-18 14:53:22 +08:00
2026-03-29 18:57:29 +03:00
2026-06-24 22:17:50 +02:00