diff options
author | yugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2011-07-03 12:24:30 +0000 |
---|---|---|
committer | yugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2011-07-03 12:24:30 +0000 |
commit | da87fc0e7389842e07a9ce74b27769ed870def9a (patch) | |
tree | 4c324d1015c45b9accfcda17bfb9988eeafae9a8 /ext | |
parent | b8f2f0e5611833d1f93c261a772859667e971749 (diff) |
* ext/socket/extconf.rb (have_type("PADDRINFO")): new check.
* ext/socket/addrinfo.h: fixed a compilation problem with VC++ 2010.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_2@32387 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext')
-rw-r--r-- | ext/socket/addrinfo.h | 2 | ||||
-rw-r--r-- | ext/socket/extconf.rb | 2 |
2 files changed, 4 insertions, 0 deletions
diff --git a/ext/socket/addrinfo.h b/ext/socket/addrinfo.h index f0b977d79c..3a478cf36c 100644 --- a/ext/socket/addrinfo.h +++ b/ext/socket/addrinfo.h @@ -172,7 +172,9 @@ extern int getnameinfo __P(( int flags)); extern void freehostent __P((struct hostent *)); +#ifndef HAVE_PADDRINFO extern void freeaddrinfo __P((struct addrinfo *)); +#endif extern #ifdef GAI_STRERROR_CONST const diff --git a/ext/socket/extconf.rb b/ext/socket/extconf.rb index a6bc9bb46c..92fa6bf7e1 100644 --- a/ext/socket/extconf.rb +++ b/ext/socket/extconf.rb @@ -122,6 +122,8 @@ if have_func("sendmsg") | have_func("recvmsg") have_struct_member('struct msghdr', 'msg_accrights', ['sys/types.h', 'sys/socket.h']) end +have_type("PADDRINFO", %w[ ws2tcpip.h wspiapi.h ]) + getaddr_info_ok = (enable_config("wide-getaddrinfo") && :wide) || (checking_for("wide getaddrinfo") {try_run(<<EOF)} && :os) #{cpp_include(headers)} |