aboutsummaryrefslogtreecommitdiff
path: root/src/Socket.cpp
diff options
context:
space:
mode:
authordec05eba <0xdec05eba@gmail.com>2018-10-16 00:37:21 +0200
committerdec05eba <0xdec05eba@gmail.com>2018-10-16 00:37:25 +0200
commiteda94456add9a65d1821302e343bef4021d2a773 (patch)
tree237e09b79c0e8b853b0892deca8b67713a8c4634 /src/Socket.cpp
parent29d93a061a8fcc36e5d7afd1dbcd0a6fefbbabaa (diff)
Reuse peer connection if subscribed to same key
Diffstat (limited to 'src/Socket.cpp')
-rw-r--r--src/Socket.cpp40
1 files changed, 40 insertions, 0 deletions
diff --git a/src/Socket.cpp b/src/Socket.cpp
new file mode 100644
index 0000000..9c8da69
--- /dev/null
+++ b/src/Socket.cpp
@@ -0,0 +1,40 @@
+#include "../include/sibs/Socket.hpp"
+#include <udt/udt.h>
+
+namespace sibs
+{
+ Socket::Socket() :
+ eid(-1),
+ udtSocket(-1)
+ {
+
+ }
+
+ Socket::Socket(int _udtSocket) :
+ eid(-1),
+ udtSocket(_udtSocket)
+ {
+
+ }
+
+ Socket::Socket(int _eid, int _udtSocket) :
+ eid(_eid),
+ udtSocket(_udtSocket)
+ {
+
+ }
+
+ Socket::Socket(Socket &&other)
+ {
+ eid = other.eid;
+ udtSocket = other.udtSocket;
+ other.eid = 0;
+ other.udtSocket = 0;
+ }
+
+ Socket::~Socket()
+ {
+ UDT::close(udtSocket);
+ UDT::epoll_remove_usock(eid, udtSocket);
+ }
+} \ No newline at end of file