Commit ccfe7e46 by Alexandre Oliva Committed by Alexandre Oliva

configure.in: Check for in_addr_t in netinet/in.h too.

* configure.in: Check for in_addr_t in netinet/in.h too.  Check
for ip_mreq too.
* acconfig.h: Define HAVE_IN_ADDR_T instead of in_addr_t.
(HAVE_STRUCT_IP_MREQ): Added.
* configure, include/config.h.in: Rebuilt.
* java/net/natInetAddress.cc (aton): Typedef in_addr_t to jint
if needed.
* java/net/natPlainDatagramSocketImpl.cc (McastReq, mcastGrp):
Disable if ip_mreq is not available.

From-SVN: r28798
parent 988f5b70
1999-08-21 Alexandre Oliva <oliva@dcc.unicamp.br> 1999-08-21 Alexandre Oliva <oliva@dcc.unicamp.br>
* configure.in: Check for in_addr_t in netinet/in.h too. Check
for ip_mreq too.
* acconfig.h: Define HAVE_IN_ADDR_T instead of in_addr_t.
(HAVE_STRUCT_IP_MREQ): Added.
* configure, include/config.h.in: Rebuilt.
* java/net/natInetAddress.cc (aton): Typedef in_addr_t to jint
if needed.
* java/net/natPlainDatagramSocketImpl.cc (McastReq, mcastGrp):
Disable if ip_mreq is not available.
* configure.in: Check types ssize_t and in_addr_t. * configure.in: Check types ssize_t and in_addr_t.
* acconfig.h: Undefine them. * acconfig.h: Undefine them.
* configure, include/config.h.in: Rebuilt. * configure, include/config.h.in: Rebuilt.
......
...@@ -58,12 +58,16 @@ ...@@ -58,12 +58,16 @@
/* Define to `int' if `ssize_t' is not defined. */ /* Define to `int' if `ssize_t' is not defined. */
#undef ssize_t #undef ssize_t
/* Define to `jint' if `in_addr_t' is not defined. */ /* Define to 1 if `in_addr_t' is defined in sys/types.h or
#undef in_addr_t netinet/in.h. */
#undef HAVE_IN_ADDR_T
/* Define if inet6 structures are defined in netinet/in.h. */ /* Define if inet6 structures are defined in netinet/in.h. */
#undef HAVE_INET6 #undef HAVE_INET6
/* Define if struct ip_mreq is defined in netinet/in.h. */
#undef HAVE_STRUCT_IP_MREQ
/* Define it socklen_t typedef is in sys/socket.h. */ /* Define it socklen_t typedef is in sys/socket.h. */
#undef HAVE_SOCKLEN_T #undef HAVE_SOCKLEN_T
......
...@@ -4469,51 +4469,75 @@ EOF ...@@ -4469,51 +4469,75 @@ EOF
fi fi
echo $ac_n "checking for in_addr_t""... $ac_c" 1>&6 echo $ac_n "checking for in_addr_t""... $ac_c" 1>&6
echo "configure:4474: checking for in_addr_t" >&5 echo "configure:4475: checking for in_addr_t" >&5
if eval "test \"`echo '$''{'ac_cv_type_in_addr_t'+set}'`\" = set"; then cat > conftest.$ac_ext <<EOF
echo $ac_n "(cached) $ac_c" 1>&6 #line 4477 "configure"
else
cat > conftest.$ac_ext <<EOF
#line 4479 "configure"
#include "confdefs.h" #include "confdefs.h"
#include <sys/types.h> #include <sys/types.h>
#if STDC_HEADERS #if STDC_HEADERS
#include <stdlib.h> #include <stdlib.h>
#include <stddef.h> #include <stddef.h>
#endif #endif
#if HAVE_NETINET_IN_H
#include <netinet/in.h>
#endif
int main() {
in_addr_t foo;
; return 0; }
EOF EOF
if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | if { (eval echo configure:4491: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
egrep "(^|[^a-zA-Z_0-9])in_addr_t[^a-zA-Z_0-9]" >/dev/null 2>&1; then
rm -rf conftest* rm -rf conftest*
ac_cv_type_in_addr_t=yes cat >> confdefs.h <<\EOF
#define HAVE_IN_ADDR_T 1
EOF
echo "$ac_t""yes" 1>&6
else else
echo "configure: failed program was:" >&5
cat conftest.$ac_ext >&5
rm -rf conftest* rm -rf conftest*
ac_cv_type_in_addr_t=no echo "$ac_t""no" 1>&6
fi fi
rm -f conftest* rm -f conftest*
fi echo $ac_n "checking whether struct ip_mreq is in netinet/in.h""... $ac_c" 1>&6
echo "$ac_t""$ac_cv_type_in_addr_t" 1>&6 echo "configure:4507: checking whether struct ip_mreq is in netinet/in.h" >&5
if test $ac_cv_type_in_addr_t = no; then cat > conftest.$ac_ext <<EOF
#line 4509 "configure"
#include "confdefs.h"
#include <netinet/in.h>
int main() {
struct ip_mreq mreq;
; return 0; }
EOF
if { (eval echo configure:4516: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
cat >> confdefs.h <<\EOF cat >> confdefs.h <<\EOF
#define in_addr_t jint #define HAVE_STRUCT_IP_MREQ 1
EOF EOF
echo "$ac_t""yes" 1>&6
else
echo "configure: failed program was:" >&5
cat conftest.$ac_ext >&5
rm -rf conftest*
echo "$ac_t""no" 1>&6
fi fi
rm -f conftest*
echo $ac_n "checking whether struct sockaddr_in6 is in netinet/in.h""... $ac_c" 1>&6 echo $ac_n "checking whether struct sockaddr_in6 is in netinet/in.h""... $ac_c" 1>&6
echo "configure:4508: checking whether struct sockaddr_in6 is in netinet/in.h" >&5 echo "configure:4532: checking whether struct sockaddr_in6 is in netinet/in.h" >&5
cat > conftest.$ac_ext <<EOF cat > conftest.$ac_ext <<EOF
#line 4510 "configure" #line 4534 "configure"
#include "confdefs.h" #include "confdefs.h"
#include <netinet/in.h> #include <netinet/in.h>
int main() { int main() {
struct sockaddr_in6 addr6; struct sockaddr_in6 addr6;
; return 0; } ; return 0; }
EOF EOF
if { (eval echo configure:4517: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then if { (eval echo configure:4541: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest* rm -rf conftest*
cat >> confdefs.h <<\EOF cat >> confdefs.h <<\EOF
#define HAVE_INET6 1 #define HAVE_INET6 1
...@@ -4529,16 +4553,16 @@ fi ...@@ -4529,16 +4553,16 @@ fi
rm -f conftest* rm -f conftest*
echo $ac_n "checking for socklen_t in sys/socket.h""... $ac_c" 1>&6 echo $ac_n "checking for socklen_t in sys/socket.h""... $ac_c" 1>&6
echo "configure:4533: checking for socklen_t in sys/socket.h" >&5 echo "configure:4557: checking for socklen_t in sys/socket.h" >&5
cat > conftest.$ac_ext <<EOF cat > conftest.$ac_ext <<EOF
#line 4535 "configure" #line 4559 "configure"
#include "confdefs.h" #include "confdefs.h"
#include <sys/socket.h> #include <sys/socket.h>
int main() { int main() {
socklen_t x = 5; socklen_t x = 5;
; return 0; } ; return 0; }
EOF EOF
if { (eval echo configure:4542: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then if { (eval echo configure:4566: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest* rm -rf conftest*
cat >> confdefs.h <<\EOF cat >> confdefs.h <<\EOF
#define HAVE_SOCKLEN_T 1 #define HAVE_SOCKLEN_T 1
...@@ -4554,16 +4578,16 @@ fi ...@@ -4554,16 +4578,16 @@ fi
rm -f conftest* rm -f conftest*
echo $ac_n "checking for tm_gmtoff in struct tm""... $ac_c" 1>&6 echo $ac_n "checking for tm_gmtoff in struct tm""... $ac_c" 1>&6
echo "configure:4558: checking for tm_gmtoff in struct tm" >&5 echo "configure:4582: checking for tm_gmtoff in struct tm" >&5
cat > conftest.$ac_ext <<EOF cat > conftest.$ac_ext <<EOF
#line 4560 "configure" #line 4584 "configure"
#include "confdefs.h" #include "confdefs.h"
#include <time.h> #include <time.h>
int main() { int main() {
struct tm tim; tim.tm_gmtoff = 0; struct tm tim; tim.tm_gmtoff = 0;
; return 0; } ; return 0; }
EOF EOF
if { (eval echo configure:4567: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then if { (eval echo configure:4591: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest* rm -rf conftest*
cat >> confdefs.h <<\EOF cat >> confdefs.h <<\EOF
#define STRUCT_TM_HAS_GMTOFF 1 #define STRUCT_TM_HAS_GMTOFF 1
...@@ -4576,16 +4600,16 @@ else ...@@ -4576,16 +4600,16 @@ else
rm -rf conftest* rm -rf conftest*
echo "$ac_t""no" 1>&6 echo "$ac_t""no" 1>&6
echo $ac_n "checking for global timezone variable""... $ac_c" 1>&6 echo $ac_n "checking for global timezone variable""... $ac_c" 1>&6
echo "configure:4580: checking for global timezone variable" >&5 echo "configure:4604: checking for global timezone variable" >&5
cat > conftest.$ac_ext <<EOF cat > conftest.$ac_ext <<EOF
#line 4582 "configure" #line 4606 "configure"
#include "confdefs.h" #include "confdefs.h"
#include <time.h> #include <time.h>
int main() { int main() {
long z2 = timezone; long z2 = timezone;
; return 0; } ; return 0; }
EOF EOF
if { (eval echo configure:4589: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then if { (eval echo configure:4613: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest* rm -rf conftest*
cat >> confdefs.h <<\EOF cat >> confdefs.h <<\EOF
#define HAVE_TIMEZONE 1 #define HAVE_TIMEZONE 1
...@@ -4605,19 +4629,19 @@ rm -f conftest* ...@@ -4605,19 +4629,19 @@ rm -f conftest*
# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works # The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
# for constant arguments. Useless! # for constant arguments. Useless!
echo $ac_n "checking for working alloca.h""... $ac_c" 1>&6 echo $ac_n "checking for working alloca.h""... $ac_c" 1>&6
echo "configure:4609: checking for working alloca.h" >&5 echo "configure:4633: checking for working alloca.h" >&5
if eval "test \"`echo '$''{'ac_cv_header_alloca_h'+set}'`\" = set"; then if eval "test \"`echo '$''{'ac_cv_header_alloca_h'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6 echo $ac_n "(cached) $ac_c" 1>&6
else else
cat > conftest.$ac_ext <<EOF cat > conftest.$ac_ext <<EOF
#line 4614 "configure" #line 4638 "configure"
#include "confdefs.h" #include "confdefs.h"
#include <alloca.h> #include <alloca.h>
int main() { int main() {
char *p = alloca(2 * sizeof(int)); char *p = alloca(2 * sizeof(int));
; return 0; } ; return 0; }
EOF EOF
if { (eval echo configure:4621: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then if { (eval echo configure:4645: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest* rm -rf conftest*
ac_cv_header_alloca_h=yes ac_cv_header_alloca_h=yes
else else
...@@ -4638,12 +4662,12 @@ EOF ...@@ -4638,12 +4662,12 @@ EOF
fi fi
echo $ac_n "checking for alloca""... $ac_c" 1>&6 echo $ac_n "checking for alloca""... $ac_c" 1>&6
echo "configure:4642: checking for alloca" >&5 echo "configure:4666: checking for alloca" >&5
if eval "test \"`echo '$''{'ac_cv_func_alloca_works'+set}'`\" = set"; then if eval "test \"`echo '$''{'ac_cv_func_alloca_works'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6 echo $ac_n "(cached) $ac_c" 1>&6
else else
cat > conftest.$ac_ext <<EOF cat > conftest.$ac_ext <<EOF
#line 4647 "configure" #line 4671 "configure"
#include "confdefs.h" #include "confdefs.h"
#ifdef __GNUC__ #ifdef __GNUC__
...@@ -4671,7 +4695,7 @@ int main() { ...@@ -4671,7 +4695,7 @@ int main() {
char *p = (char *) alloca(1); char *p = (char *) alloca(1);
; return 0; } ; return 0; }
EOF EOF
if { (eval echo configure:4675: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then if { (eval echo configure:4699: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest* rm -rf conftest*
ac_cv_func_alloca_works=yes ac_cv_func_alloca_works=yes
else else
...@@ -4703,12 +4727,12 @@ EOF ...@@ -4703,12 +4727,12 @@ EOF
echo $ac_n "checking whether alloca needs Cray hooks""... $ac_c" 1>&6 echo $ac_n "checking whether alloca needs Cray hooks""... $ac_c" 1>&6
echo "configure:4707: checking whether alloca needs Cray hooks" >&5 echo "configure:4731: checking whether alloca needs Cray hooks" >&5
if eval "test \"`echo '$''{'ac_cv_os_cray'+set}'`\" = set"; then if eval "test \"`echo '$''{'ac_cv_os_cray'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6 echo $ac_n "(cached) $ac_c" 1>&6
else else
cat > conftest.$ac_ext <<EOF cat > conftest.$ac_ext <<EOF
#line 4712 "configure" #line 4736 "configure"
#include "confdefs.h" #include "confdefs.h"
#if defined(CRAY) && ! defined(CRAY2) #if defined(CRAY) && ! defined(CRAY2)
webecray webecray
...@@ -4733,12 +4757,12 @@ echo "$ac_t""$ac_cv_os_cray" 1>&6 ...@@ -4733,12 +4757,12 @@ echo "$ac_t""$ac_cv_os_cray" 1>&6
if test $ac_cv_os_cray = yes; then if test $ac_cv_os_cray = yes; then
for ac_func in _getb67 GETB67 getb67; do for ac_func in _getb67 GETB67 getb67; do
echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
echo "configure:4737: checking for $ac_func" >&5 echo "configure:4761: checking for $ac_func" >&5
if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6 echo $ac_n "(cached) $ac_c" 1>&6
else else
cat > conftest.$ac_ext <<EOF cat > conftest.$ac_ext <<EOF
#line 4742 "configure" #line 4766 "configure"
#include "confdefs.h" #include "confdefs.h"
/* System header to define __stub macros and hopefully few prototypes, /* System header to define __stub macros and hopefully few prototypes,
which can conflict with char $ac_func(); below. */ which can conflict with char $ac_func(); below. */
...@@ -4761,7 +4785,7 @@ $ac_func(); ...@@ -4761,7 +4785,7 @@ $ac_func();
; return 0; } ; return 0; }
EOF EOF
if { (eval echo configure:4765: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then if { (eval echo configure:4789: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest* rm -rf conftest*
eval "ac_cv_func_$ac_func=yes" eval "ac_cv_func_$ac_func=yes"
else else
...@@ -4788,7 +4812,7 @@ done ...@@ -4788,7 +4812,7 @@ done
fi fi
echo $ac_n "checking stack direction for C alloca""... $ac_c" 1>&6 echo $ac_n "checking stack direction for C alloca""... $ac_c" 1>&6
echo "configure:4792: checking stack direction for C alloca" >&5 echo "configure:4816: checking stack direction for C alloca" >&5
if eval "test \"`echo '$''{'ac_cv_c_stack_direction'+set}'`\" = set"; then if eval "test \"`echo '$''{'ac_cv_c_stack_direction'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6 echo $ac_n "(cached) $ac_c" 1>&6
else else
...@@ -4796,7 +4820,7 @@ else ...@@ -4796,7 +4820,7 @@ else
ac_cv_c_stack_direction=0 ac_cv_c_stack_direction=0
else else
cat > conftest.$ac_ext <<EOF cat > conftest.$ac_ext <<EOF
#line 4800 "configure" #line 4824 "configure"
#include "confdefs.h" #include "confdefs.h"
find_stack_direction () find_stack_direction ()
{ {
...@@ -4815,7 +4839,7 @@ main () ...@@ -4815,7 +4839,7 @@ main ()
exit (find_stack_direction() < 0); exit (find_stack_direction() < 0);
} }
EOF EOF
if { (eval echo configure:4819: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null if { (eval echo configure:4843: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
then then
ac_cv_c_stack_direction=1 ac_cv_c_stack_direction=1
else else
...@@ -4842,7 +4866,7 @@ do ...@@ -4842,7 +4866,7 @@ do
# Extract the first word of "$ac_prog", so it can be a program name with args. # Extract the first word of "$ac_prog", so it can be a program name with args.
set dummy $ac_prog; ac_word=$2 set dummy $ac_prog; ac_word=$2
echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
echo "configure:4846: checking for $ac_word" >&5 echo "configure:4870: checking for $ac_word" >&5
if eval "test \"`echo '$''{'ac_cv_prog_PERL'+set}'`\" = set"; then if eval "test \"`echo '$''{'ac_cv_prog_PERL'+set}'`\" = set"; then
echo $ac_n "(cached) $ac_c" 1>&6 echo $ac_n "(cached) $ac_c" 1>&6
else else
......
...@@ -547,7 +547,25 @@ dnl for now. If you change this, you also must update natFile.cc. ...@@ -547,7 +547,25 @@ dnl for now. If you change this, you also must update natFile.cc.
AC_CHECK_HEADERS(dirent.h) AC_CHECK_HEADERS(dirent.h)
AC_CHECK_TYPE([ssize_t], [int]) AC_CHECK_TYPE([ssize_t], [int])
AC_CHECK_TYPE([in_addr_t], [jint])
AC_MSG_CHECKING([for in_addr_t])
AC_TRY_COMPILE([#include <sys/types.h>
#if STDC_HEADERS
#include <stdlib.h>
#include <stddef.h>
#endif
#if HAVE_NETINET_IN_H
#include <netinet/in.h>
#endif], [in_addr_t foo;],
[AC_DEFINE([HAVE_IN_ADDR_T])
AC_MSG_RESULT(yes)],
[AC_MSG_RESULT(no)])
AC_MSG_CHECKING([whether struct ip_mreq is in netinet/in.h])
AC_TRY_COMPILE([#include <netinet/in.h>], [struct ip_mreq mreq;],
[AC_DEFINE(HAVE_STRUCT_IP_MREQ)
AC_MSG_RESULT(yes)],
[AC_MSG_RESULT(no)])
AC_MSG_CHECKING([whether struct sockaddr_in6 is in netinet/in.h]) AC_MSG_CHECKING([whether struct sockaddr_in6 is in netinet/in.h])
AC_TRY_COMPILE([#include <netinet/in.h>], [struct sockaddr_in6 addr6;], AC_TRY_COMPILE([#include <netinet/in.h>], [struct sockaddr_in6 addr6;],
......
...@@ -73,12 +73,16 @@ ...@@ -73,12 +73,16 @@
/* Define to `int' if `ssize_t' is not defined. */ /* Define to `int' if `ssize_t' is not defined. */
#undef ssize_t #undef ssize_t
/* Define to `jint' if `in_addr_t' is not defined. */ /* Define to 1 if `in_addr_t' is defined in sys/types.h or
#undef in_addr_t netinet/in.h. */
#undef HAVE_IN_ADDR_T
/* Define if inet6 structures are defined in netinet/in.h. */ /* Define if inet6 structures are defined in netinet/in.h. */
#undef HAVE_INET6 #undef HAVE_INET6
/* Define if struct ip_mreq is defined in netinet/in.h. */
#undef HAVE_STRUCT_IP_MREQ
/* Define it socklen_t typedef is in sys/socket.h. */ /* Define it socklen_t typedef is in sys/socket.h. */
#undef HAVE_SOCKLEN_T #undef HAVE_SOCKLEN_T
......
...@@ -71,6 +71,9 @@ java::net::InetAddress::aton (jstring host) ...@@ -71,6 +71,9 @@ java::net::InetAddress::aton (jstring host)
blen = 4; blen = 4;
} }
#elif defined(HAVE_INET_ADDR) #elif defined(HAVE_INET_ADDR)
#if ! HAVE_IN_ADDR_T
typedef jint in_addr_t;
#endif
in_addr_t laddr = inet_addr (hostname); in_addr_t laddr = inet_addr (hostname);
if (laddr != (in_addr_t)(-1)) if (laddr != (in_addr_t)(-1))
{ {
......
...@@ -61,7 +61,9 @@ union SockAddr ...@@ -61,7 +61,9 @@ union SockAddr
union McastReq union McastReq
{ {
#if HAVE_STRUCT_IP_MREQ
struct ip_mreq mreq; struct ip_mreq mreq;
#endif
#ifdef HAVE_INET6 #ifdef HAVE_INET6
struct ipv6_mreq mreq6; struct ipv6_mreq mreq6;
#endif #endif
...@@ -323,7 +325,10 @@ java::net::PlainDatagramSocketImpl::mcastGrp (java::net::InetAddress *inetaddr, ...@@ -323,7 +325,10 @@ java::net::PlainDatagramSocketImpl::mcastGrp (java::net::InetAddress *inetaddr,
int len = haddress->length; int len = haddress->length;
int level, opname; int level, opname;
const char *ptr; const char *ptr;
if (len == 4) if (0)
;
#if HAVE_STRUCT_IP_MREQ
else if (len == 4)
{ {
level = IPPROTO_IP; level = IPPROTO_IP;
opname = join ? IP_ADD_MEMBERSHIP : IP_DROP_MEMBERSHIP; opname = join ? IP_ADD_MEMBERSHIP : IP_DROP_MEMBERSHIP;
...@@ -334,6 +339,7 @@ java::net::PlainDatagramSocketImpl::mcastGrp (java::net::InetAddress *inetaddr, ...@@ -334,6 +339,7 @@ java::net::PlainDatagramSocketImpl::mcastGrp (java::net::InetAddress *inetaddr,
len = sizeof (struct ip_mreq); len = sizeof (struct ip_mreq);
ptr = (const char *) &u.mreq; ptr = (const char *) &u.mreq;
} }
#endif
#ifdef HAVE_INET6 #ifdef HAVE_INET6
else if (len == 16) else if (len == 16)
{ {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment