summaryrefslogtreecommitdiff
path: root/src/migration-scripts/ipsec
diff options
context:
space:
mode:
authorDaniil Baturin <daniil@baturin.org>2026-09-15 13:16:54 +0100
committerGitHub <noreply@github.com>2026-09-15 13:16:54 +0100
commitdc1c3a7c853e6c041536d84c906b2a42d6453740 (patch)
treeaec76451f0952a92e49e78086d440cfab7c1e7a0 /src/migration-scripts/ipsec
parent03229944aee8040520957e0041f81cbd7ab1586b (diff)
parent7d51ac947cf694056aa28ac6342a8a778a268f35 (diff)
downloadvyos-1x-dc1c3a7c853e6c041536d84c906b2a42d6453740.tar.gz
vyos-1x-dc1c3a7c853e6c041536d84c906b2a42d6453740.zip
keepalived: T9256: keep incomplete FIFO lines between reads (#5430)
pipe_wait() reads at most 500 bytes per iteration and keeps no residual buffer between them. A VRRP transition involving enough instances emits more than that in a single burst, so a read lands mid-line: the tail of one chunk is queued as an incomplete fragment and the head of the next chunk as another. The dispatcher then fails to match the notify regex on both halves and silently runs no transition script. Observed on a pair with 14 instances in one sync group, where "GROUP" arrived as "ROUP" because the leading character ended the previous read. Hold the incomplete trailing line and prepend it to the next read, so only whole lines reach the queue. Only signal the processing thread when at least one complete line was queued.
Diffstat (limited to 'src/migration-scripts/ipsec')
0 files changed, 0 insertions, 0 deletions