ha: Make receive buffer size for the HA socket configurable

If there are lots of SAs to be synced, the default might be too low
and messages and SAs get dropped.  The new default is already 8 MiB,
which should work fine for lots of SAs.  The code mirrors the one in
the kernel-netlink plugin (but with a guard around SO_RCVBUFFORCE, even
though this plugin is mostly used on Linux as well).
This commit is contained in:
Tobias Brunner
2026-07-21 10:21:51 +02:00
parent 3ef091815f
commit 9d5e619e19
2 changed files with 40 additions and 0 deletions
+11
View File
@@ -9,6 +9,17 @@ charon.plugins.ha.buflen = 2048
also transmitted so depending on the DH group the HA messages can get quite
big (the default should be fine up to _modp4096_).
charon.plugins.ha.receive_buffer_size = 8388608
Maximum receive buffer size for the HA socket in bytes.
Maximum receive buffer size for the HA socket in bytes. This value controls
how many bytes of HA messages can be queued to the socket. If set to 0, the
default from `/proc/sys/net/core/rmem_default` will apply. Note that the
kernel doubles the configured value to account for overhead. To exceed the
system-wide maximum from `/proc/sys/net/core/rmem_max`, special privileges
(CAP_NET_ADMIN) are necessary, otherwise, the kernel silently caps the
value.
charon.plugins.ha.fifo_interface = yes
charon.plugins.ha.heartbeat_delay = 1000