<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ruby.git/ext/socket/rubysocket.h, branch v2_1_5</title>
<subtitle>The Ruby Programming Language</subtitle>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/'/>
<entry>
<title>merge revision(s) r45046,r45047,r45063,r45087,r45146,r45150,r45151,r45152: [Backport #9525]</title>
<updated>2014-09-05T15:14:23+00:00</updated>
<author>
<name>nagachika</name>
<email>nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2014-09-05T15:14:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=667af1ee3149ba51a5559a3db3d1fc52fda06bed'/>
<id>667af1ee3149ba51a5559a3db3d1fc52fda06bed</id>
<content type='text'>
	* ext/socket: Wrap struct addrinfo by struct rb_addrinfo.

	* ext/socket: Bypass getaddrinfo() if node and serv are numeric.
	  Reporeted by Naotoshi Seo.  [ruby-core:60801] [Bug #9525]

	* ext/socket/extconf.rb: Detect struct sockaddr_in6.sin6_len.

	* ext/socket/sockport.h (SET_SIN6_LEN): New macro.
	  (INIT_SOCKADDR_IN6): Ditto.

	* ext/socket/rubysocket.h (struct rb_addrinfo): Add
	  allocated_by_malloc field.

	* ext/socket/raddrinfo.c (numeric_getaddrinfo): New function.
	  (rb_getaddrinfo): Call numeric_getaddrinfo at first.
	  (rb_freeaddrinfo): Free struct addrinfo properly when it is
	  allocated by numeric_getaddrinfo.

	* ext/socket/raddrinfo.c (numeric_getaddrinfo): Use xcalloc.
	  Suggested by Eric Wong.
	  https://bugs.ruby-lang.org/issues/9525#note-14

	* ext/socket/raddrinfo.c (rb_getaddrinfo): second argument of
	  MEMZERO is type.  Coverity Scan found this bug.

	* include/ruby/win32.h, win32/win32.c (rb_w32_inet_pton): add a
	  wrapper function for inet_pton minimum supported client is
	  Vista, as well as inet_ntop.

	* ext/socket/option.c (inet_pton): use rb_w32_inet_pton, instead of
	  inet_ntop directly, which is unavailable on older version Windows.

	* ext/socket/raddrinfo.c (inet_pton): use rb_w32_inet_pton, instead of
	  inet_pton directly, which is unavailable on older version Windows.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@47415 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	* ext/socket: Wrap struct addrinfo by struct rb_addrinfo.

	* ext/socket: Bypass getaddrinfo() if node and serv are numeric.
	  Reporeted by Naotoshi Seo.  [ruby-core:60801] [Bug #9525]

	* ext/socket/extconf.rb: Detect struct sockaddr_in6.sin6_len.

	* ext/socket/sockport.h (SET_SIN6_LEN): New macro.
	  (INIT_SOCKADDR_IN6): Ditto.

	* ext/socket/rubysocket.h (struct rb_addrinfo): Add
	  allocated_by_malloc field.

	* ext/socket/raddrinfo.c (numeric_getaddrinfo): New function.
	  (rb_getaddrinfo): Call numeric_getaddrinfo at first.
	  (rb_freeaddrinfo): Free struct addrinfo properly when it is
	  allocated by numeric_getaddrinfo.

	* ext/socket/raddrinfo.c (numeric_getaddrinfo): Use xcalloc.
	  Suggested by Eric Wong.
	  https://bugs.ruby-lang.org/issues/9525#note-14

	* ext/socket/raddrinfo.c (rb_getaddrinfo): second argument of
	  MEMZERO is type.  Coverity Scan found this bug.

	* include/ruby/win32.h, win32/win32.c (rb_w32_inet_pton): add a
	  wrapper function for inet_pton minimum supported client is
	  Vista, as well as inet_ntop.

	* ext/socket/option.c (inet_pton): use rb_w32_inet_pton, instead of
	  inet_ntop directly, which is unavailable on older version Windows.

	* ext/socket/raddrinfo.c (inet_pton): use rb_w32_inet_pton, instead of
	  inet_pton directly, which is unavailable on older version Windows.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@47415 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) r45045,r45046,r45530: [Backport #9697]</title>
<updated>2014-05-22T15:24:30+00:00</updated>
<author>
<name>nagachika</name>
<email>nagachika@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2014-05-22T15:24:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=e60ec9551caa0c715b389bf94b46be93d47b7f5c'/>
<id>e60ec9551caa0c715b389bf94b46be93d47b7f5c</id>
<content type='text'>
	* ext/socket/ipsocket.c (ip_s_getaddress): Don't access freed memory.

	* ext/socket: Wrap struct addrinfo by struct rb_addrinfo.

	* ext/socket/socket.c (sock_s_getnameinfo): Save errno for EAI_SYSTEM.
	  Reported by Saravana kumar.  [ruby-core:61820] [Bug #9697]
	  Fixed by Heesob Park.  [ruby-core:61868]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46054 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	* ext/socket/ipsocket.c (ip_s_getaddress): Don't access freed memory.

	* ext/socket: Wrap struct addrinfo by struct rb_addrinfo.

	* ext/socket/socket.c (sock_s_getnameinfo): Save errno for EAI_SYSTEM.
	  Reported by Saravana kumar.  [ruby-core:61820] [Bug #9697]
	  Fixed by Heesob Park.  [ruby-core:61868]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@46054 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>merge revision(s) 44490,44496: [Backport #9352]</title>
<updated>2014-02-05T13:08:32+00:00</updated>
<author>
<name>naruse</name>
<email>naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2014-02-05T13:08:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=1b05b4f4abbb7352f04e718ba7a4c62859f91a92'/>
<id>1b05b4f4abbb7352f04e718ba7a4c62859f91a92</id>
<content type='text'>
	* ext/socket/socket.c (rsock_sys_fail_host_port): save and restore errno
	  before calling rb_sys_fail_str to prevent [BUG] errno == 0.
	  Patch by Eric Wong. [ruby-core:59498] [Bug #9352]

	* ext/socket/socket.c (rsock_sys_fail_path): ditto

	* ext/socket/socket.c (rsock_sys_fail_sockaddr): ditto

	* ext/socket/socket.c (rsock_sys_fail_raddrinfo): ditto

	* ext/socket/socket.c (rsock_sys_fail_raddrinfo_or_sockaddr): ditto

	* ext/socket/socket.c (rsock_syserr_fail_host_port): add errno
	  argument version anduse rb_syserr_fail_str() instead of
	  rb_sys_fail_str() with restoring errno.

	* ext/socket/socket.c (rsock_syserr_fail_path): ditto, and
	  rb_syserr_fail().

	* ext/socket/socket.c (rsock_sys_fail_sockaddr): ditto, use
	  rsock_syserr_fail_raddrinfo().

	* ext/socket/socket.c (rsock_sys_fail_raddrinfo): ditto.

	* ext/socket/socket.c (setup_domain_and_type): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@44842 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	* ext/socket/socket.c (rsock_sys_fail_host_port): save and restore errno
	  before calling rb_sys_fail_str to prevent [BUG] errno == 0.
	  Patch by Eric Wong. [ruby-core:59498] [Bug #9352]

	* ext/socket/socket.c (rsock_sys_fail_path): ditto

	* ext/socket/socket.c (rsock_sys_fail_sockaddr): ditto

	* ext/socket/socket.c (rsock_sys_fail_raddrinfo): ditto

	* ext/socket/socket.c (rsock_sys_fail_raddrinfo_or_sockaddr): ditto

	* ext/socket/socket.c (rsock_syserr_fail_host_port): add errno
	  argument version anduse rb_syserr_fail_str() instead of
	  rb_sys_fail_str() with restoring errno.

	* ext/socket/socket.c (rsock_syserr_fail_path): ditto, and
	  rb_syserr_fail().

	* ext/socket/socket.c (rsock_sys_fail_sockaddr): ditto, use
	  rsock_syserr_fail_raddrinfo().

	* ext/socket/socket.c (rsock_sys_fail_raddrinfo): ditto.

	* ext/socket/socket.c (setup_domain_and_type): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_1@44842 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>socket: fix build error and warnings on mingw</title>
<updated>2013-05-14T14:24:42+00:00</updated>
<author>
<name>nobu</name>
<email>nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2013-05-14T14:24:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=5ec5c6d52c69517d97cddd5daeb0b5c9af80ff81'/>
<id>5ec5c6d52c69517d97cddd5daeb0b5c9af80ff81</id>
<content type='text'>
* ext/socket/extconf.rb: check for if_nametoindex() for
  i686-w64-mingw32, and check for declarations of if_indextoname() and
  if_nametoindex().
* ext/socket/ifaddr.c (ifaddr_ifindex): not-implement unless
  if_nametoindex() is available.
* ext/socket/rubysocket.h: declare if_indextoname() and
  if_nametoindex() if available but not declared.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40738 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* ext/socket/extconf.rb: check for if_nametoindex() for
  i686-w64-mingw32, and check for declarations of if_indextoname() and
  if_nametoindex().
* ext/socket/ifaddr.c (ifaddr_ifindex): not-implement unless
  if_nametoindex() is available.
* ext/socket/rubysocket.h: declare if_indextoname() and
  if_nametoindex() if available but not declared.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40738 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>* ext/socket/rubysocket.h (HAVE_TYPE_STRUCT_SOCKADDR_DL):</title>
<updated>2013-05-11T14:07:20+00:00</updated>
<author>
<name>naruse</name>
<email>naruse@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2013-05-11T14:07:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=037ce7f6bc29b2eeb4f40f0c28376c1aca8be844'/>
<id>037ce7f6bc29b2eeb4f40f0c28376c1aca8be844</id>
<content type='text'>
  MSVC has struct sockadddr_dl, but its content is broken.
  http://ruby-mswin.cloudapp.net/vc10-x64/ruby-trunk/log/20130511T103938Z.log.html.gz

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40646 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
  MSVC has struct sockadddr_dl, but its content is broken.
  http://ruby-mswin.cloudapp.net/vc10-x64/ruby-trunk/log/20130511T103938Z.log.html.gz

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40646 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>* ext/socket: New method, Socket.getifaddrs, implemented.</title>
<updated>2013-05-11T08:32:26+00:00</updated>
<author>
<name>akr</name>
<email>akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2013-05-11T08:32:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=b323d7d54c1f9d22799f636014a438f9da951f3f'/>
<id>b323d7d54c1f9d22799f636014a438f9da951f3f</id>
<content type='text'>
  [ruby-core:54777] [Feature #8368]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40639 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
  [ruby-core:54777] [Feature #8368]



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40639 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>* ext/socket/rubysocket.h, ext/socket/unixsocket.c,</title>
<updated>2013-05-09T03:08:58+00:00</updated>
<author>
<name>akr</name>
<email>akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2013-05-09T03:08:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=a5e6d48dfbd13f245eaa063c794e83c91aa5606a'/>
<id>a5e6d48dfbd13f245eaa063c794e83c91aa5606a</id>
<content type='text'>
  ext/socket/ancdata.c: Use HAVE_STRUCT_MSGHDR_MSG_CONTROL instead
  of HAVE_ST_MSG_CONTROL.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40623 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
  ext/socket/ancdata.c: Use HAVE_STRUCT_MSGHDR_MSG_CONTROL instead
  of HAVE_ST_MSG_CONTROL.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40623 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>* ext/socket/rubysocket.h (SOCKLEN_MAX): Expression simplified.</title>
<updated>2013-04-17T13:08:13+00:00</updated>
<author>
<name>akr</name>
<email>akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2013-04-17T13:08:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=80e4d412d39c00b06adbdd951fcbad43e0977087'/>
<id>80e4d412d39c00b06adbdd951fcbad43e0977087</id>
<content type='text'>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40338 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40338 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>* ext/socket/rubysocket.h (SOCKLEN_MAX): Defined.</title>
<updated>2013-04-17T11:01:17+00:00</updated>
<author>
<name>akr</name>
<email>akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2013-04-17T11:01:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=ce6db8f286160fbf71c409416bd43c229b874601'/>
<id>ce6db8f286160fbf71c409416bd43c229b874601</id>
<content type='text'>
* ext/socket/raddrinfo.c (ext/socket/raddrinfo.c): Reject too long
  Linux abstract socket name.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40335 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* ext/socket/raddrinfo.c (ext/socket/raddrinfo.c): Reject too long
  Linux abstract socket name.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40335 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
<entry>
<title>* remove trailing spaces.</title>
<updated>2013-04-08T20:27:01+00:00</updated>
<author>
<name>nobu</name>
<email>nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e</email>
</author>
<published>2013-04-08T20:27:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=fa93be2f054cfb71fde486e8690edb7e702d85cb'/>
<id>fa93be2f054cfb71fde486e8690edb7e702d85cb</id>
<content type='text'>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40196 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40196 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
</pre>
</div>
</content>
</entry>
</feed>
