summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/anytun-config.cpp6
-rw-r--r--src/anytun-controld.cpp2
-rw-r--r--src/anytun.cpp14
-rw-r--r--src/connectionParam.h2
-rw-r--r--src/packetSource.cpp15
-rw-r--r--src/packetSource.h7
-rw-r--r--src/syncClient.cpp11
-rw-r--r--src/syncServer.cpp2
-rw-r--r--src/syncServer.h6
-rw-r--r--src/syncTcpConnection.cpp2
-rw-r--r--src/syncTcpConnection.h8
11 files changed, 40 insertions, 35 deletions
diff --git a/src/anytun-config.cpp b/src/anytun-config.cpp
index 9ac9321..7a1e9b1 100644
--- a/src/anytun-config.cpp
+++ b/src/anytun-config.cpp
@@ -100,12 +100,12 @@ int main(int argc, char* argv[])
ConnectionList cl;
SyncQueue queue;
- boost::asio::ip::udp::endpoint endpoint;
+ UDPPacketSource::proto::endpoint endpoint;
if (gOpt.getRemoteAddr()!="" && gOpt.getRemotePort()!="")
{
boost::asio::io_service io_service;
- boost::asio::ip::udp::resolver resolver(io_service);
- boost::asio::ip::udp::resolver::query query(gOpt.getRemoteAddr(), gOpt.getRemotePort());
+ UDPPacketSource::proto::resolver resolver(io_service);
+ UDPPacketSource::proto::resolver::query query(gOpt.getRemoteAddr(), gOpt.getRemotePort());
endpoint = *resolver.resolve(query);
}
createConnection(endpoint,cl,gOpt.getSeqWindowSize(), queue, gOpt.getMux());
diff --git a/src/anytun-controld.cpp b/src/anytun-controld.cpp
index 5c5fbcc..f869553 100644
--- a/src/anytun-controld.cpp
+++ b/src/anytun-controld.cpp
@@ -78,7 +78,7 @@ void syncListener(void* p )
try
{
boost::asio::io_service io_service;
- SyncServer server(io_service,boost::asio::ip::tcp::endpoint(boost::asio::ip::tcp::v6(), param->port));
+ SyncServer server(io_service, SyncTcpConnection::proto::endpoint(SyncTcpConnection::proto::v6(), param->port));
server.onConnect=boost::bind(syncOnConnect,_1);
io_service.run();
}
diff --git a/src/anytun.cpp b/src/anytun.cpp
index 012e233..a5ea52f 100644
--- a/src/anytun.cpp
+++ b/src/anytun.cpp
@@ -221,14 +221,14 @@ void syncListener(SyncQueue * queue )
try
{
boost::asio::io_service io_service;
- boost::asio::ip::tcp::resolver resolver(io_service);
- boost::asio::ip::tcp::endpoint e;
+ SyncTcpConnection::proto::resolver resolver(io_service);
+ SyncTcpConnection::proto::endpoint e;
if(gOpt.getLocalSyncAddr()!="")
{
- boost::asio::ip::tcp::resolver::query query(gOpt.getLocalSyncAddr(), gOpt.getLocalSyncPort());
+ SyncTcpConnection::proto::resolver::query query(gOpt.getLocalSyncAddr(), gOpt.getLocalSyncPort());
e = *resolver.resolve(query);
} else {
- boost::asio::ip::tcp::resolver::query query(gOpt.getLocalSyncPort());
+ SyncTcpConnection::proto::resolver::query query(gOpt.getLocalSyncPort());
e = *resolver.resolve(query);
}
@@ -534,9 +534,9 @@ int main(int argc, char* argv[])
if(gOpt.getRemoteAddr() != "")
{
boost::asio::io_service io_service;
- boost::asio::ip::udp::resolver resolver(io_service);
- boost::asio::ip::udp::resolver::query query(gOpt.getRemoteAddr(), gOpt.getRemotePort());
- boost::asio::ip::udp::endpoint endpoint = *resolver.resolve(query);
+ UDPPacketSource::proto::resolver resolver(io_service);
+ UDPPacketSource::proto::resolver::query query(gOpt.getRemoteAddr(), gOpt.getRemotePort());
+ UDPPacketSource::proto::endpoint endpoint = *resolver.resolve(query);
createConnection(endpoint,cl,gOpt.getSeqWindowSize(), queue, gOpt.getMux());
}
diff --git a/src/connectionParam.h b/src/connectionParam.h
index 9748a18..41df91c 100644
--- a/src/connectionParam.h
+++ b/src/connectionParam.h
@@ -69,7 +69,7 @@ private:
ar & seq_nr_;
ar & remote_host;
ar & remote_port;
- boost::asio::ip::udp::endpoint endpoint(boost::asio::ip::address::from_string(remote_host), remote_port);
+ UDPPacketSource::proto::endpoint endpoint(boost::asio::ip::address::from_string(remote_host), remote_port);
remote_end_ = endpoint;
}
};
diff --git a/src/packetSource.cpp b/src/packetSource.cpp
index ee8951e..9a35cc3 100644
--- a/src/packetSource.cpp
+++ b/src/packetSource.cpp
@@ -32,24 +32,22 @@
#include <boost/asio.hpp>
#include "datatypes.h"
-
#include "packetSource.h"
-#include "buffer.h"
UDPPacketSource::UDPPacketSource(std::string port) : sock_(io_service_)
{
- boost::asio::ip::udp::resolver resolver(io_service_);
- boost::asio::ip::udp::resolver::query query(port);
- boost::asio::ip::udp::endpoint e = *resolver.resolve(query);
+ proto::resolver resolver(io_service_);
+ proto::resolver::query query(port);
+ proto::endpoint e = *resolver.resolve(query);
sock_.open(e.protocol());
sock_.bind(e);
}
UDPPacketSource::UDPPacketSource(std::string localaddr, std::string port) : sock_(io_service_)
{
- boost::asio::ip::udp::resolver resolver(io_service_);
- boost::asio::ip::udp::resolver::query query(localaddr, port);
- boost::asio::ip::udp::endpoint e = *resolver.resolve(query);
+ proto::resolver resolver(io_service_);
+ proto::resolver::query query(localaddr, port);
+ proto::endpoint e = *resolver.resolve(query);
sock_.open(e.protocol());
sock_.bind(e);
}
@@ -63,3 +61,4 @@ void UDPPacketSource::send(u_int8_t* buf, u_int32_t len, PacketSourceEndpoint re
{
sock_.send_to(boost::asio::buffer(buf, len), remote);
}
+
diff --git a/src/packetSource.h b/src/packetSource.h
index f5cbd5d..ce6e997 100644
--- a/src/packetSource.h
+++ b/src/packetSource.h
@@ -35,8 +35,8 @@
#include <boost/asio.hpp>
#include "datatypes.h"
-#include "buffer.h"
+// TODO: fix this
typedef boost::asio::ip::udp::endpoint PacketSourceEndpoint;
class PacketSource
@@ -51,6 +51,8 @@ public:
class UDPPacketSource : public PacketSource
{
public:
+ typedef boost::asio::ip::udp proto;
+
UDPPacketSource(std::string port);
UDPPacketSource(std::string localaddr, std::string port);
@@ -58,8 +60,9 @@ public:
void send(u_int8_t* buf, u_int32_t len, PacketSourceEndpoint remote);
private:
+
boost::asio::io_service io_service_;
- boost::asio::ip::udp::socket sock_;
+ proto::socket sock_;
};
#endif
diff --git a/src/syncClient.cpp b/src/syncClient.cpp
index d2c5ce7..6dceb00 100644
--- a/src/syncClient.cpp
+++ b/src/syncClient.cpp
@@ -39,6 +39,7 @@
#include "log.h"
//#include "connectionParam.h"
#include "syncClient.h"
+#include "syncTcpConnection.h"
#include "buffer.h"
#include <boost/array.hpp>
@@ -56,12 +57,12 @@ void SyncClient::run()
try
{
boost::asio::io_service io_service;
- boost::asio::ip::tcp::resolver resolver(io_service);
- boost::asio::ip::tcp::resolver::query query( hostname_, port_);
- boost::asio::ip::tcp::resolver::iterator endpoint_iterator = resolver.resolve(query);
- boost::asio::ip::tcp::resolver::iterator end;
+ SyncTcpConnection::proto::resolver resolver(io_service);
+ SyncTcpConnection::proto::resolver::query query( hostname_, port_);
+ SyncTcpConnection::proto::resolver::iterator endpoint_iterator = resolver.resolve(query);
+ SyncTcpConnection::proto::resolver::iterator end;
- boost::asio::ip::tcp::socket socket(io_service);
+ SyncTcpConnection::proto::socket socket(io_service);
boost::system::error_code error = boost::asio::error::host_not_found;
while (error && endpoint_iterator != end)
{
diff --git a/src/syncServer.cpp b/src/syncServer.cpp
index 62b2cff..e39a11e 100644
--- a/src/syncServer.cpp
+++ b/src/syncServer.cpp
@@ -2,7 +2,7 @@
//using asio::ip::tcp;
-SyncServer::SyncServer(boost::asio::io_service& io_service, boost::asio::ip::tcp::endpoint tcp_endpoint )
+SyncServer::SyncServer(boost::asio::io_service& io_service, SyncTcpConnection::proto::endpoint tcp_endpoint )
: acceptor_(io_service, tcp_endpoint)
{
start_accept();
diff --git a/src/syncServer.h b/src/syncServer.h
index ed0d4fd..bb8f734 100644
--- a/src/syncServer.h
+++ b/src/syncServer.h
@@ -13,12 +13,10 @@
#include <list>
#include "syncTcpConnection.h"
-//using boost::asio::ip::tcp;
-
class SyncServer
{
public:
- SyncServer(boost::asio::io_service& io_service, boost::asio::ip::tcp::endpoint tcp_endpoint );
+ SyncServer(boost::asio::io_service& io_service, SyncTcpConnection::proto::endpoint tcp_endpoint );
boost::function<void(SyncTcpConnection *)> onConnect;
std::list<SyncTcpConnection::pointer> conns_;
void send(std::string message);
@@ -27,6 +25,6 @@ private:
void handle_accept(SyncTcpConnection::pointer new_connection,
const boost::system::error_code& error);
Mutex mutex_; //Mutex for list conns_
- boost::asio::ip::tcp::acceptor acceptor_;
+ SyncTcpConnection::proto::acceptor acceptor_;
};
#endif
diff --git a/src/syncTcpConnection.cpp b/src/syncTcpConnection.cpp
index 5287468..df6f59f 100644
--- a/src/syncTcpConnection.cpp
+++ b/src/syncTcpConnection.cpp
@@ -14,7 +14,7 @@
#include "syncCommand.h"
#include "buffer.h"
-boost::asio::ip::tcp::socket& SyncTcpConnection::socket()
+SyncTcpConnection::proto::socket& SyncTcpConnection::socket()
{
return socket_;
}
diff --git a/src/syncTcpConnection.h b/src/syncTcpConnection.h
index 5af5276..bb0db46 100644
--- a/src/syncTcpConnection.h
+++ b/src/syncTcpConnection.h
@@ -12,12 +12,16 @@ class SyncTcpConnection
{
public:
typedef boost::shared_ptr<SyncTcpConnection> pointer;
+ typedef boost::asio::ip::tcp proto;
+
static pointer create(boost::asio::io_service& io_service)
{
return pointer(new SyncTcpConnection(io_service));
};
+
boost::function<void(SyncTcpConnection *)> onConnect;
- boost::asio::ip::tcp::socket& socket();
+ proto::socket& socket();
+
void start();
void Send(std::string message);
private:
@@ -25,6 +29,6 @@ private:
void handle_write(const boost::system::error_code & /*error*/,
size_t /*bytes_transferred*/);
- boost::asio::ip::tcp::socket socket_;
+ proto::socket socket_;
};
#endif