diff options
Diffstat (limited to 'ssh-keyscan.c')
-rw-r--r-- | ssh-keyscan.c | 27 |
1 files changed, 13 insertions, 14 deletions
diff --git a/ssh-keyscan.c b/ssh-keyscan.c index 5d5427aa..69b029b0 100644 --- a/ssh-keyscan.c +++ b/ssh-keyscan.c @@ -8,7 +8,7 @@ */ #include "includes.h" -RCSID("$OpenBSD: ssh-keyscan.c,v 1.7 2001/01/08 22:03:23 markus Exp $"); +RCSID("$OpenBSD: ssh-keyscan.c,v 1.9 2001/01/13 18:12:47 markus Exp $"); #if defined(HAVE_SYS_QUEUE_H) && !defined(HAVE_BOGUS_SYS_QUEUE_H) #include <sys/queue.h> @@ -31,7 +31,6 @@ static int argno = 1; /* Number of argument currently being parsed */ int family = AF_UNSPEC; /* IPv4, IPv6 or both */ -#define PORT 22 #define MAXMAXFD 256 /* The number of seconds after which to give up on a TCP connection */ @@ -103,7 +102,7 @@ Linebuf_alloc(const char *filename, void (*errfun) (const char *,...)) if (filename) { lb->filename = filename; if (!(lb->stream = fopen(filename, "r"))) { - free(lb); + xfree(lb); if (errfun) (*errfun) ("%s: %s\n", filename, strerror(errno)); return (NULL); @@ -116,7 +115,7 @@ Linebuf_alloc(const char *filename, void (*errfun) (const char *,...)) if (!(lb->buf = malloc(lb->size = LINEBUF_SIZE))) { if (errfun) (*errfun) ("linebuf (%s): malloc failed\n", lb->filename); - free(lb); + xfree(lb); return (NULL); } lb->errfun = errfun; @@ -128,8 +127,8 @@ static inline void Linebuf_free(Linebuf * lb) { fclose(lb->stream); - free(lb->buf); - free(lb); + xfree(lb->buf); + xfree(lb); } static inline void @@ -298,7 +297,7 @@ tcpconnect(char *host) char strport[NI_MAXSERV]; int gaierr, s = -1; - snprintf(strport, sizeof strport, "%d", PORT); + snprintf(strport, sizeof strport, "%d", SSH_DEFAULT_PORT); memset(&hints, 0, sizeof(hints)); hints.ai_family = family; hints.ai_socktype = SOCK_STREAM; @@ -335,7 +334,7 @@ conalloc(char *iname, char *oname) do { name = xstrsep(&namelist, ","); if (!name) { - free(namebase); + xfree(namebase); return (-1); } } while ((s = tcpconnect(name)) < 0); @@ -368,10 +367,10 @@ confree(int s) close(s); if (s >= maxfd || fdcon[s].c_status == CS_UNUSED) fatal("confree: attempt to free bad fdno %d", s); - free(fdcon[s].c_namebase); - free(fdcon[s].c_output_name); + xfree(fdcon[s].c_namebase); + xfree(fdcon[s].c_output_name); if (fdcon[s].c_status == CS_KEYS) - free(fdcon[s].c_data); + xfree(fdcon[s].c_data); fdcon[s].c_status = CS_UNUSED; TAILQ_REMOVE(&tq, &fdcon[s], c_link); FD_CLR(s, &read_wait); @@ -395,11 +394,11 @@ conrecycle(int s) char *iname, *oname; iname = xstrdup(c->c_namelist); - oname = c->c_output_name; - c->c_output_name = NULL;/* prevent it from being freed */ + oname = xstrdup(c->c_output_name); confree(s); ret = conalloc(iname, oname); - free(iname); + xfree(iname); + xfree(oname); return (ret); } |