Use AF_UNSPEC for listening sockets if AddressFamily = any.
This commit is contained in:
parent
76f01453df
commit
8c91fac315
1 changed files with 15 additions and 2 deletions
|
@ -17,7 +17,7 @@
|
|||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
|
||||
$Id: net_setup.c,v 1.1.2.1 2002/02/18 16:25:16 guus Exp $
|
||||
$Id: net_setup.c,v 1.1.2.2 2002/02/20 16:04:39 guus Exp $
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
@ -454,7 +454,7 @@ cp
|
|||
cp
|
||||
/* Open sockets */
|
||||
|
||||
hint.ai_family = (addressfamily == AF_UNSPEC)?AF_INET6:addressfamily;
|
||||
hint.ai_family = addressfamily;
|
||||
hint.ai_socktype = SOCK_STREAM;
|
||||
hint.ai_protocol = IPPROTO_TCP;
|
||||
hint.ai_flags = AI_PASSIVE;
|
||||
|
@ -471,6 +471,19 @@ cp
|
|||
return -1;
|
||||
}
|
||||
|
||||
freeaddrinfo(ai);
|
||||
|
||||
hint.ai_family = addressfamily;
|
||||
hint.ai_socktype = SOCK_DGRAM;
|
||||
hint.ai_protocol = IPPROTO_UDP;
|
||||
hint.ai_flags = AI_PASSIVE;
|
||||
|
||||
if(getaddrinfo(NULL, myport, &hint, &ai) || !ai)
|
||||
{
|
||||
syslog(LOG_ERR, _("System call `%s' failed: %s"), "getaddrinfo", strerror(errno));
|
||||
return -1;
|
||||
}
|
||||
|
||||
if((udp_socket = setup_vpn_in_socket((sockaddr_t *)ai->ai_addr)) < 0)
|
||||
{
|
||||
syslog(LOG_ERR, _("Unable to set up a listening UDP socket!"));
|
||||
|
|
Loading…
Reference in a new issue