This PR attempts to fix the problem with socket send errors not being handled properly when they're specific to the connection triggering the send. It also handles basic network dropouts.
The previous PR had some issues with platform specific behaviour with the send errors. The 3 different platforms gave 3 different error codes for invalid IP based on how the socket was bound.
Issues Fixed
Fixes #78
Tasks
[x] 1. Send errors specific to the connection triggering send should bubble back to that connection to be handled properly.
[x] 2. Starting a connection should fail if the target address is invalid. In this case due to external addresses being invalid for loop back bound sockets.
[x] 3. Temp network failure does not cause a crash but connections eventually time out.
👇 Click on the image for a new way to code review
####
[![Review these changes using an interactive CodeSee Map](https://s3.us-east-2.amazonaws.com/maps.codesee.io/images/github/MatrixAI/js-quic/89/6b17763f/6b6249182d55cdaed7087f5d465b8ae71103a269.svg)](https://app.codesee.io/r/reviews?pr=89&src=https%3A%2F%2Fgithub.com%2FMatrixAI%2Fjs-quic)
#### Legend
Description
This is take two of the previous PR at #86
This PR attempts to fix the problem with socket send errors not being handled properly when they're specific to the connection triggering the send. It also handles basic network dropouts.
The previous PR had some issues with platform specific behaviour with the send errors. The 3 different platforms gave 3 different error codes for invalid IP based on how the socket was bound.
Issues Fixed
Tasks
Final checklist