mirror of
https://github.com/ZDoom/fluidsynth.git
synced 2024-11-10 23:11:41 +00:00
parent
e53230bb2f
commit
d7d56086d5
2 changed files with 28 additions and 4 deletions
|
@ -166,6 +166,12 @@ if ( WIN32 )
|
||||||
if ( MINGW )
|
if ( MINGW )
|
||||||
set ( MINGW32 1 )
|
set ( MINGW32 1 )
|
||||||
add_definitions ( -mms-bitfields )
|
add_definitions ( -mms-bitfields )
|
||||||
|
include(CheckFunctionExists)
|
||||||
|
CHECK_FUNCTION_EXISTS ( "inet_ntop" HAVE_INETNTOP )
|
||||||
|
if (NOT HAVE_INETNTOP )
|
||||||
|
set ( IPV6 0 )
|
||||||
|
set ( IPV6_SUPPORT 0 )
|
||||||
|
endif ( NOT HAVE_INETNTOP )
|
||||||
endif ( MINGW )
|
endif ( MINGW )
|
||||||
else ( WIN32 )
|
else ( WIN32 )
|
||||||
# Check PThreads, but not in Windows
|
# Check PThreads, but not in Windows
|
||||||
|
@ -390,10 +396,12 @@ else ( enable-dbus )
|
||||||
endif ( enable-dbus )
|
endif ( enable-dbus )
|
||||||
|
|
||||||
unset ( IPV6_SUPPORT CACHE )
|
unset ( IPV6_SUPPORT CACHE )
|
||||||
if ( enable-ipv6 )
|
if ( HAVE_INETNTOP )
|
||||||
set ( IPV6 1 )
|
if ( enable-ipv6 )
|
||||||
set ( IPV6_SUPPORT 1 )
|
set ( IPV6 1 )
|
||||||
endif ( enable-ipv6 )
|
set ( IPV6_SUPPORT 1 )
|
||||||
|
endif ( enable-ipv6 )
|
||||||
|
endif ( HAVE_INETNTOP )
|
||||||
|
|
||||||
# General configuration file
|
# General configuration file
|
||||||
configure_file ( ${CMAKE_SOURCE_DIR}/src/config.cmake
|
configure_file ( ${CMAKE_SOURCE_DIR}/src/config.cmake
|
||||||
|
|
|
@ -1008,13 +1008,20 @@ fluid_server_socket_run (void *data)
|
||||||
server_socket->cont = 0;
|
server_socket->cont = 0;
|
||||||
return;
|
return;
|
||||||
} else {
|
} else {
|
||||||
|
#ifdef HAVE_INETNTOP
|
||||||
#ifdef IPV6
|
#ifdef IPV6
|
||||||
inet_ntop(AF_INET6, &addr.sin6_addr, straddr, sizeof(straddr));
|
inet_ntop(AF_INET6, &addr.sin6_addr, straddr, sizeof(straddr));
|
||||||
#else
|
#else
|
||||||
inet_ntop(AF_INET, &addr.sin_addr, straddr, sizeof(straddr));
|
inet_ntop(AF_INET, &addr.sin_addr, straddr, sizeof(straddr));
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
|
#ifdef HAVE_INETNTOP
|
||||||
retval = server_socket->func (server_socket->data, client_socket,
|
retval = server_socket->func (server_socket->data, client_socket,
|
||||||
straddr);
|
straddr);
|
||||||
|
#else
|
||||||
|
retval = server_socket->func (server_socket->data, client_socket,
|
||||||
|
inet_ntoa (addr.sin_addr));
|
||||||
|
#endif
|
||||||
|
|
||||||
if (retval != 0)
|
if (retval != 0)
|
||||||
fluid_socket_close(client_socket);
|
fluid_socket_close(client_socket);
|
||||||
|
@ -1141,7 +1148,9 @@ static void fluid_server_socket_run (void *data)
|
||||||
char straddr[INET6_ADDRSTRLEN];
|
char straddr[INET6_ADDRSTRLEN];
|
||||||
#else
|
#else
|
||||||
struct sockaddr_in addr;
|
struct sockaddr_in addr;
|
||||||
|
#ifdef HAVE_INETNTOP
|
||||||
char straddr[INET_ADDRSTRLEN];
|
char straddr[INET_ADDRSTRLEN];
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
socklen_t addrlen = sizeof (addr);
|
socklen_t addrlen = sizeof (addr);
|
||||||
int r;
|
int r;
|
||||||
|
@ -1165,13 +1174,20 @@ static void fluid_server_socket_run (void *data)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
#ifdef HAVE_INETNTOP
|
||||||
#ifdef IPV6
|
#ifdef IPV6
|
||||||
inet_ntop(AF_INET6, &addr.sin6_addr, straddr, sizeof(straddr));
|
inet_ntop(AF_INET6, &addr.sin6_addr, straddr, sizeof(straddr));
|
||||||
#else
|
#else
|
||||||
inet_ntop(AF_INET, &addr.sin_addr, straddr, sizeof(straddr));
|
inet_ntop(AF_INET, &addr.sin_addr, straddr, sizeof(straddr));
|
||||||
#endif
|
#endif
|
||||||
|
#endif
|
||||||
|
#ifdef HAVE_INETNTOP
|
||||||
r = server_socket->func (server_socket->data, client_socket,
|
r = server_socket->func (server_socket->data, client_socket,
|
||||||
straddr);
|
straddr);
|
||||||
|
#else
|
||||||
|
r = server_socket->func (server_socket->data, client_socket,
|
||||||
|
inet_ntoa (addr.sin_addr));
|
||||||
|
#endif
|
||||||
if (r != 0)
|
if (r != 0)
|
||||||
fluid_socket_close (client_socket);
|
fluid_socket_close (client_socket);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue