summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/sys/posix/Socket.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/qpid/sys/posix/Socket.cpp')
-rw-r--r--cpp/src/qpid/sys/posix/Socket.cpp15
1 files changed, 8 insertions, 7 deletions
diff --git a/cpp/src/qpid/sys/posix/Socket.cpp b/cpp/src/qpid/sys/posix/Socket.cpp
index e9bd2eeb6b..39651fa821 100644
--- a/cpp/src/qpid/sys/posix/Socket.cpp
+++ b/cpp/src/qpid/sys/posix/Socket.cpp
@@ -19,6 +19,12 @@
*
*/
+#include "qpid/sys/Socket.h"
+
+#include "qpid/QpidError.h"
+#include "check.h"
+#include "PrivatePosix.h"
+
#include <sys/socket.h>
#include <sys/errno.h>
#include <netinet/in.h>
@@ -26,10 +32,6 @@
#include <boost/format.hpp>
-#include "qpid/QpidError.h"
-#include "check.h"
-#include "qpid/sys/Socket.h"
-
using namespace qpid::sys;
Socket Socket::createTcp()
@@ -41,11 +43,10 @@ Socket Socket::createTcp()
Socket::Socket(int descriptor) : socket(descriptor) {}
-void Socket::setTimeout(Time interval)
+void Socket::setTimeout(const Duration& interval)
{
struct timeval tv;
- tv.tv_sec = interval/TIME_SEC;
- tv.tv_usec = (interval%TIME_SEC)/TIME_USEC;
+ toTimeval(tv, interval);
setsockopt(socket, SOL_SOCKET, SO_SNDTIMEO, &tv, sizeof(tv));
setsockopt(socket, SOL_SOCKET, SO_RCVTIMEO, &tv, sizeof(tv));
}