Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Thomas Gazagnaire samoht
162 lines (131 sloc) 6.65 kb
* Add ICMPv6 error reporting functions (#101)
* Add universal IP address converters (#108)
2.2.2 (2015-01-11):
* Readded tracing and ARP fixes which got accidentally reverted in the IPv6 merge. (#96)
2.2.1 (2014-12-20):
* Use `Bytes` instead of `String` to begin the `-safe-string` migration in OCaml 4.02.0 (#93).
* Remove dependency on `uint` to avoid the need for a C stub (#92).
2.2.0 (2014-12-18):
Add IPv6 support. This changeset minimises interface changes to the existing
`STACKV4` interfaces to faciliate a progressive merge. The only visible
interface changes are:
* `IPV4.set_ipv4_*` functions have been renamed `IPV4.set_ip_*` because they
are shared between IPV4 and IPV6.
* `IPV4.get_ipv4` and `get_ipv4_netmask` now return a `list` of `Ipaddr.V4.t`
(again because this is the common semantics with IPV6.)
* Several types that had `v4` in their names (like `IPV4.ipv4addr`) have lost
that particle.
2.1.1 (2014-12-12):
* Improve console printing for the DHCP client to output line
breaks properly on Xen consoles.
2.1.0 (2014-12-07):
* Build Xen stubs separately, with `CFLAGS` from `mirage-xen` 2.1.0+.
This allows us to use the red zone under x86_64 Unix again.
* Adding tracing labels and counters, which introduces a new dependency on the
`mirage-profile` package.
2.0.3 (2014-12-05):
* Fixed race waiting for ARP response (#86).
* Move the the code that configures IPv4 address, netmask and gateways
after receiving a successful lease out of the `Dhcp_clientv4` module
and into `Stackv4` (#87)
2.0.2 (2014-12-01):
* Add IPv4 multicast to MAC address mapping in IPv4 output processing (#81 from Luke Dunstan).
* Improve formatting of DHCP console logging, including printing out options (#83).
* Build with -mno-red-zone on x86_64 to avoid stack corruption on Xen (#80).
2.0.1 (2014-11-04):
* Fixed race condition in the signalling between the rx/tx threads under load.
* Experimentally switch to immediate ACKs in TCPv4 by default instead of delayed ones.
2.0.0 (2014-11-02):
* Moved 1s complement checksum C code here from mirage-platform.
* Depend on `Console_unix` and `Console_xen` instead of `Console`.
* [socket] Do not return an `Eof` when writing 0-length buffer (#76).
* [socket] Accept callbacks now run in async threads instead of being serialised (#75).
1.1.6 (20-July-2014):
* Quieten down the stack logging rate by not announcing IPv6 packet discards.
* Raise exception `Bad_option` for unparseable or invalid TCPv4 options (#57).
* Fix linking error with module `Tcp_checksum` by lifting it into top library (#60).
* Add `opam` file to permit easier local pinning, and fix Travis to use this.
1.1.5 (18-June-2014):
* Ensure that DHCP completes before the application is started, so that
unikernels that establish outgoing connections can do so without a race.
(fix from Mindy Preston in #53, followup in #55)
* Add `echo`, `chargen` and `discard` services into the `examples/`
directory. (from Mindy Preston in #52).
1.1.4 (03-June-2014):
* [tcp] Fully process the last `ACK` in a 3-way handshake for server connections.
This ensures that a `FIN` is correctly transmitted upon application-initiated
connection close. (fix from Mindy Preston in #51).
1.1.3 (01-April-2014):
* Expose IPV4 through the STACKV4 interface.
1.1.2 (27-March-2014):
* Fix DHCP variable length option parsing for MTU responses, which
in turns improves robustness on Amazon EC2 (fix from @yomimono
via mirage/mirage-tcpip#48)
1.1.1 (21-February-2014):
* Catch and ignore top-level socket exceptions (#219).
* Set `SO_REUSEADDR` on listening sockets for Unix (#218).
* Adapt the Stack interfaces to the v1.1.1 mirage-types interface
(see mirage/mirage#226 for details).
1.1.0 (03-February-2014):
* Rewrite of the library as a set of functors that parameterize the
stack across the `V1_LWT` module types from Mirage 1.1.x. This removes
the need to compile separate Xen and Unix versions of the stack.
0.9.5 (08-December-2013):
* Build for either Xen or Unix, depending on the value of the `OS` envvar.
* Shift to the `mirage-types` 0.5.0+ interfaces, which breaks the
socket backend (temporarily).
* Port the direct stack to the new interfaces.
* Add Travis CI scripts.
0.9.4 (09-August-2013):
* Use the `Ipaddr` external library and remove the Homebrew
equivalents in `Nettypes`.
0.9.3 (18-July-2013):
* Changes in module Manager: Removed some functions from the `.mli
(plug/unplug) and added some modifications in the way the Manager
interacts with the underlying module Netif. The Netif.create function
does not take a callback anymore.
0.9.2 (09-July-2013):
* Improve TCP state machine for connection teardown.
* Limit fragment number to 8, and coalesce buffers if it goes higher.
* Adapt to mirage-platform-0.9.2 API changes.
0.9.1 (12-Jun-2013):
* Depend on mirage-platform-0.9.1 direct tuntap interfaces.
* Version bump to catch up with mirage-platform.
0.5.2 (08-Feb-2013):
* Encourage scatter-gather I/O all the time, rather than playing tricks
with packet header buffers. This simplifies the output path considerably
and cuts minor heap allocations down.
* Install the packed `cmx` along with the `cmxa` to ensure that the
compiler can do cross-module optimization (this is not a fatal error,
but will impact performance if the `cmx` file is not present).
0.5.1 (20-Dec-2012):
* Update socket stack to use Cstruct 0.6.0 API
0.5.0 (20-Dec-2012):
* Update Cstruct API to 0.6.0
* [tcp] write now blocks if the write buffer and write window are full
0.4.1 (14-Dec-2012):
* Add iperf self-test that creates two VIFs and transmits across
them. This is a useful local test which stresses the bridge
code using just one VM.
* Add support for attaching existing devices when initialising the
network manager, via an optional `attached` parameter.
* Constrain TCP connect to be a `unit Lwt.t` instead of a polymorphic
return value.
* Expose IPv4 netmask function.
* Reduce ARP verbosity to the console.
* Fix TCP fast recovery to wait until all in-flight packets are
acked, rather then exiting early.
0.4.0 (11-Dec-2012):
* Require OCaml-4.00.0 or higher, and add relevant build fixes
to deal with module packing.
0.3.1 (10-Dec-2012):
* Fix the DHCP client marshalling for IPv4 addresses.
* Expose the interface MAC address in the Manager signature.
* Tweak TCP ISN calculation to be more friendly on a 32-bit host.
* Add Manager.create ?devs to control the number of Netif devices
constructed by default.
* Add Ethif.set/disable_promiscuous to permit directly tapping
a network interface.
0.3.0 (04-Sep-2012):
* Initial public release.
Jump to Line
Something went wrong with that request. Please try again.