56 lines
1.1 KiB
C
56 lines
1.1 KiB
C
#include "stellar/socks_decoder.h"
|
|
|
|
#define SOCKS_FIELD_VER_4 4
|
|
#define SOCKS_FIELD_VER_5 5
|
|
|
|
#define SOCKS5_REQUEST_METHOD_MIN_LEN 3
|
|
#define SOCKS5_REQUEST_MIN_LEN 6
|
|
#define SOCKS_VERSION_TYPE_SOCKS4 4
|
|
#define SOCKS_VERSION_TYPE_SOCKS5 5
|
|
|
|
#define SOCKS_CMD_CONNECT 0x01
|
|
#define SOCKS_CMD_BIND 0x02
|
|
#define SOCKS_CMD_UDP 0x03
|
|
|
|
#define SOCKS5_RSV_DEFAULT 0
|
|
#define SOCKS_ATYPE_IP4 1
|
|
#define SOCKS_ATYPE_IP6 4
|
|
#define SOCKS_ATYPE_FQDN 3
|
|
|
|
#define SOCKS5_AUTH_NONE 0x00
|
|
#define SOCKS5_AUTH_PASS 0x02
|
|
|
|
#define SOCKS_LOG_MOUDLE "SOCKS_DECODER"
|
|
|
|
struct socks_decoder_info
|
|
{
|
|
int plugin_id;
|
|
int sess_exdata_idx;
|
|
struct stellar *st;
|
|
struct logger *log_handle;
|
|
int socks_decoder_topic_id;
|
|
int tcp_topic_id;
|
|
};
|
|
|
|
enum socks_establish_state
|
|
{
|
|
SS_BEGIN = 0,
|
|
SS_SUB,
|
|
SS_END,
|
|
SS_FAILED
|
|
};
|
|
|
|
enum socks_internal_state
|
|
{
|
|
STATE_INIT,
|
|
STATE_OPENING,
|
|
STATE_FAILED
|
|
};
|
|
|
|
struct socks_tunnel_stream
|
|
{
|
|
enum socks_internal_state state;
|
|
enum socks_establish_state client_state;
|
|
enum socks_establish_state server_state;
|
|
struct socks_info info;
|
|
}; |