diff options
Diffstat (limited to 'static/freebsd/man4/dtrace_udp.4 3.html')
| -rw-r--r-- | static/freebsd/man4/dtrace_udp.4 3.html | 199 |
1 files changed, 0 insertions, 199 deletions
diff --git a/static/freebsd/man4/dtrace_udp.4 3.html b/static/freebsd/man4/dtrace_udp.4 3.html deleted file mode 100644 index 64baf51e..00000000 --- a/static/freebsd/man4/dtrace_udp.4 3.html +++ /dev/null @@ -1,199 +0,0 @@ -<table class="head"> - <tr> - <td class="head-ltitle">DTRACE_UDP(4)</td> - <td class="head-vol">Device Drivers Manual</td> - <td class="head-rtitle">DTRACE_UDP(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">dtrace_udp</code> — <span class="Nd">a - DTrace provider for tracing events related to the UDP protocol</span></p> -</section> -<section class="Sh"> -<h1 class="Sh" id="SYNOPSIS"><a class="permalink" href="#SYNOPSIS">SYNOPSIS</a></h1> -<p class="Pp"><code class="Fn">udp:::receive</code>(<var class="Fa" style="white-space: nowrap;">pktinfo_t - *</var>, <var class="Fa" style="white-space: nowrap;">csinfo_t *</var>, - <var class="Fa" style="white-space: nowrap;">ipinfo_t *</var>, - <var class="Fa" style="white-space: nowrap;">udpsinfo_t *</var>, - <var class="Fa" style="white-space: nowrap;">udpinfo_t *</var>);</p> -<p class="Pp"><code class="Fn">udp:::send</code>(<var class="Fa" style="white-space: nowrap;">pktinfo_t - *</var>, <var class="Fa" style="white-space: nowrap;">csinfo_t *</var>, - <var class="Fa" style="white-space: nowrap;">ipinfo_t *</var>, - <var class="Fa" style="white-space: nowrap;">udpsinfo_t *</var>, - <var class="Fa" style="white-space: nowrap;">udpinfo_t *</var>);</p> -</section> -<section class="Sh"> -<h1 class="Sh" id="DESCRIPTION"><a class="permalink" href="#DESCRIPTION">DESCRIPTION</a></h1> -<p class="Pp">The DTrace <code class="Nm">udp</code> provider allows users to - trace events in the <a class="Xr">udp(4)</a> protocol implementation. The - <a class="permalink" href="#udp:::send"><code class="Fn" id="udp:::send">udp:::send</code></a>() - probe fires whenever the kernel prepares to transmit a UDP packet, and the - <a class="permalink" href="#udp:::receive"><code class="Fn" id="udp:::receive">udp:::receive</code></a>() - probe fires whenever the kernel receives a UDP packet, unless the UDP header - is incomplete, the destination port is 0, the length field is invalid, or - the checksum is wrong. The arguments to these probes can be used to obtain - detailed information about the IP and UDP headers of the corresponding - packet.</p> -</section> -<section class="Sh"> -<h1 class="Sh" id="ARGUMENTS"><a class="permalink" href="#ARGUMENTS">ARGUMENTS</a></h1> -<p class="Pp">The <var class="Vt">pktinfo_t</var> argument is currently - unimplemented and is included for compatibility with other implementations - of this provider. Its fields are:</p> -<div class="Bd-indent"> -<dl class="Bl-tag"> - <dt><var class="Vt">uintptr_t pkt_addr</var></dt> - <dd>Always set to 0.</dd> -</dl> -</div> -<p class="Pp">The <var class="Vt">csinfo_t</var> argument is currently - unimplemented and is included for compatibility with other implementations - of this provider. Its fields are:</p> -<div class="Bd-indent"> -<dl class="Bl-tag"> - <dt><var class="Vt">uintptr_t cs_addr</var></dt> - <dd>Always set to 0.</dd> - <dt><var class="Vt">uint64_t cs_cid</var></dt> - <dd>A pointer to the <var class="Vt">struct inpcb</var> for this packet, or - <code class="Dv">NULL</code>.</dd> - <dt><var class="Vt">pid_t cs_pid</var></dt> - <dd>Always set to 0.</dd> -</dl> -</div> -<p class="Pp">The <var class="Vt">ipinfo_t</var> argument contains IP fields - common to both IPv4 and IPv6 packets. Its fields are:</p> -<div class="Bd-indent"> -<dl class="Bl-tag"> - <dt><var class="Vt">uint8_t ip_ver</var></dt> - <dd>IP version of the packet, 4 for IPv4 packets and 6 for IPv6 packets.</dd> - <dt><var class="Vt">uint32_t ip_plength</var></dt> - <dd>IP payload size. This does not include the size of the IP header or IPv6 - option headers.</dd> - <dt><var class="Vt">string ip_saddr</var></dt> - <dd>IP source address.</dd> - <dt><var class="Vt">string ip_daddr</var></dt> - <dd>IP destination address.</dd> -</dl> -</div> -<p class="Pp">The <var class="Vt">udpsinfo_t</var> argument contains the state - of the UDP connection associated with the packet. Its fields are:</p> -<div class="Bd-indent"> -<dl class="Bl-tag"> - <dt><var class="Vt">uintptr_t udps_addr</var></dt> - <dd>Pointer to the <var class="Vt">struct inpcb</var> containing the IP state - for the associated socket.</dd> - <dt><var class="Vt">uint16_t udps_lport</var></dt> - <dd>Local UDP port.</dd> - <dt><var class="Vt">uint16_t udps_rport</var></dt> - <dd>Remote UDP port.</dd> - <dt><var class="Vt">string udps_laddr</var></dt> - <dd>Local IPv4 or IPv6 address.</dd> - <dt><var class="Vt">string udps_raddr</var></dt> - <dd>Remote IPv4 or IPv6 address.</dd> -</dl> -</div> -<p class="Pp">The <var class="Vt">udpinfo_t</var> argument is the raw UDP header - of the packet, with all fields in host order. Its fields are:</p> -<div class="Bd-indent"> -<dl class="Bl-tag"> - <dt><var class="Vt">uint16_t udp_sport</var></dt> - <dd>Source UDP port.</dd> - <dt><var class="Vt">uint16_t udp_dport</var></dt> - <dd>Destination UDP port.</dd> - <dt><var class="Vt">uint16_t udp_length</var></dt> - <dd>Length of the UDP header and payload, in bytes.</dd> - <dt><var class="Vt">uint16_t udp_checksum</var></dt> - <dd>A checksum of the UDP header and payload, or 0 if no checksum was - calculated.</dd> - <dt><var class="Vt">struct udphdr *udp_hdr</var></dt> - <dd>A pointer to the raw UDP header.</dd> -</dl> -</div> -</section> -<section class="Sh"> -<h1 class="Sh" id="FILES"><a class="permalink" href="#FILES">FILES</a></h1> -<dl class="Bl-tag Bl-compact"> - <dt><span class="Pa">/usr/lib/dtrace/udp.d</span></dt> - <dd>DTrace type and translator definitions for the <code class="Nm">udp</code> - provider.</dd> -</dl> -</section> -<section class="Sh"> -<h1 class="Sh" id="EXAMPLES"><a class="permalink" href="#EXAMPLES">EXAMPLES</a></h1> -<p class="Pp">The following script counts transmitted packets by destination - port.</p> -<div class="Bd Pp Bd-indent Li"> -<pre>udp:::send -{ - @num[args[4]->udp_dport] = count(); -}</pre> -</div> -<p class="Pp">This script will print some details of each UDP packet as it is - sent or received by the kernel:</p> -<div class="Bd Pp Bd-indent Li"> -<pre>#pragma D option quiet -#pragma D option switchrate=10Hz - -dtrace:::BEGIN -{ - printf(" %10s %36s %-36s %6s\n", "DELTA(us)", "SOURCE", - "DEST", "BYTES"); - last = timestamp; -} - -udp:::send -{ - this->elapsed = (timestamp - last) / 1000; - self->dest = strjoin(strjoin(args[2]->ip_daddr, ":"), - lltostr(args[4]->udp_dport)); - printf(" %10d %30s:%-5d -> %-36s %6d\n", this->elapsed, - args[2]->ip_saddr, args[4]->udp_sport, - self->dest, args[4]->udp_length); - last = timestamp; -} - -udp:::receive -{ - this->elapsed = (timestamp - last) / 1000; - self->dest = strjoin(strjoin(args[2]->ip_saddr, ":"), - lltostr(args[4]->udp_sport)); - printf(" %10d %30s:%-5d <- %-36s %6d\n", this->elapsed, - args[2]->ip_daddr, args[4]->udp_dport, - self->dest, args[4]->udp_length); - last = timestamp; -}</pre> -</div> -</section> -<section class="Sh"> -<h1 class="Sh" id="COMPATIBILITY"><a class="permalink" href="#COMPATIBILITY">COMPATIBILITY</a></h1> -<p class="Pp">This provider is compatible with the <code class="Nm">udp</code> - provider in Solaris.</p> -</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">dtrace(1)</a>, <a class="Xr">dtrace_ip(4)</a>, - <a class="Xr">dtrace_sctp(4)</a>, <a class="Xr">dtrace_tcp(4)</a>, - <a class="Xr">dtrace_udplite(4)</a>, <a class="Xr">udp(4)</a>, - <a class="Xr">SDT(9)</a></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">udp</code> provider first appeared in - <span class="Ux">FreeBSD</span> 10.0.</p> -</section> -<section class="Sh"> -<h1 class="Sh" id="AUTHORS"><a class="permalink" href="#AUTHORS">AUTHORS</a></h1> -<p class="Pp">This manual page was written by <span class="An">Mark - Johnston</span> - <<a class="Mt" href="mailto:markj@FreeBSD.org">markj@FreeBSD.org</a>>.</p> -</section> -</div> -<table class="foot"> - <tr> - <td class="foot-date">August 1, 2018</td> - <td class="foot-os">FreeBSD 15.0</td> - </tr> -</table> |
