Module: Excon::SOCKS5

Included in:
SOCKS5SSLSocket, SOCKS5Socket
Defined in:
lib/excon/socks5.rb

Overview

SOCKS5 protocol implementation (RFC 1928, RFC 1929) Shared module for SOCKS5Socket and SOCKS5SSLSocket

Constant Summary collapse

SOCKS5_VERSION =
0x05
SOCKS5_RESERVED =
0x00
SOCKS5_NO_AUTH =

Authentication methods

0x00
SOCKS5_AUTH_USERNAME_PASSWORD =
0x02
SOCKS5_NO_ACCEPTABLE_AUTH =
0xFF
SOCKS5_CMD_CONNECT =

Commands

0x01
SOCKS5_ATYP_IPV4 =

Address types

0x01
SOCKS5_ATYP_DOMAIN =
0x03
SOCKS5_ATYP_IPV6 =
0x04
SOCKS5_SUCCESS =

Reply codes

0x00
SOCKS5_ERRORS =
{
  0x01 => 'General SOCKS server failure',
  0x02 => 'Connection not allowed by ruleset',
  0x03 => 'Network unreachable',
  0x04 => 'Host unreachable',
  0x05 => 'Connection refused',
  0x06 => 'TTL expired',
  0x07 => 'Command not supported',
  0x08 => 'Address type not supported'
}.freeze
MAX_HOSTNAME_LENGTH =

Maximum hostname length per RFC 1928

255