ibc: TimeoutOnClose support (#7066)

* ibc: TimeoutOnClose support

* revert added callback

* update proto

* update spec and add msg test

* update handler and add test

* apply self-review changes

* apply @fedekunze review suggestion

Co-authored-by: Colin Axner <colinaxner@berkeley.edu>
Co-authored-by: colin axnér <25233464+colin-axner@users.noreply.github.com>
This commit is contained in:
Federico Kunze
2020-08-20 07:19:57 -04:00
committed by GitHub
co-authored by Colin Axner colin axnér
parent b699c9459f
commit 16435a0f4d
14 changed files with 1056 additions and 194 deletions
+3 -2
View File
@@ -371,8 +371,9 @@ OnAcknowledgementPacket(
#### Timeout Packets
If the timout for a packet is reached before the packet is successfully received, the receiving
chain can no longer process it. Thus, the sending chain must process the timout using
If the timeout for a packet is reached before the packet is successfully received or the
counterparty channel end is closed before the packet is successfully received, then the receiving
chain can no longer process it. Thus, the sending chain must process the timeout using
`OnTimeoutPacket` to handle this situation. Again the IBC module will verify that the timeout is
indeed valid, so our module only needs to implement the state machine logic for what to do once a
timeout is reached and the packet can no longer be received.