-
Notifications
You must be signed in to change notification settings - Fork 18
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
70 changed files
with
1,477 additions
and
101 deletions.
There are no files selected for viewing
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,9 @@ | ||
<!DOCTYPE html> | ||
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Dhcp_client (charrua-client.Dhcp_client)</title><link rel="stylesheet" href="../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.0.2"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> – <a href="../index.html">charrua-client</a> » Dhcp_client</nav><header class="odoc-preamble"><h1>Module <code><span>Dhcp_client</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type" id="type-t" class="anchored"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span></code></div><div class="spec-doc"><p>we expect all serialization and deserialization to happen through Cstruct.t</p></div></div><div class="odoc-spec"><div class="spec value" id="val-pp" class="anchored"><a href="#val-pp" class="anchor"></a><code><span><span class="keyword">val</span> pp : <span><span class="xref-unresolved">Stdlib</span>.Format.formatter <span class="arrow">-></span></span> <span><a href="#type-t">t</a> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-create" class="anchored"><a href="#val-create" class="anchor"></a><code><span><span class="keyword">val</span> create : <span>?requests:<span><a href="../../charrua/Dhcp_wire/index.html#type-option_code">Dhcp_wire.option_code</a> list</span> <span class="arrow">-></span></span> <span><span class="xref-unresolved">Cstruct</span>.uint32 <span class="arrow">-></span></span> <span><span class="xref-unresolved">Macaddr</span>.t <span class="arrow">-></span></span> <a href="#type-t">t</a> * <a href="../../charrua/Dhcp_wire/index.html#type-pkt">Dhcp_wire.pkt</a></span></code></div><div class="spec-doc"><p><code>create xid mac</code> returns a pair of <code>t, buffer</code>. <code>t</code> represents the current * state of the client in the lease transaction, and <code>buffer</code> is the suggested * next packet the caller should take to progress toward accepting a lease. * The argument <code>xid</code> allows the caller to specify a transaction ID * to use for the lease attempt. * <code>requests</code> is a list of option codes which the client should ask for in its * attempt to get a DHCP lease. If <code>requests</code> is not given, we'll make an educated * guess rather than requesting nothing.</p></div></div><div class="odoc-spec"><div class="spec value" id="val-input" class="anchored"><a href="#val-input" class="anchor"></a><code><span><span class="keyword">val</span> input : <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <span><span class="xref-unresolved">Cstruct</span>.t <span class="arrow">-></span></span> <span>[ <span>`Response of <a href="#type-t">t</a> * <a href="../../charrua/Dhcp_wire/index.html#type-pkt">Dhcp_wire.pkt</a></span> <span><span>| `New_lease</span> of <a href="#type-t">t</a> * <a href="../../charrua/Dhcp_wire/index.html#type-pkt">Dhcp_wire.pkt</a></span> <span>| `Noop</span> ]</span></span></code></div><div class="spec-doc"><p><code>input t buf</code> attempts to advance the state of <code>t</code> * with the contents of <code>buf</code>. If <code>buf</code> is invalid or not useful given * the current state of <code>t</code>, <code>`Noop</code> is returned indicating no action should be taken. * Otherwise, either a <code>`Response</code> will be suggested along with a <code>t</code> whose state has been advanced, * or a <code>`New_lease</code> will be returned along with a <code>t</code> whose state has been advanced.</p></div></div><div class="odoc-spec"><div class="spec value" id="val-lease" class="anchored"><a href="#val-lease" class="anchor"></a><code><span><span class="keyword">val</span> lease : <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <span><a href="../../charrua/Dhcp_wire/index.html#type-pkt">Dhcp_wire.pkt</a> option</span></span></code></div><div class="spec-doc"><p><code>lease t</code> will return <code>Some lease</code> if <code>t</code> has succeeded in * completing a lease transaction with some server. * Note that the library has no sense of the passage of time, so expiration * is not considered; there is no guarantee that <code>Some lease</code> is still * valid on the network. The caller is responsible for keeping track of * the time at which the lease was obtained, and renewing the lease when * necessary. * If <code>t</code> hasn't yet completed a lease transaction, <code>None</code> will be returned.</p></div></div><div class="odoc-spec"><div class="spec value" id="val-renew" class="anchored"><a href="#val-renew" class="anchor"></a><code><span><span class="keyword">val</span> renew : <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <span>[ <span>`Response of <a href="#type-t">t</a> * <a href="../../charrua/Dhcp_wire/index.html#type-pkt">Dhcp_wire.pkt</a></span> <span>| `Noop</span> ]</span></span></code></div><div class="spec-doc"><p><code>renew t</code> returns either a <code>`Response</code> with the next state and suggested action * of the client attempting to renew <code>t</code>'s lease, * or <code>`Noop</code> if <code>t</code> does not have a lease and therefore can't be renewed.</p></div></div></div></body></html> | ||
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Dhcp_client (charrua-client.Dhcp_client)</title><meta charset="utf-8"/><link rel="stylesheet" href="../../odoc.support/odoc.css"/><meta name="generator" content="odoc 2.4.3"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../odoc.support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> – <a href="../index.html">charrua-client</a> » Dhcp_client</nav><header class="odoc-preamble"><h1>Module <code><span>Dhcp_client</span></code></h1></header><div class="odoc-content"><div class="odoc-spec"><div class="spec type anchored" id="type-t"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span></code></div><div class="spec-doc"><p>we expect all serialization and deserialization to happen through Cstruct.t</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-pp"><a href="#val-pp" class="anchor"></a><code><span><span class="keyword">val</span> pp : <span><span class="xref-unresolved">Stdlib</span>.Format.formatter <span class="arrow">-></span></span> <span><a href="#type-t">t</a> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-create"><a href="#val-create" class="anchor"></a><code><span><span class="keyword">val</span> create : | ||
<span><span class="optlabel">?requests</span>:<span><a href="../../charrua/Dhcp_wire/index.html#type-option_code">Dhcp_wire.option_code</a> list</span> <span class="arrow">-></span></span> | ||
<span><span class="xref-unresolved">Cstruct</span>.uint32 <span class="arrow">-></span></span> | ||
<span><span class="xref-unresolved">Macaddr</span>.t <span class="arrow">-></span></span> | ||
<a href="#type-t">t</a> * <a href="../../charrua/Dhcp_wire/index.html#type-pkt">Dhcp_wire.pkt</a></span></code></div><div class="spec-doc"><p><code>create xid mac</code> returns a pair of <code>t, buffer</code>. <code>t</code> represents the current * state of the client in the lease transaction, and <code>buffer</code> is the suggested * next packet the caller should take to progress toward accepting a lease. * The argument <code>xid</code> allows the caller to specify a transaction ID * to use for the lease attempt. * <code>requests</code> is a list of option codes which the client should ask for in its * attempt to get a DHCP lease. If <code>requests</code> is not given, we'll make an educated * guess rather than requesting nothing.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-input"><a href="#val-input" class="anchor"></a><code><span><span class="keyword">val</span> input : | ||
<span><a href="#type-t">t</a> <span class="arrow">-></span></span> | ||
<span><span class="xref-unresolved">Cstruct</span>.t <span class="arrow">-></span></span> | ||
<span>[ <span>`Response of <a href="#type-t">t</a> * <a href="../../charrua/Dhcp_wire/index.html#type-pkt">Dhcp_wire.pkt</a></span> <span><span>| `New_lease</span> of <a href="#type-t">t</a> * <a href="../../charrua/Dhcp_wire/index.html#type-pkt">Dhcp_wire.pkt</a></span> <span>| `Noop</span> ]</span></span></code></div><div class="spec-doc"><p><code>input t buf</code> attempts to advance the state of <code>t</code> * with the contents of <code>buf</code>. If <code>buf</code> is invalid or not useful given * the current state of <code>t</code>, <code>`Noop</code> is returned indicating no action should be taken. * Otherwise, either a <code>`Response</code> will be suggested along with a <code>t</code> whose state has been advanced, * or a <code>`New_lease</code> will be returned along with a <code>t</code> whose state has been advanced.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-lease"><a href="#val-lease" class="anchor"></a><code><span><span class="keyword">val</span> lease : <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <span><a href="../../charrua/Dhcp_wire/index.html#type-pkt">Dhcp_wire.pkt</a> option</span></span></code></div><div class="spec-doc"><p><code>lease t</code> will return <code>Some lease</code> if <code>t</code> has succeeded in * completing a lease transaction with some server. * Note that the library has no sense of the passage of time, so expiration * is not considered; there is no guarantee that <code>Some lease</code> is still * valid on the network. The caller is responsible for keeping track of * the time at which the lease was obtained, and renewing the lease when * necessary. * If <code>t</code> hasn't yet completed a lease transaction, <code>None</code> will be returned.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-renew"><a href="#val-renew" class="anchor"></a><code><span><span class="keyword">val</span> renew : <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <span>[ <span>`Response of <a href="#type-t">t</a> * <a href="../../charrua/Dhcp_wire/index.html#type-pkt">Dhcp_wire.pkt</a></span> <span>| `Noop</span> ]</span></span></code></div><div class="spec-doc"><p><code>renew t</code> returns either a <code>`Response</code> with the next state and suggested action * of the client attempting to renew <code>t</code>'s lease, * or <code>`Noop</code> if <code>t</code> does not have a lease and therefore can't be renewed.</p></div></div></div></body></html> |
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,7 @@ | ||
<!DOCTYPE html> | ||
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Make (charrua-client.Dhcp_client_lwt.Make)</title><link rel="stylesheet" href="../../../odoc.css"/><meta charset="utf-8"/><meta name="generator" content="odoc 2.0.2"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> – <a href="../../index.html">charrua-client</a> » <a href="../index.html">Dhcp_client_lwt</a> » Make</nav><header class="odoc-preamble"><h1>Module <code><span>Dhcp_client_lwt.Make</span></code></h1></header><nav class="odoc-toc"><ul><li><a href="#parameters">Parameters</a></li><li><a href="#signature">Signature</a></li></ul></nav><div class="odoc-content"><h2 id="parameters"><a href="#parameters" class="anchor"></a>Parameters</h2><div class="odoc-spec"><div class="spec parameter" id="argument-1-Random" class="anchored"><a href="#argument-1-Random" class="anchor"></a><code><span><span class="keyword">module</span> </span><span>Random</span><span> : <span class="xref-unresolved">Mirage_random</span>.S</span></code></div></div><div class="odoc-spec"><div class="spec parameter" id="argument-2-Time" class="anchored"><a href="#argument-2-Time" class="anchor"></a><code><span><span class="keyword">module</span> </span><span>Time</span><span> : <span class="xref-unresolved">Mirage_time</span>.S</span></code></div></div><div class="odoc-spec"><div class="spec parameter" id="argument-3-Net" class="anchored"><a href="#argument-3-Net" class="anchor"></a><code><span><span class="keyword">module</span> </span><span>Net</span><span> : <span class="xref-unresolved">Mirage_net</span>.S</span></code></div></div><h2 id="signature"><a href="#signature" class="anchor"></a>Signature</h2><div class="odoc-spec"><div class="spec type" id="type-lease" class="anchored"><a href="#type-lease" class="anchor"></a><code><span><span class="keyword">type</span> lease</span><span> = <a href="../../../charrua/Dhcp_wire/index.html#type-pkt">Dhcp_wire.pkt</a></span></code></div></div><div class="odoc-spec"><div class="spec type" id="type-t" class="anchored"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span><span> = <span><a href="#type-lease">lease</a> <span class="xref-unresolved">Lwt_stream</span>.t</span></span></code></div></div><div class="odoc-spec"><div class="spec value" id="val-connect" class="anchored"><a href="#val-connect" class="anchor"></a><code><span><span class="keyword">val</span> connect : <span>?renew:bool <span class="arrow">-></span></span> <span>?xid:<span class="xref-unresolved">Cstruct</span>.uint32 <span class="arrow">-></span></span> <span>?requests:<span><a href="../../../charrua/Dhcp_wire/index.html#type-option_code">Dhcp_wire.option_code</a> list</span> <span class="arrow">-></span></span> <span><span class="xref-unresolved">Net</span>.t <span class="arrow">-></span></span> <span><a href="#type-t">t</a> <span class="xref-unresolved">Lwt</span>.t</span></span></code></div><div class="spec-doc"><p><code>connect renew ~xid requests net</code> starts a DHCP client communicating over the network interface <code>net</code>. The client will attempt to get a DHCP lease at least once, and will return any leases obtained in the stream returned by <code>connect</code>. If <code>renew</code> is true, which it is by default, the client will attempt to renew the lease according to the logic in RFC2131. If <code>renew</code> is false, the client will cancel its listener and end the stream once the first lease has been obtained.</p></div></div></div></body></html> | ||
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Make (charrua-client.Dhcp_client_lwt.Make)</title><meta charset="utf-8"/><link rel="stylesheet" href="../../../odoc.support/odoc.css"/><meta name="generator" content="odoc 2.4.3"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../odoc.support/highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> – <a href="../../index.html">charrua-client</a> » <a href="../index.html">Dhcp_client_lwt</a> » Make</nav><header class="odoc-preamble"><h1>Module <code><span>Dhcp_client_lwt.Make</span></code></h1></header><nav class="odoc-toc"><ul><li><a href="#parameters">Parameters</a></li><li><a href="#signature">Signature</a></li></ul></nav><div class="odoc-content"><h2 id="parameters"><a href="#parameters" class="anchor"></a>Parameters</h2><div class="odoc-spec"><div class="spec parameter anchored" id="argument-1-Random"><a href="#argument-1-Random" class="anchor"></a><code><span><span class="keyword">module</span> </span><span>Random</span><span> : <span class="xref-unresolved">Mirage_crypto_rng_mirage</span>.S</span></code></div></div><div class="odoc-spec"><div class="spec parameter anchored" id="argument-2-Time"><a href="#argument-2-Time" class="anchor"></a><code><span><span class="keyword">module</span> </span><span>Time</span><span> : <span class="xref-unresolved">Mirage_time</span>.S</span></code></div></div><div class="odoc-spec"><div class="spec parameter anchored" id="argument-3-Net"><a href="#argument-3-Net" class="anchor"></a><code><span><span class="keyword">module</span> </span><span>Net</span><span> : <span class="xref-unresolved">Mirage_net</span>.S</span></code></div></div><h2 id="signature"><a href="#signature" class="anchor"></a>Signature</h2><div class="odoc-spec"><div class="spec type anchored" id="type-lease"><a href="#type-lease" class="anchor"></a><code><span><span class="keyword">type</span> lease</span><span> = <a href="../../../charrua/Dhcp_wire/index.html#type-pkt">Dhcp_wire.pkt</a></span></code></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-t"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span><span> = <span><a href="#type-lease">lease</a> <span class="xref-unresolved">Lwt_stream</span>.t</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-connect"><a href="#val-connect" class="anchor"></a><code><span><span class="keyword">val</span> connect : | ||
<span><span class="optlabel">?renew</span>:bool <span class="arrow">-></span></span> | ||
<span><span class="optlabel">?xid</span>:<span class="xref-unresolved">Cstruct</span>.uint32 <span class="arrow">-></span></span> | ||
<span><span class="optlabel">?requests</span>:<span><a href="../../../charrua/Dhcp_wire/index.html#type-option_code">Dhcp_wire.option_code</a> list</span> <span class="arrow">-></span></span> | ||
<span><span class="xref-unresolved">Net</span>.t <span class="arrow">-></span></span> | ||
<span><a href="#type-t">t</a> <span class="xref-unresolved">Lwt</span>.t</span></span></code></div><div class="spec-doc"><p><code>connect renew ~xid requests net</code> starts a DHCP client communicating over the network interface <code>net</code>. The client will attempt to get a DHCP lease at least once, and will return any leases obtained in the stream returned by <code>connect</code>. If <code>renew</code> is true, which it is by default, the client will attempt to renew the lease according to the logic in RFC2131. If <code>renew</code> is false, the client will cancel its listener and end the stream once the first lease has been obtained.</p></div></div></div></body></html> |
Oops, something went wrong.