Re: [MirageOS-devel] FLOW errors

2015-01-13 Thread Hannes Mehnert
-BEGIN PGP SIGNED MESSAGE- Hash: SHA384 Hi, just as a short note - the errors reported by TLS are a bit messy at the moment (Tls.alert(8) is rather unhelpful) - I am aware of that and will fix it real soon now... But the error stacking in mirage is a disjoint issue from that, which

Re: [MirageOS-devel] [ANN] release of io-page.1.5.0, mirage-unix.2.2.3 and mirage-xen.2.2.3

2015-03-17 Thread Hannes Mehnert
-BEGIN PGP SIGNED MESSAGE- Hash: SHA384 On 03/17/2015 11:07, Anil Madhavapeddy wrote: It should be possible to compile the io-page stubs without depending on mirage-xen. We could break it up into a mirage-xen-headers package in a similar style to mirage/mirage-types... Maybe use

Re: [MirageOS-devel] [ANN] release of io-page.1.5.0, mirage-unix.2.2.3 and mirage-xen.2.2.3

2015-03-17 Thread Hannes Mehnert
-BEGIN PGP SIGNED MESSAGE- Hash: SHA384 Thomas, On 03/17/2015 11:11, Hannes Mehnert wrote: Maybe use mirage-xen-minios do decide whether to build Io_page with xen support or not? Io_page needs the headers from there.. I now use the packages mirage-xen-minios opam and libminios-xen pkg

Re: [MirageOS-devel] [ANN] release of io-page.1.5.0, mirage-unix.2.2.3 and mirage-xen.2.2.3

2015-03-17 Thread Hannes Mehnert
-BEGIN PGP SIGNED MESSAGE- Hash: SHA384 Hey, after further investigation and discussion with ThomasG I split mirage-xen into separate libraries: mirage-xen-posix: includes and minilibc mirage-xen-ocaml: OCaml runtime (depends on mirage-xen-posix) mirage-xen: bindings and OCaml OS library

Re: [MirageOS-devel] Update on entropy

2015-03-31 Thread Hannes Mehnert
-BEGIN PGP SIGNED MESSAGE- Hash: SHA384 Hi, I do like the proposed changes. My intuition is that the mirage tool knows whether nocrypto is used or not (and thus, emits a call to rng_init before calling main -- it should as well call self_init on the Random-based RANDOM device, thus the

Re: [MirageOS-devel] ask for outreachy program

2015-03-27 Thread Hannes Mehnert
-BEGIN PGP SIGNED MESSAGE- Hash: SHA384 Hi Chenchen, On 03/25/2015 23:52, ChenchenZhao wrote: Hi: My name is Chenchen Zhao. I’m currently a first year student in University of Waterloo, Math Faculty. I really really want to participate in Xen Outreachy Program and make some

[MirageOS-devel] podcast about TLS MirageOS

2015-04-09 Thread Hannes Mehnert
-BEGIN PGP SIGNED MESSAGE- Hash: SHA384 hey, I recorded with two friends of mine a podcast on TLS; how to develop security protocols which are readable, fast, robust; and also MirageOS. It is in German and roughly 2 hours; I'm happy for feedback and any questions

Re: [MirageOS-devel] TLS deployments/feedback needed

2015-05-20 Thread Hannes Mehnert
-BEGIN PGP SIGNED MESSAGE- Hash: SHA384 Hey, I briefly wrote up what is the current set of tools available: https://github.com/hannesm/mirage-www/blob/tls-tools/tmpl/blog/using-tls .md It would be great to extend this with things I forgot and with more detailed instructions how to use

Re: [MirageOS-devel] TLS deployments/feedback needed

2015-05-20 Thread Hannes Mehnert
-BEGIN PGP SIGNED MESSAGE- Hash: SHA384 On 05/20/2015 17:01, Mindy wrote: Good news or bad news, depending on how you slice it: running the extremely naive test script below: ``` for i in `seq 1 2000`; do curl -1 -k https://192.168.3.2 /dev/null; done ``` against a unikernel

Re: [MirageOS-devel] Unix.tm, CLOCK: date handling in MirageOS

2015-06-22 Thread Hannes Mehnert
-BEGIN PGP SIGNED MESSAGE- Hash: SHA384 On 06/22/2015 18:43, Daniel Bünzli wrote: What do you need exactly ? There's a difference between a) making calendar field arithmetic b) getting POSIX timestamps out of/to the various insane timestamps formats that exist in a multitude of

Re: [MirageOS-devel] [RFC] Ptime (was Re: Unix.tm, CLOCK: date handling in MirageOS)

2015-06-26 Thread Hannes Mehnert
-BEGIN PGP SIGNED MESSAGE- Hash: SHA384 On 06/26/2015 14:46, Daniel Bünzli wrote: Le vendredi, 26 juin 2015 à 13:49, Hannes Mehnert a écrit : Shouldn't the validity invariants hold by construction -- at least I'd prefer that it's not possible to create a date utc_time which

Re: [MirageOS-devel] csrs and self-signed certs for TLS

2015-06-12 Thread Hannes Mehnert
-BEGIN PGP SIGNED MESSAGE- Hash: SHA384 Hey, On 06/12/2015 10:10, Mindy wrote: We don't have a nice way to generate certificate signing requests or self-signed certificates ourselves yet, right? I'm writing up a thing on getting HTTPS up and running with mirage-seal and those are

Re: [MirageOS-devel] Mirage and piñata numbers

2015-07-02 Thread Hannes Mehnert
Amir, On 07/02/2015 13:31, Amir Chaudhry wrote: - Could Hannes or David tell me the size of the Piñata and its equivalent in the traditional stack? (I already have a comparison in kloc but I'm curious about the deployed image). binary size is 8.2M (mostly cow it seems, compressed 1.4MB).

Re: [MirageOS-devel] [RFC] Ptime (was Re: Unix.tm, CLOCK: date handling in MirageOS)

2015-06-26 Thread Hannes Mehnert
-BEGIN PGP SIGNED MESSAGE- Hash: SHA384 On 06/25/2015 18:23, Daniel Bünzli wrote: I have now settled down on an interface for Ptime and would welcome feedback about it. Here's the documentation: Thanks, Daniel. I'm a bit worried about: val is_date_valid : date - bool val

Re: [MirageOS-devel] OpenSSL Cmd Tools for Mirage

2015-07-17 Thread Hannes Mehnert
Hi Qiuying, On 07/14/2015 17:39, Qiuying (Giulia) Lai wrote: I am currently looking to write OCaml versions of OpenSSL cmdline tools (using our nocrypto, x509 and tls libraries), and would love some advice on what would be most helpful to have/prioritize. Any suggestions? This is great!

[MirageOS-devel] How to implement protocols?

2015-11-12 Thread Hannes Mehnert
Hey, I just revived a draft on how to write protocols in a purely functional way. The goal is that the protocol logic is independent of any side effects, but has an explicit API what action the effectful client should do (which a test harness could also check for, instead of putting the bytes

Re: [MirageOS-devel] How to implement protocols?

2015-11-13 Thread Hannes Mehnert
On 11/13/2015 12:00, Daniel Bünzli wrote: > "Abstraction should be used where needed, keeping in mind that every > abstraction is a burden on the reader of the program (e.g. yourself in 5 > years)." > > WTF. Abstraction is what makes it easier to read and understand the program. > That's

Re: [MirageOS-devel] How to implement protocols?

2015-11-17 Thread Hannes Mehnert
On 11/13/2015 20:20, Thomas Gazagnaire wrote: > Good read, thanks. I am not sure how you can deal with blocking > events (timer, read/write access to the disk). In that case, you are > often "forced" to use "''a Lwt.t" function. For instance, in [1] when > reading the Git pack file I need to pass

Re: [MirageOS-devel] How to implement protocols?

2015-11-17 Thread Hannes Mehnert
On 11/13/2015 17:37, Anil Madhavapeddy wrote: > One of the design goals of Cohttp was to allow multiple, completely > independent network stacks (including sockets and direct stacks) to > run within the same program. Uhm, how does this work? Like a transparent HTTP proxy using a sockets

Re: [MirageOS-devel] How to implement protocols?

2015-11-17 Thread Hannes Mehnert
On 11/16/2015 11:08, Daniel Bünzli wrote: > The foxnet project did that: http://www.cs.cmu.edu/~fox/foxnet.html Thanks for reminding me to read up on Foxnet (http://www.cs.cmu.edu/~rwh/papers/foxnet/final.pdf). I think their PROTOCOL signature (and NETWORK_PROTOCOL) is very sensible (apart from

[MirageOS-devel] copying packets

2015-11-01 Thread Hannes Mehnert
Hi (sorry if you already saw this), recently Luke Gorrie explained whether packet copies are expensive or not -- https://github.com/SnabbCo/snabbswitch/issues/648 -- on modern CPUs. Even if the packet is not page aligned, it seems to be fair enough to not have to think about copies of packets,

Re: [MirageOS-devel] Logs

2015-10-16 Thread Hannes Mehnert
Hi Daniel, On 10/16/2015 10:55, Daniel Bünzli wrote: > The topic was mentioned again on the mirage call. I also need such a library > in many different contexts and I keep on rewriting the bits of a basic logger > in too many of my projects. > > I do have a Log module in bos [1] which

Re: [MirageOS-devel] Logs

2015-10-16 Thread Hannes Mehnert
On 10/16/2015 11:55, Daniel Bünzli wrote: > Le vendredi, 16 octobre 2015 à 11:23, Hannes Mehnert a écrit : >> Certainly this could be a layer on top of the simple logging library, >> but it might be handy to have it embedded at the lowest level. What do >> others think? >

Re: [MirageOS-devel] Charrua release

2015-10-10 Thread Hannes Mehnert
hey, On 10/10/2015 07:42, Christiano F. Haesbaert wrote: > We have released charrua-core \o/: > https://opam.ocaml.org/packages/charrua-core/charrua-core.0.1/ great! :) I do have some questions, though: - is there a way to programmatically create a configuration, rather than providing a

[MirageOS-devel] terminal emulation

2015-08-25 Thread Hannes Mehnert
hackers, I wondered if there's something available to act as a terminal emulation in a pure MirageOS setting? I discovered https://github.com/djs55/ocaml-vnc (but it is unclear to me whether it is working [and to what extend], supposed to be the MirageOS terminal emulation (or is there another

Re: [MirageOS-devel] Type enforced security

2015-09-16 Thread Hannes Mehnert
On 09/16/2015 14:46, Anil Madhavapeddy wrote: > Hannes, is there an example of how to run the nqsb-TLS trace checker > command-line tool anywhere? Not really (talking about https://github.com/hannesm/trace-checker). I 'documented' the dependencies in travis.yml

Re: [MirageOS-devel] next steps for working on outreachy project

2015-12-05 Thread Hannes Mehnert
On 12/05/2015 13:09, Thomas Leonard wrote: > On 2 December 2015 at 23:52, Kia wrote: >> I got accepted for the December 7 - March 7 round of outreachy internships >> https://wiki.gnome.org/Outreachy/2015/DecemberMarch#Xen_Project and I'm not >> sure what to do next. In

Re: [MirageOS-devel] Reproducible builds

2015-12-10 Thread Hannes Mehnert
On 12/10/2015 18:30, Thomas Gazagnaire wrote: > Your are lucky, this is coming in opam 1.3, with opam signing [1,2] :-) > [hopefully] That [1] needs some changes (it is way too complicated as it is there, thus I developed [2] [which needs a couple of days more work before looking at {but

Re: [MirageOS-devel] Reproducible builds

2015-12-14 Thread Hannes Mehnert
Hey, On 12/08/2015 11:08, Daniel Bünzli wrote: > Le mardi, 8 décembre 2015 à 10:22, Thomas Gazagnaire a écrit : >> There is an ongoing discussion to make OCaml have reproducible builds: >> >> http://caml.inria.fr/mantis/print_bug_page.php?bug_id=7037 >> >> this looks it will fixed on time for

Re: [MirageOS-devel] MirageOS AppVMs on Qubes

2015-11-26 Thread Hannes Mehnert
On 11/26/2015 21:38, Thomas Leonard wrote: > On 26 November 2015 at 20:26, Hannes Mehnert <han...@mehnert.org> wrote: >> On 11/26/2015 20:38, Thomas Leonard wrote: >>> What about doing only the agent protocol (mainly PKDECRYPT and PKSIGN)? >> >> What would t

Re: [MirageOS-devel] TunTap vs PACKET sockets

2015-11-19 Thread Hannes Mehnert
On 11/19/2015 13:27, Richard Mortier wrote: > What's the rationale for / trade-off of using tun/tap vs using packet sockets? I assume you're talking about socket(PF_PACKET, SOCK_RAW, _)? This seems to be only supported on Linux. On BSD systems, pcap is responsible for capturing an interface

Re: [MirageOS-devel] Query about mirage-tcpip and checksums

2015-11-23 Thread Hannes Mehnert
On 11/23/2015 11:39, Richard Mortier wrote: > Ah, thanks! > > Any objections if I paste this into an issue (and perhaps make > reference to it in a comment in the code)? there's some discussion on https://github.com/mirage/mirage/pull/286 and https://github.com/mirage/mirage-tcpip/pull/111 ...

Re: [MirageOS-devel] TunTap vs PACKET sockets

2015-11-19 Thread Hannes Mehnert
On 11/19/2015 13:46, Hannes Mehnert wrote: > On 11/19/2015 13:27, Richard Mortier wrote: >> What's the rationale for / trade-off of using tun/tap vs using packet >> sockets? > > I assume you're talking about socket(PF_PACKET, SOCK_RAW, _)? This > seems to be only support

[MirageOS-devel] counting bytes

2016-06-11 Thread Hannes Mehnert
I counted some bytes of MirageOS unikernels, you can see the results (including source of my tools) at https://hannes.nqsb.io/Posts/BottomUp What did I learn? Linkers are smarter than I expected (they throw away certain unneeded symbols when statically linking something); pie charts are useless

[MirageOS-devel] hack retreat end of august

2016-06-02 Thread Hannes Mehnert
Dear hackers, instead of organising anything on my own, I'd like to point you to https://bornhack.dk, a hacking and camping event from August 27 to September 3rd 2016 on the Danish island of Bornholm (they expect 300 people afaik). Their ticket shop just opened. I'll be there and happy to talk

Re: [MirageOS-devel] mirageos 3.0 : let's break some APIs

2016-06-17 Thread Hannes Mehnert
On 17/06/2016 11:26, Mindy wrote: > To derail a bit, here are the CLOCK dependencies in tcpip: > > * Arp could be refactored not to use wall-clock time for judging whether > to expire entries, but a proper dynamic implementation still needs some > dependency on the current TIME signature, I

Re: [MirageOS-devel] mirageos 3.0 : let's break some APIs

2016-06-22 Thread Hannes Mehnert
On 18/05/2016 17:28, Mindy wrote: > I'm surely missing many things folks would want to incorporate in a big > API-breaking release -- please do let us know what they are. :) using the (now) standard ('a, 'b) result type all over instead of [ `Ok of 'a | `Eof | `Error of error ] would be great

Re: [MirageOS-devel] mirageos 3.0 : let's break some APIs

2016-06-17 Thread Hannes Mehnert
On 05/06/2016 16:47, David Scott wrote: > One of the things that puts me off making backwards-compatible changes > today is that I fear I might not be able to complete the whole thing in one > go and I might leave the world in an inconsistent state which then confuses > other people and wastes

Re: [MirageOS-devel] mirageos 3.0 : let's break some APIs

2016-06-17 Thread Hannes Mehnert
Thomas, [there's no need to reply to my mail address, please just keep the mailing list in the to; thx] On 17/06/2016 16:11, Thomas Leonard wrote: > On 17 June 2016 at 14:38, Hannes Mehnert <han...@mehnert.org> wrote: >> On 17/06/2016 11:26, Mindy wrote: >> For the TCP

[MirageOS-devel] reminder: MirageOS hackathon - March 11th - 16th -- please register

2016-01-18 Thread Hannes Mehnert
Hey, please register for the MirageOS hackathon if you plan attending by sending a mail to marrakech2...@mirage.io (everybody [so far 16 individuals] who registered received a confirmation mail last Thursday). Everybody is welcome (no need to be an OCaml/MirageOS expert), as long as you share

Re: [MirageOS-devel] Compiling C components for mirage-xen

2016-01-14 Thread Hannes Mehnert
On 01/14/2016 15:23, Arnaud Sahuguet wrote: > Naive question: for low-level primitives like crypto that require speed, > when do you/we prefer native implementation (in C at the libOS level) vs > OCaml implementation? I prefer nearly always OCaml code. In our nqsb-tls paper

Re: [MirageOS-devel] Compiling C components for mirage-xen

2016-01-14 Thread Hannes Mehnert
Hi Tim, On 01/08/2016 11:19, Tim Cuthbertson wrote: > I'd like to use `Bcrypt` from the `safepass` opam module in passe[0]. > There is sadly no `safepass-xen` package, and trying to just use > `safepass` results in link errors: I wonder whether it'd be more than a day of work to implement bcrypt

Re: [MirageOS-devel] Outreachy opportunities with MirageOS --

2016-02-26 Thread Hannes Mehnert
On 26/02/2016 02:56, Gina Maini wrote: > ​I'm Gina and I'm a lady developer living in Oakland, California. I'm > interested in working on these projects as an Outreachy candidate: > > - the Syslogd​ project with Hannes Mehnert > - the simple network management protocol with

Re: [MirageOS-devel] BTrees, File System, Information Retrieval, and ORAM

2016-02-18 Thread Hannes Mehnert
On 02/18/16 12:23 PM, Rupert Horlick wrote: > The encryption layer is simply an application of the mirage-block-ccm > library, which you can find here: https://github.com/sg2342/mirage-block-ccm > > I have a forked version of the repository which is required for running my > project. This is

Re: [MirageOS-devel] REST-API framework

2016-02-14 Thread Hannes Mehnert
On 02/14/16 01:29 PM, Sven Anderson wrote: >> Am 13.02.2016 um 13:57 schrieb Richard Mortier >> : >> We should update those instructions then. Please could you file an >> issue to remind us to do so? But yes-- that's a lower bound on the >> version :) > > There’s an

[MirageOS-devel] activity of GitHub projects

2016-04-11 Thread Hannes Mehnert
hi, since the dashboard (https://github.com/rudenoise/mirage-dashboard) is not yet ready, I setup a GitHub account which watches a large variety of MirageOS-related projects (starting with the TROVE; unfortunately atm classified as a robot, thus you can't see the repositories). Please let me

Re: [MirageOS-devel] MirageOS fortnightly call^H^HIRC - Wednesday *23rd March* at 4pm GMT

2016-03-23 Thread Hannes Mehnert
On 22/03/2016 18:56, Anil Madhavapeddy wrote: > Firstly, that was an incredible hackathon in Morocco -- the Canopy posts on > http://canopy.mirage.io with the daily hacklist > were great, and I greatly enjoyed merging all the new libraries into OPAM > repository :-)

Re: [MirageOS-devel] Mirage on Raspberry Pi 3

2016-03-08 Thread Hannes Mehnert
On 08/03/2016 16:08, Joel Hughes wrote: > I'm trying to run the ISO directly in qemu and it's running but with a > couple of "unsupported function" errors. > > I've documented my steps here: > https://github.com/rudenoise/solo5-mirage-OSX#current-output Those 'unsupported function' messages

Re: [MirageOS-devel] Structure of mirage-platform for Solo5

2016-05-20 Thread Hannes Mehnert
On 19/05/2016 15:10, Thomas Leonard wrote: > On 19 May 2016 at 11:00, Martin Lucina wrote: >> The current structure of mirage-platform for Xen (the only non-UNIX target) >> looks like this, in dependency order with leaf packages omitted: >> >> minios-xen: Mini-OS kernel >>

Re: [MirageOS-devel] mirageos 3.0 : let's break some APIs

2016-05-20 Thread Hannes Mehnert
hello, I guess first of all we should think about what features we want to have in the next major version? I don't believe we'll get everything done and right in this release, there'll be another breaking release (e.g. an API to write traceroute? a generic tcpdump (module type for packet

[MirageOS-devel] reproducible builds

2016-05-12 Thread Hannes Mehnert
dear hackers, now that OCaml-4.03 is out, and MirageOS works with it, a friend (cc'ed) running the reproducible builds project (sponsored by linux foundation / CII / ..) told me we can appear on https://reproducible-builds.org/who/ This would for sure make sense, if we would have a) some

Re: [MirageOS-devel] Fwd: [GANDI] Expiration of the certificate SSL Standard (mirage.io) in 29 days

2016-04-17 Thread Hannes Mehnert
On 17/04/2016 22:06, Anil Madhavapeddy wrote: > We have a paid-for certificate at the moment for mirage.io, and I was > considering switching to letsencrypt instead. Any objections/thoughts on > this? It may have some compatibility issues on older browsers, but aside > from that seems like a

Re: [MirageOS-devel] mirageos 3.0 : let's break some APIs

2016-07-12 Thread Hannes Mehnert
On 17/06/2016 10:26, Mindy wrote: > * Arp could be refactored not to use wall-clock time for judging whether > to expire entries, but a proper dynamic implementation still needs some > dependency on the current TIME signature, I think. What I meant in this thread with external timer events I now

Re: [MirageOS-devel] Mirage/Solo5 update, ready for early testing

2016-07-02 Thread Hannes Mehnert
hello, On 30/06/2016 15:59, Martin Lucina wrote: > I'm happy to report that Mirage/Solo5 is coming along nicely. For those not > familiar with the port, Mirage/Solo5 enables MirageOS to run on KVM and > other virtio-compliant hypervisors (testers welcome!). I did so, and got it working on

Re: [MirageOS-devel] Master thesis about Mirage (Pioneer projects)

2016-08-16 Thread Hannes Mehnert
On 15/08/2016 19:04, Anil Madhavapeddy wrote: > - Always more protocol implementations needed -- something around certificate > management and Letsencrypt would help keep sites updated regularly. Hannes, > is someone working on the Acme protocol at the moment? (I couldn't find the >

Re: [MirageOS-devel] Qns about Unikernels/hypervisors/baremetal/security

2017-02-10 Thread Hannes Mehnert
On 04/02/2017 17:29, Michael Bright wrote: > [deleted stuff covered in mort's reply] > > How can we be sure about the Hypervisor security. well, we can't. ;) while I don't run any verified hypervisor, there's at least some academic work: - L4 http://sel4.systems/ - "A Formally Verified Static

Re: [MirageOS-devel] mirageos 3 beta: let's do it!

2017-01-17 Thread Hannes Mehnert
On 17/01/2017 11:42, Anil Madhavapeddy wrote: > mirage-entropy-xen (0.3.0 -> 0.3.0) fails now mirage-entropy-xen does no longer exist (superseeded by the mirage-entropy package, which supports xen, solo5 (freestanding) and unix) > qcow (0.7.0 -> 0.7.0) fails now > qcow-format (0.5.0 ->

Re: [MirageOS-devel] NTP client integration with MirageOS / Mini-OS

2016-08-19 Thread Hannes Mehnert
it is really sufficient to mail to the list, there is no need to send the mail to me and cc the list. On 19/08/2016 17:04, Thomas Leonard wrote: > MCLOCK might have internal state for testing, although a global would > work there too if necessary. I'm not sure I understand what you mean with

Re: [MirageOS-devel] Master thesis about Mirage (Pioneer projects)

2016-08-19 Thread Hannes Mehnert
On 17/08/2016 00:02, Róbert Tóth wrote: > Protocol implementation: I always wanted to try implementing a protocol and > the projects proposed by Hannes sound interesting. DNS over TCP(and DNSSEC) > sounds interesting, but I will need some help, because right now I can't > even make the dns (or the

Re: [MirageOS-devel] NTP client integration with MirageOS / Mini-OS

2016-08-19 Thread Hannes Mehnert
Hey, On 27/07/2016 17:07, Mindy wrote: > On 07/27/2016 02:05 PM, Matthew Gray wrote: >> Should MCLOCK also implement the DEVICE signature? I think so, for >> consistency. > > Making PCLOCK be a device looks completely reasonable to me, and I see > no reason not to make MCLOCK be one as well.

Re: [MirageOS-devel] Master thesis about Mirage (Pioneer projects)

2016-08-16 Thread Hannes Mehnert
On 15/08/2016 19:04, Anil Madhavapeddy wrote: > - Always more protocol implementations needed One protocol of interest, now that the surrounding things (crypto/certificates/...) are in place, would be (first) DNS over TCP to implement DNSSEC. In case you feel like doing that, Robert, that'd be

Re: [MirageOS-devel] deprecating 4.02?

2016-09-01 Thread Hannes Mehnert
On 31/08/2016 17:31, Mindy wrote: > Having just tripped over something available in 4.03 but not 4.02 is this significant enough to drop 4.02 support (or is it only the Hashtbl.filter_map_inplace)? Since most MirageOS applications deployed in the wild still use 4.02, I'd appreciate keeping it

Re: [MirageOS-devel] NTP client integration with MirageOS / Mini-OS

2016-09-08 Thread Hannes Mehnert
On 08/09/2016 11:28, Thomas Leonard wrote: > On 7 September 2016 at 15:26, Hannes Mehnert <han...@mehnert.org> wrote: >> On 22/08/2016 15:16, Thomas Leonard wrote: > > [ running a test clock at a multiple of the real clock's speed ] > >>> Right, but this is a ha

Re: [MirageOS-devel] unsigned integers

2016-09-07 Thread Hannes Mehnert
On 07/09/2016 14:50, Anil Madhavapeddy wrote: > The optimisation of the use of builtin functions would probably be drowned > out by the extra 2 value allocations happening because a tuple is being > returned. > > Would it be crazy to pass in a bool ref that could be reused to check for >

[MirageOS-devel] unsigned integers

2016-09-07 Thread Hannes Mehnert
hello, for several projects (i.e. sequence numbers) I had the need to have fixed width unsigned integers. Finally I managed to implement them (8, 16, 32, 64 bit), and would like to hear back from you what you think. The crucial bit for me is that arithmetic expression expose the carry bit

Re: [MirageOS-devel] NTP client integration with MirageOS / Mini-OS

2016-09-07 Thread Hannes Mehnert
On 22/08/2016 15:16, Thomas Leonard wrote: > On 19 August 2016 at 17:59, Hannes Mehnert <han...@mehnert.org> wrote: >> On 19/08/2016 17:50, Hannes Mehnert wrote: >>> it is really sufficient to mail to the list, there is no need to send >>> the mail to me and cc th

Re: [MirageOS-devel] load/startup time error handling

2016-10-04 Thread Hannes Mehnert
On 04/10/2016 12:04, Anil Madhavapeddy wrote: > So this leads me to wonder if we shouldn't just bite the bullet and port > all these interfaces to use Rresult [1] combinators instead. It does provide > excellent support for propagating errors, and combinators for mapping > over result types quite

[MirageOS-devel] (Pioneer)-Projects

2016-08-24 Thread Hannes Mehnert
Hi, I made an initial cut of the Pioneer Projects page to canopy (and sorted some information on canopy, please contribute): http://canopy.mirage.io/Projects I removed the "difficulty" markers, as they were not informative (as discussed earlier). I did not port the projects which are done

[MirageOS-devel] load/startup time error handling

2016-09-30 Thread Hannes Mehnert
Hey, There has been lots of threads about error reporting (both on this list and in several issues). I want to focus in here only on _load time errors_ - which happen during startup (exactly when `connect` is called). Please leave run time error handling out of this thread. So far, connect

Re: [MirageOS-devel] load/startup time error handling

2016-10-01 Thread Hannes Mehnert
On 01/10/2016 15:28, Richard Mortier wrote: > Only thing that comes to mind is to clarify: in cases where one writes > a unikernel that can use (eg) one of two devices, is there a way to > determine which of the devices is actually available at boot, without > triggering an error? > > (I'm

Re: [MirageOS-devel] load/startup time error handling

2016-10-01 Thread Hannes Mehnert
On 30/09/2016 17:13, Hannes Mehnert wrote: > If nobody disagrees (and comes up with non-contrived examples), I'm > happy to massage code into this direction within the next few days. Thanks for the feedback, I prepared a bunch of PRs linked from https://github.com/mirage/mirage/pull/602 .

[MirageOS-devel] remove Str

2016-11-11 Thread Hannes Mehnert
I'm wondering why MirageOS ships an OCaml runtime with the Str module. Str is an imperative, stateful regular expression module distributed with the OCaml runtime (thus no opam package on its own). It comes with ~550 lines of C code which are not in the best shape (according to friends who tried

Re: [MirageOS-devel] Canopy and Liveblogging

2016-10-19 Thread Hannes Mehnert
On 19/10/2016 10:13, Anil Madhavapeddy wrote: >> On Wed, Oct 19, 2016, 5:32 PM Gemma Gordon wrote: > I've also got a slightly rushed PR of the various changes that went into the > ICFP 2016 Canopy deployment here, including Mirage3 API support: >

Re: [MirageOS-devel] docs.mirage.io building again

2016-10-14 Thread Hannes Mehnert
On 14/10/2016 11:29, Anil Madhavapeddy wrote: > Good news everyone! The experimental documentation repository at > http://docs.mirage.io now builds again, and has been refreshed to the latest > set of libraries assembled from the MirageOS3 dev remote at > https://github.com/mirage/mirage-dev

Re: [MirageOS-devel] Using Result instead of Option in libraries

2016-10-14 Thread Hannes Mehnert
On 14/10/2016 15:44, Anil Madhavapeddy wrote: > On 14 Oct 2016, at 15:36, David Scott wrote: >> >> Looks like we have a number of different conventions for the binds. Do we >> want to have the same set of operators with and without Lwt support (and >> open the Infix module

Re: [MirageOS-devel] Using Result instead of Option in libraries

2016-10-14 Thread Hannes Mehnert
On 14/10/2016 15:18, Anil Madhavapeddy wrote: > This is largely within libraries, so the impact wouldn't be too bad. I do > notice that PCLOCK, MCLOCK and IP types do use option to signify failure > though, which would be mirage-types churn... Well, in mirage-types we use (sometimes) `unit

Re: [MirageOS-devel] Using Result instead of Option in libraries

2016-10-14 Thread Hannes Mehnert
[again raising the issue: could some mailing list admin please set the reply-to to the list -- there's no need to send the message to the individual and to the list!] On 14/10/2016 15:23, Anil Madhavapeddy wrote: > On 14 Oct 2016, at 15:11, Hannes Mehnert <han...@mehnert.org> wrote: &g

Re: [MirageOS-devel] Using Result instead of Option in libraries

2016-10-14 Thread Hannes Mehnert
On 14/10/2016 15:08, Anil Madhavapeddy wrote: > >> On 14 Oct 2016, at 15:05, David Scott wrote: >> >> >> On Fri, Oct 14, 2016 at 2:51 PM, Anil Madhavapeddy wrote: >>> We have quite a few base libraries that use the pattern of >>> >>> val foo_exn : ... -> 'a

Re: [MirageOS-devel] Questions about contributing

2016-10-24 Thread Hannes Mehnert
On 24/10/2016 17:20, Mindy wrote: > On 10/22/2016 12:23 PM, Federico Gimenez wrote: >> I'm looking for a way to start contributing to Mirage, I currently >> work as a Software Quality Engineer and have an extensive developer >> background, this is my github profile [1]. I've just begun learning >>

Re: [MirageOS-devel] (Pioneer)-Projects

2016-10-20 Thread Hannes Mehnert
some spare time, please contribute :) hannes On 24/08/2016 19:18, Hannes Mehnert wrote: > Hi, > > I made an initial cut of the Pioneer Projects page to canopy (and sorted > some information on canopy, please contribute): > http://canopy.mirage.io/Projects > > I re

[MirageOS-devel] console interface

2016-11-12 Thread Hannes Mehnert
I tried to find the reasoning behind the log functions in the module type CONSOLE (using the git history). Some facts: - Nowadays (since 15th October 2014, or Mirage-2.0.0) a CONSOLE is a FLOW (and thus has read/write/writev/close) - there is a log_s : t -> string -> unit io - and a log : t ->

Re: [MirageOS-devel] console interface

2016-11-12 Thread Hannes Mehnert
please see https://github.com/mirage/mirage/pull/667 (and https://github.com/mirage/mirage-dev/pull/207 for a happy travis) hannes On 12/11/2016 15:45, Hannes Mehnert wrote: > I tried to find the reasoning behind the log functions in the module > type CONSOLE (using the git history). >

[MirageOS-devel] 3.0 release milestone

2016-11-22 Thread Hannes Mehnert
hello, to get towards a release, and find all the stuff which needs to be done before, in addition to the tracking issues, I used the already existing Milestone 3.0.0 on the GitHub issue tracker for mirage/mirage. This is only an attempt to not loose track of what needs to be done, in order to

Re: [MirageOS-devel] build workflow

2016-11-28 Thread Hannes Mehnert
On 25/11/2016 18:26, Hannes Mehnert wrote: > It does not yet work completely (clean seems to be broken), but please > provide feedback on https://github.com/mirage/functoria/pull/84 and > https://github.com/mirage/mirage/pull/703 Update: works now! Travis job which compiles mirage

[MirageOS-devel] change of pkg config path

2016-11-13 Thread Hannes Mehnert
hello, mato noted while porting mirage-solo5 to topkg [0], that pkg-config files are currently installed into opam/lib/pkgconfig, but they rather belong into opam/share/pkgconfig (and there seems to be no way to install into foreign lib dirs with topkg/install files). I went through all opam

[MirageOS-devel] mirage-runtime

2016-11-15 Thread Hannes Mehnert
Hello again, another (breaking, but mainly internal APIs) change is to move some code which is used in all unikernels into a separate mirage-runtime opam package (which depends on functoria-runtime (formerly functoria.runtime), and mirage-types). Formerly, code was distributed between

Re: [MirageOS-devel] Pinned repos on GitHub

2016-11-15 Thread Hannes Mehnert
On 15/11/2016 11:51, Thomas Leonard wrote: > On 15 November 2016 at 11:39, Amir Chaudhry wrote: >> Hi folks, >> >> I just noticed that GitHub now allows you to pin repos to your profile or >> organisation. Apparently this has been around since June but we missed it >> [1] :)

Re: [MirageOS-devel] OCaml newbie looking to learn and contribute

2016-11-02 Thread Hannes Mehnert
Hi Gabriel, On 02/11/2016 19:28, Gabriel Jaldon wrote: > I'm Gabriel and I'm new to OCaml. I have been learning it the past few > months through the OCaml course at https://www.fun-mooc.fr and the Real > World OCaml book (halfway done with both). I'm a web developer by > profession and currently

Re: [MirageOS-devel] ipv4 configuration overhauls & dhcp client adjustments

2016-11-04 Thread Hannes Mehnert
On 04/11/2016 10:51, Anil Madhavapeddy wrote: > On 4 Nov 2016, at 10:45, Christiano F. Haesbaert > wrote: >> >> On 4 November 2016 at 00:16, Mindy wrote: >>> These changes have been merged! Thanks for all of you who helped out, >>>

Re: [MirageOS-devel] RFC: disconnect / DEVICE lifetime

2016-10-11 Thread Hannes Mehnert
On 10/10/2016 16:00, Thomas Leonard wrote: >> This leads to the lifetime of a DEVICE instance: they can be demanded >> by a unikernel (during configuration/build time), and must be present >> (and in working operation) during runtime. (In some future OCaml it'd >> be nice to have linear types

Re: [MirageOS-devel] Hack retreat 2-7 March 2017 Marrakesh, Morocco

2016-12-15 Thread Hannes Mehnert
I setup a website for this event, to share on other channels: http://marrakech2017.mirage.io/ (which is using MirageOS(~dev) on Solo5/VirtIO/BHyve/FreeBSD) :) On 14/12/2016 18:20, Hannes Mehnert wrote: > Similar to last year, I'll organise a MirageOS hack retreat in March > 2017 in Mar

[MirageOS-devel] Hack retreat 2-7 March 2017 Marrakesh, Morocco

2016-12-14 Thread Hannes Mehnert
Similar to last year, I'll organise a MirageOS hack retreat in March 2017 in Marrakesh, Morocco. Arriving on 1st, leaving on 8th March 2017 is fine. Limited number of spots available. Price is 275 EUR per person (if you cannot afford, but want to join, please send me a mail asking for funding)

Re: [MirageOS-devel] build workflow

2016-12-02 Thread Hannes Mehnert
On 01/12/2016 09:19, Thomas Gazagnaire wrote: >> - mirage configure should recompile the configuration >> according to >> - mirage build should build, and error out if the unikernel was not >> configured upfront > > How do you work with multiple target/config in parallel with this workflow? >

Re: [MirageOS-devel] Hack retreat 1-8 March 2017 Marrakesh, Morocco

2017-01-01 Thread Hannes Mehnert
Hey, - http://marrakech2017.mirage.io - deadline extended until January 15th, register by writing a mail to me - still 11 open spots hannes On 14/12/2016 18:20, Hannes Mehnert wrote: > Similar to last year, I'll organise a MirageOS hack retreat in March > 2017 in Marrakesh, M

Re: [MirageOS-devel] result-y errors and MirageOS 3

2017-01-01 Thread Hannes Mehnert
OM (Mirage_random[6] in mirage-random) > - BLOCK (Mirage_block[7] and mirage-block) > - FLOW (Mirage_flow[8] in mirage-flow) > > And same thing for their respective lwt implementation (V1_LWT.CONSOLE is an > alias to Mirage_console_lwt.S in mirage-console-lwt, etc.) >

[MirageOS-devel] sexplib v0.9.0 breakage of MirageOS unikernels (xen & solo5)

2017-03-23 Thread Hannes Mehnert
Hello, sexplib v0.9.0 was released to opam-repository. This is a successor of 113.33.03. Since v0.9.0, it now depends on base, a new standard library replacement by Jane Street (a stripped down version of Core). Base contains C code, which is not cross-compiled to xen/freestanding targets, thus

Re: [MirageOS-devel] sexplib v0.9.0 breakage of MirageOS unikernels (xen & solo5)

2017-03-23 Thread Hannes Mehnert
On 23/03/2017 14:30, Anil Madhavapeddy wrote: > We could also ask the Sexplib maintainers if the Base dependency is a > hard one. I'm CCing Jeremie Dimino -- is it possible to relax this for > Sexplib so that it can be as dependency-free as previous versions are? According to

Re: [MirageOS-devel] some maintenance on the mirage front-end tool is needed

2017-08-01 Thread Hannes Mehnert
Anil, On 27/07/2017 11:25, Anil Madhavapeddy wrote: > On 26 Jul 2017, at 18:56, Mindy wrote: >> Recently there have been many packages released which replace depopts and >> sublibraries with packages, rename packages to fit more clearly into an >> established naming

[MirageOS-devel] provisioning and deploying unikernels on own hardware

2017-07-10 Thread Hannes Mehnert
hey, over the last weekends I worked on a system to provision and deploy MirageOS unikernels onto a machine with hypervisor (under my control). The result is a bunch of unix processes (event log, console output, statistics, connection handling + virtual machine creation and deletion) written in

Re: [MirageOS-devel] some maintenance on the mirage front-end tool is needed

2017-08-01 Thread Hannes Mehnert
On 01/08/2017 11:14, Anil Madhavapeddy wrote: > I'm back and generating a release of the frontend tool now. I have run into > a number of ancillary changes, particularly unreleased changes in functoria > as well, so it'll take a few hours... thanks! please include (after review, it works fine

  1   2   3   >