diff --git a/.travis.yml b/.travis.yml index 4a58a64..1325706 100644 --- a/.travis.yml +++ b/.travis.yml @@ -20,4 +20,4 @@ addons: - time - libxen-dev env: - - OCAML_VERSION=4.04 MIRAGE_BACKEND=xen PINS="mirage-nat:https://github.com/talex5/mirage-nat.git#lru" + - OCAML_VERSION=4.04 MIRAGE_BACKEND=xen diff --git a/Dockerfile b/Dockerfile index e04f6d1..e971234 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,17 +1,16 @@ # Pin the base image to a specific hash for maximum reproducibility. # It will probably still work on newer images, though, unless Debian 8 # changes some compiler optimisations (unlikely). -#FROM ocaml/opam:debian-8_ocaml-4.03.0 -FROM ocaml/opam@sha256:66f9d402ab6dc00c47d2ee3195ab247f9c1c8e7e774197f4fa6ea2a290a3ebbc +#FROM ocaml/opam:debian-8_ocaml-4.04.2 +FROM ocaml/opam@sha256:17a527319b850bdaf6759386a566dd088a053758b6d0603712dbcb10ad62f86c # Pin last known-good version for reproducible builds. # Remove this line (and the base image pin above) if you want to test with the # latest versions. -RUN cd opam-repository && git reset --hard a51e30ffcec63836014a5bd2408203ec02e4c7af && opam update +RUN cd opam-repository && git fetch origin && git reset --hard ad6348231fa14e1d9df724db908a1b7fe07d3ab9 && opam update RUN sudo apt-get install -y m4 libxen-dev -RUN opam install -y vchan xen-gnt mirage-xen-ocaml mirage-xen-minios io-page mirage-xen mirage -RUN opam pin add -n -y mirage-nat 'https://github.com/talex5/mirage-nat.git#lru' +RUN opam install -y vchan xen-gnt mirage-xen-ocaml mirage-xen-minios io-page mirage-xen mirage mirage-nat RUN mkdir /home/opam/qubes-mirage-firewall ADD config.ml /home/opam/qubes-mirage-firewall/config.ml WORKDIR /home/opam/qubes-mirage-firewall diff --git a/config.ml b/config.ml index 0b4cf79..0a73b48 100644 --- a/config.ml +++ b/config.ml @@ -20,10 +20,10 @@ let main = ~packages:[ package "vchan"; package "cstruct"; - package "tcpip" ~sublibs:["stack-direct"; "xen"] ~min:"3.1.0"; + package "tcpip" ~sublibs:["stack-direct"; "xen"; "arpv4"] ~min:"3.1.0"; package "mirage-net-xen"; package "mirage-qubes"; - package "mirage-nat" ~sublibs:["hashtable"]; + package "mirage-nat"; package "mirage-logs"; ] "Unikernel.Main" (mclock @-> job) diff --git a/my_nat.ml b/my_nat.ml index fa995b1..bfaf702 100644 --- a/my_nat.ml +++ b/my_nat.ml @@ -11,7 +11,7 @@ type action = [ | `Redirect of Mirage_nat.endpoint ] -module Nat = Mirage_nat_hashtable +module Nat = Mirage_nat_lru type t = { table : Nat.t;