Work at SourceForge, help us to make it a better place! We have an immediate need for a Support Technician in our San Francisco or Denver office.

Close

Diff of /impnotes/rawsock.html [23eda3] .. [559513] Maximize Restore

  Switch to side-by-side view

--- a/impnotes/rawsock.html
+++ b/impnotes/rawsock.html
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>32.14. Raw Socket Access.</title><link rel="stylesheet" href="impnotes.css" type="text/css" /><link rev="made" href="mailto:clisp-list@lists.sourceforge.net" /><meta name="generator" content="DocBook XSL Stylesheets V2005-10-07_10:16_snapshot" /><link rel="start" href="index.html" title="Implementation Notes for GNU CLISP" /><link rel="up" href="ext-modules.html" title="Chapter 32. Extensions Implemented as Modules" /><link rel="prev" href="fastcgi.html" title="32.13. The FastCGI Interface" /><link rel="next" href="wildcard.html" title="32.15. The Wildcard Module" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">32.14. Raw Socket Access.</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="fastcgi.html">Prev</a> </td><th width="60%" align="center">Chapter 32. Extensions Implemented as Modules</th><td width="20%" align="right"> <a accesskey="n" href="wildcard.html">Next</a></td></tr></table><hr /></div><div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="rawsock"></a>32.14. Raw Socket Access.</h2></div></div></div><div class="toc"><dl><dt><span class="section"><a href="rawsock.html#rawsock-intro">32.14.1. Introduction</a></span></dt><dt><span class="section"><a href="rawsock.html#rawsock-func">32.14.2. Single System Call Functions</a></span></dt><dt><span class="section"><a href="rawsock.html#rawsock-args">32.14.3. Common arguments</a></span></dt><dd><dl><dt><span class="section"><a href="rawsock.html#rawsock-plat-dep-constants">32.14.3.1. Platform-dependent Keywords</a></span></dt></dl></dd><dt><span class="section"><a href="rawsock.html#rawsock-return">32.14.4. Return Values</a></span></dt><dt><span class="section"><a href="rawsock.html#rawsock-not-implemented">32.14.5. Not Implemented</a></span></dt><dt><span class="section"><a href="rawsock.html#rawsock-high-level">32.14.6. High-Level Functions</a></span></dt></dl></div><div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="rawsock-intro"></a>32.14.1. Introduction</h3></div></div></div><p>This is the raw socket interface, as described in
+<html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>32.14. Raw Socket Access</title><link rel="stylesheet" href="impnotes.css" type="text/css" /><link rev="made" href="mailto:clisp-list@lists.sourceforge.net" /><meta name="generator" content="DocBook XSL Stylesheets V2005-10-07_10:16_snapshot" /><link rel="start" href="index.html" title="Implementation Notes for GNU CLISP" /><link rel="up" href="ext-modules.html" title="Chapter 32. Extensions Implemented as Modules" /><link rel="prev" href="fastcgi.html" title="32.13. The FastCGI Interface" /><link rel="next" href="wildcard.html" title="32.15. The Wildcard Module" /></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">32.14. Raw Socket Access</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="fastcgi.html">Prev</a> </td><th width="60%" align="center">Chapter 32. Extensions Implemented as Modules</th><td width="20%" align="right"> <a accesskey="n" href="wildcard.html">Next</a></td></tr></table><hr /></div><div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a id="rawsock"></a>32.14. Raw Socket Access</h2></div></div></div><div class="toc"><dl><dt><span class="section"><a href="rawsock.html#rawsock-intro">32.14.1. Introduction</a></span></dt><dt><span class="section"><a href="rawsock.html#rawsock-func">32.14.2. Single System Call Functions</a></span></dt><dt><span class="section"><a href="rawsock.html#rawsock-args">32.14.3. Common arguments</a></span></dt><dd><dl><dt><span class="section"><a href="rawsock.html#rawsock-plat-dep-constants">32.14.3.1. Platform-dependent Keywords</a></span></dt></dl></dd><dt><span class="section"><a href="rawsock.html#rawsock-return">32.14.4. Return Values</a></span></dt><dt><span class="section"><a href="rawsock.html#rawsock-not-implemented">32.14.5. Not Implemented</a></span></dt><dt><span class="section"><a href="rawsock.html#rawsock-high-level">32.14.6. High-Level Functions</a></span></dt></dl></div><div class="section" lang="en" xml:lang="en"><div class="titlepage"><div><div><h3 class="title"><a id="rawsock-intro"></a>32.14.1. Introduction</h3></div></div></div><p>This is the raw socket interface, as described in
  <a class="unix" href="http://www.opengroup.org/onlinepubs/007904975/basedefs/sys/socket.h.html">&lt;<code class="filename">sys/socket.h</code>&gt;</a>.
 Sockets are represented by their <a href="http://www.lisp.org/HyperSpec/Body/typ_fixnum.html" target="_top"><code class="classname">FIXNUM</code></a> <a class="unix" href="http://www.opengroup.org/onlinepubs/007904975/basedefs/xbd_chap03.html#tag_03_165">file descriptor</a>s.</p><p>When this module is present, <a href="http://www.lisp.org/HyperSpec/Body/var_stfeaturesst.html" target="_top"><code class="varname">*FEATURES*</code></a> contains the
  symbol <code class="constant">:RAWSOCK</code>.</p><div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;"><h3 class="title"><a id="rawsock-use-sockets"></a>Try <code class="classname">SOCKET:SOCKET-STREAM</code> first!</h3><p>For most uses of sockets, the facilities described in
@@ -153,16 +153,16 @@
     <em class="replaceable"><code>address</code></em> argument data!</p></div></dd><dt><span class="term"><code class="code">(RAWSOCK:OPEN-UNIX-SOCKET
    <em class="replaceable"><code>pathname</code></em> <a href="http://www.lisp.org/HyperSpec/Body/sec_3-4-1.html" target="_top"><code class="literal">&amp;OPTIONAL</code></a> <em class="replaceable"><code>type</code></em>)</code></span></dt><dd>Open a <a href="http://www.UNIX-systems.org/online.html" target="_top"><span class="strong"><strong>UNIX</strong></span></a> socket special file.
 </dd><dt><span class="term"><code class="code">(RAWSOCK:IPCSUM <em class="replaceable"><code>buffer</code></em> <a href="http://www.lisp.org/HyperSpec/Body/sec_3-4-1.html" target="_top"><code class="literal">&amp;KEY</code></a> start end)</code>
-  - <a href="http://rfc.net//rfc791.html" target="_top"><span><strong class="command">IP</strong></span></a><br /></span><span class="term"><code class="code">(RAWSOCK:ICMPCSUM <em class="replaceable"><code>buffer</code></em> <a href="http://www.lisp.org/HyperSpec/Body/sec_3-4-1.html" target="_top"><code class="literal">&amp;KEY</code></a> start end)</code>
-  - <a href="http://rfc.net//rfc792.html" target="_top"><span><strong class="command">ICMP</strong></span></a><br /></span><span class="term"><code class="code">(RAWSOCK:TCPCSUM <em class="replaceable"><code>buffer</code></em> <a href="http://www.lisp.org/HyperSpec/Body/sec_3-4-1.html" target="_top"><code class="literal">&amp;KEY</code></a> start end)</code>
-  - <a href="http://rfc.net//rfc793.html" target="_top"><span><strong class="command">TCP</strong></span></a><br /></span><span class="term"><code class="code">(RAWSOCK:UDPCSUM <em class="replaceable"><code>buffer</code></em> <a href="http://www.lisp.org/HyperSpec/Body/sec_3-4-1.html" target="_top"><code class="literal">&amp;KEY</code></a> start end)</code>
-  - <a href="http://rfc.net//rfc768.html" target="_top"><span><strong class="command">UDP</strong></span></a></span></dt><dd>Compute the appropriate protocol checksum and record
+  - <a class="rfc" href="http://rfc.net/rfc791.html"><code><span><strong class="command">IP</strong></span></code></a><br /></span><span class="term"><code class="code">(RAWSOCK:ICMPCSUM <em class="replaceable"><code>buffer</code></em> <a href="http://www.lisp.org/HyperSpec/Body/sec_3-4-1.html" target="_top"><code class="literal">&amp;KEY</code></a> start end)</code>
+  - <a class="rfc" href="http://rfc.net/rfc792.html"><code><span><strong class="command">ICMP</strong></span></code></a><br /></span><span class="term"><code class="code">(RAWSOCK:TCPCSUM <em class="replaceable"><code>buffer</code></em> <a href="http://www.lisp.org/HyperSpec/Body/sec_3-4-1.html" target="_top"><code class="literal">&amp;KEY</code></a> start end)</code>
+  - <a class="rfc" href="http://rfc.net/rfc793.html"><code><span><strong class="command">TCP</strong></span></code></a><br /></span><span class="term"><code class="code">(RAWSOCK:UDPCSUM <em class="replaceable"><code>buffer</code></em> <a href="http://www.lisp.org/HyperSpec/Body/sec_3-4-1.html" target="_top"><code class="literal">&amp;KEY</code></a> start end)</code>
+  - <a class="rfc" href="http://rfc.net/rfc768.html"><code><span><strong class="command">UDP</strong></span></code></a></span></dt><dd>Compute the appropriate protocol checksum and record
    it in the appropriate location.  <em class="replaceable"><code>buffer</code></em> is assumed to be a suitable
    packet for the protocol, with the appropriate header etc.
-   The typical packet you send is both <a href="http://rfc.net//rfc791.html" target="_top"><span><strong class="command">IP</strong></span></a> and <a href="http://rfc.net//rfc793.html" target="_top"><span><strong class="command">TCP</strong></span></a> and thus has two
+   The typical packet you send is both <a class="rfc" href="http://rfc.net/rfc791.html"><code><span><strong class="command">IP</strong></span></code></a> and <a class="rfc" href="http://rfc.net/rfc793.html"><code><span><strong class="command">TCP</strong></span></code></a> and thus has two
    checksums, so you would want to call <span class="emphasis"><em>two</em></span> functions.
 </dd><dt><span class="term"><code class="code">(RAWSOCK:CONFIGDEV <em class="replaceable"><code>socket</code></em> <em class="replaceable"><code>name</code></em> <em class="replaceable"><code>address</code></em>
    <a href="http://www.lisp.org/HyperSpec/Body/sec_3-4-1.html" target="_top"><code class="literal">&amp;KEY</code></a> <em class="replaceable"><code>promisc</code></em>
    <em class="replaceable"><code>noarp</code></em>)</code></span></dt><dd>Set some socket options and IP <em class="replaceable"><code>address</code></em>
    with <a class="unix" href="http://www.opengroup.org/onlinepubs/007904975/functions/ioctl.html"><code class="function">ioctl</code></a>.
-</dd></dl></div></div></div><div class="bookinfo"><hr width="100%" /><table width="100%" summary="impnotes meta info"><th><td align="left">These notes document <a href="http://clisp.cons.org" target="_top"><span><strong class="command">CLISP</strong></span></a> version 2.36</td><td align="right">Last modified: 2005-12-04</td></th></table></div><div class="custom-footer"><hr width="100%" /><table width="100%"><tr><td align="left"><a href="http://clisp.cons.org"><img src="clisp.png" width="48" height="48" alt="[CLISP home]" /></a></td><td align="center"><a href="http://sourceforge.net/donate/index.php?group_id=1355"><img src="http://images.sourceforge.net/images/project-support.jpg" width="88" height="32" border="0" alt="[Support This Project]" /></a></td><td align="right"><a href="http://sourceforge.net"><img width="125" height="37" alt="[SourceForge]" src="http://sflogo.sourceforge.net/sflogo.php?group_id=1355&amp;type=2&amp;page=rawsock" /></a></td></tr></table></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="fastcgi.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ext-modules.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="wildcard.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">32.13. The FastCGI Interface </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 32.15. The Wildcard Module</td></tr></table></div></body></html>
+</dd></dl></div></div></div><div class="bookinfo"><hr width="100%" /><table width="100%" summary="impnotes meta info"><th><td align="left">These notes document <a href="http://clisp.cons.org" target="_top"><span><strong class="command">CLISP</strong></span></a> version 2.37</td><td align="right">Last modified: 2006-01-02</td></th></table></div><div class="custom-footer"><hr width="100%" /><table width="100%"><tr><td align="left"><a href="http://clisp.cons.org"><img src="clisp.png" width="48" height="48" alt="[CLISP home]" /></a></td><td align="center"><a href="http://sourceforge.net/donate/index.php?group_id=1355"><img src="http://images.sourceforge.net/images/project-support.jpg" width="88" height="32" border="0" alt="[Support This Project]" /></a></td><td align="right"><a href="http://sourceforge.net"><img width="125" height="37" alt="[SourceForge]" src="http://sflogo.sourceforge.net/sflogo.php?group_id=1355&amp;type=2&amp;page=rawsock" /></a></td></tr></table></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="fastcgi.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ext-modules.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="wildcard.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">32.13. The FastCGI Interface </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 32.15. The Wildcard Module</td></tr></table></div></body></html>