across threads. If <code>strtok()</code> and
<code>gethostbyname()</code> are thread-safe on your OS, c-client
<em>may</em> be thread-safe.</td></tr>
-<tr class="odd"><td><a href="http://www.fastio.com/">cpdflib</a></td>
+<tr class="odd"><td><a href="http://www.ijg.org/files/">libcrypt</a></td>
<td> </td>
<td>?</td>
<td> </td></tr>
-<tr><td><a href="http://www.ijg.org/files/">libcrypt</a></td>
- <td> </td>
- <td>?</td>
- <td> </td></tr>
-<tr class="odd"><td><a href="http://expat.sourceforge.net/">Expat</a></td>
+<tr><td><a href="http://expat.sourceforge.net/">Expat</a></td>
<td> </td>
<td>Yes</td>
<td>Need a separate parser instance per thread</td></tr>
-<tr><td><a href="http://www.freetds.org/">FreeTDS</a></td>
+<tr class="odd"><td><a href="http://www.freetds.org/">FreeTDS</a></td>
<td> </td>
<td>?</td>
<td> </td></tr>
-<tr class="odd"><td><a href="http://www.freetype.org/">FreeType</a></td>
+<tr><td><a href="http://www.freetype.org/">FreeType</a></td>
<td> </td>
<td>?</td>
<td> </td></tr>
-<tr><td><a href="http://www.boutell.com/gd/">GD 1.8.x</a></td>
+<tr class="odd"><td><a href="http://www.boutell.com/gd/">GD 1.8.x</a></td>
<td> </td>
<td>?</td>
<td> </td></tr>
-<tr class="odd"><td><a href="http://www.boutell.com/gd/">GD 2.0.x</a></td>
+<tr><td><a href="http://www.boutell.com/gd/">GD 2.0.x</a></td>
<td> </td>
<td>?</td>
<td> </td></tr>
-<tr><td><a href="http://www.gnu.org/software/gdbm/gdbm.html">gdbm</a></td>
+<tr class="odd"><td><a href="http://www.gnu.org/software/gdbm/gdbm.html">gdbm</a></td>
<td> </td>
<td>No</td>
<td>Errors returned via a static <code>gdbm_error</code>
variable</td></tr>
-<tr class="odd"><td><a href="http://www.imagemagick.org/">ImageMagick</a></td>
+<tr><td><a href="http://www.imagemagick.org/">ImageMagick</a></td>
<td>5.2.2</td>
<td>Yes</td>
- <td>ImageMagick docs claim it is thread safe since version 5.2.2 (see <a href="http://www.cise.ufl.edu/depot/www/ImageMagick/www/Changelog.html">Change log</a>).
+ <td>ImageMagick docs claim it is thread safe since version 5.2.2 (see <a href="http://www.imagemagick.com/www/changelog.html">Change log</a>).
</td></tr>
-<tr><td><a href="http://www.enlightenment.org/pages/imlib2.html">Imlib2</a></td>
+<tr class="odd"><td><a href="http://www.enlightenment.org/p.php?p=about/efl&l=en">Imlib2</a></td>
<td> </td>
<td>?</td>
<td> </td></tr>
-<tr class="odd"><td><a href="http://www.ijg.org/files/">libjpeg</a></td>
+<tr><td><a href="http://www.ijg.org/files/">libjpeg</a></td>
<td>v6b</td>
<td>?</td>
<td> </td></tr>
-<tr><td><a href="http://mysql.com">libmysqlclient</a></td>
+<tr class="odd"><td><a href="http://mysql.com">libmysqlclient</a></td>
<td> </td>
<td>Yes</td>
<td>Use mysqlclient_r library variant to ensure thread-safety. For
- more information, please read <a href="http://www.mysql.com/doc/en/Threaded_clients.html">http://www.mysql.com/doc/en/Threaded_clients.html</a>.</td></tr>
-<tr class="odd"><td><a href="http://www.opaque.net/ming/">Ming</a></td>
+ more information, please read <a href="http://dev.mysql.com/doc/mysql/en/Threaded_clients.html">http://dev.mysql.com/doc/mysql/en/Threaded_clients.html</a>.</td></tr>
+<tr><td><a href="http://www.opaque.net/ming/">Ming</a></td>
<td>0.2a</td>
<td>?</td>
<td> </td></tr>
-<tr><td><a href="http://net-snmp.sourceforge.net/">Net-SNMP</a></td>
+<tr class="odd"><td><a href="http://net-snmp.sourceforge.net/">Net-SNMP</a></td>
<td>5.0.x</td>
<td>?</td>
<td> </td></tr>
-<tr class="odd"><td><a href="http://www.openldap.org/">OpenLDAP</a></td>
+<tr><td><a href="http://www.openldap.org/">OpenLDAP</a></td>
<td>2.1.x</td>
<td>Yes</td>
<td>Use <code>ldap_r</code> library variant to ensure
thread-safety.</td></tr>
-<tr><td><a href="http://www.openssl.org/">OpenSSL</a></td>
+<tr class="odd"><td><a href="http://www.openssl.org/">OpenSSL</a></td>
<td>0.9.6g</td>
<td>Yes</td>
<td>Requires proper usage of <code>CRYPTO_num_locks</code>,
<code>CRYPTO_set_locking_callback</code>,
<code>CRYPTO_set_id_callback</code></td></tr>
-<tr class="odd"><td><a href="http://www.oracle.com/">liboci8 (Oracle 8+)</a></td>
+<tr><td><a href="http://www.oracle.com/">liboci8 (Oracle 8+)</a></td>
<td>8.x,9.x</td>
<td>?</td>
<td> </td></tr>
-<tr><td><a href="http://pdflib.com/">pdflib</a></td>
+<tr class="odd"><td><a href="http://pdflib.com/">pdflib</a></td>
<td>5.0.x</td>
<td>Yes</td>
<td>PDFLib docs claim it is thread safe; changes.txt indicates it
- has been partially thread-safe since V1.91: <a href="http://www.pdflib.com/products/pdflib/index.html">http://www.pdflib.com/products/pdflib/index.html</a>.</td></tr>
-<tr class="odd"><td><a href="http://www.libpng.org/pub/png/libpng.html">libpng</a></td>
+ has been partially thread-safe since V1.91: <a href="http://www.pdflib.com/products/pdflib-family/pdflib/">http://www.pdflib.com/products/pdflib-family/pdflib/</a>.</td></tr>
+<tr><td><a href="http://www.libpng.org/pub/png/libpng.html">libpng</a></td>
<td>1.0.x</td>
<td>?</td>
<td> </td></tr>
-<tr><td><a href="http://www.libpng.org/pub/png/libpng.html">libpng</a></td>
+<tr class="odd"><td><a href="http://www.libpng.org/pub/png/libpng.html">libpng</a></td>
<td>1.2.x</td>
<td>?</td>
<td> </td></tr>
-<tr class="odd"><td><a href="http://www.postgresql.org/idocs/index.php?libpq-threading.html">libpq (PostgreSQL)</a></td>
- <td>7.x</td>
+<tr><td><a href="http://www.postgresql.org/docs/8.4/static/libpq-threading.html">libpq (PostgreSQL)</a></td>
+ <td>8.x</td>
<td>Yes</td>
<td>Don't share connections across threads and watch out for
<code>crypt()</code> calls</td></tr>
-<tr><td><a href="http://www.gingerall.com/charlie/ga/xml/p_sab.xml">Sablotron</a></td>
+<tr class="odd"><td><a href="http://www.gingerall.com/charlie/ga/xml/p_sab.xml">Sablotron</a></td>
<td>0.95</td>
<td>?</td>
<td /></tr>
-<tr class="odd"><td><a href="http://www.gzip.org/zlib/">zlib</a></td>
+<tr><td><a href="http://www.gzip.org/zlib/">zlib</a></td>
<td>1.1.4</td>
<td>Yes</td>
<td>Relies upon thread-safe zalloc and zfree functions Default is to
across threads. If <code>strtok()</code> and
<code>gethostbyname()</code> are thread-safe on your OS, c-client
<em>may</em> be thread-safe.</td></tr>
- <tr><td><a href="http://www.fastio.com/">cpdflib</a></td>
- <td> </td>
- <td>?</td>
- <td> </td></tr>
<tr><td><a href="http://www.ijg.org/files/">libcrypt</a></td>
<td> </td>
<td>?</td>
<td>5.2.2</td>
<td>Yes</td>
<td>ImageMagick docs claim it is thread safe since version 5.2.2 (see <a
- href="http://www.cise.ufl.edu/depot/www/ImageMagick/www/Changelog.html"
+ href="http://www.imagemagick.com/www/changelog.html"
>Change log</a>).
</td></tr>
- <tr><td><a href="http://www.enlightenment.org/pages/imlib2.html"
+ <tr><td><a href="http://www.enlightenment.org/p.php?p=about/efl&l=en"
>Imlib2</a></td>
<td> </td>
<td>?</td>
<td>Yes</td>
<td>Use mysqlclient_r library variant to ensure thread-safety. For
more information, please read <a
- href="http://www.mysql.com/doc/en/Threaded_clients.html"
- >http://www.mysql.com/doc/en/Threaded_clients.html</a>.</td></tr>
+ href="http://dev.mysql.com/doc/mysql/en/Threaded_clients.html"
+ >http://dev.mysql.com/doc/mysql/en/Threaded_clients.html</a>.</td></tr>
<tr><td><a href="http://www.opaque.net/ming/">Ming</a></td>
<td>0.2a</td>
<td>?</td>
<td>Yes</td>
<td>PDFLib docs claim it is thread safe; changes.txt indicates it
has been partially thread-safe since V1.91: <a
- href="http://www.pdflib.com/products/pdflib/index.html"
- >http://www.pdflib.com/products/pdflib/index.html</a>.</td></tr>
+ href="http://www.pdflib.com/products/pdflib-family/pdflib/"
+ >http://www.pdflib.com/products/pdflib-family/pdflib/</a>.</td></tr>
<tr><td><a href="http://www.libpng.org/pub/png/libpng.html">libpng</a></td>
<td>1.0.x</td>
<td>?</td>
<td>?</td>
<td> </td></tr>
<tr><td><a
- href="http://www.postgresql.org/idocs/index.php?libpq-threading.html"
+ href="http://www.postgresql.org/docs/8.4/static/libpq-threading.html"
>libpq (PostgreSQL)</a></td>
- <td>7.x</td>
+ <td>8.x</td>
<td>Yes</td>
<td>Don't share connections across threads and watch out for
<code>crypt()</code> calls</td></tr>
Apache configuration and passed from the shell, CGI scripts and
SSI pages are provided with a set of environment variables
containing meta-information about the request as required by
- the <a href="http://cgi-spec.golux.com/">CGI
+ the <a href="http://www.w3.org/CGI/">CGI
specification</a>.</p>
Apache configuration and passed from the shell, CGI scripts and
SSI pages are provided with a set of environment variables
containing meta-information about the request as required by
- the <a href="http://cgi-spec.golux.com/">CGI
+ the <a href="http://www.w3.org/CGI/">CGI
specification</a>.</p>
</section>
<dd>A standard definition for an interface between a web server and an
external program that allows the external program to service requests.
The interface was originally defined by <a href="http://hoohoo.ncsa.uiuc.edu/cgi/overview.html">NCSA</a> but there
- is also an <a href="http://cgi-spec.golux.com/">RFC project</a>.<br />
+ is also an <a href="http://www.w3.org/CGI/">RFC project</a>.<br />
See: <a href="howto/cgi.html">Dynamic Content with CGI</a>
</dd>
external program that allows the external program to service requests.
The interface was originally defined by <a
href="http://hoohoo.ncsa.uiuc.edu/cgi/overview.html">NCSA</a> but there
- is also an <a href="http://cgi-spec.golux.com/">RFC project</a>.<br />
+ is also an <a href="http://www.w3.org/CGI/">RFC project</a>.<br />
See: <a href="howto/cgi.html">Dynamic Content with CGI</a>
</dd>
specification, which has all the details on the operation of
CGI programs. You can find the original version at the
<a href="http://hoohoo.ncsa.uiuc.edu/cgi/interface.html">NCSA</a> and there is an updated draft at the
- <a href="http://web.golux.com/coar/cgi/">Common Gateway
+ <a href="http://www.w3.org/CGI/">Common Gateway
Interface RFC project</a>.</p>
<p>When you post a question about a CGI problem that you're
CGI programs. You can find the original version at the
<a href="http://hoohoo.ncsa.uiuc.edu/cgi/interface.html"
>NCSA</a> and there is an updated draft at the
- <a href="http://web.golux.com/coar/cgi/">Common Gateway
+ <a href="http://www.w3.org/CGI/">Common Gateway
Interface RFC project</a>.</p>
<p>When you post a question about a CGI problem that you're
<dd>"$apr1$" + the result of an Apache-specific algorithm using an
iterated (1,000 times) MD5 digest of various combinations of a
random 32-bit salt and the password. See the APR source file
- <a href="http://svn.apache.org/viewvc/apr/apr-util/trunk/crypto/apr_md5.c?view=markup">apr_md5.c</a>
+ <a href="http://svn.apache.org/viewvc/apr/apr-util/branches/1.3.x/crypto/apr_md5.c?view=co">apr_md5.c</a>
for the details of the algorithm.</dd>
</dl>
digest-authentication passwords - the MD5 hash of the string
<code>user:realm:password</code> as a 32-character string of hexadecimal
digits. <code>realm</code> is the Authorization Realm argument to the
- <code class="directive"><a href="../mod/mod_authn_core.html#authname">AuthName</a></code> directive in
+ <code class="directive"><a href="../mod/core.html#authname">AuthName</a></code> directive in
httpd.conf.</p>
<h3>Database password fields for mod_dbd</h3>
<dd>"$apr1$" + the result of an Apache-specific algorithm using an
iterated (1,000 times) MD5 digest of various combinations of a
random 32-bit salt and the password. See the APR source file
- <a href="http://svn.apache.org/viewvc/apr/apr-util/trunk/crypto/apr_md5.c?view=markup">apr_md5.c</a>
+ <a href="http://svn.apache.org/viewvc/apr/apr-util/branches/1.3.x/crypto/apr_md5.c?view=co">apr_md5.c</a>
for the details of the algorithm.</dd>
</dl>
digest-authentication passwords - the MD5 hash of the string
<code>user:realm:password</code> as a 32-character string of hexadecimal
digits. <code>realm</code> is the Authorization Realm argument to the
- <directive module="mod_authn_core">AuthName</directive> directive in
+ <directive module="core">AuthName</directive> directive in
httpd.conf.</p>
<section><title>Database password fields for mod_dbd</title>
connection. The default <code class="directive"><a href="../mod/core.html#keepalivetimeout">KeepAliveTimeout</a></code> of <code>5</code>
seconds attempts to minimize this effect. The tradeoff here is
between network bandwidth and server resources. In no event
- should you raise this above about <code>60</code> seconds, as <a href="http://www.research.digital.com/wrl/techreports/abstracts/95.4.html">
+ should you raise this above about <code>60</code> seconds, as <a href="http://www.hpl.hp.com/techreports/Compaq-DEC/WRL-95-4.html">
most of the benefits are lost</a>.</p>
seconds attempts to minimize this effect. The tradeoff here is
between network bandwidth and server resources. In no event
should you raise this above about <code>60</code> seconds, as <a
- href="http://www.research.digital.com/wrl/techreports/abstracts/95.4.html">
+ href="http://www.hpl.hp.com/techreports/Compaq-DEC/WRL-95-4.html">
most of the benefits are lost</a>.</p>
</section>
<p>A sophisticated DNS-based method for
load-balancing is to use the program
- <code>lbnamed</code> which can be found at <a href="http://www.stanford.edu/~schemers/docs/lbnamed/lbnamed.html">
- http://www.stanford.edu/~schemers/docs/lbnamed/lbnamed.html</a>.
- It is a Perl 5 program in conjunction with auxilliary
+ <code>lbnamed</code> which can be found at <a href="http://www.stanford.edu/~riepel/lbnamed/">
+ http://www.stanford.edu/~riepel/lbnamed/</a>.
+ It is a Perl 5 program in conjunction with auxiliary
tools which provides a real load-balancing for
DNS.</p>
</li>
<p>A sophisticated DNS-based method for
load-balancing is to use the program
<code>lbnamed</code> which can be found at <a
- href="http://www.stanford.edu/~schemers/docs/lbnamed/lbnamed.html">
- http://www.stanford.edu/~schemers/docs/lbnamed/lbnamed.html</a>.
- It is a Perl 5 program in conjunction with auxilliary
+ href="http://www.stanford.edu/~riepel/lbnamed/">
+ http://www.stanford.edu/~riepel/lbnamed/</a>.
+ It is a Perl 5 program in conjunction with auxiliary
tools which provides a real load-balancing for
DNS.</p>
</li>
<a href="../suexec.html">suEXEC</a> which is included with Apache as of
1.2 and is called from special hooks in the Apache server code. Another
popular way of doing this is with
- <a href="http://cgiwrap.unixtools.org/">CGIWrap</a>.</p>
+ <a href="http://cgiwrap.sourceforge.net/">CGIWrap</a>.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<a href="../suexec.html">suEXEC</a> which is included with Apache as of
1.2 and is called from special hooks in the Apache server code. Another
popular way of doing this is with
- <a href="http://cgiwrap.unixtools.org/">CGIWrap</a>.</p>
+ <a href="http://cgiwrap.sourceforge.net/">CGIWrap</a>.</p>
</section>
</Location>
</code></p></div>
- <p>You may wish to use <code class="module"><a href="../mod/mod_access.html">mod_access</a></code> inside the
+ <p>You may wish to use <code class="module"><a href="../mod/mod_authz_host.html">mod_authz_host</a></code> inside the
<code class="directive"><a href="../mod/core.html#location"><Location></a></code>
directive to limit access to your server configuration
information:</p>
are listed normally, but <code class="module"><a href="../mod/mod_info.html">mod_info</a></code> cannot figure
out the line number for the closing
<code class="directive"><a href="../mod/core.html#</directory>"></Directory></a></code>.</li>
- <li>Directives generated by third party modules such as <code class="module"><a href="../mod/mod_perl.html">mod_perl</a></code>
+ <li>Directives generated by third party modules such as
+ <a href="http://perl.apache.org">mod_perl</a>
might not be listed.</li>
</ul>
</div>
</Location>
</example>
- <p>You may wish to use <module>mod_access</module> inside the
+ <p>You may wish to use <module>mod_authz_host</module> inside the
<directive type="section" module="core">Location</directive>
directive to limit access to your server configuration
information:</p>
are listed normally, but <module>mod_info</module> cannot figure
out the line number for the closing
<directive module="core"></Directory></directive>.</li>
- <li>Directives generated by third party modules such as <module>mod_perl</module>
+ <li>Directives generated by third party modules such as
+ <a href="http://perl.apache.org">mod_perl</a>
might not be listed.</li>
</ul>
</section>
<p>The port was started initially to</p>
<ul>
- <li>prove the feasibility of porting <a href="http://dev.apache.org/">the Apache HTTP server</a> to
+ <li>prove the feasibility of porting <a href="http://httpd.apache.org/">the Apache HTTP server</a> to
this platform</li>
<li>find a "worthy and capable" successor for the venerable
<ul>
<li>prove the feasibility of porting <a
- href="http://dev.apache.org/">the Apache HTTP server</a> to
+ href="http://httpd.apache.org/">the Apache HTTP server</a> to
this platform</li>
<li>find a "worthy and capable" successor for the venerable
<p>rick jones</p>
- <p><a href="http://www.cup.hp.com/netperf/NetperfPage.html">http://www.cup.hp.com/netperf/NetperfPage.html</a></p>
+ <p><a href="http://www.netperf.org/netperf/">http://www.netperf.org/netperf/</a></p>
</div>
</div>
<p>rick jones</p>
- <p><a href="http://www.cup.hp.com/netperf/NetperfPage.html"
- >http://www.cup.hp.com/netperf/NetperfPage.html</a></p>
+ <p><a href="http://www.netperf.org/netperf/"
+ >http://www.netperf.org/netperf/</a></p>
</summary>
<li>
<p>[Optional] Database libraries (for <code class="module"><a href="../mod/mod_dbd.html">mod_dbd</a></code>
- and <code class="module"><a href="../mod/mod_dbm.html">mod_dbm</a></code>)</p>
+ and <code class="module"><a href="../mod/mod_authn_dbm.html">mod_authn_dbm</a></code>)</p>
<p>The apr-util library exposes dbm (keyed database) and dbd (query
oriented database) client functionality to the httpd server and its
<li>
<p>[Optional] Database libraries (for <module>mod_dbd</module>
- and <module>mod_dbm</module>)</p>
+ and <module>mod_authn_dbm</module>)</p>
<p>The apr-util library exposes dbm (keyed database) and dbd (query
oriented database) client functionality to the httpd server and its
<p>A sophisticated DNS-based method for
load-balancing is to use the program
- <code>lbnamed</code> which can be found at <a href="http://www.stanford.edu/~schemers/docs/lbnamed/lbnamed.html">
- http://www.stanford.edu/~schemers/docs/lbnamed/lbnamed.html</a>.
+ <code>lbnamed</code> which can be found at <a href="http://www.stanford.edu/~riepel/lbnamed/">
+ http://www.stanford.edu/~riepel/lbnamed/</a>.
It is a Perl 5 program which, in conjunction with auxilliary
tools, provides real load-balancing via
DNS.</p>
<p>A sophisticated DNS-based method for
load-balancing is to use the program
<code>lbnamed</code> which can be found at <a
- href="http://www.stanford.edu/~schemers/docs/lbnamed/lbnamed.html">
- http://www.stanford.edu/~schemers/docs/lbnamed/lbnamed.html</a>.
+ href="http://www.stanford.edu/~riepel/lbnamed/">
+ http://www.stanford.edu/~riepel/lbnamed/</a>.
It is a Perl 5 program which, in conjunction with auxilliary
tools, provides real load-balancing via
DNS.</p>