aboutsummaryrefslogtreecommitdiffstats
path: root/ext/socket
Commit message (Collapse)AuthorAgeFilesLines
* * ext/socket/option.c (inspect_local_peercred): constfied.nobu2009-02-102-4/+5
| | | | | | | * ext/socket/ancdata.c (anc_inspect_socket_creds): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22195 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* rdoc update.akr2009-02-102-6/+6
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22193 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/ancdata.c (ip_cmsg_type_to_sym): renamed fromakr2009-02-091-2/+2
| | | | | | | | cmsg_type_to_sym. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22190 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/option.c (sockopt_inspect): refactored.akr2009-02-091-5/+24
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22189 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/mkconstants.rb: generate intern_family_noprefix.akr2009-02-093-2/+3
| | | | | | | | | | | * ext/socket/option.c (sockopt_inspect): use intern_family_noprefix not to show AF_ prefix. * ext/socket/ancdata.c (ancillary_inspect): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22187 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/constants.c (level_arg): use unknown_level_to_int forakr2009-02-093-36/+62
| | | | | | | | | | | | | | non internet protocol. (optname_arg): use only so_optname_to_int for non internet protocol. (cmsg_type_arg): use only scm_optname_to_int for non internet protocol. * ext/socket/mkconstants.rb: generate unknown_level_to_int. rename iplevel_to_int to ip_level_to_int. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22186 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/mkconstants.rb: rename level_to_int to iplevel_to_int.akr2009-02-094-5/+5
| | | | | | | | | | | | | | rename intern_level to intern_iplevel. * ext/socket/constants.c: follow the renaming. * ext/socket/option.c: ditto. * ext/socket/ancdata.c: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22185 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/rubysocket.h (level_arg): add family argument.akr2009-02-096-44/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | (optname_arg): ditto. (cmsg_type_arg): ditto. (rb_sock_getfamily): declared. * ext/socket/constants.c (level_arg): add family argument. (optname_arg): ditto. (cmsg_type_arg): ditto. * ext/socket/init.c (rb_sock_getfamily): defined. * ext/socket/option.c (sockopt_initialize): give family for level_arg and optname_arg. (sockopt_s_int): ditto. * ext/socket/basicsocket.c (bsock_setsockopt): ditto. (bsock_getsockopt): ditto. * ext/socket/ancdata.c (ancillary_initialize): ditto. (ancillary_s_int): ditto. (ancillary_cmsg_is_p): ditto. (bsock_sendmsg_internal): ditto. (bsock_recvmsg_internal): use rb_sock_getfamily. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22184 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* rdoc update.akr2009-02-091-1/+5
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22183 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/ancdata.c (ancillary_inspect): show address family.akr2009-02-091-9/+20
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22182 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/basicsocket.c (bsock_getsockname): use sockaddr_storage.akr2009-02-091-3/+3
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22181 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/option.c (inspect_int): return 1/0 on success/failure.akr2009-02-091-120/+125
| | | | | | | | | | | | | (inspect_uint): ditto. (inspect_linger): ditto. (inspect_socktype): ditto. (inspect_timeval): ditto. (inspect_peercred): ditto. (inspect_local_peercred): ditto. (sockopt_inspect): refactored. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22179 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/mkconstants.rb: more constants for Solaris.akr2009-02-091-0/+5
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22178 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/basicsocket.c (bsock_getsockopt): refine address familyakr2009-02-091-2/+1
| | | | | | | | examination. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22177 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/option.c (sockopt_initialize): argument conversionakr2009-02-091-5/+4
| | | | | | | | reordered. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22176 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/ancdata.c (ancillary_initialize): add family argument.akr2009-02-091-27/+62
| | | | | | | | | | | | | (ancdata_new): ditto. (ancillary_s_int): ditto. (ancillary_family): new function. (ancillary_family_m): new method. (ancillary_s_ip_pktinfo): follow ancdata_new change. (ancillary_s_ipv6_pktinfo): ditto. (bsock_recvmsg_internal): examine the socket address family. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22175 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/option.c (inspect_local_peercred): check version.akr2009-02-091-0/+6
| | | | | | | (sockopt_inspect): suppress warning. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22145 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/option.c (inspect_peercred): struct ucred containsakr2009-02-081-1/+1
| | | | | | | effective uid/gid. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22144 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* LOCAL_PEERCRED is also available on MacOS X.akr2009-02-081-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22140 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/option.c (sockopt_inspect): add ifdef guard forakr2009-02-081-0/+2
| | | | | | | LOCAL_PEERCRED. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22139 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/option.c (inspect_local_peercred): cr_uid is a effectiveakr2009-02-081-1/+1
| | | | | | | uid, not a real uid. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22138 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/extconf.rb: check sys/param.h and sys/ucred.h.akr2009-02-084-11/+67
| | | | | | | | | | | | | * ext/socket/rubysocket.h: include sys/param.h and sys/ucred.h. * ext/socket/option.c (inspect_local_peercred): new function to show LOCAL_PEERCRED socket option on FreeBSD. (sockopt_inspect): show as LOCAL_* socket option if AF_UNIX and level is 0. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22137 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/rubysocket.h (sockopt_new): add family argument.akr2009-02-083-16/+50
| | | | | | | | | | | | | | * ext/socket/option.c (sockopt_initialize): add vfamily argument. (sockopt_new): add family argument and record it in the object. (sockopt_family): new method. (sockopt_s_int): add vfamily argument. (sockopt_inspect): show family. * ext/socket/basicsocket.c (bsock_getsockopt): check address family using getsockname. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22135 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/option.c (inspect_peercred): new function to showakr2009-02-081-0/+20
| | | | | | | SO_PEERCRED socket option. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22131 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/extconf.rb: check struct cmsgcred.akr2009-02-082-19/+54
| | | | | | | | | | * ext/socket/ancdata.c (anc_inspect_passcred_credentials): add "(ucred)". (anc_inspect_socket_creds): show struct cmsgcred too, for FreeBSD. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22129 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/extconf.rb: check struct sockcred.akr2009-02-082-0/+40
| | | | | | | | * ext/socket/ancdata.c (anc_inspect_socket_creds): new function to show SCM_CREDS on NetBSD. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22126 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* more constants.akr2009-02-081-0/+6
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22124 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/ancdata.c (anc_inspect_passcred_credentials): newakr2009-02-081-0/+20
| | | | | | | function to show SCM_CREDENTIALS on GNU/Linux. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22122 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/raddrinfo.c (init_unix_addrinfo): add socktype argument.akr2009-02-081-9/+21
| | | | | | | | | (addrinfo_initialize): follow init_unix_addrinfo change. (addrinfo_s_unix): add optional argument: socktype git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22120 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* fix rdoc.akr2009-02-081-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22118 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * lib/mkmf.rb (have_header): needs dependent headers if trying tonobu2009-02-071-1/+1
| | | | | | | | | compile. * ext/socket/extconf.rb: net/if.h depends on other headers. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22103 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket: AddrInfo is renamed to Addrinfo. [ruby-dev:37876]akr2009-02-058-165/+165
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22077 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/socket.c (sock_s_socketpair): make 3rd argument optional.akr2009-02-043-5/+15
| | | | | | | | | | | * ext/socket/unixsocket.c (unix_s_socketpair): follow the above change. * ext/socket/rubysocket.h (sock_s_socketpair): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22047 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/raddrinfo.c (addrinfo_ipv6_to_ipv4): new method.akr2009-02-041-0/+35
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22042 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* revert useless change part in the previous commit.akr2009-02-031-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22023 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/extconf.rb: fix struct in_pktinfo and struct in6_pktinfoakr2009-02-031-4/+4
| | | | | | | | detection. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22022 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/lib/socket.rb (Socket.tcp_server_sockets_port0): skipakr2009-02-031-1/+5
| | | | | | | | socket creation error. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22019 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/lib/socket.rb (Socket.tcp_server_sockets_port0): newakr2009-02-031-19/+67
| | | | | | | | private function for allocating same port both IPv4 and IPv6. (Socket.tcp_server_sockets): use tcp_server_sockets_port0 for port 0. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22007 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/lib/socket.rb (Socket.tcp_server_sockets): extracted fromakr2009-02-021-43/+96
| | | | | | | | | | | Socket.tcp_server_loop. (Socket.accept_loop): ditto. (Socket.unix_server_socket): extracted from Socket.unix_server_loop. (Socket.unix_server_loop): use Socket.accept_loop. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21992 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/extconf.rb (in_pktinfo, in6_pktinfo),nobu2009-02-022-5/+13
| | | | | | | | ext/socket/ancdata.c: defined in w32api/ws2tcpip.h on cygwin but cannot compile for some reason. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21985 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* rdoc update.akr2009-02-021-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21984 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/raddrinfo.c (Init_addrinfo): add AddrInfo#to_s as anakr2009-02-022-0/+3
| | | | | | | | | | | alias of AddrInfo#to_sockaddr. * ext/socket/option.c (Init_sockopt): add Socket::Option#to_s as an alias of Socket::Option#data. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21979 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/ancdata.c (cmsg_type_to_sym): add #ifdef for no IPv6akr2009-02-021-0/+2
| | | | | | | | environment. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21962 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/socket.c (sock_initialize): make 3rd argument, protocol,akr2009-02-021-8/+14
| | | | | | | optional. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21950 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/constants.c (cmsg_type_arg): INET6 check.usa2009-02-021-0/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21949 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/option.c: use INET6 instead of IPV6.akr2009-02-021-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21947 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/{options,raddrinfo}.c: use INET6 instead of AF_INET6 forusa2009-02-022-2/+4
| | | | | | | | VC++6. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21946 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/rubysocket.h (cmsg_type_arg): declared.akr2009-02-027-0/+1127
| | | | | | | | | | | | | | | | | | | | | | (Init_ancdata): ditto. * ext/socket/init.c (Init_socket_init): call Init_ancdata. * ext/socket/constants.c (cmsg_type_arg): defined. * ext/socket/depend: add dependency for ancdata.o. * ext/socket/mkconstants.rb: generate scm_optname_to_int. more constants. * ext/socket/extconf.rb: add ancdata.o. * ext/socket/ancdata.c: new file. new method BasicSocket#{sendmsg,sendmsg_nonblock,recvmsg,recvmsg_nonblock} git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21943 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/rubysocket.h (rb_cSockOpt): declared.akr2009-02-027-3/+400
| | | | | | | | | | | | | | | | | | | | | | | (sockopt_new): ditto. (Init_sockopt): ditto. * ext/socket/init.c (Init_socket_init): call Init_sockopt. * ext/socket/depend: add dependency for option.o * ext/socket/mkconstants.rb: generate intern_level, intern_so_optname, intern_ip_optname, intern_ipv6_optname, intern_tcp_optname, intern_udp_optname and intern_scm_optname. * ext/socket/extconf.rb: add option.o. * ext/socket/basicsocket.c (bsock_setsockopt): accept Socket::Option object. (bsock_getsockopt): return Socket::Option object. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21936 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/raddrinfo.c (addrinfo_ipv4_private_p): new method.akr2009-02-011-0/+58
| | | | | | | | (addrinfo_ipv4_loopback_p): ditto. (addrinfo_ipv4_multicast_p): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21928 b2dd03c8-39d4-4d8f-98ff-823fe69b080e