コード例 #1
0
ファイル: xSocksd_remote.c プロジェクト: 52M/xSocks
void
resolve_remote(struct remote_context *remote, char *host, uint16_t port) {
    if (verbose) {
        logger_log(LOG_INFO, "resolve %s", host);
    }
    struct resolver_context *dns = uv_key_get(&thread_resolver_key);
    remote->stage = XSTAGE_RESOLVE;
    remote->host_query = resolver_query(dns, host, port, resolve_cb, remote);
    if (remote->host_query == NULL) {
        remote->stage = XSTAGE_TERMINATE;
        close_client(remote->client);
        close_remote(remote);
    }
}
コード例 #2
0
ファイル: client.cpp プロジェクト: cpp11nullptr/vikki
	void client::connect(const std::string& hostname, int port)
	{
		if (_running)
		{
			return;
		}

		if (!_encryption->last_error().empty())
		{
			error(-1, _encryption->last_error());

			return;
		}

		_running = true;

		tcp::resolver resolver(_service);
		tcp::resolver::query resolver_query(hostname, std::to_string(port));

		_endpoint = resolver.resolve(resolver_query);

		try_connect();
	}
コード例 #3
0
ファイル: xsocksd_remote.c プロジェクト: nsdown/xsocks-1
void
resolve_remote(struct remote_context *remote, char *host, uint16_t port) {
    struct resolver_context *ctx = remote->handle.handle.loop->data;
    remote->stage = XSTAGE_RESOLVE;
    remote->host_query = resolver_query(ctx, host, port, resolve_cb, remote);
}