Spec-Zone.ru › Ruby 3.2

класс SOCKSSocket

Родитель:
TCPSocket

SOCKS — это интернет-протокол, который маршрутизирует пакеты между клиентом и сервером через прокси-сервер. SOCKS5, если поддерживается, дополнительно обеспечивает аутентификацию, чтобы только авторизованные пользователи могли получить доступ к серверу.

Общедоступные методы класса

new(host, port) → socket Показать исходный код
static VALUE
socks_init(VALUE sock, VALUE host, VALUE port)
{
    static int init = 0;

    if (init == 0) {
        SOCKSinit("ruby");
        init = 1;
    }

    return rsock_init_inetsock(sock, host, port, Qnil, Qnil, INET_SOCKS, Qnil, Qnil);
}

Открывает соединение SOCKS с host через SOCKS-сервер.

Настройка SOCKS-сервера зависит от реализации.

При использовании реализации Dante libsocks/libsocksd она настраивается как переменная окружения SOCKS_SERVER.

См. manpages.debian.org/testing/dante-client/socksify.1.en.html для полной поддержки переменных окружения.

new(host, serv) Показать исходный код
# File lib/resolv-replace.rb, line 73
def initialize(host, serv)
  original_resolv_initialize(IPSocket.getaddress(host), port)
end

Общедоступные методы экземпляра

close() Показать исходный код
static VALUE
socks_s_close(VALUE sock)
{
    rb_io_t *fptr;

    GetOpenFile(sock, fptr);
    shutdown(fptr->fd, 2);
    return rb_io_close(sock);
}

Закрывает соединение SOCKS.

Ruby Core © 1993–2022 Yukihiro Matsumoto
Licensed under the Ruby License.
Ruby Standard Library © contributors
Licensed under their own licenses.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API