]> git.meshlink.io Git - meshlink/commit
Fix buffer shrinking logic in UTCP.
authorGuus Sliepen <guus@meshlink.io>
Thu, 15 Apr 2021 17:50:20 +0000 (19:50 +0200)
committerGuus Sliepen <guus@meshlink.io>
Thu, 15 Apr 2021 18:25:29 +0000 (20:25 +0200)
commit0f5ab29d787c7fb444908797d5ea746cb4311be4
tree461f15c5ecebd00310ce6987b6f74db067b4359d
parent57d7814d3c211a46f6a6fe7dd995307cb9a6f41e
Fix buffer shrinking logic in UTCP.

Don't set the maximum size to low values; keep it at the minimum of the
previous size or of the default maximum size. If it is set to something
smaller than one MTU, this would prevent receiving packets from the
peer, and channel traffic would not progress and not close properly.

We also don't move memory when shrinking the internal buffer, so we
should keep the size large enough so the last byte in the buffer is
covered when the offset is non-zero.
src/utcp.c