Don't accept incoming connections when the neighbor is not up.
This commit is contained in:
parent
f9eb8f7e06
commit
bcbdcbb6ae
1 changed files with 2 additions and 1 deletions
|
@ -383,7 +383,7 @@ bgp_incoming_connection(sock *sk, int dummy)
|
||||||
if (ipa_equal(p->cf->remote_ip, sk->daddr))
|
if (ipa_equal(p->cf->remote_ip, sk->daddr))
|
||||||
{
|
{
|
||||||
match = 1;
|
match = 1;
|
||||||
if (p->p.proto_state == PS_START || p->p.proto_state == PS_UP)
|
if ((p->p.proto_state == PS_START || p->p.proto_state == PS_UP) && p->neigh && p->neigh->iface)
|
||||||
{
|
{
|
||||||
BGP_TRACE(D_EVENTS, "Incoming connection from %I port %d", sk->daddr, sk->dport);
|
BGP_TRACE(D_EVENTS, "Incoming connection from %I port %d", sk->daddr, sk->dport);
|
||||||
if (p->incoming_conn.sk)
|
if (p->incoming_conn.sk)
|
||||||
|
@ -488,6 +488,7 @@ bgp_start(struct proto *P)
|
||||||
p->outgoing_conn.state = BS_IDLE;
|
p->outgoing_conn.state = BS_IDLE;
|
||||||
p->incoming_conn.state = BS_IDLE;
|
p->incoming_conn.state = BS_IDLE;
|
||||||
p->startup_delay = 0;
|
p->startup_delay = 0;
|
||||||
|
p->neigh = NULL;
|
||||||
|
|
||||||
bgp_counter++;
|
bgp_counter++;
|
||||||
bgp_setup_listen_sk();
|
bgp_setup_listen_sk();
|
||||||
|
|
Loading…
Reference in a new issue