From: Maria Matejka Date: Mon, 10 Feb 2025 11:29:51 +0000 (+0100) Subject: Fix channel restart sequence X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b5c2b896c2d7e2e79530ecd349c46894d039cb97;p=thirdparty%2Fbird.git Fix channel restart sequence If channel goes start -> pause -> start, the original code crashed but it's a valid sequence for protocol half-restart, going from UP to START and then back UP. --- diff --git a/nest/proto.c b/nest/proto.c index caf99829b..64c41dcc5 100644 --- a/nest/proto.c +++ b/nest/proto.c @@ -956,7 +956,7 @@ channel_set_state(struct channel *c, uint state) break; case CS_UP: - ASSERT(cs == CS_DOWN || cs == CS_START); + ASSERT(cs == CS_DOWN || cs == CS_START || cs == CS_PAUSE); if (cs == CS_DOWN) channel_do_start(c);