Skip to content

Releases: mirage/mirage-tcpip

Fix regression which causes slow-downs on packet loss, close connection cleanly and extract the channels out

07 Jul 10:57
Compare
Choose a tag to compare
  • Fix regression introduced in 2.5.0 where packet loss could lead to the
    connection to become very slow (#157, MagnusS, @talex5, @yomimono and
    @balrajsingh)
  • Improve the tests: more logging, more tracing and compile to native code when
    available, etc (@MagnusS and @talex5)
  • Do not raise Invalid_argument("Lwt.wakeup_result") everytime a connection
    is closed. Also now pass the raised exceptions to Lwt.async_exception_hook
    instead of ignoring them transparently, so the user can decide to shutdown
    its application if something wrong happens (#153, #156, @yomomino and @talex5)
  • The channel library now lives in a separate repository and is released
    separately (#159, @samoht)

Strip trailing bits from packets, fix windows parameters for out-of-order packets, add a Log module

24 Jun 15:26
Compare
Choose a tag to compare
  • The test runs now produce .pcap files (#141, by @MagnusS)
  • Strip trailing bytes from network packets (#145, by @talex5)
  • Add tests for uniform packet loss (#147, by @MagnusS)
  • fixed bug where in case of out of order packets the ack and window were set
    incorrectly (#140, #146)
  • Properly handle RST packets (#107, #148)
  • Add a Log module to control at runtime the debug statements which are
    displayed (#142)
  • Writing in a PCB which does not have the right state now returns an error
    instead of blocking (#150)

Fix an infinite loop in `Channel.read_line`

10 Jun 14:34
Compare
Choose a tag to compare
  • Fix infinite loop in Channel.read_line when the line does not contain a CRLF
    sequence (#131)

Fix a memory leak in `Channel` and add `Alcotest` framework

10 Jun 14:34
Compare
Choose a tag to compare
  • Fix a memory leak in Channel (#119, by @yomimono)
  • Add basic unit-test for channels (#119, by @yomimono)
  • Add alcotest testing templates
  • Modernize Travis CI scripts

Merge between 2.4.0 and 2.3.1

28 Apr 13:33
Compare
Choose a tag to compare
v2.4.1

Version 2.4.1.

Permit excess trailing bytes in an IP frame

31 Mar 17:51
Compare
Choose a tag to compare
  • Do not raise an assertion if an IP frame has extra trailing bytes (#221).

ARP improvement

16 Apr 22:55
Compare
Choose a tag to compare
  • ARP improvements (#118)

Support for Mirage 2.3.0's `connect` removal

09 Mar 22:45
Compare
Choose a tag to compare
  • Fix STACKV4 for the DEVICE signature which has connect removed (in Mirage types 2.3+).

IPv6 and robustness improvements

04 Mar 18:11
Compare
Choose a tag to compare
  • Add ICMPv6 error reporting functions (#101)
  • Add universal IP address converters (#108)
  • Add error_message functions for human-readable errors (#98)
  • Improve debug logging for ICMP Destination Unreachable packets.
  • Filter incoming frames by MAC address to stop sending unnecessary RSTs. (#114)
  • Unhook unused modules Sliding_window and Profiler from the build. (#112)

Restore ARP fixes

11 Jan 15:23
Compare
Choose a tag to compare

Fixes from 2.0.0 relating to ARP race conditions were lost in a merge conflict, and have now been restored.