summaryrefslogtreecommitdiff
path: root/static/freebsd/man4/ng_pptpgre.4 3.html
diff options
context:
space:
mode:
Diffstat (limited to 'static/freebsd/man4/ng_pptpgre.4 3.html')
-rw-r--r--static/freebsd/man4/ng_pptpgre.4 3.html179
1 files changed, 0 insertions, 179 deletions
diff --git a/static/freebsd/man4/ng_pptpgre.4 3.html b/static/freebsd/man4/ng_pptpgre.4 3.html
deleted file mode 100644
index 486ce1a0..00000000
--- a/static/freebsd/man4/ng_pptpgre.4 3.html
+++ /dev/null
@@ -1,179 +0,0 @@
-<table class="head">
- <tr>
- <td class="head-ltitle">NG_PPTPGRE(4)</td>
- <td class="head-vol">Device Drivers Manual</td>
- <td class="head-rtitle">NG_PPTPGRE(4)</td>
- </tr>
-</table>
-<div class="manual-text">
-<section class="Sh">
-<h1 class="Sh" id="NAME"><a class="permalink" href="#NAME">NAME</a></h1>
-<p class="Pp"><code class="Nm">ng_pptpgre</code> &#x2014; <span class="Nd">PPTP
- GRE protocol netgraph node type</span></p>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="SYNOPSIS"><a class="permalink" href="#SYNOPSIS">SYNOPSIS</a></h1>
-<p class="Pp"><code class="In">#include
- &lt;<a class="In">sys/types.h</a>&gt;</code>
- <br/>
- <code class="In">#include
- &lt;<a class="In">netgraph/ng_pptpgre.h</a>&gt;</code></p>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="DESCRIPTION"><a class="permalink" href="#DESCRIPTION">DESCRIPTION</a></h1>
-<p class="Pp">The <code class="Nm">pptpgre</code> node type performs Generic
- Routing Encapsulation (GRE) over IP for the PPTP protocol as specified by
- RFC 2637. This involves packet encapsulation, sequencing, acknowledgement,
- and an adaptive timeout sliding window mechanism. This node type does not
- handle any of the TCP control protocol or call negotiation defined by
- PPTP.</p>
-<p class="Pp">This node type expects to receive complete IP packets, including
- the IP header, on the &#x201C;<code class="Li">lower</code>&#x201D; hook,
- but it transmits outgoing frames without any IP header. The typical use for
- this node type would be to connect the
- &#x201C;<code class="Li">upper</code>&#x201D; hook to one of the link hooks
- of a <a class="Xr">ng_ppp(4)</a> node, and the
- &#x201C;<code class="Li">lower</code>&#x201D; hook to the
- &#x201C;<code class="Li">inet/raw/gre</code>&#x201D; hook of a
- <a class="Xr">ng_ksocket(4)</a> node.</p>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="HOOKS"><a class="permalink" href="#HOOKS">HOOKS</a></h1>
-<p class="Pp">This node type supports the following hooks:</p>
-<dl class="Bl-tag">
- <dt id="session_hhhh"><var class="Va">session_hhhh</var></dt>
- <dd>Session 0xhhhh data packets to the upper protocol layers</dd>
- <dt id="upper"><var class="Va">upper</var></dt>
- <dd>Same as session_hhhh, but for single session with configurable cid
- (legacy)</dd>
- <dt id="lower"><var class="Va">lower</var></dt>
- <dd>Connection to the lower protocol layers</dd>
-</dl>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="CONTROL_MESSAGES"><a class="permalink" href="#CONTROL_MESSAGES">CONTROL
- MESSAGES</a></h1>
-<p class="Pp">This node type supports the generic control messages, plus the
- following:</p>
-<dl class="Bl-tag">
- <dt id="NGM_PPTPGRE_SET_CONFIG"><a class="permalink" href="#NGM_PPTPGRE_SET_CONFIG"><code class="Dv">NGM_PPTPGRE_SET_CONFIG</code></a>
- (<code class="Ic">setconfig</code>)</dt>
- <dd>This command resets and configures hook for a session. If corresponding
- session_hhhh hook is not connected, upper hook will be configured. This
- command takes a <var class="Vt">struct ng_pptpgre_conf</var> as an
- argument:
- <div class="Bd Pp Li">
- <pre>/* Configuration for a session */
-struct ng_pptpgre_conf {
- u_char enabled; /* enables traffic flow */
- u_char enableDelayedAck; /* enables delayed acks */
- u_char enableAlwaysAck; /* always include ack with data */
- u_char enableWindowing; /* enable windowing algorithm */
- uint16_t cid; /* my call id */
- uint16_t peerCid; /* peer call id */
- uint16_t recvWin; /* peer recv window size */
- uint16_t peerPpd; /* peer packet processing delay
- (in 1/10 of a second) */
-};</pre>
- </div>
- <p class="Pp">The <var class="Va">enabled</var> field enables traffic flow
- through the node. The <var class="Va">enableDelayedAck</var> field
- enables delayed acknowledgement (maximum 250 milliseconds), which is a
- useful optimization and should generally be turned on.
- <var class="Va">enableAlwaysAck</var> field enables sending
- acknowledgements with every data packet, which is probably helpful as
- well.</p>
- <p class="Pp"><var class="Va">enableWindowing</var> enables the PPTP packet
- windowing mechanism specified by the protocol. Disabling this will cause
- the node to violate the protocol, possibly confusing other PPTP peers,
- but often results in better performance. The windowing mechanism is a
- design error in the PPTP protocol; L2TP, the successor to PPTP, removes
- it.</p>
- <p class="Pp">The remaining fields are as supplied by the PPTP virtual call
- setup process.</p>
- </dd>
- <dt id="NGM_PPTPGRE_GET_CONFIG"><a class="permalink" href="#NGM_PPTPGRE_GET_CONFIG"><code class="Dv">NGM_PPTPGRE_GET_CONFIG</code></a>
- (<code class="Ic">getconfig</code>)</dt>
- <dd>Takes two byte argument as cid and returns the current configuration as a
- <var class="Vt">struct ng_pptpgre_conf</var>.</dd>
- <dt id="NGM_PPTPGRE_GET_STATS"><a class="permalink" href="#NGM_PPTPGRE_GET_STATS"><code class="Dv">NGM_PPTPGRE_GET_STATS</code></a>
- (<code class="Ic">getstats</code>)</dt>
- <dd>This command returns a <var class="Vt">struct ng_pptpgre_stats</var>
- containing various node statistics.</dd>
- <dt id="NGM_PPTPGRE_CLR_STATS"><a class="permalink" href="#NGM_PPTPGRE_CLR_STATS"><code class="Dv">NGM_PPTPGRE_CLR_STATS</code></a>
- (<code class="Ic">clrstats</code>)</dt>
- <dd>This command resets the node statistics.</dd>
- <dt id="NGM_PPTPGRE_GETCLR_STATS"><a class="permalink" href="#NGM_PPTPGRE_GETCLR_STATS"><code class="Dv">NGM_PPTPGRE_GETCLR_STATS</code></a>
- (<code class="Ic">getclrstats</code>)</dt>
- <dd>This command atomically gets and resets the node statistics, returning a
- <var class="Vt">struct ng_pptpgre_stats</var>.</dd>
-</dl>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="SHUTDOWN"><a class="permalink" href="#SHUTDOWN">SHUTDOWN</a></h1>
-<p class="Pp">This node shuts down upon receipt of a
- <code class="Dv">NGM_SHUTDOWN</code> control message, or when both hooks
- have been disconnected.</p>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="SYSCTL_VARIABLES"><a class="permalink" href="#SYSCTL_VARIABLES">SYSCTL
- VARIABLES</a></h1>
-<p class="Pp">A set of <a class="Xr">sysctl(8)</a> variables controls ability of
- this node to deal with some amount of packet reorder that sometimes happens
- in transit. Packet reorder results in packet drops (unless the order is
- restored) as PPP protocol can not deliver reordered data. These variables
- are shown below together with their default value and meaning:</p>
-<dl class="Bl-tag">
- <dt id="net.graph.pptpgre.reorder_max:"><var class="Va">net.graph.pptpgre.reorder_max:
- 1</var></dt>
- <dd>Defines maximum length of node's private reorder queue used to keep data
- waiting for late packets. Zero value disables reordering. Default value
- allows the node to restore the order for two packets swapped in transit.
- Greater values allow the node to deliver packets being late after more
- packets in sequence at cost of increased kernel memory usage.</dd>
- <dt id="net.graph.pptpgre.reorder_timeout:"><var class="Va">net.graph.pptpgre.reorder_timeout:
- 1</var></dt>
- <dd>Defines time value in milliseconds used to wait for late packets.</dd>
-</dl>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="SEE_ALSO"><a class="permalink" href="#SEE_ALSO">SEE
- ALSO</a></h1>
-<p class="Pp"><a class="Xr">netgraph(4)</a>, <a class="Xr">ng_ksocket(4)</a>,
- <a class="Xr">ng_ppp(4)</a>, <a class="Xr">ngctl(8)</a>,
- <a class="Xr">sysctl(8)</a></p>
-<p class="Pp"><cite class="Rs"><span class="RsA">K. Hamzeh</span>,
- <span class="RsA">G. Pall</span>, <span class="RsA">W. Verthein</span>,
- <span class="RsA">J. Taarud</span>, <span class="RsA">W. Little</span>, and
- <span class="RsA">G. Zorn</span>, <span class="RsT">Point-to-Point Tunneling
- Protocol (PPTP)</span>, <span class="RsO">RFC 2637</span>.</cite></p>
-<p class="Pp"><cite class="Rs"><span class="RsA">S. Hanks</span>,
- <span class="RsA">T. Li</span>, <span class="RsA">D. Farinacci</span>, and
- <span class="RsA">P. Traina</span>, <span class="RsT">Generic Routing
- Encapsulation over IPv4 networks</span>, <span class="RsO">RFC
- 1702</span>.</cite></p>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="HISTORY"><a class="permalink" href="#HISTORY">HISTORY</a></h1>
-<p class="Pp">The <code class="Nm">ng_pptpgre</code> node type was implemented
- in <span class="Ux">FreeBSD 4.0</span>.</p>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="AUTHORS"><a class="permalink" href="#AUTHORS">AUTHORS</a></h1>
-<p class="Pp"><span class="An">Archie Cobbs</span>
- &lt;<a class="Mt" href="mailto:archie@FreeBSD.org">archie@FreeBSD.org</a>&gt;</p>
-</section>
-<section class="Sh">
-<h1 class="Sh" id="BUGS"><a class="permalink" href="#BUGS">BUGS</a></h1>
-<p class="Pp">The node should not expect incoming GRE packets to have an IP
- header. This behavior is inherited from the (converse) behavior of raw IP
- sockets. An intermediate node that strips IP headers in one direction should
- be used instead.</p>
-</section>
-</div>
-<table class="foot">
- <tr>
- <td class="foot-date">November 4, 2018</td>
- <td class="foot-os">FreeBSD 15.0</td>
- </tr>
-</table>