Cory Fields 3e32cd09f6 connman is in charge of pushing messages
The changes here are dense and subtle, but hopefully all is more explicit
than before.

- CConnman is now in charge of sending data rather than the nodes themselves.
  This is necessary because many decisions need to be made with all nodes in
  mind, and a model that requires the nodes calling up to their manager quickly
  turns to spaghetti.

- The per-node-serializer (ssSend) has been replaced with a (quasi-)const
  send-version. Since the send version for serialization can only change once
  per connection, we now explicitly tag messages with INIT_PROTO_VERSION if
  they are sent before the handshake. With this done, there's no need to lock
  for access to nSendVersion.

  Also, a new stream is used for each message, so there's no need to lock
  during the serialization process.

- This takes care of accounting for optimistic sends, so the
  nOptimisticBytesWritten hack can be removed.

- -dropmessagestest and -fuzzmessagestest have not been preserved, as I suspect
  they haven't been used in years.
2016-11-03 13:32:09 -07:00
..
2016-04-14 20:56:33 +02:00
2016-10-19 15:17:13 +01:00
2016-10-19 15:17:13 +01:00
2016-07-18 12:22:18 +02:00
2016-09-20 11:45:30 +08:00
2016-08-05 21:17:50 +02:00
2016-11-02 11:16:29 +01:00
2016-03-23 10:40:38 -04:00
2016-11-03 13:32:09 -07:00
2016-01-05 21:01:39 +01:00
2016-09-28 12:44:13 +02:00
2016-09-27 09:25:15 +02:00
2016-09-27 09:25:15 +02:00
2016-09-27 09:25:15 +02:00
2016-01-05 21:01:39 +01:00
2016-06-27 18:17:27 +02:00
2016-09-27 09:25:15 +02:00
2016-10-30 23:12:09 -07:00
2016-10-30 23:12:09 -07:00
2016-01-05 21:01:39 +01:00
2016-10-04 11:11:21 +00:00