package mirage-runtime
The base MirageOS runtime library, part of every MirageOS unikernel
Install
Dune Dependency
Authors
Maintainers
Sources
mirage-4.7.0.tbz
sha256=ade8c410b2de3997c4a513f53f6c990dac6af508161e20df01b64fa7975ca5be
sha512=42fddf09be84c4251417145b88d4f63b41db1b29c9622b2b4e4508e31146f227a16875e670da96251208745f79a42f0b7d2bd8b44b883a705381b4c97a4255b8
doc/src/mirage-runtime.network/mirage_runtime_network.ml.html
Source file mirage_runtime_network.ml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108
open Cmdliner let pf = Format.fprintf let str = Format.asprintf let pp_group ppf = function | None -> pf ppf "the unikernel" | Some s -> pf ppf "the %s group" s let runtime_arg ?(group = "") ~docs ?docv ~doc ~default c name = let prefix = if group = "" then group else group ^ "-" in let doc = Arg.info ~docs ?docv ~doc [ prefix ^ name ] in Arg.(value & opt c default doc) let interface ?group ?(docs = Mirage_runtime.s_net) default = let doc = str "The network interface listened by %a." pp_group group in runtime_arg ~doc ~default ?group ~docs ~docv:"INTERFACE" Arg.string "interface" module Conv = struct let conv of_string to_string : _ Cmdliner.Arg.conv = let pp ppf v = Format.pp_print_string ppf (to_string v) in Cmdliner.Arg.conv (of_string, pp) let ipv4_address = conv Ipaddr.V4.of_string Ipaddr.V4.to_string let ipv4 = conv Ipaddr.V4.Prefix.of_string Ipaddr.V4.Prefix.to_string let ipv6_address = conv Ipaddr.V6.of_string Ipaddr.V6.to_string let ipv6 = conv Ipaddr.V6.Prefix.of_string Ipaddr.V6.Prefix.to_string let ip_address = conv Ipaddr.of_string Ipaddr.to_string end open Conv module V4 = struct let network ?group ?(docs = Mirage_runtime.s_net) default = let doc = str "The network of %a specified as an IP address and netmask, e.g. \ 192.168.0.1/16 ." pp_group group in runtime_arg ~doc ~docs ~docv:"PREFIX" ~default ?group ipv4 "ipv4" let gateway ?group ?(docs = Mirage_runtime.s_net) default = let doc = str "The gateway of %a." pp_group group in runtime_arg ~doc ~docs ~docv:"IP" ~default ?group Arg.(some ipv4_address) "ipv4-gateway" end module V6 = struct let network ?group ?(docs = Mirage_runtime.s_net) default = let doc = str "The network of %a specified as IPv6 address and prefix length." pp_group group in runtime_arg ~doc ~docs ~docv:"PREFIX" ~default ?group Arg.(some ipv6) "ipv6" let gateway ?group ?(docs = Mirage_runtime.s_net) default = let doc = str "The gateway of %a." pp_group group in runtime_arg ~doc ~docs ~docv:"IP" ~default ?group Arg.(some ipv6_address) "ipv6-gateway" let accept_router_advertisements ?group ?(docs = Mirage_runtime.s_net) () = let doc = str "Accept router advertisements for %a." pp_group group in runtime_arg ~doc ~docs ?group ~default:true Arg.bool "accept-router-advertisements" end let ipv4_only ?group ?(docs = Mirage_runtime.s_net) () = let doc = str "Only use IPv4 for %a." pp_group group in runtime_arg ~doc ~docs ?group ~default:false Arg.bool "ipv4-only" let ipv6_only ?group ?(docs = Mirage_runtime.s_net) () = let doc = str "Only use IPv6 for %a." pp_group group in runtime_arg ~doc ~docs ?group ~default:false Arg.bool "ipv6-only" let resolver ?group ?(docs = Mirage_runtime.s_net) ?default () = let doc = str "DNS resolver (default to anycast.censurfridns.dk)" in runtime_arg ~doc ~docv:"IP" ~docs ?group ~default Arg.(some (list string)) "resolver" let syslog ?group ?(docs = Mirage_runtime.s_log) default = let doc = str "syslog server" in runtime_arg ~doc ~docv:"IP" ~docs ?group ~default Arg.(some ip_address) "syslog" let monitor ?group ?(docs = Mirage_runtime.s_log) default = let doc = str "monitor server" in runtime_arg ~doc ~docv:"IP" ~docs ?group ~default Arg.(some ip_address) "monitor" let syslog_port ?group ?(docs = Mirage_runtime.s_log) default = let doc = str "syslog server port" in runtime_arg ~doc ~docs ~docv:"PORT" ?group ~default Arg.(some int) "syslog-port" let syslog_hostname ?group ?(docs = Mirage_runtime.s_log) default = let doc = str "hostname to report to syslog" in runtime_arg ~doc ~docs ~docv:"NAME" ?group ~default Arg.string "syslog-hostname" module Arg = Conv
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>