Per spec, peers can have different values for link handles. When sending a frame, its Handle is set to the output (our) handle. When receiving a frame, its Handle is set to the input (remote) handle.
Fixed session data structures to properly map an input handle to a link.
Renamed handle fields and supporting types/vars to follow spec nomenclature.
Added a live test that reproduced the issue.
Per spec, peers can have different values for link handles. When sending a frame, its Handle is set to the output (our) handle. When receiving a frame, its Handle is set to the input (remote) handle. Fixed session data structures to properly map an input handle to a link. Renamed handle fields and supporting types/vars to follow spec nomenclature. Added a live test that reproduced the issue.
Fixes https://github.com/Azure/go-amqp/issues/292