diff --git a/ChangeLog b/ChangeLog index 6665794f7d..2cef209743 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Sun Sep 3 04:40:42 2006 Tanaka Akira + + * ext/socket/extconf.rb: check arpa/inet.h for ntohs. + + * ext/socket/socket.c: include arpa/inet.h if available. + Sun Sep 3 04:03:06 2006 Tanaka Akira * ext/curses/curses.c: define _XOPEN_SOURCE_EXTENDED on HP-UX. diff --git a/ext/socket/extconf.rb b/ext/socket/extconf.rb index 125ef6be20..1441dee4c0 100644 --- a/ext/socket/extconf.rb +++ b/ext/socket/extconf.rb @@ -25,6 +25,9 @@ if /solaris/ =~ RUBY_PLATFORM and !try_compile("") # bug of gcc 3.0 on Solaris 8 ? headers << "sys/feature_tests.h" end +if have_header("arpa/inet.h") + headers << "arpa/inet.h" +end ipv6 = false default_ipv6 = /cygwin/ !~ RUBY_PLATFORM @@ -237,7 +240,6 @@ unless getaddr_info_ok and have_func("getnameinfo", "netdb.h") and have_func("ge have_func("inet_ntop") or have_func("inet_ntoa") have_func("inet_pton") or have_func("inet_aton") have_func("getservbyport") - have_header("arpa/inet.h") have_header("arpa/nameser.h") have_header("resolv.h") end diff --git a/ext/socket/socket.c b/ext/socket/socket.c index 8cc850b8a1..bb462f2fb3 100644 --- a/ext/socket/socket.c +++ b/ext/socket/socket.c @@ -41,6 +41,9 @@ #ifdef HAVE_NETINET_UDP_H # include #endif +#ifdef HAVE_ARPA_INET_H +# include +#endif #include #endif #include