Commit graph

1021 commits

Author SHA1 Message Date
akr
94a5335148 * ext/socket/ipsocket.c: parenthesize macro arguments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31190 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-03-27 14:16:50 +00:00
akr
c65953cd03 * ext/socket/getaddrinfo.c: parenthesize macro arguments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31185 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-03-26 06:16:42 +00:00
akr
bc843e4b7d * ext/socket/ipsocket.c (init_inetsock_internal): raise an error on
listen(2) failure.
  reported by Xavier Shay.  [ruby-core:35505]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31115 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-03-16 11:42:03 +00:00
nobu
58b325366d * thread.c (rb_thread_io_blocking_region): new function to run
blocking region with GIL released, for fd.
* thread.c (rb_thread_fd_close): implement.  [ruby-core:35203]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30852 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-12 05:44:23 +00:00
akr
011bcd47b4 * ext/socket/mkconstants.rb: add IF_NAMESIZE.
add a default for INET6_ADDRSTRLEN.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30392 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-26 16:31:01 +00:00
akr
2316cd4d0c * ext/socket/mkconstants.rb: define INET_ADDRSTRLEN as 16 if not
available.  fix compilation error on mswin32-60.  reported by nobu.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30386 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-26 11:54:18 +00:00
akr
9694fa9517 fix a typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30385 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-26 10:43:53 +00:00
akr
6446be302b * ext/socket/option.c: define IFNAMSIZ if not available.
fix compilation error on mingw32.  reported by nobu.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30384 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-26 10:38:44 +00:00
akr
bcd39a0851 update comment.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30383 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-26 04:26:10 +00:00
akr
326ec51f4e * ext/socket/option.c (rb_if_indextoname): new function to abstract
environments without if_indextoname.
  (inspect_ipv6_multicast_if): new function to inspect
  IPV6_MULTICAST_IF.
  Socket::Option.new(:INET6, :IPV6, :MULTICAST_IF,
  [2].pack("I!")).inspect is
  "#<Socket::Option: INET6 IPV6 MULTICAST_IF eth0>".


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30378 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-26 00:25:14 +00:00
naruse
acc69509cb This ifdef should be useless after r30374.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30376 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-25 17:37:36 +00:00
kosaki
6bd4afaab8 * ext/socket/extconf.rb: Fix build error which was introduced r30372.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30374 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-25 17:21:08 +00:00
usa
7c9fbd226b * ext/socket/extconf.rb: check the existence of if_indextoname().
* ext/socket/option.c: yesterday's akr's commits destroyed the build of
  some unrelated platforms (such as Windows).


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30372 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-25 16:41:13 +00:00
akr
01da08a29c * ext/socket/option.c (inspect_ipv4_add_drop_membership): new function
to inspect struct ip_mreq and struct ip_mreqn for
  IP_ADD_MEMBERSHIP and IP_DROP_MEMBERSHIP.
  Socket::Option.new(:INET, :IP, :ADD_MEMBERSHIP,
  [239,255,99,81, 0,0,0,0].pack("CCCCCCCC")).inspect is now
  "#<Socket::Option: INET IP ADD_MEMBERSHIP 239.255.99.81 0.0.0.0>".
  (inspect_ipv4_multicast_if): new function to inspect struct in_addr
  and struct ip_mreqn for IP_MULTICAST_IF.
  Socket::Option.new(:INET, :IP, :MULTICAST_IF,
  [192,168,0,7].pack("CCCC")).inspect is now
  "#<Socket::Option: INET IP MULTICAST_IF 192.168.0.7>".

* ext/socket/extconf.rb: check struct ip_mreq and struct ip_mreqn.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30371 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-25 14:35:28 +00:00
akr
1b40391d3d * ext/socket/option.c (inspect_ipv6_mreq): new function to inspect
struct ipv6_mreq for IPV6_JOIN_GROUP and IPV6_LEAVE_GROUP.
  Socket::Option.new(:INET6, :IPV6, :JOIN_GROUP,
  [0xff12,0,0,0,0,0,0,1, 2].pack("nnnnnnnnI!")).inspect is now:
  "#<Socket::Option: INET6 IPV6 JOIN_GROUP ff12::1 eth0>"

* ext/socket/extconf.rb: check struct ipv6_mreq.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30361 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-25 09:29:24 +00:00
akr
a048436461 update doc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30330 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-12-23 23:52:42 +00:00
nobu
8a7aad9952 * fix type warnings.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29745 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-11 12:30:39 +00:00
usa
f6150aa7df * ext/socket/extconf.rb: win64 is just same with win32 about socket.
notice: but wince is not same.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29666 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-11-01 15:26:58 +00:00
nobu
b736c9b5dc * ext/socket/init.c (rsock_init_sock): conditionally used variable.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29464 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-12 14:54:02 +00:00
wanabe
e63c5b3a62 * ext/socket/raddrinfo.c (init_addrinfo, inspect_sockaddr): suppress
warnings.  see [ruby-core:31932].

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29323 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-09-23 12:42:49 +00:00
nobu
3f4a73f0e1 * ext/socket/raddrinfo.c (ruby_getaddrinfo__darwin): suppress a
warning.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29255 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-09-14 23:26:03 +00:00
kanemoto
54886d0876 suppress a warning.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29245 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-09-13 16:02:35 +00:00
nobu
4c916ec8b7 * ext/socket/rubysocket.h (__DARWIN_ALIGNBYTES): workaround of a
bug in system header of darwin 9.  [ruby-core:32341]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29242 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-09-13 10:56:52 +00:00
akr
a75a467102 * ext/socket/option.c (inspect_peercred): support OpenBSD-current.
patch by Jeremy Evans.  [ruby-core:32240]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29206 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-09-09 17:19:52 +00:00
akr
85198c5e3c * ext/socket/ancdata.c (ancillary_timestamp): fix a constant type.
* ext/socket/raddrinfo.c (get_afamily): suppress a warning.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29053 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-19 10:54:56 +00:00
nobu
c53664c84d .cvsignore: have not been used already. [Bug #3468]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28898 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-08-07 05:43:21 +00:00
shyouhei
a52dd6cc5c * ext/socket/raddrinfo.c (rb_getaddrinfo): according to my valgrind output this variable should be initialized beforehand.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28688 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-07-20 04:00:46 +00:00
nobu
25b9eb5e57 * include/ruby/ruby.h (rb_data_type_t): restructured. [ruby-dev:41862]
add parent member.

* error.c (rb_typeddata_inherited_p): new function.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28676 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-07-18 07:31:54 +00:00
akr
f77d8722c2 * ext/socket/raddrinfo.c (ruby_getaddrinfo__darwin): the workaround
for Mac OS X moved from rsock_getaddrinfo.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28414 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-06-23 21:24:31 +00:00
akr
512a35693b * ext/socket/raddrinfo.c (str_is_number): renamed from str_isnumber to
avoid confusion to str_isnumber in ext/socket/getaddrinfo.c.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28410 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-06-23 15:05:25 +00:00
akr
89f2c44d37 * ext/socket/raddrinfo.c: don't use __P.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28408 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-06-23 13:56:20 +00:00
akr
eab33b597d add a comment.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28402 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-06-23 12:35:04 +00:00
akr
acb8b3f7a9 * ext/socket/raddrinfo.c (ruby_getaddrinfo__darwin): new workaround for
getaddrinfo problem on Mac OS X Snow Leopard.  [ruby-core:29427]
  patch by Wataru Kimura.  [ruby-core:30842]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28401 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-06-23 12:25:07 +00:00
naruse
0de2d84af8 Clean warnings: unused variables.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28398 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-06-23 05:32:46 +00:00
akr
7d8d8c4f59 * ext/socket/lib/socket.rb: suppress warnings.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28388 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-06-22 13:41:16 +00:00
nobu
87af442f94 * suppress warnings.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27944 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-05-21 09:10:23 +00:00
usa
61086883b6 * ext/socket/extconf.rb: mswin/mingw ruby has socketpair(), but it's
not exist as such name in ruby static library, so mkmf.rb cannot
  find it.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27893 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-05-19 10:59:47 +00:00
usa
851a023843 * ext/socket/extconf.rb: test all IPPROTO_* constants for recent Win32
SDK.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27746 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-05-12 02:40:09 +00:00
akr
01cd3467fb * ext/socket/extconf.rb: test IPPROTO_IP and IPPROTO_IPV6 constants.
* ext/socket/mkconstants.rb: define macros for enum.

  [ruby-dev:38849]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27742 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-05-11 14:10:34 +00:00
akr
7eb6e562e5 * ext/socket/lib/socket.rb (BasicSocket#connect_address): MacOS X 10.6
returns "::ffff:a.b.c.d" for IPv4-mapped IPv6 address.
  [ruby-dev:41215] patch by Tomoyuki Chikanaga.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27663 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-05-08 01:13:33 +00:00
akr
622f45fccb * ext/socket/option.c (sockopt_inspect): use rb_str_cat2 and
rb_str_append.

* ext/socket/ancdata.c (ancillary_inspect): refined.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27608 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-05-04 03:39:36 +00:00
akr
f1192452a9 * ext/socket/ancdata.c (ancillary_inspect): use rb_str_cat2 and
rb_str_append.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27607 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-05-04 02:51:46 +00:00
nobu
0dc145e7b2 * ext/socket/extconf.rb: CMSG_ macros are broken on 64bit darwin,
because of use of __DARWIN_ALIGN.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27530 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-28 08:14:18 +00:00
nobu
4822d20cc5 * ext/socket: fixed types.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27529 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-28 08:14:13 +00:00
nobu
5e7101d348 * ext/socket/unixsocket.c (sendmsg_blocking, recvmsg_blocking):
define only when used.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27527 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-28 07:28:53 +00:00
nobu
d4840cc785 * ext/socket/rubysocket.h: non-implemented method definitions need
to be shared.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27526 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-28 07:16:30 +00:00
nobu
d0e5a34ac7 * ext/**/*.[ch]: removed trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27440 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-22 08:21:01 +00:00
nobu
977267c2e0 * ext/**/*.[ch]: removed trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27437 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-22 08:04:13 +00:00
mame
79a3b7797f * ext/socket/ipsocket.c (init_inetsock_internal),
ext/socket/unixsocket.c (rsock_init_unixsock): check the result of
  listen(2).  based on a patch from Mike Pomraning.  [ruby-core:23698]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27272 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-04-09 14:53:19 +00:00
akr
a4fa54a10a * ext/socket: use rsock_ prefix for internal initialization functions.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@27018 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-22 16:15:21 +00:00