+ // Try to receive a message. Returns true on success.
+ // If "wait" is true, blocks until success or error.
+ bool recv(message*& msg, m_host_t& from, bool wait);
+
+ // Try to flush pending sending communications.
+ // If "wait" is true, blocks until success.
+ void flush(bool wait);
+
+ // Advertise that the next "close" message is the last one, and
+ // that we do not await any message after that, either on the
+ // control or the data channel.
+ void next_close_on_ctrl_is_last();
+ void next_close_on_data_is_last();