Fix handling ICMP Port Unreachable messages #356
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Once a ICMP Port Unreachable message is received, the session is
disconnected by a call to coap_session_disconnect(). However if the session
is of type CON, the logic currently tries to retransmit the packet, but
nothing gets sent out.
src/coap_session.c:
Make sure that any entries on the context->sendqueue for the disconnected
session are removed.
examples/client.c:
Add in a Nack handler so that the client immediately exits on the session
disconnect. Additionally this also tidies up the exit after transmission
retries.
Fixes the issue picked up by #347