-
When SSL wants the app to retry, it stands to reason that the local write buffer needs to be grown (read: reallocated) to hold the application bytes. At that point, the buffer is no longer where it was originally. This fixes segfaults.
-
One part is a fix, where the frame was advertised to be bigger than it was. The other change is making it possible to send chunks larger than the initial buffer size, by resizing the buffer (and resetting it later).
-
We interpret the close frames as closed transport, and therefore set 'error' to 'disconnected'. See code comments.
-
Having threads creates instability for the fuzzer, and we don't need them.
-
The ping/pong is actually untested at this point, because Paho (my test client for now) doesn't do those. I wonder if any do, because MQTT already has ping/pong.