package utcp
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
An implementation of TCP (Transmission Control Protocol) in OCaml
Install
dune-project
Dependency
Authors
Maintainers
Sources
utcp-0.0.7.tbz
md5=2a845005adb61fa09a550e842f858397
sha512=5376bc16f7fc4994ad2761d450db31ad66880356ffd2ea163f0a51150d2d0910918b23939be16fabf36233f3a5c5934233607e0c8777a9d0a391290ef8a510f8
doc/CHANGES.html
0.0.7 (2026-07-30)
- In active TCP connection establishment, wakeup the receiver (same as before https://git.robur.coop/robur/utcp/pulls/2 introduced the regression) (@dinosaure https://git.robur.coop/robur/utcp/pulls/8 fixes https://git.robur.coop/robur/utcp/issues/7)
0.0.6 (2026-07-27)
- Use a red-black tree for the reassembly queue instead of a list to avoid computational complexity (OSEC-2026-11, reported by Thomas Gazagnaire, fixed in 08522428c957d796a6455d5aad434701c879fd4e)
- Rope fix tests (@hannesm https://git.robur.coop/robur/utcp/pulls/6)
- Rope coalesce in append (@hannesm https://git.robur.coop/robur/utcp/pulls/5, fixes https://github.com/robur-coop/utcp/issues/71)
- Cleanup resources in teardown (@dinosaure https://github.com/robur-coop/utcp/pull/73, @hannesm https://git.robur.coop/robur/utcp/pulls/2)
- Add num_connections (@reynir https://git.robur.coop/robur/utcp/pulls/4, fixes https://git.robur.coop/robur/utcp/issues/3)
- Migrate repository to https://git.robur.coop (repository is mirrored automatically to GitHub, issues can be reported on GitHub)
- Check bounds for buffer in User.send and User.force_enqueue (@hannesm https://git.robur.coop/robur/utcp/pulls/1)
- Only use ports 1024..65535 as source port (https://github.com/robur-coop/utcp/pull/76 @reynir @hannesm, fixes https://github.com/robur-coop/utcp/issues/74)
- Acknowledge a received segment even if it is not acceptable (see RFC 9293 Section 3.10.7.4) (https://github.com/robur-coop/utcp/pull/75 @dinosaure)
- Fix how the persist timer is started (was correct in the formal model, a typo in the implementation) (https://github.com/robur-coop/utcp/pull/77 @dinosaure)
- Remove ipaddr-cstruct from dependency cone (https://github.com/robur-coop/utcp/pull/72 @dinosaure)
0.0.5 (2026-06-17)
- Avoid assert false, also cleanup log messages (#70 @hannesm)
0.0.4 (2026-05-23)
- Deuplicate the metrics sources, there's no need for each stack constructing their own value. The "stack-id" is present as tag in each measurement. (#69 @hannesm)
0.0.3 (2026-04-30)
- Fix sequence number arithmetics, stick to unsigned int32 with "serial number arithmetics" (RFC 1982) for comparison (#68 @dinosaure)
0.0.2 (2026-02-17)
- Fix Segment.decode when the data_offset field is too small (< 5) reported by @kit-ty-kate fixed by @dinosaure and @hannesm #67 (also #66)
0.0.1 (2026-02-09)
- Initial public release
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>