Maintenance of Ruby 2.0.0 ended on February 24, 2016. Read more
SOCKS is an Internet protocol that routes packets between a client and a server through a proxy server. SOCKS5, if supported, additionally provides authentication so only authorized users may access a server.
Opens a SOCKS connection to host
via the SOCKS server
serv
.
static VALUE socks_init(VALUE sock, VALUE host, VALUE serv) { static int init = 0; if (init == 0) { SOCKSinit("ruby"); init = 1; } return rsock_init_inetsock(sock, host, serv, Qnil, Qnil, INET_SOCKS); }
Closes the SOCKS connection.
static VALUE socks_s_close(VALUE sock) { rb_io_t *fptr; if (rb_safe_level() >= 4 && !OBJ_TAINTED(sock)) { rb_raise(rb_eSecurityError, "Insecure: can't close socket"); } GetOpenFile(sock, fptr); shutdown(fptr->fd, 2); return rb_io_close(sock); }