trafficserver-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From build...@apache.org
Subject svn commit: r784423 - in /websites/staging/trafficserver/trunk/content/docs/trunk: ./ sdk/header-based-plugin-examples/ sdk/http-hooks-and-transactions/ sdk/misc-interface-guide/
Date Mon, 31 Jan 2011 00:09:25 GMT
Author: buildbot
Date: Mon Jan 31 00:09:23 2011
New Revision: 784423

Log:
Staging update by buildbot

Modified:
    websites/staging/trafficserver/trunk/content/docs/trunk/STATUS
    websites/staging/trafficserver/trunk/content/docs/trunk/sdk/header-based-plugin-examples/index.en.html
    websites/staging/trafficserver/trunk/content/docs/trunk/sdk/http-hooks-and-transactions/adding-hooks.en.html
    websites/staging/trafficserver/trunk/content/docs/trunk/sdk/http-hooks-and-transactions/http-alternate-selection.en.html
    websites/staging/trafficserver/trunk/content/docs/trunk/sdk/http-hooks-and-transactions/http-sessions.en.html
    websites/staging/trafficserver/trunk/content/docs/trunk/sdk/http-hooks-and-transactions/http-transactions.en.html
    websites/staging/trafficserver/trunk/content/docs/trunk/sdk/http-hooks-and-transactions/initiate-http-connection.en.html
    websites/staging/trafficserver/trunk/content/docs/trunk/sdk/http-hooks-and-transactions/intercepting-http-transactions.en.html
    websites/staging/trafficserver/trunk/content/docs/trunk/sdk/misc-interface-guide/index.en.html
    websites/staging/trafficserver/trunk/content/docs/trunk/sdk/misc-interface-guide/memory-allocation.en.html
    websites/staging/trafficserver/trunk/content/docs/trunk/sdk/misc-interface-guide/thread-functions.en.html
    websites/staging/trafficserver/trunk/content/docs/trunk/sdk/misc-interface-guide/tsfopen-family.en.html

Modified: websites/staging/trafficserver/trunk/content/docs/trunk/STATUS
==============================================================================
--- websites/staging/trafficserver/trunk/content/docs/trunk/STATUS (original)
+++ websites/staging/trafficserver/trunk/content/docs/trunk/STATUS Mon Jan 31 00:09:23 2011
@@ -58,7 +58,7 @@ http-transformation-plugin -- igalic
 new-protocol-plugins -- igalic
 cache-plugin  -- igalic
 http-hooks-and-transactions -- igalic
-misc-interface-guide
+misc-interface-guide -- igalic
 http-headers
 mutex-guide
 continuations

Modified: websites/staging/trafficserver/trunk/content/docs/trunk/sdk/header-based-plugin-examples/index.en.html
==============================================================================
--- websites/staging/trafficserver/trunk/content/docs/trunk/sdk/header-based-plugin-examples/index.en.html
(original)
+++ websites/staging/trafficserver/trunk/content/docs/trunk/sdk/header-based-plugin-examples/index.en.html
Mon Jan 31 00:09:23 2011
@@ -24,8 +24,8 @@
 <h2 id="Header-BasedPluginExamples">Header-Based Plugin Examples</h2>
 <p><strong>Table of Contents</strong></p>
 <ul>
-<li><a href="blacklist-plugin">The Blacklist Plugin</a></li>
-<li><a href="blacklist-plugin#CreatingParentContinuation">Creating the Parent
Continuation</a><ul>
+<li><a href="blacklist-plugin">The Blacklist Plugin</a><ul>
+<li><a href="blacklist-plugin#CreatingParentContinuation">Creating the Parent
Continuation</a></li>
 <li><a href="blacklist-plugin/setting-a-global-hook">Setting a Global Hook</a></li>
 <li><a href="blacklist-plugin/setting-up-ui-update-callbacks">Setting Up UI Update
Callbacks</a></li>
 <li><a href="blacklist-plugin/accessing-the-transaction-being-processed">Accessing
the Transaction Being Processed</a></li>

Modified: websites/staging/trafficserver/trunk/content/docs/trunk/sdk/http-hooks-and-transactions/adding-hooks.en.html
==============================================================================
--- websites/staging/trafficserver/trunk/content/docs/trunk/sdk/http-hooks-and-transactions/adding-hooks.en.html
(original)
+++ websites/staging/trafficserver/trunk/content/docs/trunk/sdk/http-hooks-and-transactions/adding-hooks.en.html
Mon Jan 31 00:09:23 2011
@@ -39,7 +39,7 @@ to a transaction. See <a href="../header
 <li>
 <p><strong>Transformation hooks</strong>
 Transformation hooks are a special case of transaction hooks. See
-%method TSVConnCacheObjectSizeGet%
+<a href="link/to/doxygen">TSVConnCacheObjectSizeGet</a>
 for more information about transformation hooks. You add a transformation hook
 using <code>TSHttpTxnHookAdd</code>, as described in <a href="HTTP_Transactions.html">HTTP
Transactions</a>.</p>
 </li>
@@ -124,7 +124,7 @@ a client connects to Traffic Server and 
 or a previous client connection that was left open for keep alive has new data
 available.</dd>
 </dl>
-<p>The function you use to add a global HTTP hook is %method TSHttpHookAdd%.</p>
+<p>The function you use to add a global HTTP hook is <a href="link/to/doxygen">TSHttpHookAdd</a>.</p>
   </div>
 
   <div id="footer">

Modified: websites/staging/trafficserver/trunk/content/docs/trunk/sdk/http-hooks-and-transactions/http-alternate-selection.en.html
==============================================================================
--- websites/staging/trafficserver/trunk/content/docs/trunk/sdk/http-hooks-and-transactions/http-alternate-selection.en.html
(original)
+++ websites/staging/trafficserver/trunk/content/docs/trunk/sdk/http-hooks-and-transactions/http-alternate-selection.en.html
Mon Jan 31 00:09:23 2011
@@ -180,16 +180,16 @@ for the alternate.</p>
 <p>The HTTP alternate selection functions are:</p>
 <ul>
 <li>
-<p>%method TSHttpAltInfoCachedReqGet%</p>
+<p><a href="link/to/doxygen">TSHttpAltInfoCachedReqGet</a></p>
 </li>
 <li>
-<p>%method TSHttpAltInfoCachedRespGet%</p>
+<p><a href="link/to/doxygen">TSHttpAltInfoCachedRespGet</a></p>
 </li>
 <li>
-<p>%method TSHttpAltInfoClientReqGet%</p>
+<p><a href="link/to/doxygen">TSHttpAltInfoClientReqGet</a></p>
 </li>
 <li>
-<p>%method TSHttpAltInfoQualitySet%</p>
+<p><a href="link/to/doxygen">TSHttpAltInfoQualitySet</a></p>
 </li>
 </ul>
   </div>

Modified: websites/staging/trafficserver/trunk/content/docs/trunk/sdk/http-hooks-and-transactions/http-sessions.en.html
==============================================================================
--- websites/staging/trafficserver/trunk/content/docs/trunk/sdk/http-hooks-and-transactions/http-sessions.en.html
(original)
+++ websites/staging/trafficserver/trunk/content/docs/trunk/sdk/http-hooks-and-transactions/http-sessions.en.html
Mon Jan 31 00:09:23 2011
@@ -50,8 +50,8 @@ then use <code>TSHttpSsnHookAdd</code>.<
 a session hook.</p>
 <p>The session hook functions are listed below:</p>
 <ul>
-<li>%method TSHttpSsnHookAdd%</li>
-<li>%method TSHttpSsnReenable%</li>
+<li><a href="link/to/doxygen">TSHttpSsnHookAdd</a></li>
+<li><a href="link/to/doxygen">TSHttpSsnReenable</a></li>
 </ul>
   </div>
 

Modified: websites/staging/trafficserver/trunk/content/docs/trunk/sdk/http-hooks-and-transactions/http-transactions.en.html
==============================================================================
--- websites/staging/trafficserver/trunk/content/docs/trunk/sdk/http-hooks-and-transactions/http-transactions.en.html
(original)
+++ websites/staging/trafficserver/trunk/content/docs/trunk/sdk/http-hooks-and-transactions/http-transactions.en.html
Mon Jan 31 00:09:23 2011
@@ -153,68 +153,68 @@ for an illustration of the steps involve
 <p>The HTTP transaction functions are:</p>
 <ul>
 <li>
-<p>%method TSHttpTxnCacheLookupStatusGet%</p>
+<p><a href="link/to/doxygen">TSHttpTxnCacheLookupStatusGet</a></p>
 </li>
 <li>
-<p>%method TSHttpTxnCachedReqGet% - Note that it is an error to modify cached headers.</p>
+<p><a href="link/to/doxygen">TSHttpTxnCachedReqGet</a> - Note that it is
an error to modify cached headers.</p>
 </li>
 <li>
-<p>%method TSHttpTxnCachedRespGet% - Note that it is an error to modify cached headers.</p>
+<p><a href="link/to/doxygen">TSHttpTxnCachedRespGet</a> - Note that it
is an error to modify cached headers.</p>
 </li>
 <li>
-<p>%method TSHttpTxnClientIncomingPortGet%</p>
+<p><a href="link/to/doxygen">TSHttpTxnClientIncomingPortGet</a></p>
 </li>
 <li>
-<p>%method TSHttpTxnClientIPGet%</p>
+<p><a href="link/to/doxygen">TSHttpTxnClientIPGet</a></p>
 </li>
 <li>
-<p>%method TSHttpTxnClientRemotePortGet%</p>
+<p><a href="link/to/doxygen">TSHttpTxnClientRemotePortGet</a></p>
 </li>
 <li>
-<p>%method TSHttpTxnClientReqGet% - Plugins that must read client request headers
+<p><a href="link/to/doxygen">TSHttpTxnClientReqGet</a> - Plugins that must
read client request headers
 use this call to retrieve the HTTP header.</p>
 </li>
 <li>
-<p>%method TSHttpTxnClientRespGet%</p>
+<p><a href="link/to/doxygen">TSHttpTxnClientRespGet</a></p>
 </li>
 <li>
-<p>%method TSHttpTxnErrorBodySet%</p>
+<p><a href="link/to/doxygen">TSHttpTxnErrorBodySet</a></p>
 </li>
 <li>
-<p>%method TSHttpTxnHookAdd%</p>
+<p><a href="link/to/doxygen">TSHttpTxnHookAdd</a></p>
 </li>
 <li>
-<p>%method TSHttpTxnNextHopIPGet%</p>
+<p><a href="link/to/doxygen">TSHttpTxnNextHopIPGet</a></p>
 </li>
 <li>
-<p>%method TSHttpTxnNextHopIPGet%</p>
+<p><a href="link/to/doxygen">TSHttpTxnNextHopIPGet</a></p>
 </li>
 <li>
-<p>%method TSHttpTxnParentProxySet%</p>
+<p><a href="link/to/doxygen">TSHttpTxnParentProxySet</a></p>
 </li>
 <li>
-<p>%method TSHttpTxnReenable%</p>
+<p><a href="link/to/doxygen">TSHttpTxnReenable</a></p>
 </li>
 <li>
-<p>%method TSHttpTxnServerIPGet%</p>
+<p><a href="link/to/doxygen">TSHttpTxnServerIPGet</a></p>
 </li>
 <li>
-<p>%method TSHttpTxnServerReqGet%</p>
+<p><a href="link/to/doxygen">TSHttpTxnServerReqGet</a></p>
 </li>
 <li>
-<p>%method TSHttpTxnServerRespGet%</p>
+<p><a href="link/to/doxygen">TSHttpTxnServerRespGet</a></p>
 </li>
 <li>
-<p>%method TSHttpTxnSsnGet%</p>
+<p><a href="link/to/doxygen">TSHttpTxnSsnGet</a></p>
 </li>
 <li>
-<p>%method TSHttpTxnTransformedRespCache%</p>
+<p><a href="link/to/doxygen">TSHttpTxnTransformedRespCache</a></p>
 </li>
 <li>
-<p>%method TSHttpTxnTransformRespGet%</p>
+<p><a href="link/to/doxygen">TSHttpTxnTransformRespGet</a></p>
 </li>
 <li>
-<p>%method TSHttpTxnUntransformedRespCache%</p>
+<p><a href="link/to/doxygen">TSHttpTxnUntransformedRespCache</a></p>
 </li>
 </ul>
   </div>

Modified: websites/staging/trafficserver/trunk/content/docs/trunk/sdk/http-hooks-and-transactions/initiate-http-connection.en.html
==============================================================================
--- websites/staging/trafficserver/trunk/content/docs/trunk/sdk/http-hooks-and-transactions/initiate-http-connection.en.html
(original)
+++ websites/staging/trafficserver/trunk/content/docs/trunk/sdk/http-hooks-and-transactions/initiate-http-connection.en.html
Mon Jan 31 00:09:23 2011
@@ -26,7 +26,7 @@
 <p>This function enables plugins to initiate HTTP transactions. The initiate HTTP
 connection function is:</p>
 <ul>
-<li>%method TSHttpConnect%</li>
+<li><a href="link/to/doxygen">TSHttpConnect</a></li>
 </ul>
   </div>
 

Modified: websites/staging/trafficserver/trunk/content/docs/trunk/sdk/http-hooks-and-transactions/intercepting-http-transactions.en.html
==============================================================================
--- websites/staging/trafficserver/trunk/content/docs/trunk/sdk/http-hooks-and-transactions/intercepting-http-transactions.en.html
(original)
+++ websites/staging/trafficserver/trunk/content/docs/trunk/sdk/http-hooks-and-transactions/intercepting-http-transactions.en.html
Mon Jan 31 00:09:23 2011
@@ -29,7 +29,7 @@ intercepting HTTP transaction function a
 as well as using alternative transports to the origin server.The intercepting
 HTTP transaction functions are:</p>
 <ul>
-<li>%method TSHttpTxnIntercept%</li>
+<li><a href="link/to/doxygen">TSHttpTxnIntercept</a></li>
 </ul>
   </div>
 

Modified: websites/staging/trafficserver/trunk/content/docs/trunk/sdk/misc-interface-guide/index.en.html
==============================================================================
--- websites/staging/trafficserver/trunk/content/docs/trunk/sdk/misc-interface-guide/index.en.html
(original)
+++ websites/staging/trafficserver/trunk/content/docs/trunk/sdk/misc-interface-guide/index.en.html
Mon Jan 31 00:09:23 2011
@@ -6,8 +6,8 @@
     
     <link rel="stylesheet" href="/styles/pygments_style.css" />
     
-    <title></title>
-    
+    <title>Apache Traffic Server™ Software Developers Kit</title>
+    <!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor
license agreements.  See the NOTICE file distributed with this work for additional information
regarding copyright ownership.  The ASF licenses this file to you under the Apache License,
Version 2.0 (the &quot;License&quot;); you may not use this file except in compliance
with the License.  You may obtain a copy of the License at . http://www.apache.org/licenses/LICENSE-2.0
. Unless required by applicable law or agreed to in writing, software distributed under the
License is distributed on an &quot;AS IS&quot; BASIS, WITHOUT WARRANTIES OR CONDITIONS
OF ANY KIND, either express or implied.  See the License for the specific language governing
permissions and limitations under the License. -->
   </head>
 
   <body>
@@ -15,11 +15,57 @@
 	    <span id="ts_logo">
 		  <a href="http://trafficserver.apache.org/"><img alt="Apache Traffic Server"
src="/images/ts75.png" /></a>
 	  </span>
-	    <h1></h1>
+	    <h1>Apache Traffic Server™ Software Developers Kit</h1>
     </div>
 
   <div id="content">
-      
+      <p><a href="HTTPAlternateSelection.html">Prev</a> - HTTP Alternate
Selection</p>
+<p>The TSfopen Family - <a href="TSfopenFamily.html">Next</a></p>
+<h2 id="MiscellaneousInterfaceGuide">Miscellaneous Interface Guide</h2>
+<p>Most of the functions in the Traffic Server API provide an interface to specific
+code modules within Traffic Server. The miscellaneous functions described in
+this chapter provide some useful general capabilities. They are categorized
+as follows:</p>
+<ul>
+<li>
+<p><a href="#DebuggingFunctions">Debugging Functions</a></p>
+</li>
+<li>
+<p><a href="tsfopen-family">The TSfopen Family</a></p>
+</li>
+<li>
+<p><a href="memory-allocation">Memory Allocation</a></p>
+</li>
+<li>
+<p><a href="thread-functions">Thread Functions</a></p>
+</li>
+</ul>
+<p>The C library already provides functions such as <code>printf</code>,
<code>malloc</code>, and <code>fopen</code>
+to perform these tasks. The Traffic Server API versions, however, overcome
+various C library limitations (such as portability to all Traffic Server-support
+platforms).</p>
+<h2 id="DebuggingFunctions">Debugging Functions</h2>
+<ul>
+<li>
+<p><a href="link/to/doxygen">TSDebug</a> prints out a formatted statement
+if you are running Traffic Server in debug mode.</p>
+</li>
+<li>
+<p><a href="link/to/doxygen">TSIsDebugTagSet</a> checks to see if a debug
tag is set.
+If the debug tag is set, then Traffic Server prints out all debug statements
+associated with the tag.</p>
+</li>
+<li>
+<p><a href="link/to/doxygen">TSError</a> prints error messages to Traffic
Server's error log</p>
+</li>
+<li>
+<p><a href="link/to/doxygen">TSAssert</a> enables the use of assertion
in a plugin.</p>
+</li>
+<li>
+<p><a href="link/to/doxygen">TSReleaseAssert</a> enables the use of assertion
in a
+plugin.</p>
+</li>
+</ul>
   </div>
 
   <div id="footer">

Modified: websites/staging/trafficserver/trunk/content/docs/trunk/sdk/misc-interface-guide/memory-allocation.en.html
==============================================================================
--- websites/staging/trafficserver/trunk/content/docs/trunk/sdk/misc-interface-guide/memory-allocation.en.html
(original)
+++ websites/staging/trafficserver/trunk/content/docs/trunk/sdk/misc-interface-guide/memory-allocation.en.html
Mon Jan 31 00:09:23 2011
@@ -6,8 +6,8 @@
     
     <link rel="stylesheet" href="/styles/pygments_style.css" />
     
-    <title></title>
-    
+    <title>Apache Traffic Server™ Software Developers Kit</title>
+    <!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor
license agreements.  See the NOTICE file distributed with this work for additional information
regarding copyright ownership.  The ASF licenses this file to you under the Apache License,
Version 2.0 (the &quot;License&quot;); you may not use this file except in compliance
with the License.  You may obtain a copy of the License at . http://www.apache.org/licenses/LICENSE-2.0
. Unless required by applicable law or agreed to in writing, software distributed under the
License is distributed on an &quot;AS IS&quot; BASIS, WITHOUT WARRANTIES OR CONDITIONS
OF ANY KIND, either express or implied.  See the License for the specific language governing
permissions and limitations under the License. -->
   </head>
 
   <body>
@@ -15,11 +15,41 @@
 	    <span id="ts_logo">
 		  <a href="http://trafficserver.apache.org/"><img alt="Apache Traffic Server"
src="/images/ts75.png" /></a>
 	  </span>
-	    <h1></h1>
+	    <h1>Apache Traffic Server™ Software Developers Kit</h1>
     </div>
 
   <div id="content">
-      
+      <p><a href="tsfopen-family">Prev</a> - The TSfopen Family</p>
+<p>Thread Functions - <a href="thread-functions">Next</a></p>
+<h2 id="MemoryAllocation">Memory Allocation</h2>
+<p>Traffic Server provides five routines for allocating and freeing memory. These
+routines correspond to similar routines in the C library. For example, <code>TSrealloc</code>
+behaves like the C library routine <code>realloc</code>.</p>
+<p>There are two main reasons for using the routines provided by Traffic Server.
+The first is portability: the Traffic Server API routines behave the same on
+all of Traffic Server's supported platforms. For example, <code>realloc</code>
does not
+accept an argument of <code>NULL</code> on some platforms. The second reason
is that the
+Traffic Server routines actually track the memory allocations by file and line
+number. This tracking is very efficient, always turned on, and quite useful
+when tracking down memory leaks.</p>
+<p>The memory allocation functions are:</p>
+<ul>
+<li>
+<p><a href="link/to/doxygen">TSfree</a></p>
+</li>
+<li>
+<p><a href="link/to/doxygen">TSmalloc</a></p>
+</li>
+<li>
+<p><a href="link/to/doxygen">TSrealloc</a></p>
+</li>
+<li>
+<p><a href="link/to/doxygen">TSstrdup</a></p>
+</li>
+<li>
+<p><a href="link/to/doxygen">TSstrndup</a></p>
+</li>
+</ul>
   </div>
 
   <div id="footer">

Modified: websites/staging/trafficserver/trunk/content/docs/trunk/sdk/misc-interface-guide/thread-functions.en.html
==============================================================================
--- websites/staging/trafficserver/trunk/content/docs/trunk/sdk/misc-interface-guide/thread-functions.en.html
(original)
+++ websites/staging/trafficserver/trunk/content/docs/trunk/sdk/misc-interface-guide/thread-functions.en.html
Mon Jan 31 00:09:23 2011
@@ -6,8 +6,8 @@
     
     <link rel="stylesheet" href="/styles/pygments_style.css" />
     
-    <title></title>
-    
+    <title>Apache Traffic Server™ Software Developers Kit</title>
+    <!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor
license agreements.  See the NOTICE file distributed with this work for additional information
regarding copyright ownership.  The ASF licenses this file to you under the Apache License,
Version 2.0 (the &quot;License&quot;); you may not use this file except in compliance
with the License.  You may obtain a copy of the License at . http://www.apache.org/licenses/LICENSE-2.0
. Unless required by applicable law or agreed to in writing, software distributed under the
License is distributed on an &quot;AS IS&quot; BASIS, WITHOUT WARRANTIES OR CONDITIONS
OF ANY KIND, either express or implied.  See the License for the specific language governing
permissions and limitations under the License. -->
   </head>
 
   <body>
@@ -15,11 +15,25 @@
 	    <span id="ts_logo">
 		  <a href="http://trafficserver.apache.org/"><img alt="Apache Traffic Server"
src="/images/ts75.png" /></a>
 	  </span>
-	    <h1></h1>
+	    <h1>Apache Traffic Server™ Software Developers Kit</h1>
     </div>
 
   <div id="content">
-      
+      <p><a href="memory-allocation">Prev</a> - Memory Allocation</p>
+<p>Chapter 10. HTTP Headers - <a href="../http-headers">Next</a></p>
+<h2 id="ThreadFunctions">Thread Functions</h2>
+<p>The Traffic Server API thread functions enable you to create, destroy, and
+identify threads within Traffic Server. Multithreading enables a single program
+to have more than one stream of execution and to process more than one transaction
+at a time. Threads serialize their access to shared resources and data using
+the <code>TSMutex</code> type, as described in <a href="../mutex-guide/#Mutexes">Mutexes</a>.</p>
+<p>The thread functions are listed below:</p>
+<ul>
+<li><a href="link/to/doxygen">TSThreadCreate</a></li>
+<li><a href="link/to/doxygen">TSThreadDestroy</a></li>
+<li><a href="link/to/doxygen">TSThreadInit</a></li>
+<li><a href="link/to/doxygen">TSThreadSelf</a></li>
+</ul>
   </div>
 
   <div id="footer">

Modified: websites/staging/trafficserver/trunk/content/docs/trunk/sdk/misc-interface-guide/tsfopen-family.en.html
==============================================================================
--- websites/staging/trafficserver/trunk/content/docs/trunk/sdk/misc-interface-guide/tsfopen-family.en.html
(original)
+++ websites/staging/trafficserver/trunk/content/docs/trunk/sdk/misc-interface-guide/tsfopen-family.en.html
Mon Jan 31 00:09:23 2011
@@ -6,8 +6,8 @@
     
     <link rel="stylesheet" href="/styles/pygments_style.css" />
     
-    <title></title>
-    
+    <title>Apache Traffic Server™ Software Developers Kit</title>
+    <!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor
license agreements.  See the NOTICE file distributed with this work for additional information
regarding copyright ownership.  The ASF licenses this file to you under the Apache License,
Version 2.0 (the &quot;License&quot;); you may not use this file except in compliance
with the License.  You may obtain a copy of the License at . http://www.apache.org/licenses/LICENSE-2.0
. Unless required by applicable law or agreed to in writing, software distributed under the
License is distributed on an &quot;AS IS&quot; BASIS, WITHOUT WARRANTIES OR CONDITIONS
OF ANY KIND, either express or implied.  See the License for the specific language governing
permissions and limitations under the License. -->
   </head>
 
   <body>
@@ -15,11 +15,50 @@
 	    <span id="ts_logo">
 		  <a href="http://trafficserver.apache.org/"><img alt="Apache Traffic Server"
src="/images/ts75.png" /></a>
 	  </span>
-	    <h1></h1>
+	    <h1>Apache Traffic Server™ Software Developers Kit</h1>
     </div>
 
   <div id="content">
-      
+      <p><a href="../misc-interface-guide">Prev</a> - iscellaneous Interface
Guide</p>
+<p>Memory Allocation - <a href="memory-allocation">Next</a></p>
+<h2 id="TSfopenFamily">The TSfopen Family</h2>
+<p>The <code>fopen</code> family of functions in C is normally used for
reading configuration
+files, since <code>fgets</code> is an easy way to parse files on a line-by-line
basis.
+The <code>TSfopen</code> family of functions aims at solving the same problem
of buffered
+IO and line at a time IO in a platform-independent manner. The <code>fopen</code>
family
+of C library functions can only open a file if a file descriptor less than
+256 is available. Since Traffic Server often has more than 2000 file descriptors
+open at once, however, the likelihood of an available file descriptor less
+than 256 very small. To solve this problem, the <code>TSfopen</code> family can
open
+files with descriptors greater than 256.</p>
+<p>The <code>TSfopen</code> family of routines is not intended for high
speed IO or flexibility -
+they are blocking APIs (not asynchronous). For performance reasons, you should
+not directly use these APIs on a Traffic Server thread (when being called back
+on an HTTP hook); it is better to use a separate thread for doing the blocking
+IO. The <code>TSfopen</code> family is intended for reading and writing configuration
+information when corresponding usage of the <code>fopen</code> family of functions
is
+inappropriate due to file descriptor and portability limitations. The <code>TSfopen</code>
+family of functions consists of the following:</p>
+<ul>
+<li>
+<p><a href="link/to/doxygen">TSfclose</a></p>
+</li>
+<li>
+<p><a href="link/to/doxygen">TSfflush</a></p>
+</li>
+<li>
+<p><a href="link/to/doxygen">TSfgets</a></p>
+</li>
+<li>
+<p><a href="link/to/doxygen">TSfopen</a></p>
+</li>
+<li>
+<p><a href="link/to/doxygen">TSfread</a></p>
+</li>
+<li>
+<p><a href="link/to/doxygen">TSfwrite</a></p>
+</li>
+</ul>
   </div>
 
   <div id="footer">



Mime
View raw message