summaryrefslogtreecommitdiff
path: root/usr.bin
diff options
context:
space:
mode:
authorMark Murray <markm@FreeBSD.org>1997-02-09 21:42:43 +0000
committerMark Murray <markm@FreeBSD.org>1997-02-09 21:42:43 +0000
commitd5eb22b779e0e084daafa117e13bde5ad418f311 (patch)
tree18d53daaa90f78fed7659f5d5a528ccc27dc892f /usr.bin
parentf7a19e923fe1b5fd1a54cc4387728141cd917f6a (diff)
Notes
Diffstat (limited to 'usr.bin')
-rw-r--r--usr.bin/rlogin/kcmd.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/usr.bin/rlogin/kcmd.c b/usr.bin/rlogin/kcmd.c
index 635fa311945b..3049be01ee58 100644
--- a/usr.bin/rlogin/kcmd.c
+++ b/usr.bin/rlogin/kcmd.c
@@ -106,7 +106,11 @@ kcmd(sock, ahost, rport, locuser, remuser, cmd, fd2p, ticket, service, realm,
return (-1);
}
- host_save = malloc(strlen(hp->h_name) + 1);
+ if (!(host_save = malloc(strlen(hp->h_name) + 1))) {
+ perror("malloc");
+ return -1;
+ }
+
strcpy(host_save, hp->h_name);
*ahost = host_save;
@@ -131,9 +135,9 @@ kcmd(sock, ahost, rport, locuser, remuser, cmd, fd2p, ticket, service, realm,
fcntl(s, F_SETOWN, pid);
sin.sin_family = hp->h_addrtype;
#if defined(ultrix) || defined(sun)
- bcopy(hp->h_addr, (caddr_t)&sin.sin_addr, hp->h_length);
+ bcopy(hp->h_addr, (caddr_t)&sin.sin_addr, sizeof sin.sin_addr);
#else
- bcopy(hp->h_addr_list[0], (caddr_t)&sin.sin_addr, hp->h_length);
+ bcopy(hp->h_addr_list[0], (caddr_t)&sin.sin_addr, sizeof sin.sin_addr);
#endif
sin.sin_port = rport;
if (connect(s, (struct sockaddr *)&sin, sizeof(sin)) >= 0)
@@ -162,7 +166,7 @@ kcmd(sock, ahost, rport, locuser, remuser, cmd, fd2p, ticket, service, realm,
perror(NULL);
hp->h_addr_list++;
bcopy(hp->h_addr_list[0], (caddr_t)&sin.sin_addr,
- hp->h_length);
+ sizeof sin.sin_addr);
fprintf(stderr, "Trying %s...\n",
inet_ntoa(sin.sin_addr));
continue;