Commit Graph

8 Commits

Author SHA1 Message Date
Thomas Gazagnaire
14a5b64dcc Update to latest capnp & capnp-rpc
Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-09-04 16:21:53 +02:00
Thomas Gazagnaire
f5716ce985 Split the DHCP client into three components communicating via named pipes
3 components:

- network: read eht0 and proxy only DHCP traffic
- engine: read DHCP traffic, handle DHCP client state machine, and call the
  host actuator to change the host config when a lease is obtained
  host system configuration.
- actuator: perform the acutall net syscalls, read and write host configuration
  files, etc

These three components can either be linked together in a single binary
(see src/dhcp-client/main.ml) or can be used as 3 binaries communicating
over cap-n-proto.

Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-07-17 17:46:17 +02:00
Thomas Gazagnaire
be7a54b5c7 sdk: update Docker to pin dev versions of upstream libraries
Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-06-19 17:33:28 +02:00
Thomas Gazagnaire
e76d6c09a4 sdk: fix dhcp's Dockerfile
The rootfs were containing way too much binaries and runc command where not
started in the correct directory.

Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-06-14 16:13:40 +01:00
Thomas Gazagnaire
03cd4d6fd3 sdk: replace custom transport protocol by Capnproto
Initial patch by @talex5

Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-06-14 11:43:27 +01:00
Mindy Preston
1ab32f9ca7 use dhcp_client_lwt instead of dhcp_client_mirage
Use the `with-cdhcpc` branch of charrua-client, which exposes `Dhcp_client_lwt`.  Dhcp_client_lwt exposes similar functions to `Dhcp_client_mirage`, but does not impose the structure of a Mirage_types_lwt.ipv4_config on the returned object, rather returning the full lease; the engine can then expose whatever information from the lease it finds to be pertinent.

Signed-off-by: Mindy Preston <mindy.preston@docker.com>
2017-06-09 13:57:07 -05:00
Mindy Preston
bcb0c52fff nudge some build updates around
build from (now-released) canpnproto 0.6.0; use the latest jbuilder beta.

Signed-off-by: Mindy Preston <mindy.preston@docker.com>
2017-06-09 13:38:55 -05:00
Thomas Gazagnaire
94583013aa miragesdk: simplify the build by using multi-stage Dockerfile
Signed-off-by: Thomas Gazagnaire <thomas@gazagnaire.org>
2017-04-14 17:05:36 +02:00