Tor  0.4.7.0-alpha-dev
socks5_status.h
Go to the documentation of this file.
1 /* Copyright (c) 2003-2004, Roger Dingledine
2  * Copyright (c) 2004-2006, Roger Dingledine, Nick Mathewson.
3  * Copyright (c) 2007-2021, The Tor Project, Inc. */
4 /* See LICENSE for licensing information */
5 
6 /**
7  * \file socks5_status.h
8  * \brief Status codes used by the SOCKS5 protocol.
9  **/
10 
11 /* NOTE: it probably isn't necessary to put this header in lib/net, but
12  * we need it in _some_ lower-level layer for now, since it is used by
13  * tools/tor-resolve.c.
14  */
15 
16 #ifndef TOR_SOCKS5_STATUS_H
17 #define TOR_SOCKS5_STATUS_H
18 
19 /** Specified SOCKS5 status codes. */
20 typedef enum {
21  SOCKS5_SUCCEEDED = 0x00,
22  SOCKS5_GENERAL_ERROR = 0x01,
23  SOCKS5_NOT_ALLOWED = 0x02,
24  SOCKS5_NET_UNREACHABLE = 0x03,
25  SOCKS5_HOST_UNREACHABLE = 0x04,
26  SOCKS5_CONNECTION_REFUSED = 0x05,
27  SOCKS5_TTL_EXPIRED = 0x06,
28  SOCKS5_COMMAND_NOT_SUPPORTED = 0x07,
29  SOCKS5_ADDRESS_TYPE_NOT_SUPPORTED = 0x08,
30 
31  /* Extended error code (see prop304). Only used if the SocksPort flag
32  * "ExtendedErrors" is set. */
33  SOCKS5_HS_NOT_FOUND = 0xF0,
34  SOCKS5_HS_IS_INVALID = 0xF1,
35  SOCKS5_HS_INTRO_FAILED = 0xF2,
36  SOCKS5_HS_REND_FAILED = 0xF3,
37  SOCKS5_HS_MISSING_CLIENT_AUTH = 0xF4,
38  SOCKS5_HS_BAD_CLIENT_AUTH = 0xF5,
39  SOCKS5_HS_BAD_ADDRESS = 0xF6,
40  SOCKS5_HS_INTRO_TIMEDOUT = 0xF7,
42 
43 #endif /* !defined(TOR_SOCKS5_STATUS_H) */
socks5_reply_status_t
Definition: socks5_status.h:20