aboutsummaryrefslogtreecommitdiffstats
path: root/ext/socket
Commit message (Collapse)AuthorAgeFilesLines
...
* * 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
* * ext/socket/raddrinfo.c (addrinfo_ipv6_unspecified_p): new method.akr2009-01-311-3/+177
| | | | | | | | | | | | | | | | | (addrinfo_ipv6_loopback_p): ditto. (addrinfo_ipv6_multicast_p): ditto. (addrinfo_ipv6_linklocal_p): ditto. (addrinfo_ipv6_sitelocal_p): ditto. (addrinfo_ipv6_v4mapped_p): ditto. (addrinfo_ipv6_v4compat_p): ditto. (addrinfo_ipv6_mc_nodelocal_p): ditto. (addrinfo_ipv6_mc_linklocal_p): ditto. (addrinfo_ipv6_mc_sitelocal_p): ditto. (addrinfo_ipv6_mc_orglocal_p): ditto. (addrinfo_ipv6_mc_global_p): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21919 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/spclet.c (socket_s_ip_address_list): support Windows XPusa2009-01-292-2/+93
| | | | | | | | or later. (Win2k or earlier is still not supported) git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21863 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/init.c (socks_connect_blocking): moved fromakr2009-01-272-10/+10
| | | | | | | | | | sockssocket.c. [ruby-dev:37834] * sockssocket.c (socks_init): don't omit "int" type. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21804 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/socket.c (socket_s_ip_address_list): renamed fromakr2009-01-251-4/+4
| | | | | | | socket_s_list_ip_address. [ruby-dev:37806] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21770 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/socket.c (socket_s_list_ip_address): constified.nobu2009-01-251-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21769 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/extconf.rb ($distcleanfiles): fixed typo.nobu2009-01-221-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21738 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/extconf.rb ($distcleanfiles): removes constdefs.[ch].nobu2009-01-221-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21737 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/socket.c (socket_s_list_ip_address): new method.akr2009-01-204-1/+255
| | | | | | | | | | | | | | | | | (sockaddr_obj): new function. * ext/socket/rubysocket.h: include ifaddrs.h, sys/ioctl.h, sys/sockio.h, net/if.h if available. (addrinfo_new): declared. * ext/socket/raddrinfo.c (addrinfo_new): exported. * ext/socket/extconf.rb: check ifaddrs.h, sys/ioctl.h, sys/sockio.h, net/if.h and getifaddrs. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21699 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/rubysocket.h (pseudo_AF_FTIP): moved from mkconstants.rb.akr2009-01-202-4/+16
| | | | | | | | * ext/socket/mkconstants.rb: prepend header if -H is not given. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21698 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/mkconstants.rb (SOMAXCONN): defined.akr2009-01-191-0/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21673 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/mkconstants.rb: use erb for generating code.akr2009-01-191-7/+10
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21672 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/rubysocket.h (rb_cUNIXSocket, rb_cUNIXServer),nobu2009-01-191-1/+3
| | | | | | | (unixpath, unixaddr): UNIX domain sockets depend on sys/un.h. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21658 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/raddrinfo.c (addrinfo_ip_port): use AF_INET6 only whennobu2009-01-191-2/+10
| | | | | | | defined, as well as addrinfo_ipv6_p(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21656 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/depend: workaround for nmake. files in depend withoutusa2009-01-191-2/+2
| | | | | | | | | paths should converted by RULE_SUBST, but mkmf.rb cannot recognize macros currently. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21654 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/raddrinfo.c (addrinfo_mdump, addrinfo_mload): supportusa2009-01-192-6/+10
| | | | | | | | UNIX socket only on platforms which support it. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21652 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/raddrinfo.c (addrinfo_inspect_sockaddr): newakr2009-01-181-16/+44
| | | | | | | | | | method AddrInfo#inspect_sockaddr. (inspect_sockaddr): extracted from addrinfo_inspect. (addrinfo_inspect): use inspect_sockaddr. (Init_addrinfo): define the new method. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21648 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/raddrinfo.c (addrinfo_ip_address): new methodakr2009-01-181-0/+66
| | | | | | | | | AddrInfo#ip_address. (addrinfo_ip_port): new method AddrInfo#ip_port. (Init_addrinfo): define the methods above. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21647 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/unixsocket.c: redandant #ifdef removed.akr2009-01-181-4/+0
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21646 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/raddrinfo.c (addrinfo_mdump): don't use symbol.akr2009-01-171-21/+12
| | | | | | | (addrinfo_mload): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21644 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/socket/raddrinfo.c (addrinfo_mdump): new method.akr2009-01-174-10/+204
| | | | | | | | | | | | | | | | | | | | (addrinfo_mload): new method. (Init_addrinfo): define the method above. * ext/socket/constants.c (constant_arg): str_to_int's first argument constified. * ext/socket/mkconstants.rb (gen_name_to_int_decl): generated function's first argument constified. (gen_name_to_int_func_in_guard): ditto. (ipproto_to_int): generated. * ext/socket/rubysocket.h (IS_IP_FAMILY): moved from raddrinfo.c. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@21643 b2dd03c8-39d4-4d8f-98ff-823fe69b080e