From 9630ea929b3c97a846cf9ed4772dc6ea79fbefb9 Mon Sep 17 00:00:00 2001 From: Assar Westerlund Date: Thu, 16 Dec 1999 10:26:22 +0000 Subject: [PATCH] (doit): addrinfo returned from getaddrinfo() is not usable directly as hints. copy it and set AI_PASSIVE. git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@7598 ec53bebd-3082-4978-b11e-865c3cabbd6b --- appl/rsh/rsh.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/appl/rsh/rsh.c b/appl/rsh/rsh.c index 486d06766..d6beac2ea 100644 --- a/appl/rsh/rsh.c +++ b/appl/rsh/rsh.c @@ -672,8 +672,15 @@ doit (const char *hostname, } if (do_errsock) { struct addrinfo *ea; + struct addrinfo hints; - error = getaddrinfo (NULL, "0", a, &ea); + memset (&hints, 0, sizeof(hints)); + hints.ai_socktype = a->ai_socktype; + hints.ai_protocol = a->ai_protocol; + hints.ai_family = a->ai_family; + hints.ai_flags = AI_PASSIVE; + + error = getaddrinfo (NULL, "0", &hints, &ea); if (error) errx (1, "getaddrinfo: %s", gai_strerror(error)); errsock = socket (ea->ai_family, ea->ai_socktype, ea->ai_protocol);