close listening socket immediately after connection
diff --git a/telnet-proxy.c b/telnet-proxy.c
index 218d860..82b818b 100644
--- a/telnet-proxy.c
+++ b/telnet-proxy.c
@@ -263,6 +263,9 @@
 		return 1;
 	}
 	
+	/* stop listening now that we have a client */
+	close(listen_sock);
+	
 	/* create server socket */
 	if ((server.sock = socket(AF_INET, SOCK_STREAM, 0)) == -1) {
 		fprintf(stderr, "socket() failed: %s\n", strerror(errno));
@@ -343,7 +346,6 @@
 	libtelnet_free(&client.telnet);
 	close(server.sock);
 	close(client.sock);
-	close(listen_sock);
 
 	return 0;
 }