blob: ad562df0002e2e75ceb9771d21644d67c073541c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
Currently, when accepting the connection, it can be left as zombie,
when the peer just initiates a connection, but never sends data (and
the TCP connection end packets are lost). This happens because for
accepted connections a temporary new peer entry is created until OPEN
message is exchanged, and this temporary peer entry does not get the
hold time parameter set at all.
Signed-off-by: Timo Teras <timo.teras@iki.fi>
---
bgpd/bgp_network.c | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)
diff --git a/bgpd/bgp_network.c b/bgpd/bgp_network.c
index 5dbd487..9a4c36d 100644
--- a/bgpd/bgp_network.c
+++ b/bgpd/bgp_network.c
@@ -185,6 +185,8 @@ bgp_accept (struct thread *thread)
peer->fd = bgp_sock;
peer->status = Active;
peer->local_id = peer1->local_id;
+ peer->v_holdtime = peer1->v_holdtime;
+ peer->v_keepalive = peer1->v_keepalive;
/* Make peer's address string. */
sockunion2str (&su, buf, SU_ADDRSTRLEN);
--
1.5.6.3
|