1
0
Fork 0
mirror of git://git.code.sf.net/p/zsh/code synced 2025-11-01 06:20:55 +01:00

14931: fix socket/address length calculation

This commit is contained in:
Andrey Borzenkov 2001-06-15 13:01:42 +00:00
parent 87db190920
commit 12e1cf567d
3 changed files with 13 additions and 5 deletions

View file

@ -1699,7 +1699,7 @@ zftp_open(char *name, char **args, int flags)
struct hostent *zhostp = NULL;
char **addrp, *fname;
int err, len, tmout;
int herrno, af, salen;
int herrno, af, hlen;
if (!*args) {
if (zfsess->userparams)
@ -1777,11 +1777,11 @@ zftp_open(char *name, char **args, int flags)
zfsess->control.peer.a.sa_family = af;
#ifdef SUPPORT_IPV6
if(af == AF_INET6) {
salen = sizeof(struct sockaddr_in6);
hlen = 16;
} else
#endif /* SUPPORT_IPV6 */
{
salen = sizeof(struct sockaddr_in);
hlen = 4;
}
tcp_socket(af, SOCK_STREAM, 0, &(zfsess->control));
@ -1805,7 +1805,7 @@ zftp_open(char *name, char **args, int flags)
/* try all possible IP's */
for (addrp = zhostp->h_addr_list; err && *addrp; addrp++) {
if(salen != zhostp->h_length)
if(hlen != zhostp->h_length)
zwarnnam(name, "address length mismatch", NULL, 0);
do {
err = tcp_connect(&(zfsess->control), *addrp, zhostp, zservp->s_port);