[quagga-dev 10286] [PATCH] lib/vty: register vtysh socket in server socket vector

Christian Franke chris at opensourcerouting.org
Wed Feb 27 14:47:23 GMT 2013


Register the vtysh socket in Vvty_serv_thread so it will be
correctly closed on vty_reset instead of being leaked.

Signed-off-by: Christian Franke <chris at opensourcerouting.org>
---
 lib/vty.c |    5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/lib/vty.c b/lib/vty.c
index 70bf564..0d6345c 100644
--- a/lib/vty.c
+++ b/lib/vty.c
@@ -71,7 +71,7 @@ static char *vty_accesslist_name = NULL;
 static char *vty_ipv6_accesslist_name = NULL;
 
 /* VTY server thread. */
-vector Vvty_serv_thread;
+static vector Vvty_serv_thread;
 
 /* Current directory. */
 char *vty_cwd = NULL;
@@ -2509,7 +2509,8 @@ vty_event (enum event event, int sock, struct vty *vty)
       break;
 #ifdef VTYSH
     case VTYSH_SERV:
-      thread_add_read (master, vtysh_accept, vty, sock);
+      vty_serv_thread = thread_add_read (master, vtysh_accept, vty, sock);
+      vector_set_index (Vvty_serv_thread, sock, vty_serv_thread);
       break;
     case VTYSH_READ:
       vty->t_read = thread_add_read (master, vtysh_read, vty, sock);
-- 
1.7.10.4





More information about the Quagga-dev mailing list