This commit is contained in:
parent
aa2ff7b2f0
commit
2f3113f55d
11742 changed files with 1223940 additions and 0 deletions
43
unikernel/duniverse/happy-eyeballs/app/test.ml
Normal file
43
unikernel/duniverse/happy-eyeballs/app/test.ml
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
open Lwt.Infix
|
||||
|
||||
let jump () host ports =
|
||||
let t = Happy_eyeballs_lwt.create () in
|
||||
Lwt_main.run (
|
||||
Logs.app (fun m -> m "connecting to %s (on ports %a)" host
|
||||
Fmt.(list ~sep:(any ", ") int) ports);
|
||||
Happy_eyeballs_lwt.connect t host ports >>= function
|
||||
| Ok ((ip, port), fd) ->
|
||||
Logs.app (fun m -> m "connected to %a:%d" Ipaddr.pp ip port);
|
||||
Lwt_unix.close fd >|= fun () ->
|
||||
Ok ()
|
||||
| Error `Msg msg as e ->
|
||||
Logs.app (fun m -> m "failed to connect %s" msg);
|
||||
Lwt.return e)
|
||||
|
||||
let setup_log style_renderer level =
|
||||
Fmt_tty.setup_std_outputs ?style_renderer ();
|
||||
Logs.set_level level;
|
||||
Logs.set_reporter (Logs_fmt.reporter ~dst:Format.std_formatter ())
|
||||
|
||||
open Cmdliner
|
||||
|
||||
let setup_log =
|
||||
Term.(const setup_log
|
||||
$ Fmt_cli.style_renderer ()
|
||||
$ Logs_cli.level ())
|
||||
|
||||
let host =
|
||||
let doc = "Host to connect to" in
|
||||
Arg.(required & pos 0 (some string) None & info [] ~doc ~docv:"HOST")
|
||||
|
||||
let port =
|
||||
let doc = "Ports to connect to" in
|
||||
Arg.(value & opt_all int [443;80] & info [ "port" ] ~doc ~docv:"PORT")
|
||||
|
||||
let cmd =
|
||||
let term = Term.(term_result (const jump $ setup_log $ host $ port))
|
||||
and info = Cmd.info "test" ~version:"2.0.1"
|
||||
in
|
||||
Cmd.v info term
|
||||
|
||||
let () = exit (Cmd.eval cmd)
|
||||
Loading…
Add table
Add a link
Reference in a new issue