#include "compose.hpp"
#include "dcpomatic_assert.h"
+#include "dcpomatic_log.h"
#include "dcpomatic_socket.h"
#include "exceptions.h"
#include <boost/bind/bind.hpp>
if (!_socket.is_open ()) {
throw NetworkError (_("connect timed out"));
}
+
+ if (_send_buffer_size) {
+ boost::asio::socket_base::send_buffer_size old_size;
+ _socket.get_option(old_size);
+
+ boost::asio::socket_base::send_buffer_size new_size(*_send_buffer_size);
+ _socket.set_option(new_size);
+
+ LOG_GENERAL("Changed socket send buffer size from %1 to %2", old_size.value(), *_send_buffer_size);
+ }
}
write (buffer, size);
}
+
+void
+Socket::set_send_buffer_size (int size)
+{
+ _send_buffer_size = size;
+}
+
return _socket;
}
+ void set_send_buffer_size (int size);
void connect (boost::asio::ip::tcp::endpoint);
void write (uint32_t n);
int _timeout;
boost::scoped_ptr<Digester> _read_digester;
boost::scoped_ptr<Digester> _write_digester;
+ boost::optional<int> _send_buffer_size;
};