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
|
along with this program; if not, write to the Free Software
|
||||||
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
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"
|
#include "config.h"
|
||||||
|
@ -454,7 +454,7 @@ cp
|
||||||
cp
|
cp
|
||||||
/* Open sockets */
|
/* Open sockets */
|
||||||
|
|
||||||
hint.ai_family = (addressfamily == AF_UNSPEC)?AF_INET6:addressfamily;
|
hint.ai_family = addressfamily;
|
||||||
hint.ai_socktype = SOCK_STREAM;
|
hint.ai_socktype = SOCK_STREAM;
|
||||||
hint.ai_protocol = IPPROTO_TCP;
|
hint.ai_protocol = IPPROTO_TCP;
|
||||||
hint.ai_flags = AI_PASSIVE;
|
hint.ai_flags = AI_PASSIVE;
|
||||||
|
@ -471,6 +471,19 @@ cp
|
||||||
return -1;
|
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)
|
if((udp_socket = setup_vpn_in_socket((sockaddr_t *)ai->ai_addr)) < 0)
|
||||||
{
|
{
|
||||||
syslog(LOG_ERR, _("Unable to set up a listening UDP socket!"));
|
syslog(LOG_ERR, _("Unable to set up a listening UDP socket!"));
|
||||||
|
|
Loading…
Reference in a new issue