diff options
author | Matthias P. Braendli <matthias.braendli@mpb.li> | 2016-11-05 15:00:09 +0100 |
---|---|---|
committer | Matthias P. Braendli <matthias.braendli@mpb.li> | 2016-11-05 15:00:09 +0100 |
commit | 5c12d5b387e07203be79df7e4d526d124a53ad8a (patch) | |
tree | f5dde68268449c0d6b222df17aaafc99f33e586a /src/TcpSocket.h | |
parent | 3fa21bd39d9b9cb1b0b8d71e2cc98eebb98ad871 (diff) | |
download | dabmux-5c12d5b387e07203be79df7e4d526d124a53ad8a.tar.gz dabmux-5c12d5b387e07203be79df7e4d526d124a53ad8a.tar.bz2 dabmux-5c12d5b387e07203be79df7e4d526d124a53ad8a.zip |
Do not use boost::optional for TcpSocket
Older boost versions require T to be copy-constructable in optional<T>. This
is not the case for TcpSocket, which is only move-constructable.
Fixes compilation on debian jessie
Diffstat (limited to 'src/TcpSocket.h')
-rw-r--r-- | src/TcpSocket.h | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/src/TcpSocket.h b/src/TcpSocket.h index 8df913f..660515d 100644 --- a/src/TcpSocket.h +++ b/src/TcpSocket.h @@ -46,7 +46,7 @@ #include <iostream> #include <string> -#include <boost/optional.hpp> +#include <memory> /** * This class represents a TCP socket. @@ -70,7 +70,9 @@ class TcpSocket TcpSocket(const TcpSocket& other) = delete; TcpSocket& operator=(const TcpSocket& other) = delete; - int close(); + bool isValid(void); + + int close(void); /** Send data over the TCP connection. * @param data The buffer that will be sent. @@ -88,7 +90,12 @@ class TcpSocket void listen(void); TcpSocket accept(void); - boost::optional<TcpSocket> accept(int timeout_ms); + + /* Returns either valid socket if a connection was + * accepted before the timeout expired, or an invalid + * socket otherwise. + */ + TcpSocket accept(int timeout_ms); /** Retrieve address this socket is bound to */ InetAddress getOwnAddress() const; |