mirror of
https://gitlab.nic.cz/labs/bird.git
synced 2024-11-17 16:48:43 +00:00
Workaround for some broken BGP implementations that skip initial KEEPALIVE.
This commit is contained in:
parent
5f47c4c11e
commit
44f26560ec
@ -1001,6 +1001,10 @@ bgp_rx_update(struct bgp_conn *conn, byte *pkt, int len)
|
|||||||
|
|
||||||
BGP_TRACE_RL(&rl_rcv_update, D_PACKETS, "Got UPDATE");
|
BGP_TRACE_RL(&rl_rcv_update, D_PACKETS, "Got UPDATE");
|
||||||
|
|
||||||
|
/* Workaround for some BGP implementations that skip initial KEEPALIVE */
|
||||||
|
if (conn->state == BS_OPENCONFIRM)
|
||||||
|
bgp_conn_enter_established_state(conn);
|
||||||
|
|
||||||
if (conn->state != BS_ESTABLISHED)
|
if (conn->state != BS_ESTABLISHED)
|
||||||
{ bgp_error(conn, 5, 0, NULL, 0); return; }
|
{ bgp_error(conn, 5, 0, NULL, 0); return; }
|
||||||
bgp_start_timer(conn->hold_timer, conn->hold_time);
|
bgp_start_timer(conn->hold_timer, conn->hold_time);
|
||||||
|
Loading…
Reference in New Issue
Block a user