From 563476fa61aed419105088b2f677ddb38818b429 Mon Sep 17 00:00:00 2001 From: Erez Zadok Date: Thu, 6 Oct 2005 01:06:51 +0000 Subject: [PATCH] * amq/pawd.c (transform_dir): use TCP first, else UDP. Destroy client after use to avoid leftover TCP sockets in the kernel. --- ChangeLog | 3 +++ NEWS | 1 + amq/pawd.c | 9 ++++++--- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 064db10..2a0f122 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2005-10-05 Erez Zadok + * amq/pawd.c (transform_dir): use TCP first, else UDP. Destroy + client after use to avoid leftover TCP sockets in the kernel. + * libamu/hasmntopt.c (amu_hasmntopt): increase size of MNTMAXSTR from 128 to to 256, because some users have really long option strings. Suggestion from jon+amd-at-spock.org. diff --git a/NEWS b/NEWS index a041b06..2f06d91 100644 --- a/NEWS +++ b/NEWS @@ -52,6 +52,7 @@ XXX: Dan, document sun_map_syntax flag in more detail in am-utils.texi and * convert all sprintf to safer xsnprintf * convert all strcat to safer xstrlcat * convert all strcpy to safer xstrlcpy + * pawd uses TCP first, then UDP Amd now understands a new log_option called "defaults" which is synonymous with "fatal,error,user,warning,info" (and is also what logging happens by diff --git a/amq/pawd.c b/amq/pawd.c index 30f5e90..44aca1c 100644 --- a/amq/pawd.c +++ b/amq/pawd.c @@ -229,14 +229,16 @@ transform_dir(char *dir) server = localhost; #endif /* not HAVE_CNODEID */ - if ((hp = gethostbyname(server)) == 0) + if ((hp = gethostbyname(server)) == NULL) return dir; memset(&server_addr, 0, sizeof(server_addr)); server_addr.sin_family = AF_INET; server_addr.sin_addr = *(struct in_addr *) hp->h_addr; - clnt = clntudp_create(&server_addr, AMQ_PROGRAM, AMQ_VERSION, tmo, &s); - if (clnt == 0) + clnt = clnttcp_create(&server_addr, AMQ_PROGRAM, AMQ_VERSION, &s, 0, 0); + if (clnt == NULL) + clnt = clntudp_create(&server_addr, AMQ_PROGRAM, AMQ_VERSION, tmo, &s); + if (clnt == NULL) return dir; xstrlcpy(transform, dir, sizeof(transform)); @@ -244,6 +246,7 @@ transform_dir(char *dir) find_mlp(mlp,transform) ) { xstrlcpy(transform, newdir, sizeof(transform)); } + clnt_destroy(clnt); return transform; } -- 2.43.0