i2pd/SOCKS.h

34 lines
701 B
C
Raw Normal View History

2015-01-03 21:18:05 +00:00
#ifndef SOCKS_H__
#define SOCKS_H__
2014-07-14 16:40:06 +00:00
2014-11-23 16:33:58 +00:00
#include <memory>
#include <set>
#include <boost/asio.hpp>
#include <mutex>
#include "I2PService.h"
2014-07-14 16:40:06 +00:00
namespace i2p
{
namespace proxy
{
2015-01-08 00:45:49 +00:00
class SOCKSServer: public i2p::client::TCPIPAcceptor
{
public:
2016-01-24 14:59:02 +00:00
SOCKSServer(const std::string& address, int port, const std::string& outAddress, int outPort,
std::shared_ptr<i2p::client::ClientDestination> localDestination = nullptr);
~SOCKSServer() {};
2015-01-08 00:45:49 +00:00
protected:
// Implements TCPIPAcceptor
std::shared_ptr<i2p::client::I2PServiceHandler> CreateHandler(std::shared_ptr<boost::asio::ip::tcp::socket> socket);
2015-01-08 00:45:49 +00:00
const char* GetName() { return "SOCKS"; }
};
2014-07-14 16:40:06 +00:00
2015-01-03 20:57:15 +00:00
typedef SOCKSServer SOCKSProxy;
2014-07-14 16:40:06 +00:00
}
}
#endif