trafficserver-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From andrew...@apache.org
Subject svn commit: r831152 [26/37] - in /incubator/trafficserver/site/trunk/docs: ./ admin/ admin/images/ sdk/ sdk/css/ sdk/images/ sdk/images/docbook/ sdk/js/
Date Thu, 29 Oct 2009 23:23:36 GMT
Added: incubator/trafficserver/site/trunk/docs/sdk/InterceptingHTTPTransactionFuncs.html
URL: http://svn.apache.org/viewvc/incubator/trafficserver/site/trunk/docs/sdk/InterceptingHTTPTransactionFuncs.html?rev=831152&view=auto
==============================================================================
--- incubator/trafficserver/site/trunk/docs/sdk/InterceptingHTTPTransactionFuncs.html (added)
+++ incubator/trafficserver/site/trunk/docs/sdk/InterceptingHTTPTransactionFuncs.html Thu Oct 29 23:23:25 2009
@@ -0,0 +1,154 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<title>Intercepting HTTP Transaction Functions</title>
+<link rel="stylesheet" href="http://yui.yahooapis.com/2.2.2/build/reset/reset-min.css" type="text/css">
+<link rel="stylesheet" href="http://yui.yahooapis.com/2.2.2/build/fonts/fonts-min.css" type="text/css">
+<link rel="stylesheet" href="http://yui.yahooapis.com/2.2.2/build/treeview/assets/tree.css" type="text/css">
+<link rel="stylesheet" href="css/ydoc.css" type="text/css">
+<link rel="stylesheet" href="css/ydoc-chunk.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.69.1">
+<link rel="start" href="index.html" title="Traffic Server Software Developers Kit">
+<link rel="up" href="FunctionReference.html" title="Chapter 18. Function Reference">
+<link rel="prev" href="InitiateConnectionFunctions.html" title="Initiate Connection">
+<link rel="next" href="INKHttpTxnServerIntercept.html" title="INKHttpTxnServerIntercept">
+<link rel="preface" href="Preface.html" title="Preface">
+<link rel="chapter" href="GetingStarted.html" title="Chapter 1. Getting Started">
+<link rel="chapter" href="CreatingTSPlugins.html" title="Chapter 2. How to Create Traffic Server Plugins">
+<link rel="index" href="CreatingTSPlugins.html#id372630" title="Index">
+<link rel="chapter" href="ch03.html" title="Chapter 3. Remap Plugin">
+<link rel="chapter" href="HeaderBasedPluginEx.html" title="Chapter 4. Header-Based Plugin Examples">
+<link rel="chapter" href="HTTPTransformationPlugins.html" title="Chapter 5. HTTP Transformation Plugins">
+<link rel="chapter" href="NewProtocolPlugins.html" title="Chapter 6. New Protocol Plugins">
+<link rel="chapter" href="ch07.html" title="Chapter 7. Cache Plugin">
+<link rel="chapter" href="HTTPHooksAndTransactions.html" title="Chapter 8. HTTP Hooks and Transactions">
+<link rel="chapter" href="MiscellaneousInterfaceGuide.html" title="Chapter 9. Miscellaneous Interface Guide">
+<link rel="chapter" href="HTTPHeaders.html" title="Chapter 10. HTTP Headers">
+<link rel="chapter" href="MutexGuide.html" title="Chapter 11. Mutex Guide">
+<link rel="chapter" href="Continuations.html" title="Chapter 12. Continuations">
+<link rel="chapter" href="PluginConfigurations.html" title="Chapter 13. Plugin Configurations">
+<link rel="chapter" href="ActionsGuide.html" title="Chapter 14. Actions Guide">
+<link rel="chapter" href="IOGuide.html" title="Chapter 15. IO Guide">
+<link rel="chapter" href="PluginManagement.html" title="Chapter 16. Plugin Management">
+<link rel="chapter" href="AddingStatistics.html" title="Chapter 17. Adding Statistics">
+<link rel="chapter" href="FunctionReference.html" title="Chapter 18. Function Reference">
+<link rel="appendix" href="App_SampleSourceCode.html" title="Appendix A. Sample Source Code">
+<link rel="appendix" href="App_DeprecatedFunctions.html" title="Appendix B. Deprecated Functions">
+<link rel="appendix" href="App_Troubleshooting.html" title="Appendix C. Troubleshooting Tips">
+<link rel="appendix" href="FunctionIndex.html" title="Appendix D. Function Index">
+<link rel="appendix" href="TypeIndex.html" title="Appendix E. Type Index">
+<link rel="index" href="ConceptIndex.html" title="Index">
+<link rel="subsection" href="InterceptingHTTPTransactionFuncs.html#INKHttpTxnIntercept" title="INKHttpTxnIntercept">
+<link rel="subsection" href="INKHttpTxnServerIntercept.html" title="INKHttpTxnServerIntercept">
+<link rel="subsection" href="AlternateSelectionFunctions.html" title="Alternate Selection Functions">
+<link rel="subsection" href="ch18s09s04.html" title="Handle Release Functions">
+<script type="text/javascript" src="http://yui.yahooapis.com/2.2.2/build/yahoo/yahoo-min.js"></script><script type="text/javascript" src="http://yui.yahooapis.com/2.2.2/build/event/event-min.js"></script><script type="text/javascript" src="http://yui.yahooapis.com/2.2.2/build/treeview/treeview-min.js"></script><script type="text/javascript" src="js/tocnodes.js"></script><script type="text/javascript" src="js/toc.js"></script><script type="text/javascript">
+    document.write("<style> div.toc {display: none} </style>"); 
+  </script>
+</head>
+<body>
+<div class="doctitle">
+<a href="index.html">Home</a>
+<img src="images/docbook/ts75.png"><h1 class="doctitle">Traffic Server Software Developers Kit</h1>
+</div>
+<div class="navheader">
+<div class="navprev">
+<a accesskey="p" href="InitiateConnectionFunctions.html">Prev</a> — Initiate Connection</div>
+<div class="navnext">INKHttpTxnServerIntercept — <a accesskey="n" href="INKHttpTxnServerIntercept.html">Next</a>
+</div>
+</div>
+<div id="toc"></div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="InterceptingHTTPTransactionFuncs"></a>Intercepting HTTP Transaction Functions</h2></div></div></div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="INKHttpTxnIntercept"></a>INKHttpTxnIntercept</h3></div></div></div>
+<p>Allows a plugin to intercept an HTTP client’s request and to
+        serve the content in place of the origin server.</p>
+<div class="variablelist"><dl>
+<dt><span class="term">Prototype</span></dt>
+<dd><p><code class="code">INKReturnCode INKHttpTxnIntercept (INKCont
+              <em class="replaceable"><code>contp</code></em>, INKHttpTxn
+              <em class="replaceable"><code>txnp</code></em>) </code></p></dd>
+<dt><span class="term">Arguments</span></dt>
+<dd>
+<p><code class="code">INKCont
+              </code><code class="code"><em class="replaceable"><code>contp</code></em></code> is the
+              continuation that is called to accept the connection.</p>
+<p><code class="code">INKHttpTxn
+              </code><code class="code"><em class="replaceable"><code>txnp</code></em></code> is the
+              current HTTP txn the plugin wants to intercept.</p>
+</dd>
+<dt><span class="term">Description</span></dt>
+<dd>
+<p>Allows a plugin to intercept an HTTP client's request and
+              to serve the content in place of the origin server. The request
+              is intercepted right after being read by Traffic Server. The
+              origin server is not contacted.</p>
+<p>This API should be used in the
+              <code class="code">INK_HTTP_READ_REQUEST_HDR_HOOK</code> hook.</p>
+<p>Once <code class="function">INKHttpTxnIntercept</code> has been
+              called, the handler of the continuation
+              <code class="code"><em class="replaceable"><code>contp</code></em></code> receives an event
+              <code class="code">INK_EVENT_NET_ACCEPT</code>. Note that the continuation
+              passed should not have a <code class="code">NULL</code> mutex or an error is
+              returned.</p>
+<p>The void *<code class="code"><em class="replaceable"><code>data</code></em></code>
+              passed to the handler of the continuation
+              <code class="code"><em class="replaceable"><code>contp</code></em></code> is a data of type
+              NetVConnection representing the connection.</p>
+<p>Once VConnection is established, user can use regular
+              VConnection operations (<code class="function">INKVConnRead</code>,
+              <code class="function">INKVConnWrite</code>, etc...).</p>
+<p>A typical scenario when using INKHttpTxnIntercept
+              is:</p>
+<div class="itemizedlist"><ul type="disc">
+<li><p>Call <code class="function">INKHttpTxnIntercept</code> from
+                  hook <code class="code">INK_HTTP_READ_REQUEST_HDR_HOOK</code>.</p></li>
+<li><p>Get called back on the continuation's handler passed
+                  as argument to
+                  <code class="function">INKHttpTxnIntercept</code>.</p></li>
+<li><p>Get the VC from argument void
+                  *<code class="code"><em class="replaceable"><code>data</code></em></code> .</p></li>
+<li><p>Use <code class="function">INKVConnRead</code> to get the HTTP
+                  request. Note that you will not receive an event
+                  <code class="code">INK_VCONN_READ_COMPLETE</code>, only
+                  <code class="code">INK_VCONN_READ_READY</code>, as the number of
+                  characters to read is unknown. You should rely on
+                  <code class="function">INKTHttpParser</code> to parse the request and
+                  return a status <code class="code">INK_PARSE_DONE</code> when request is
+                  fully received (escape sequence “<code class="code">\r\n\r\n</code>”
+                  read).</p></li>
+<li><p>Use <code class="function">INKHttpParser</code> to parse the
+                  request.</p></li>
+<li><p>Use <code class="function">INKVConnWrite</code> to write the
+                  HTTP response.</p></li>
+</ul></div>
+<div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note">
+<tr>
+<td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/docbook/note.png"></td>
+<th align="left">Note</th>
+</tr>
+<tr><td align="left" valign="top"><p>The request and response do not go through the Traffic
+                Server HTTP state machine. So the request and response are not
+                cached by Traffic Server. The request is logged in
+                squid.log.</p></td></tr>
+</table></div>
+</dd>
+<dt><span class="term">Returns</span></dt>
+<dd>
+<p><code class="code">INK_SUCCESS</code> if the API is called
+              successfully.</p>
+<p><code class="code">INK_ERROR</code> if an error occurs while calling
+              the API or if an argument is invalid. This error is also
+              returned if the continuation passed has a <code class="code">NULL</code>
+              mutex.</p>
+</dd>
+<dt><span class="term">First release</span></dt>
+<dd><p>Traffic Server 5.2</p></dd>
+</dl></div>
+</div>
+</div>
+</body>
+</html>

Propchange: incubator/trafficserver/site/trunk/docs/sdk/InterceptingHTTPTransactionFuncs.html
------------------------------------------------------------------------------
    svn:keywords = Id

Added: incubator/trafficserver/site/trunk/docs/sdk/InterceptingHTTPTx.html
URL: http://svn.apache.org/viewvc/incubator/trafficserver/site/trunk/docs/sdk/InterceptingHTTPTx.html?rev=831152&view=auto
==============================================================================
--- incubator/trafficserver/site/trunk/docs/sdk/InterceptingHTTPTx.html (added)
+++ incubator/trafficserver/site/trunk/docs/sdk/InterceptingHTTPTx.html Thu Oct 29 23:23:25 2009
@@ -0,0 +1,70 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<title>Intercepting HTTP Transactions</title>
+<link rel="stylesheet" href="http://yui.yahooapis.com/2.2.2/build/reset/reset-min.css" type="text/css">
+<link rel="stylesheet" href="http://yui.yahooapis.com/2.2.2/build/fonts/fonts-min.css" type="text/css">
+<link rel="stylesheet" href="http://yui.yahooapis.com/2.2.2/build/treeview/assets/tree.css" type="text/css">
+<link rel="stylesheet" href="css/ydoc.css" type="text/css">
+<link rel="stylesheet" href="css/ydoc-chunk.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.69.1">
+<link rel="start" href="index.html" title="Traffic Server Software Developers Kit">
+<link rel="up" href="HTTPHooksAndTransactions.html" title="Chapter 8. HTTP Hooks and Transactions">
+<link rel="prev" href="HTTP_Transactions.html" title="HTTP Transactions">
+<link rel="next" href="InitiateHTTPConnection.html" title="Initiate HTTP Connection">
+<link rel="preface" href="Preface.html" title="Preface">
+<link rel="chapter" href="GetingStarted.html" title="Chapter 1. Getting Started">
+<link rel="chapter" href="CreatingTSPlugins.html" title="Chapter 2. How to Create Traffic Server Plugins">
+<link rel="index" href="CreatingTSPlugins.html#id372630" title="Index">
+<link rel="chapter" href="ch03.html" title="Chapter 3. Remap Plugin">
+<link rel="chapter" href="HeaderBasedPluginEx.html" title="Chapter 4. Header-Based Plugin Examples">
+<link rel="chapter" href="HTTPTransformationPlugins.html" title="Chapter 5. HTTP Transformation Plugins">
+<link rel="chapter" href="NewProtocolPlugins.html" title="Chapter 6. New Protocol Plugins">
+<link rel="chapter" href="ch07.html" title="Chapter 7. Cache Plugin">
+<link rel="chapter" href="HTTPHooksAndTransactions.html" title="Chapter 8. HTTP Hooks and Transactions">
+<link rel="chapter" href="MiscellaneousInterfaceGuide.html" title="Chapter 9. Miscellaneous Interface Guide">
+<link rel="chapter" href="HTTPHeaders.html" title="Chapter 10. HTTP Headers">
+<link rel="chapter" href="MutexGuide.html" title="Chapter 11. Mutex Guide">
+<link rel="chapter" href="Continuations.html" title="Chapter 12. Continuations">
+<link rel="chapter" href="PluginConfigurations.html" title="Chapter 13. Plugin Configurations">
+<link rel="chapter" href="ActionsGuide.html" title="Chapter 14. Actions Guide">
+<link rel="chapter" href="IOGuide.html" title="Chapter 15. IO Guide">
+<link rel="chapter" href="PluginManagement.html" title="Chapter 16. Plugin Management">
+<link rel="chapter" href="AddingStatistics.html" title="Chapter 17. Adding Statistics">
+<link rel="chapter" href="FunctionReference.html" title="Chapter 18. Function Reference">
+<link rel="appendix" href="App_SampleSourceCode.html" title="Appendix A. Sample Source Code">
+<link rel="appendix" href="App_DeprecatedFunctions.html" title="Appendix B. Deprecated Functions">
+<link rel="appendix" href="App_Troubleshooting.html" title="Appendix C. Troubleshooting Tips">
+<link rel="appendix" href="FunctionIndex.html" title="Appendix D. Function Index">
+<link rel="appendix" href="TypeIndex.html" title="Appendix E. Type Index">
+<link rel="index" href="ConceptIndex.html" title="Index">
+<script type="text/javascript" src="http://yui.yahooapis.com/2.2.2/build/yahoo/yahoo-min.js"></script><script type="text/javascript" src="http://yui.yahooapis.com/2.2.2/build/event/event-min.js"></script><script type="text/javascript" src="http://yui.yahooapis.com/2.2.2/build/treeview/treeview-min.js"></script><script type="text/javascript" src="js/tocnodes.js"></script><script type="text/javascript" src="js/toc.js"></script><script type="text/javascript">
+    document.write("<style> div.toc {display: none} </style>"); 
+  </script>
+</head>
+<body>
+<div class="doctitle">
+<a href="index.html">Home</a>
+<img src="images/docbook/ts75.png"><h1 class="doctitle">Traffic Server Software Developers Kit</h1>
+</div>
+<div class="navheader">
+<div class="navprev">
+<a accesskey="p" href="HTTP_Transactions.html">Prev</a> — HTTP Transactions</div>
+<div class="navnext">Initiate HTTP Connection — <a accesskey="n" href="InitiateHTTPConnection.html">Next</a>
+</div>
+</div>
+<div id="toc"></div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="InterceptingHTTPTx"></a>Intercepting HTTP Transactions</h2></div></div></div>
+<p>The intercepting HTTP transaction functions provide plugins the
+      ability to intercept transactions either after the request is received
+      or on contact with the origin server. The plugin acts as the origin
+      server using the <code class="code">INKVConn</code> interface. Allows both for
+      reading POST bodies in plugins as well as using alternative transports
+      to the origin server.The intercepting HTTP transaction functions
+      are:</p>
+<div class="itemizedlist"><ul type="disc"><li><p><a href="InterceptingHTTPTransactionFuncs.html#INKHttpTxnIntercept" title="INKHttpTxnIntercept">“INKHttpTxnIntercept”</a></p></li></ul></div>
+</div>
+</body>
+</html>

Propchange: incubator/trafficserver/site/trunk/docs/sdk/InterceptingHTTPTx.html
------------------------------------------------------------------------------
    svn:keywords = Id

Added: incubator/trafficserver/site/trunk/docs/sdk/Interface_ThreadFunctions.html
URL: http://svn.apache.org/viewvc/incubator/trafficserver/site/trunk/docs/sdk/Interface_ThreadFunctions.html?rev=831152&view=auto
==============================================================================
--- incubator/trafficserver/site/trunk/docs/sdk/Interface_ThreadFunctions.html (added)
+++ incubator/trafficserver/site/trunk/docs/sdk/Interface_ThreadFunctions.html Thu Oct 29 23:23:25 2009
@@ -0,0 +1,75 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<title>Thread Functions</title>
+<link rel="stylesheet" href="http://yui.yahooapis.com/2.2.2/build/reset/reset-min.css" type="text/css">
+<link rel="stylesheet" href="http://yui.yahooapis.com/2.2.2/build/fonts/fonts-min.css" type="text/css">
+<link rel="stylesheet" href="http://yui.yahooapis.com/2.2.2/build/treeview/assets/tree.css" type="text/css">
+<link rel="stylesheet" href="css/ydoc.css" type="text/css">
+<link rel="stylesheet" href="css/ydoc-chunk.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.69.1">
+<link rel="start" href="index.html" title="Traffic Server Software Developers Kit">
+<link rel="up" href="MiscellaneousInterfaceGuide.html" title="Chapter 9. Miscellaneous Interface Guide">
+<link rel="prev" href="MemoryAllocation.html" title="Memory Allocation">
+<link rel="next" href="HTTPHeaders.html" title="Chapter 10. HTTP Headers">
+<link rel="preface" href="Preface.html" title="Preface">
+<link rel="chapter" href="GetingStarted.html" title="Chapter 1. Getting Started">
+<link rel="chapter" href="CreatingTSPlugins.html" title="Chapter 2. How to Create Traffic Server Plugins">
+<link rel="index" href="CreatingTSPlugins.html#id372630" title="Index">
+<link rel="chapter" href="ch03.html" title="Chapter 3. Remap Plugin">
+<link rel="chapter" href="HeaderBasedPluginEx.html" title="Chapter 4. Header-Based Plugin Examples">
+<link rel="chapter" href="HTTPTransformationPlugins.html" title="Chapter 5. HTTP Transformation Plugins">
+<link rel="chapter" href="NewProtocolPlugins.html" title="Chapter 6. New Protocol Plugins">
+<link rel="chapter" href="ch07.html" title="Chapter 7. Cache Plugin">
+<link rel="chapter" href="HTTPHooksAndTransactions.html" title="Chapter 8. HTTP Hooks and Transactions">
+<link rel="chapter" href="MiscellaneousInterfaceGuide.html" title="Chapter 9. Miscellaneous Interface Guide">
+<link rel="chapter" href="HTTPHeaders.html" title="Chapter 10. HTTP Headers">
+<link rel="chapter" href="MutexGuide.html" title="Chapter 11. Mutex Guide">
+<link rel="chapter" href="Continuations.html" title="Chapter 12. Continuations">
+<link rel="chapter" href="PluginConfigurations.html" title="Chapter 13. Plugin Configurations">
+<link rel="chapter" href="ActionsGuide.html" title="Chapter 14. Actions Guide">
+<link rel="chapter" href="IOGuide.html" title="Chapter 15. IO Guide">
+<link rel="chapter" href="PluginManagement.html" title="Chapter 16. Plugin Management">
+<link rel="chapter" href="AddingStatistics.html" title="Chapter 17. Adding Statistics">
+<link rel="chapter" href="FunctionReference.html" title="Chapter 18. Function Reference">
+<link rel="appendix" href="App_SampleSourceCode.html" title="Appendix A. Sample Source Code">
+<link rel="appendix" href="App_DeprecatedFunctions.html" title="Appendix B. Deprecated Functions">
+<link rel="appendix" href="App_Troubleshooting.html" title="Appendix C. Troubleshooting Tips">
+<link rel="appendix" href="FunctionIndex.html" title="Appendix D. Function Index">
+<link rel="appendix" href="TypeIndex.html" title="Appendix E. Type Index">
+<link rel="index" href="ConceptIndex.html" title="Index">
+<script type="text/javascript" src="http://yui.yahooapis.com/2.2.2/build/yahoo/yahoo-min.js"></script><script type="text/javascript" src="http://yui.yahooapis.com/2.2.2/build/event/event-min.js"></script><script type="text/javascript" src="http://yui.yahooapis.com/2.2.2/build/treeview/treeview-min.js"></script><script type="text/javascript" src="js/tocnodes.js"></script><script type="text/javascript" src="js/toc.js"></script><script type="text/javascript">
+    document.write("<style> div.toc {display: none} </style>"); 
+  </script>
+</head>
+<body>
+<div class="doctitle">
+<a href="index.html">Home</a>
+<img src="images/docbook/ts75.png"><h1 class="doctitle">Traffic Server Software Developers Kit</h1>
+</div>
+<div class="navheader">
+<div class="navprev">
+<a accesskey="p" href="MemoryAllocation.html">Prev</a> — Memory Allocation</div>
+<div class="navnext">Chapter 10. HTTP Headers — <a accesskey="n" href="HTTPHeaders.html">Next</a>
+</div>
+</div>
+<div id="toc"></div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="Interface_ThreadFunctions"></a>Thread Functions</h2></div></div></div>
+<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.</p>
+<p>Threads serialize their access to shared resources and data using
+      the <code class="function">INKMutex</code> type, described in <a href="MutexGuide.html#Mutexes" title="Mutexes">“Mutexes”</a>.</p>
+<p>The thread functions are:</p>
+<div class="itemizedlist"><ul type="disc">
+<li><p><a href="ThreadFunctions.html#INKThreadCreate" title="INKThreadCreate">“INKThreadCreate”</a></p></li>
+<li><p><a href="INKThreadDestroy.html" title="INKThreadDestroy">“INKThreadDestroy”</a></p></li>
+<li><p><a href="INKThreadInit.html" title="INKThreadInit">“INKThreadInit”</a></p></li>
+<li><p><a href="INKThreadSelf.html" title="INKThreadSelf">“INKThreadSelf”</a></p></li>
+</ul></div>
+</div>
+</body>
+</html>

Propchange: incubator/trafficserver/site/trunk/docs/sdk/Interface_ThreadFunctions.html
------------------------------------------------------------------------------
    svn:keywords = Id

Added: incubator/trafficserver/site/trunk/docs/sdk/LicensingPlugin.html
URL: http://svn.apache.org/viewvc/incubator/trafficserver/site/trunk/docs/sdk/LicensingPlugin.html?rev=831152&view=auto
==============================================================================
--- incubator/trafficserver/site/trunk/docs/sdk/LicensingPlugin.html (added)
+++ incubator/trafficserver/site/trunk/docs/sdk/LicensingPlugin.html Thu Oct 29 23:23:25 2009
@@ -0,0 +1,95 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<title>Licensing Your Plugin</title>
+<link rel="stylesheet" href="http://yui.yahooapis.com/2.2.2/build/reset/reset-min.css" type="text/css">
+<link rel="stylesheet" href="http://yui.yahooapis.com/2.2.2/build/fonts/fonts-min.css" type="text/css">
+<link rel="stylesheet" href="http://yui.yahooapis.com/2.2.2/build/treeview/assets/tree.css" type="text/css">
+<link rel="stylesheet" href="css/ydoc.css" type="text/css">
+<link rel="stylesheet" href="css/ydoc-chunk.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.69.1">
+<link rel="start" href="index.html" title="Traffic Server Software Developers Kit">
+<link rel="up" href="PluginManagement.html" title="Chapter 16. Plugin Management">
+<link rel="prev" href="AccessPluginFiles.html" title="Accessing Installed Plugin Files">
+<link rel="next" href="SetUpLicensing.html" title="Setting Up Licensing">
+<link rel="preface" href="Preface.html" title="Preface">
+<link rel="chapter" href="GetingStarted.html" title="Chapter 1. Getting Started">
+<link rel="chapter" href="CreatingTSPlugins.html" title="Chapter 2. How to Create Traffic Server Plugins">
+<link rel="index" href="CreatingTSPlugins.html#id372630" title="Index">
+<link rel="chapter" href="ch03.html" title="Chapter 3. Remap Plugin">
+<link rel="chapter" href="HeaderBasedPluginEx.html" title="Chapter 4. Header-Based Plugin Examples">
+<link rel="chapter" href="HTTPTransformationPlugins.html" title="Chapter 5. HTTP Transformation Plugins">
+<link rel="chapter" href="NewProtocolPlugins.html" title="Chapter 6. New Protocol Plugins">
+<link rel="chapter" href="ch07.html" title="Chapter 7. Cache Plugin">
+<link rel="chapter" href="HTTPHooksAndTransactions.html" title="Chapter 8. HTTP Hooks and Transactions">
+<link rel="chapter" href="MiscellaneousInterfaceGuide.html" title="Chapter 9. Miscellaneous Interface Guide">
+<link rel="chapter" href="HTTPHeaders.html" title="Chapter 10. HTTP Headers">
+<link rel="chapter" href="MutexGuide.html" title="Chapter 11. Mutex Guide">
+<link rel="chapter" href="Continuations.html" title="Chapter 12. Continuations">
+<link rel="chapter" href="PluginConfigurations.html" title="Chapter 13. Plugin Configurations">
+<link rel="chapter" href="ActionsGuide.html" title="Chapter 14. Actions Guide">
+<link rel="chapter" href="IOGuide.html" title="Chapter 15. IO Guide">
+<link rel="chapter" href="PluginManagement.html" title="Chapter 16. Plugin Management">
+<link rel="chapter" href="AddingStatistics.html" title="Chapter 17. Adding Statistics">
+<link rel="chapter" href="FunctionReference.html" title="Chapter 18. Function Reference">
+<link rel="appendix" href="App_SampleSourceCode.html" title="Appendix A. Sample Source Code">
+<link rel="appendix" href="App_DeprecatedFunctions.html" title="Appendix B. Deprecated Functions">
+<link rel="appendix" href="App_Troubleshooting.html" title="Appendix C. Troubleshooting Tips">
+<link rel="appendix" href="FunctionIndex.html" title="Appendix D. Function Index">
+<link rel="appendix" href="TypeIndex.html" title="Appendix E. Type Index">
+<link rel="index" href="ConceptIndex.html" title="Index">
+<link rel="subsection" href="LicensingPlugin.html#Format_plugin.db" title="Format of plugin.db">
+<script type="text/javascript" src="http://yui.yahooapis.com/2.2.2/build/yahoo/yahoo-min.js"></script><script type="text/javascript" src="http://yui.yahooapis.com/2.2.2/build/event/event-min.js"></script><script type="text/javascript" src="http://yui.yahooapis.com/2.2.2/build/treeview/treeview-min.js"></script><script type="text/javascript" src="js/tocnodes.js"></script><script type="text/javascript" src="js/toc.js"></script><script type="text/javascript">
+    document.write("<style> div.toc {display: none} </style>"); 
+  </script>
+</head>
+<body>
+<div class="doctitle">
+<a href="index.html">Home</a>
+<img src="images/docbook/ts75.png"><h1 class="doctitle">Traffic Server Software Developers Kit</h1>
+</div>
+<div class="navheader">
+<div class="navprev">
+<a accesskey="p" href="AccessPluginFiles.html">Prev</a> — Accessing Installed Plugin Files</div>
+<div class="navnext">Setting Up Licensing — <a accesskey="n" href="SetUpLicensing.html">Next</a>
+</div>
+</div>
+<div id="toc"></div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="LicensingPlugin"></a>Licensing Your Plugin</h2></div></div></div>
+<p>When installing a plugin which requires a license, the plugin.db
+      must be updated. This file contains the license keys for the plugins. At
+      load time, Traffic Server reads the key in the
+      <code class="filename">plugin.db</code> file and checks their validity. If a key
+      is not valid, the plugin is not executed.</p>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="Format_plugin.db"></a>Format of plugin.db</h3></div></div></div>
+<p># comments start by a '#' character</p>
+<pre class="programlisting">[plugin_name]
+Object=plugin.so
+License=Key</pre>
+<p>Be careful with the syntax:</p>
+<div class="itemizedlist"><ul type="disc">
+<li>
+<p>Object is with an uppercase 'O'</p>
+<p>ex.: <code class="code">object=plugin.so is bad</code></p>
+</li>
+<li>
+<p>License is with an uppercase 'L'</p>
+<p>ex. <code class="code">license=key is bad</code></p>
+</li>
+<li>
+<p>No blank between '=' and value.</p>
+<p>ex.: <code class="code">Object = plugin.so is bad</code></p>
+</li>
+<li>
+<p>No blank after the value.</p>
+<p>ex. License=Key is bad</p>
+</li>
+</ul></div>
+</div>
+</div>
+</body>
+</html>

Propchange: incubator/trafficserver/site/trunk/docs/sdk/LicensingPlugin.html
------------------------------------------------------------------------------
    svn:keywords = Id

Added: incubator/trafficserver/site/trunk/docs/sdk/LoggingAPI.html
URL: http://svn.apache.org/viewvc/incubator/trafficserver/site/trunk/docs/sdk/LoggingAPI.html?rev=831152&view=auto
==============================================================================
--- incubator/trafficserver/site/trunk/docs/sdk/LoggingAPI.html (added)
+++ incubator/trafficserver/site/trunk/docs/sdk/LoggingAPI.html Thu Oct 29 23:23:25 2009
@@ -0,0 +1,126 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<title>Guide to the Logging API</title>
+<link rel="stylesheet" href="http://yui.yahooapis.com/2.2.2/build/reset/reset-min.css" type="text/css">
+<link rel="stylesheet" href="http://yui.yahooapis.com/2.2.2/build/fonts/fonts-min.css" type="text/css">
+<link rel="stylesheet" href="http://yui.yahooapis.com/2.2.2/build/treeview/assets/tree.css" type="text/css">
+<link rel="stylesheet" href="css/ydoc.css" type="text/css">
+<link rel="stylesheet" href="css/ydoc-chunk.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.69.1">
+<link rel="start" href="index.html" title="Traffic Server Software Developers Kit">
+<link rel="up" href="PluginManagement.html" title="Chapter 16. Plugin Management">
+<link rel="prev" href="GenerateLicenseKey.html" title="Generating a License Key">
+<link rel="next" href="AddingStatistics.html" title="Chapter 17. Adding Statistics">
+<link rel="preface" href="Preface.html" title="Preface">
+<link rel="chapter" href="GetingStarted.html" title="Chapter 1. Getting Started">
+<link rel="chapter" href="CreatingTSPlugins.html" title="Chapter 2. How to Create Traffic Server Plugins">
+<link rel="index" href="CreatingTSPlugins.html#id372630" title="Index">
+<link rel="chapter" href="ch03.html" title="Chapter 3. Remap Plugin">
+<link rel="chapter" href="HeaderBasedPluginEx.html" title="Chapter 4. Header-Based Plugin Examples">
+<link rel="chapter" href="HTTPTransformationPlugins.html" title="Chapter 5. HTTP Transformation Plugins">
+<link rel="chapter" href="NewProtocolPlugins.html" title="Chapter 6. New Protocol Plugins">
+<link rel="chapter" href="ch07.html" title="Chapter 7. Cache Plugin">
+<link rel="chapter" href="HTTPHooksAndTransactions.html" title="Chapter 8. HTTP Hooks and Transactions">
+<link rel="chapter" href="MiscellaneousInterfaceGuide.html" title="Chapter 9. Miscellaneous Interface Guide">
+<link rel="chapter" href="HTTPHeaders.html" title="Chapter 10. HTTP Headers">
+<link rel="chapter" href="MutexGuide.html" title="Chapter 11. Mutex Guide">
+<link rel="chapter" href="Continuations.html" title="Chapter 12. Continuations">
+<link rel="chapter" href="PluginConfigurations.html" title="Chapter 13. Plugin Configurations">
+<link rel="chapter" href="ActionsGuide.html" title="Chapter 14. Actions Guide">
+<link rel="chapter" href="IOGuide.html" title="Chapter 15. IO Guide">
+<link rel="chapter" href="PluginManagement.html" title="Chapter 16. Plugin Management">
+<link rel="chapter" href="AddingStatistics.html" title="Chapter 17. Adding Statistics">
+<link rel="chapter" href="FunctionReference.html" title="Chapter 18. Function Reference">
+<link rel="appendix" href="App_SampleSourceCode.html" title="Appendix A. Sample Source Code">
+<link rel="appendix" href="App_DeprecatedFunctions.html" title="Appendix B. Deprecated Functions">
+<link rel="appendix" href="App_Troubleshooting.html" title="Appendix C. Troubleshooting Tips">
+<link rel="appendix" href="FunctionIndex.html" title="Appendix D. Function Index">
+<link rel="appendix" href="TypeIndex.html" title="Appendix E. Type Index">
+<link rel="index" href="ConceptIndex.html" title="Index">
+<script type="text/javascript" src="http://yui.yahooapis.com/2.2.2/build/yahoo/yahoo-min.js"></script><script type="text/javascript" src="http://yui.yahooapis.com/2.2.2/build/event/event-min.js"></script><script type="text/javascript" src="http://yui.yahooapis.com/2.2.2/build/treeview/treeview-min.js"></script><script type="text/javascript" src="js/tocnodes.js"></script><script type="text/javascript" src="js/toc.js"></script><script type="text/javascript">
+    document.write("<style> div.toc {display: none} </style>"); 
+  </script>
+</head>
+<body>
+<div class="doctitle">
+<a href="index.html">Home</a>
+<img src="images/docbook/ts75.png"><h1 class="doctitle">Traffic Server Software Developers Kit</h1>
+</div>
+<div class="navheader">
+<div class="navprev">
+<a accesskey="p" href="GenerateLicenseKey.html">Prev</a> — Generating a License Key</div>
+<div class="navnext">Chapter 17. Adding Statistics — <a accesskey="n" href="AddingStatistics.html">Next</a>
+</div>
+</div>
+<div id="toc"></div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="LoggingAPI"></a>Guide to the Logging API</h2></div></div></div>
+<p>The logging API lets your plugin log entries in a custom text log
+      file. You create the file with the call
+      <code class="function">INKTextLogObjectCreate</code>. The log file is part of
+      Traffic Server’s logging system. By default, the log file is stored in
+      the logging directory. Once you have created the log object, you can set
+      log properties.</p>
+<p>The logging API enables you to:</p>
+<div class="itemizedlist"><ul type="disc">
+<li><p>Establish a custom text log for your plugin. See <a href="LoggingFunctions.html#INKTextLogObjectCreate" title="INKTextLogObjectCreate">INKTextLogObjectCreate</a>.</p></li>
+<li><p>Set the log header for your custom text log. See <a href="INKTextLogObjectHeaderSet.html" title="INKTextLogObjectHeaderSet">INKTextLogObjectHeaderSet</a>.</p></li>
+<li><p>Enable or disable rolling your custom text log. See <a href="INKTextLogObjectRollingEnabledSet.html" title="INKTextLogObjectRollingEnabledSet">INKTextLogObjectRollingEnabledSet</a>.</p></li>
+<li><p>Set the rolling interval in seconds for your custom text log.
+          See <a href="INKTextLogObjectRollingIntervalSecSet.html" title="INKTextLogObjectRollingIntervalSecSet">INKTextLogObjectRollingIntervalSecSet</a>.</p></li>
+<li><p>Set the rolling offset for your custom text log. See <a href="INKTextLogObjectRollingOffsetHrSet.html" title="INKTextLogObjectRollingOffsetHrSet">INKTextLogObjectRollingOffsetHrSet</a>.</p></li>
+<li><p>Write text entries to the custom text log. See <a href="INKTextLogObjectWrite.html" title="INKTextLogObjectWrite">INKTextLogObjectWrite</a>.</p></li>
+<li><p>Flush the contents of the custom text log’s write buffer to
+          disk. See <a href="INKTextLogObjectFlush.html" title="INKTextLogObjectFlush">INKTextLogObjectFlush</a>.</p></li>
+<li><p>Destroy custom text logs when you are done with them. See
+          <a href="INKTextLogObjectDestroy.html" title="INKTextLogObjectDestroy">INKTextLogObjectDestroy</a>.</p></li>
+</ul></div>
+<p>Here is how the logging API is used in the
+      <code class="filename">blacklist-1.c</code> sample plugin. See <a href="App_SampleSourceCode.html" title="Appendix A. Sample Source Code">Appendix A, <i>Sample Source Code</i></a> for complete source code.</p>
+<div class="orderedlist"><ol type="1">
+<li>
+<p>A new log file is defined as a global variable.</p>
+<pre class="programlisting">static INKTextLogObject log;</pre>
+</li>
+<li>
+<p>In <code class="function">INKPluginInit</code>, a new log object is
+          allocated:</p>
+<pre class="programlisting">log = INKTextLogObjectCreate("blacklist", INK_LOG_MODE_ADD_TIMESTAMP,
+    NULL, &amp;error);</pre>
+<p>The new log is named <code class="filename">blacklist.log</code>. Each
+          entry written to the log will have a timestamp. The
+          <code class="code">NULL</code> argument specifies that the new log does not have
+          a log header. The error argument stores the result of the log
+          creation. If the log is created successfully, error is equal to
+          <code class="code">INK_LOG_ERROR_NO_ERROR</code>.</p>
+</li>
+<li>
+<p>After creating the log, the plugin makes sure that the log was
+          created successfully:</p>
+<pre class="programlisting">if (!log) {
+    printf("Blacklist plugin: error %d while creating log\n", error);
+}</pre>
+</li>
+<li>
+<p>The <code class="filename">blacklist-1</code> plugin matches the host
+          portion of the URL in each client request with a list of blacklisted
+          sites stored in the array sites[ ]:</p>
+<pre class="programlisting">for (i = 0; i &lt; nsites; i++) {
+    if (strncmp (host, sites[i], host_length) == 0) {</pre>
+<p>If the host matches one of the blacklisted sites, say
+          sites[i], then the plugin writes a blacklist entry to
+          blacklist.log:</p>
+<pre class="programlisting">     if (log) {
+       INKTextLogObjectWrite(log, "blacklisting site: %s", sites[i]);</pre>
+<p>The format of the log entry is :</p>
+<p><code class="varname">&lt;timestamp&gt;</code><code class="code"> blacklisting site:
+          </code><code class="varname">sites[i]</code></p>
+<p>The log is not flushed or destroyed in the blacklist-1 plugin.
+          It lives for the life of the plugin.</p>
+</li>
+</ol></div>
+</div>
+</body>
+</html>

Propchange: incubator/trafficserver/site/trunk/docs/sdk/LoggingAPI.html
------------------------------------------------------------------------------
    svn:keywords = Id

Added: incubator/trafficserver/site/trunk/docs/sdk/LoggingFunctions.html
URL: http://svn.apache.org/viewvc/incubator/trafficserver/site/trunk/docs/sdk/LoggingFunctions.html?rev=831152&view=auto
==============================================================================
--- incubator/trafficserver/site/trunk/docs/sdk/LoggingFunctions.html (added)
+++ incubator/trafficserver/site/trunk/docs/sdk/LoggingFunctions.html Thu Oct 29 23:23:25 2009
@@ -0,0 +1,162 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<title>Logging Functions</title>
+<link rel="stylesheet" href="http://yui.yahooapis.com/2.2.2/build/reset/reset-min.css" type="text/css">
+<link rel="stylesheet" href="http://yui.yahooapis.com/2.2.2/build/fonts/fonts-min.css" type="text/css">
+<link rel="stylesheet" href="http://yui.yahooapis.com/2.2.2/build/treeview/assets/tree.css" type="text/css">
+<link rel="stylesheet" href="css/ydoc.css" type="text/css">
+<link rel="stylesheet" href="css/ydoc-chunk.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.69.1">
+<link rel="start" href="index.html" title="Traffic Server Software Developers Kit">
+<link rel="up" href="FunctionReference.html" title="Chapter 18. Function Reference">
+<link rel="prev" href="CoupledStatsFunctions.html" title="Coupled Statistics">
+<link rel="next" href="INKTextLogObjectHeaderSet.html" title="INKTextLogObjectHeaderSet">
+<link rel="preface" href="Preface.html" title="Preface">
+<link rel="chapter" href="GetingStarted.html" title="Chapter 1. Getting Started">
+<link rel="chapter" href="CreatingTSPlugins.html" title="Chapter 2. How to Create Traffic Server Plugins">
+<link rel="index" href="CreatingTSPlugins.html#id372630" title="Index">
+<link rel="chapter" href="ch03.html" title="Chapter 3. Remap Plugin">
+<link rel="chapter" href="HeaderBasedPluginEx.html" title="Chapter 4. Header-Based Plugin Examples">
+<link rel="chapter" href="HTTPTransformationPlugins.html" title="Chapter 5. HTTP Transformation Plugins">
+<link rel="chapter" href="NewProtocolPlugins.html" title="Chapter 6. New Protocol Plugins">
+<link rel="chapter" href="ch07.html" title="Chapter 7. Cache Plugin">
+<link rel="chapter" href="HTTPHooksAndTransactions.html" title="Chapter 8. HTTP Hooks and Transactions">
+<link rel="chapter" href="MiscellaneousInterfaceGuide.html" title="Chapter 9. Miscellaneous Interface Guide">
+<link rel="chapter" href="HTTPHeaders.html" title="Chapter 10. HTTP Headers">
+<link rel="chapter" href="MutexGuide.html" title="Chapter 11. Mutex Guide">
+<link rel="chapter" href="Continuations.html" title="Chapter 12. Continuations">
+<link rel="chapter" href="PluginConfigurations.html" title="Chapter 13. Plugin Configurations">
+<link rel="chapter" href="ActionsGuide.html" title="Chapter 14. Actions Guide">
+<link rel="chapter" href="IOGuide.html" title="Chapter 15. IO Guide">
+<link rel="chapter" href="PluginManagement.html" title="Chapter 16. Plugin Management">
+<link rel="chapter" href="AddingStatistics.html" title="Chapter 17. Adding Statistics">
+<link rel="chapter" href="FunctionReference.html" title="Chapter 18. Function Reference">
+<link rel="appendix" href="App_SampleSourceCode.html" title="Appendix A. Sample Source Code">
+<link rel="appendix" href="App_DeprecatedFunctions.html" title="Appendix B. Deprecated Functions">
+<link rel="appendix" href="App_Troubleshooting.html" title="Appendix C. Troubleshooting Tips">
+<link rel="appendix" href="FunctionIndex.html" title="Appendix D. Function Index">
+<link rel="appendix" href="TypeIndex.html" title="Appendix E. Type Index">
+<link rel="index" href="ConceptIndex.html" title="Index">
+<link rel="subsection" href="LoggingFunctions.html#INKTextLogObjectCreate" title="INKTextLogObjectCreate">
+<link rel="subsection" href="INKTextLogObjectHeaderSet.html" title="INKTextLogObjectHeaderSet">
+<link rel="subsection" href="INKTextLogObjectRollingEnabledSet.html" title="INKTextLogObjectRollingEnabledSet">
+<link rel="subsection" href="INKTextLogObjectRollingIntervalSecSet.html" title="INKTextLogObjectRollingIntervalSecSet">
+<link rel="subsection" href="INKTextLogObjectRollingOffsetHrSet.html" title="INKTextLogObjectRollingOffsetHrSet">
+<link rel="subsection" href="INKTextLogObjectWrite.html" title="INKTextLogObjectWrite">
+<link rel="subsection" href="INKTextLogObjectFlush.html" title="INKTextLogObjectFlush">
+<link rel="subsection" href="INKTextLogObjectDestroy.html" title="INKTextLogObjectDestroy">
+<script type="text/javascript" src="http://yui.yahooapis.com/2.2.2/build/yahoo/yahoo-min.js"></script><script type="text/javascript" src="http://yui.yahooapis.com/2.2.2/build/event/event-min.js"></script><script type="text/javascript" src="http://yui.yahooapis.com/2.2.2/build/treeview/treeview-min.js"></script><script type="text/javascript" src="js/tocnodes.js"></script><script type="text/javascript" src="js/toc.js"></script><script type="text/javascript">
+    document.write("<style> div.toc {display: none} </style>"); 
+  </script>
+</head>
+<body>
+<div class="doctitle">
+<a href="index.html">Home</a>
+<img src="images/docbook/ts75.png"><h1 class="doctitle">Traffic Server Software Developers Kit</h1>
+</div>
+<div class="navheader">
+<div class="navprev">
+<a accesskey="p" href="CoupledStatsFunctions.html">Prev</a> — Coupled Statistics</div>
+<div class="navnext">INKTextLogObjectHeaderSet — <a accesskey="n" href="INKTextLogObjectHeaderSet.html">Next</a>
+</div>
+</div>
+<div id="toc"></div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="LoggingFunctions"></a>Logging Functions</h2></div></div></div>
+<p></p>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="INKTextLogObjectCreate"></a>INKTextLogObjectCreate</h3></div></div></div>
+<p>Creates a new custom log for your plugin.</p>
+<div class="variablelist"><dl>
+<dt><span class="term">Prototype</span></dt>
+<dd><p><code class="code">INKReturnCode INKTextLogObjectCreate (const char
+              *<em class="replaceable"><code>filename</code></em>, int
+              <em class="replaceable"><code>mode</code></em>, INKTextLogObject
+              *<em class="replaceable"><code>new_logobj</code></em>)</code></p></dd>
+<dt><span class="term">Arguments</span></dt>
+<dd>
+<p><code class="code">Const char
+              *<em class="replaceable"><code>filename</code></em></code> is the name of the
+              new log file. The new log file is created in the log directory.
+              You can specify a path to a subdirectory within the log
+              directory (e.g. <code class="code">subdir/filename</code>) but make sure you
+              create the subdirectory first. If you do not specify a file name
+              extension, the extension <code class="filename">.log</code> is
+              automatically added.</p>
+<p>The logs you create are treated like ordinary logs; they
+              are rolled if log rolling is enabled. (Log collation is not
+              supported though).</p>
+<p><code class="code">int <em class="replaceable"><code>mode</code></em></code> is one
+              (or both) of the following (can be 0):</p>
+<pre class="programlisting">INK_LOG_MODE_ADD_TIMESTAMP</pre>
+<p>Whenever the plugin makes a log entry using
+              INKTextLogObjectWrite (see below), it prepends the entry with a
+              timestamp.</p>
+<pre class="programlisting">INK_LOG_MODE_DO_NOT_RENAME</pre>
+<p>This means that if there is a filename conflict, Traffic
+              Server should not attempt to rename the custom log. The
+              consequence of a name conflict is that the custom log is not
+              created.</p>
+<p>INKTextLogObject *new_logobj is set to the newly created
+              log object.</p>
+</dd>
+<dt><span class="term">Description</span></dt>
+<dd>
+<p>Creates a custom log for your plugin. Once log object is
+              created, APIs</p>
+<div class="itemizedlist"><ul type="disc">
+<li><p><code class="code">INKTextLogObjectRollingEnabledSet</code></p></li>
+<li><p><code class="code">INKTextLogObjectRollingIntervalSecSet</code></p></li>
+<li><p><code class="code">INKTExtLogObjectRollingOffsetHrSet</code></p></li>
+</ul></div>
+<p>can be used on it to set properties.</p>
+<p>If the value of
+              <code class="code"><em class="replaceable"><code>mode</code></em></code> is not a valid
+              value, then the behavior of the API cannot be predicted.</p>
+</dd>
+<dt><span class="term">Returns</span></dt>
+<dd>
+<p><code class="code">INK_SUCCESS</code> if API is called
+              successfully.</p>
+<p><code class="code">INK_ERROR</code> if an error occurs while calling
+              the API or if an argument is invalid.</p>
+</dd>
+<dt><span class="term">Example</span></dt>
+<dd>
+<p>Example: suppose you call</p>
+<pre class="programlisting">INKTextLogObjectCreate ("squid" , mode, NULL, &amp;log);</pre>
+<p>If <code class="code"><em class="replaceable"><code>mode</code></em></code> is
+              <code class="code">INK_LOG_MODE_DO_NOT_RENAME</code>, you will NOT get a new
+              log (you'll get an error) if squid.log already exists.</p>
+<p>If <code class="code"><em class="replaceable"><code>mode</code></em></code> is not
+              <code class="code">INK_LOG_MODE_DO_NOT_RENAME</code>, Traffic Server tries to
+              rename the log to a new name (it will try squid_1.log).</p>
+<p>If a log object is created with
+              <code class="code">INK_LOG_MODE_DO_NOT_RENAME</code> mode and a log with the
+              same file name pre-exists, then the signature (type of log file)
+              is compared. If the signature log files match, the pre-existing
+              file is opened and logging is resumed at the end of the file. IF
+              the signatures do not match, an error is returned.</p>
+<p>If a log object is created without
+              <code class="code">INK_LOG_MODE_DO_NOT_RENAME</code> mode and a log with the
+              same file name pre-exists, then the signature (type of log file)
+              is compared. If the signatures of the log files match, the
+              pre-existing file is opened and logging is resumed at the end of
+              the file. If the signature does not match, another file with
+              <code class="filename">filename_1.log</code> is tried and so on.</p>
+<p>Signature of log file is a type of log file. Log files can
+              be structured/fixed format log files or unstructured/free format
+              log files. All free format log files have the same signature,
+              while structure log files have the structure/fixed format of the
+              log file as its signature.</p>
+</dd>
+<dt><span class="term">First Release</span></dt>
+<dd><p>Traffic Server 5.2</p></dd>
+</dl></div>
+</div>
+</div>
+</body>
+</html>

Propchange: incubator/trafficserver/site/trunk/docs/sdk/LoggingFunctions.html
------------------------------------------------------------------------------
    svn:keywords = Id

Added: incubator/trafficserver/site/trunk/docs/sdk/MIMEFldsBelongAssocMIMEHdr.html
URL: http://svn.apache.org/viewvc/incubator/trafficserver/site/trunk/docs/sdk/MIMEFldsBelongAssocMIMEHdr.html?rev=831152&view=auto
==============================================================================
--- incubator/trafficserver/site/trunk/docs/sdk/MIMEFldsBelongAssocMIMEHdr.html (added)
+++ incubator/trafficserver/site/trunk/docs/sdk/MIMEFldsBelongAssocMIMEHdr.html Thu Oct 29 23:23:25 2009
@@ -0,0 +1,96 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<title>MIME Fields Always Belong to an Associated MIME
+        Header</title>
+<link rel="stylesheet" href="http://yui.yahooapis.com/2.2.2/build/reset/reset-min.css" type="text/css">
+<link rel="stylesheet" href="http://yui.yahooapis.com/2.2.2/build/fonts/fonts-min.css" type="text/css">
+<link rel="stylesheet" href="http://yui.yahooapis.com/2.2.2/build/treeview/assets/tree.css" type="text/css">
+<link rel="stylesheet" href="css/ydoc.css" type="text/css">
+<link rel="stylesheet" href="css/ydoc-chunk.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.69.1">
+<link rel="start" href="index.html" title="Traffic Server Software Developers Kit">
+<link rel="up" href="GuideTSHTTPHdrSyst.html" title="Guide to Traffic Server HTTP Header System">
+<link rel="prev" href="DuplicateMIMEFlds.html" title="Duplicate MIME Fields Are Not Coalesced">
+<link rel="next" href="RlsMarshalBufHandles.html" title="Release Marshal Buffer Handles">
+<link rel="preface" href="Preface.html" title="Preface">
+<link rel="chapter" href="GetingStarted.html" title="Chapter 1. Getting Started">
+<link rel="chapter" href="CreatingTSPlugins.html" title="Chapter 2. How to Create Traffic Server Plugins">
+<link rel="index" href="CreatingTSPlugins.html#id372630" title="Index">
+<link rel="chapter" href="ch03.html" title="Chapter 3. Remap Plugin">
+<link rel="chapter" href="HeaderBasedPluginEx.html" title="Chapter 4. Header-Based Plugin Examples">
+<link rel="chapter" href="HTTPTransformationPlugins.html" title="Chapter 5. HTTP Transformation Plugins">
+<link rel="chapter" href="NewProtocolPlugins.html" title="Chapter 6. New Protocol Plugins">
+<link rel="chapter" href="ch07.html" title="Chapter 7. Cache Plugin">
+<link rel="chapter" href="HTTPHooksAndTransactions.html" title="Chapter 8. HTTP Hooks and Transactions">
+<link rel="chapter" href="MiscellaneousInterfaceGuide.html" title="Chapter 9. Miscellaneous Interface Guide">
+<link rel="chapter" href="HTTPHeaders.html" title="Chapter 10. HTTP Headers">
+<link rel="chapter" href="MutexGuide.html" title="Chapter 11. Mutex Guide">
+<link rel="chapter" href="Continuations.html" title="Chapter 12. Continuations">
+<link rel="chapter" href="PluginConfigurations.html" title="Chapter 13. Plugin Configurations">
+<link rel="chapter" href="ActionsGuide.html" title="Chapter 14. Actions Guide">
+<link rel="chapter" href="IOGuide.html" title="Chapter 15. IO Guide">
+<link rel="chapter" href="PluginManagement.html" title="Chapter 16. Plugin Management">
+<link rel="chapter" href="AddingStatistics.html" title="Chapter 17. Adding Statistics">
+<link rel="chapter" href="FunctionReference.html" title="Chapter 18. Function Reference">
+<link rel="appendix" href="App_SampleSourceCode.html" title="Appendix A. Sample Source Code">
+<link rel="appendix" href="App_DeprecatedFunctions.html" title="Appendix B. Deprecated Functions">
+<link rel="appendix" href="App_Troubleshooting.html" title="Appendix C. Troubleshooting Tips">
+<link rel="appendix" href="FunctionIndex.html" title="Appendix D. Function Index">
+<link rel="appendix" href="TypeIndex.html" title="Appendix E. Type Index">
+<link rel="index" href="ConceptIndex.html" title="Index">
+<script type="text/javascript" src="http://yui.yahooapis.com/2.2.2/build/yahoo/yahoo-min.js"></script><script type="text/javascript" src="http://yui.yahooapis.com/2.2.2/build/event/event-min.js"></script><script type="text/javascript" src="http://yui.yahooapis.com/2.2.2/build/treeview/treeview-min.js"></script><script type="text/javascript" src="js/tocnodes.js"></script><script type="text/javascript" src="js/toc.js"></script><script type="text/javascript">
+    document.write("<style> div.toc {display: none} </style>"); 
+  </script>
+</head>
+<body>
+<div class="doctitle">
+<a href="index.html">Home</a>
+<img src="images/docbook/ts75.png"><h1 class="doctitle">Traffic Server Software Developers Kit</h1>
+</div>
+<div class="navheader">
+<div class="navprev">
+<a accesskey="p" href="DuplicateMIMEFlds.html">Prev</a> — Duplicate MIME Fields Are Not Coalesced</div>
+<div class="navnext">Release Marshal Buffer Handles — <a accesskey="n" href="RlsMarshalBufHandles.html">Next</a>
+</div>
+</div>
+<div id="toc"></div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="MIMEFldsBelongAssocMIMEHdr"></a>MIME Fields Always Belong to an Associated MIME
+        Header<a class="indexterm" name="id381034"></a></h3></div></div></div>
+<p>In Traffic Server versions 4.0 and newer, you cannot create a
+        new MIME field without an associated MIME header or HTTP header; MIME
+        fields are always seen as part of a MIME header or HTTP
+        header.<a class="indexterm" name="id381045"></a></p>
+<p>To use a MIME field, you must specify the MIME header or HTTP
+        header to which it belongs. This header is called the field’s parent
+        header. The <code class="function">INKMimeField*</code> functions in pre-2.0
+        versions of the SDK, which do not require the parent header<a class="indexterm" name="id381061"></a> as inputs, have been deprecated. SDK 2.0 has new
+        functions, the <code class="function">INKMimeHdrField</code>* series, that
+        require you to specify the location of the parent header along with
+        the location of the MIME field. For every deprecated
+        <code class="function">INKMimeField</code>* function, there is a new preferred
+        <code class="function">INKMimeHdrField</code>* function. Use the
+        <code class="function">INKMimeHdrField*</code> functions instead of the
+        deprecated <code class="function">INKMimeField*</code> series. Here are some
+        examples:</p>
+<p>Instead of:</p>
+<pre class="programlisting">INKMLoc INKMimeFieldCreate (INKMBuffer bufp)</pre>
+<p>Use:</p>
+<pre class="programlisting">INKMLoc INKMimeHdrFieldCreate (INKMBuffer bufp, INKMLoc   hdr)</pre>
+<p>Instead of:</p>
+<pre class="programlisting">void INKMimeFieldCopyValues (INKMBuffer dest_bufp, INKMLoc dest_offset,
+   INKMBuffer src_bufp, INKMLoc src_offset)</pre>
+<p>Use:</p>
+<pre class="programlisting">void INKMimeHdrFieldCopyValues (INKMBuffer dest_bufp, INKMLoc dest_hdr,
+   INKMLoc dest_field, INKMBuffer src_bufp, INKMLoc src_hdr, INKMLoc
+   src_field)</pre>
+<p>In the <code class="function">INKMimeHdrField*</code> function
+        prototypes, the <code class="code">INKMLoc</code> field corresponds to the
+        <code class="code">INKMLoc</code> offset used the
+        <code class="function">INKMimeField*</code> functions. See the discussion of
+        parent <code class="code">INKMLoc</code> in the following section.</p>
+</div>
+</body>
+</html>

Propchange: incubator/trafficserver/site/trunk/docs/sdk/MIMEFldsBelongAssocMIMEHdr.html
------------------------------------------------------------------------------
    svn:keywords = Id

Added: incubator/trafficserver/site/trunk/docs/sdk/MIMEHeaders.html
URL: http://svn.apache.org/viewvc/incubator/trafficserver/site/trunk/docs/sdk/MIMEHeaders.html?rev=831152&view=auto
==============================================================================
--- incubator/trafficserver/site/trunk/docs/sdk/MIMEHeaders.html (added)
+++ incubator/trafficserver/site/trunk/docs/sdk/MIMEHeaders.html Thu Oct 29 23:23:25 2009
@@ -0,0 +1,541 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<title>MIME Headers</title>
+<link rel="stylesheet" href="http://yui.yahooapis.com/2.2.2/build/reset/reset-min.css" type="text/css">
+<link rel="stylesheet" href="http://yui.yahooapis.com/2.2.2/build/fonts/fonts-min.css" type="text/css">
+<link rel="stylesheet" href="http://yui.yahooapis.com/2.2.2/build/treeview/assets/tree.css" type="text/css">
+<link rel="stylesheet" href="css/ydoc.css" type="text/css">
+<link rel="stylesheet" href="css/ydoc-chunk.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.69.1">
+<link rel="start" href="index.html" title="Traffic Server Software Developers Kit">
+<link rel="up" href="HTTPHeaders.html" title="Chapter 10. HTTP Headers">
+<link rel="prev" href="URLs.html" title="URLs">
+<link rel="next" href="MutexGuide.html" title="Chapter 11. Mutex Guide">
+<link rel="preface" href="Preface.html" title="Preface">
+<link rel="chapter" href="GetingStarted.html" title="Chapter 1. Getting Started">
+<link rel="chapter" href="CreatingTSPlugins.html" title="Chapter 2. How to Create Traffic Server Plugins">
+<link rel="index" href="CreatingTSPlugins.html#id372630" title="Index">
+<link rel="chapter" href="ch03.html" title="Chapter 3. Remap Plugin">
+<link rel="chapter" href="HeaderBasedPluginEx.html" title="Chapter 4. Header-Based Plugin Examples">
+<link rel="chapter" href="HTTPTransformationPlugins.html" title="Chapter 5. HTTP Transformation Plugins">
+<link rel="chapter" href="NewProtocolPlugins.html" title="Chapter 6. New Protocol Plugins">
+<link rel="chapter" href="ch07.html" title="Chapter 7. Cache Plugin">
+<link rel="chapter" href="HTTPHooksAndTransactions.html" title="Chapter 8. HTTP Hooks and Transactions">
+<link rel="chapter" href="MiscellaneousInterfaceGuide.html" title="Chapter 9. Miscellaneous Interface Guide">
+<link rel="chapter" href="HTTPHeaders.html" title="Chapter 10. HTTP Headers">
+<link rel="chapter" href="MutexGuide.html" title="Chapter 11. Mutex Guide">
+<link rel="chapter" href="Continuations.html" title="Chapter 12. Continuations">
+<link rel="chapter" href="PluginConfigurations.html" title="Chapter 13. Plugin Configurations">
+<link rel="chapter" href="ActionsGuide.html" title="Chapter 14. Actions Guide">
+<link rel="chapter" href="IOGuide.html" title="Chapter 15. IO Guide">
+<link rel="chapter" href="PluginManagement.html" title="Chapter 16. Plugin Management">
+<link rel="chapter" href="AddingStatistics.html" title="Chapter 17. Adding Statistics">
+<link rel="chapter" href="FunctionReference.html" title="Chapter 18. Function Reference">
+<link rel="appendix" href="App_SampleSourceCode.html" title="Appendix A. Sample Source Code">
+<link rel="appendix" href="App_DeprecatedFunctions.html" title="Appendix B. Deprecated Functions">
+<link rel="appendix" href="App_Troubleshooting.html" title="Appendix C. Troubleshooting Tips">
+<link rel="appendix" href="FunctionIndex.html" title="Appendix D. Function Index">
+<link rel="appendix" href="TypeIndex.html" title="Appendix E. Type Index">
+<link rel="index" href="ConceptIndex.html" title="Index">
+<script type="text/javascript" src="http://yui.yahooapis.com/2.2.2/build/yahoo/yahoo-min.js"></script><script type="text/javascript" src="http://yui.yahooapis.com/2.2.2/build/event/event-min.js"></script><script type="text/javascript" src="http://yui.yahooapis.com/2.2.2/build/treeview/treeview-min.js"></script><script type="text/javascript" src="js/tocnodes.js"></script><script type="text/javascript" src="js/toc.js"></script><script type="text/javascript">
+    document.write("<style> div.toc {display: none} </style>"); 
+  </script>
+</head>
+<body>
+<div class="doctitle">
+<a href="index.html">Home</a>
+<img src="images/docbook/ts75.png"><h1 class="doctitle">Traffic Server Software Developers Kit</h1>
+</div>
+<div class="navheader">
+<div class="navprev">
+<a accesskey="p" href="URLs.html">Prev</a> — URLs</div>
+<div class="navnext">Chapter 11. Mutex Guide — <a accesskey="n" href="MutexGuide.html">Next</a>
+</div>
+</div>
+<div id="toc"></div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="MIMEHeaders"></a>MIME Headers</h2></div></div></div>
+<p>The Traffic Server API MIME header functions enable you to
+      retrieve and modify information about HTTP MIME fields.</p>
+<p>An HTTP request or response consists of a header, body, and
+      trailer. The HTTP header<a class="indexterm" name="id383429"></a> consists of a request or response line, and a MIME
+      header<a class="indexterm" name="id383437"></a>. A MIME header is composed of zero or more <a class="indexterm" name="id383447"></a>MIME fields. A MIME field is composed of a field name, a
+      colon and zero or more field values. The values in a field are separated
+      by commas. In the following example, Foo is the <a class="indexterm" name="id383456"></a>MIME field name and bar is the first <a class="indexterm" name="id383465"></a>MIME field value and car is the second MIME field
+      value:</p>
+<pre class="programlisting">Foo: bar, car</pre>
+<p>The following is an augmented Backus-Naur Form (BNF) for the form
+      of a <a class="indexterm" name="id383483"></a>MIME header. It specifies exactly what was described
+      above. A header consists of zero or more fields which consist of a name,
+      a separating colon and zero or more values. A name or value is simply a
+      string of tokens which is potentially zero length. And a token is any
+      character except certain control characters and separators such as
+      colons.</p>
+<pre class="programlisting">MIME-header = *MIME-field
+MIME-field = field-name ":" #field-value
+field-name = *token
+field-value = *token</pre>
+<p>For the purposes of retrieving a field, field names are not case
+      sensitive: the field names <code class="code">Foo</code>, <code class="code">foo</code> and
+      <code class="code">fOO</code> are all equivalent.</p>
+<p>The MIME header data structure is a parsed version of a standard
+      Internet MIME header. The MIME header data structure is similar to the
+      URL data structure (see <a href="URLs.html" title="URLs">“URLs”</a>). The actual data is
+      stored in a marshal buffer and the MIME header functions operate on a
+      marshal buffer and a location (INKMLoc) within the buffer.</p>
+<p>After a call to <code class="function">INKMimeHdrFieldDestroy</code>,
+      <code class="function">INKMimeHdrFieldRemove</code> or
+      <code class="function">INKUrlDestroy</code> is made, you must deallocate the
+      <code class="function">INKMLoc</code> handle by a call to
+      <code class="function">INKHandleMLocRelease</code>. You do not need to deallocate
+      a <code class="code">NULL</code> handles. For instance, if you called
+      <code class="function">INKMimeHdrFieldValueStringGet</code> to get the value of
+      the content type field and the field does not exist, it returns
+      <code class="code">INK_NULL_MLOC</code>. In this case, you would not have to
+      deallocate the handle by a call to
+      <code class="function">INKHandleMLocRelease</code>.</p>
+<p>The location (<code class="function">INKMLoc</code>) in the following MIME
+      header functions can be either a HTTP header location or a MIME header
+      location. If an HTTP header location is passed to these function, the
+      system locates the MIME header associated with this HTTP header, and
+      executes the corresponding MIME header operations specified by the
+      functions. See the example in the description of <a href="MimeHeadersFunctions.html#INKMimeHdrCopy" title="INKMimeHdrCopy"><code class="code">INKMimeHdrCopy</code></a>.</p>
+<p>MIME headers may contain more than one MIME field with the same
+      name. Previous versions of Traffic Server (Traffic Server versions
+      before 4.0) joined multiple fields with the same name into one field
+      with composite values. This behavior comes at a performance cost, and
+      causes interoperability problems with some older clients and servers.
+      Future versions of Traffic Server will cease coalescing duplicate
+      fields.</p>
+<p>Correctly behaving plugins should check for the presence of
+      duplicate fields, and iterate over the duplicate fields, by using
+      <code class="function">INKMimeHdrFieldNextDup</code>.</p>
+<p>To facilitate fast comparisons and to reduce storage size, Traffic
+      Server defines several pre-allocated field names. These field names
+      correspond to field names found in HTTP and NNTP headers.</p>
+<div class="informaltable"><table border="1">
+<colgroup>
+<col>
+<col>
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td align="center"><span class="bold"><strong>Traffic Server
+              pre-allocated field names </strong></span></td>
+<td align="center"><span class="bold"><strong>HTTP and NNTP header
+              field names</strong></span></td>
+<td align="center"><span class="bold"><strong>Associated string
+              lengths</strong></span></td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_ACCEPT</td>
+<td>"Accept"</td>
+<td>INK_MIME_LEN_ACCEPT</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_ACCEPT_CHARSET</td>
+<td>“Accept-Charset"</td>
+<td>INK_MIME_LEN_ACCEPT_CHARSET</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_ACCEPT_ENCODING</td>
+<td>"Accept-Encoding"</td>
+<td>INK_MIME_LEN_ACCEPT_ENCODING</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_ACCEPT_LANGUAGE</td>
+<td>"Accept-Language"</td>
+<td>INK_MIME_LEN_ACCEPT_LANGUAGE</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_ACCEPT_RANGES</td>
+<td>"Accept-Ranges"</td>
+<td>INK_MIME_LEN_ACCEPT_RANGES</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_AGE</td>
+<td>"Age"</td>
+<td>INK_MIME_LEN_AGE</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_ALLOW</td>
+<td>"Allow"</td>
+<td>INK_MIME_LEN_ALLOW</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_APPROVED</td>
+<td>“Approved"</td>
+<td>INK_MIME_LEN_APPROVED</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_AUTHORIZATION</td>
+<td>"Authorization"</td>
+<td>INK_MIME_LEN_AUTHORIZATION</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_BYTES</td>
+<td>"Bytes"</td>
+<td>INK_MIME_LEN_BYTES</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_CACHE_CONTROL</td>
+<td>"Cache-Control"</td>
+<td>INK_MIME_LEN_CACHE_CONTROL</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_CLIENT_IP</td>
+<td>"Client-ip"</td>
+<td>INK_MIME_LEN_CLIENT_IP</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_CONNECTION</td>
+<td>"Connection"</td>
+<td>INK_MIME_LEN_CONNECTION</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_CONTENT_BASE</td>
+<td>"Content-Base"</td>
+<td>INK_MIME_LEN_CONTENT_BASE</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_CONTENT_ENCODING</td>
+<td>"Content-Encoding"</td>
+<td>INK_MIME_LEN_CONTENT_ENCODING</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_CONTENT_LANGUAGE</td>
+<td>"Content-Language"</td>
+<td>INK_MIME_LEN_CONTENT_LANGUAGE</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_CONTENT_LENGTH</td>
+<td>"Content-Length"</td>
+<td>INK_MIME_LEN_CONTENT_LENGTH</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_CONTENT_LOCATION</td>
+<td>"Content-Location"</td>
+<td>INK_MIME_LEN_CONTENT_LOCATION</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_CONTENT_MD5</td>
+<td>"Content-MD5"</td>
+<td>INK_MIME_LEN_CONTENT_MD5</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_CONTENT_RANGE</td>
+<td>"Content-Range"</td>
+<td>INK_MIME_LEN_CONTENT_RANGE</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_CONTENT_TYPE</td>
+<td>"Content-Type"</td>
+<td>INK_MIME_LEN_CONTENT_TYPE</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_CONTROL</td>
+<td>"Control"</td>
+<td>INK_MIME_LEN_CONTROL</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_COOKIE</td>
+<td>"Cookie"</td>
+<td>INK_MIME_LEN_COOKIE</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_DATE</td>
+<td>"Date"</td>
+<td>INK_MIME_LEN_DATE</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_DISTRIBUTION</td>
+<td>"Distribution"</td>
+<td>INK_MIME_LEN_DISTRIBUTION</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_ETAG</td>
+<td>"Etag"</td>
+<td>INK_MIME_LEN_ETAG</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_EXPECT</td>
+<td>"Expect"</td>
+<td>INK_MIME_LEN_EXPECT</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_EXPIRES</td>
+<td>"Expires"</td>
+<td>INK_MIME_LEN_EXPIRES</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_FOLLOWUP_TO</td>
+<td>"Followup-To"</td>
+<td>INK_MIME_LEN_FOLLOWUP_TO</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_FROM</td>
+<td>"From"</td>
+<td>INK_MIME_LEN_FROM</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_HOST</td>
+<td>"Host"</td>
+<td>INK_MIME_LEN_HOST</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_IF_MATCH</td>
+<td>"If-Match"</td>
+<td>INK_MIME_LEN_IF_MATCH</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_IF_MODIFIED_SINCE</td>
+<td>"If-Modified-Since''</td>
+<td>INK_MIME_LEN_IF_MODIFIED_SINCE</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_IF_NONE_MATCH</td>
+<td>"If-None-Match''</td>
+<td>INK_MIME_LEN_IF_NONE_MATCH</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_IF_RANGE</td>
+<td>"If-Range''</td>
+<td>INK_MIME_LEN_IF_RANGE</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_IF_UNMODIFIED_SINCE</td>
+<td>"If-Unmodified-Since''</td>
+<td>INK_MIME_LEN_IF_UNMODIFIED_SINCE</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_KEEP_ALIVE</td>
+<td>"Keep-Alive''</td>
+<td>INK_MIME_LEN_KEEP_ALIVE</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_KEYWORDS</td>
+<td>"Keywords''</td>
+<td>INK_MIME_LEN_KEYWORDS</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_LAST_MODIFIED</td>
+<td>"Last-Modified''</td>
+<td>INK_MIME_LEN_LAST_MODIFIED</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_LINES</td>
+<td>"Lines''</td>
+<td>INK_MIME_LEN_LINES</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_LOCATION</td>
+<td>"Location''</td>
+<td>INK_MIME_LEN_LOCATION</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_MAX_FORWARDS</td>
+<td>"Max-Forwards''</td>
+<td>INK_MIME_LEN_MAX_FORWARDS</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_MESSAGE_ID</td>
+<td>"Message-ID''</td>
+<td>INK_MIME_LEN_MESSAGE_ID</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_NEWSGROUPS</td>
+<td>"Newsgroups''</td>
+<td>INK_MIME_LEN_NEWSGROUPS</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_ORGANIZATION</td>
+<td>"Organization''</td>
+<td>INK_MIME_LEN_ORGANIZATION</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_PATH</td>
+<td>"Path''</td>
+<td>INK_MIME_LEN_PATH</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_PRAGMA</td>
+<td>"Pragma''</td>
+<td>INK_MIME_LEN_PRAGMA</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_PROXY_AUTHENTICATE</td>
+<td>"Proxy-Authenticate''</td>
+<td>INK_MIME_LEN_PROXY_AUTHENTICATE</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_PROXY_AUTHORIZATION</td>
+<td>"Proxy-Authorization''</td>
+<td>INK_MIME_LEN_PROXY_AUTHORIZATION</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_PROXY_CONNECTION</td>
+<td>"Proxy-Connection''</td>
+<td>INK_MIME_LEN_PROXY_CONNECTION</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_PUBLIC</td>
+<td>"Public''</td>
+<td>INK_MIME_LEN_PUBLIC</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_RANGE</td>
+<td>"Range''</td>
+<td>INK_MIME_LEN_RANGE</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_REFERENCES</td>
+<td>"References''</td>
+<td>INK_MIME_LEN_REFERENCES</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_REFERER</td>
+<td>"Referer''</td>
+<td>INK_MIME_LEN_REFERER</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_REPLY_TO</td>
+<td>"Reply-To''</td>
+<td>INK_MIME_LEN_REPLY_TO</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_RETRY_AFTER</td>
+<td>"Retry-After''</td>
+<td>INK_MIME_LEN_RETRY_AFTER</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_SENDER</td>
+<td>"Sender''</td>
+<td>INK_MIME_LEN_SENDER</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_SERVER</td>
+<td>"Server''</td>
+<td>INK_MIME_LEN_SERVER</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_SET_COOKIE</td>
+<td>"Set-Cookie''</td>
+<td>INK_MIME_LEN_SET_COOKIE</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_SUBJECT</td>
+<td>"Subject''</td>
+<td>INK_MIME_LEN_SUBJECTINK_MIME_LEN_SUBJECT</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_SUMMARY</td>
+<td>"Summary''</td>
+<td>INK_MIME_LEN_SUMMARY</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_TE</td>
+<td>"TE''</td>
+<td>INK_MIME_LEN_TE</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_TRANSFER_ENCODING</td>
+<td>"Transfer-Encoding''</td>
+<td>INK_MIME_LEN_TRANSFER_ENCODING</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_UPGRADE</td>
+<td>"Upgrade''</td>
+<td>INK_MIME_LEN_UPGRADE</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_USER_AGENT</td>
+<td>"User-Agent''</td>
+<td>INK_MIME_LEN_USER_AGENT</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_VARY</td>
+<td>"Vary''</td>
+<td>INK_MIME_LEN_VARY</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_VIA</td>
+<td>"Via''</td>
+<td>INK_MIME_LEN_VIA</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_WARNING</td>
+<td>"Warning''</td>
+<td>INK_MIME_LEN_WARNING</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_WWW_AUTHENTICATE</td>
+<td>"Www-Authenticate''</td>
+<td>INK_MIME_LEN_WWW_AUTHENTICATE</td>
+</tr>
+<tr>
+<td>INK_MIME_FIELD_XREF</td>
+<td>"Xref''</td>
+<td>INK_MIME_LEN_XREF</td>
+</tr>
+</tbody>
+</table></div>
+<p>The header field names above are defined in
+      <code class="filename">InkAPI.h</code> as <code class="code">const char*</code> strings. When
+      Traffic Server sets the name portion of a header field (or any portion
+      for that matter) it makes a quick check to see if the new value is one
+      of the known values. If it is, instead of storing the known value in the
+      marshal buffer it stores a pointer into a global table. The header field
+      names listed above are also pointers into this table. This allows simple
+      pointer comparison of the value returned from
+      <code class="function">INKMimeHdrFieldNameGet</code> with one of the values
+      listed above. It is also recommended that you use the above values when
+      referring to one of the known header field names as doing so removes the
+      possibility of a spelling error.</p>
+<p>Traffic Server adds one important feature to MIME fields that
+      those people already familiar with MIME headers will not know about.
+      Namely, Traffic Server does not print a MIME field if the field name
+      begins with the '<code class="code">@</code>' symbol. For example, a plugin can add
+      the field "<code class="code">@My-Field</code>" to a header. Even though Traffic
+      Server never sends that field out in a request to an origin server or in
+      a response to a client, they can be printed in TS logs by defining a
+      custom log config file that explicitly logs these fields. This provides
+      a useful mechanism for plugins to store information about an object in
+      one of the MIME headers associated with the object.</p>
+<p>The MIME header functions are:</p>
+<div class="itemizedlist"><ul type="disc">
+<li><p><code class="function">INKMimeHdrFieldClone</code></p></li>
+<li><p><code class="function">INKMimeHdrFieldCopy</code></p></li>
+<li><p><code class="function">INKMimeHdrFieldCopyValues</code></p></li>
+<li><p><code class="function">INKMimeHdrFieldCreate</code></p></li>
+<li><p><code class="function">INKMimeHdrFieldDestroy</code></p></li>
+<li><p><code class="function">INKMimeHdrFieldLengthGet</code></p></li>
+<li><p><code class="function">INKMimeHdrFieldNameGet</code></p></li>
+<li><p><code class="function">INKMimeHdrFieldNameSet</code></p></li>
+<li><p><code class="function">INKMimeHdrFieldNext</code></p></li>
+<li><p><code class="function">INKMimeHdrFieldNextDup</code></p></li>
+<li><p><code class="function">INKMimeHdrFieldValueAppend</code></p></li>
+<li><p><code class="function">INKMimeHdrFieldValueDelete</code></p></li>
+<li><p><code class="function">INKMimeHdrFieldValuesClear</code></p></li>
+<li><p><code class="function">INKMimeHdrFieldValuesCount</code></p></li>
+<li><p><code class="function">INKMimeHdrClone</code></p></li>
+<li><p><code class="function">INKMimeHdrCopy</code></p></li>
+<li><p><code class="function">INKMimeHdrCreate</code></p></li>
+<li><p><code class="function">INKMimeHdrDestroy</code></p></li>
+<li><p><code class="function">INKMimeHdrFieldFind</code></p></li>
+<li><p><code class="function">INKMimeHdrFieldGet</code></p></li>
+<li><p><code class="function">INKMimeHdrFieldRemove</code></p></li>
+<li><p><code class="function">INKMimeHdrFieldsClear</code></p></li>
+<li><p><code class="function">INKMimeHdrFieldsCount</code></p></li>
+<li><p><code class="function">INKMimeHdrLengthGet</code></p></li>
+<li><p><code class="function">INKMimeHdrParse</code></p></li>
+<li><p><code class="function">INKMimeParserClear</code></p></li>
+<li><p><code class="function">INKMimeParserCreate</code></p></li>
+<li><p><code class="function">INKMimeParserDestroy</code></p></li>
+<li><p><code class="function">INKMimeHdrPrint</code></p></li>
+</ul></div>
+</div>
+</body>
+</html>

Propchange: incubator/trafficserver/site/trunk/docs/sdk/MIMEHeaders.html
------------------------------------------------------------------------------
    svn:keywords = Id

Added: incubator/trafficserver/site/trunk/docs/sdk/ManagementInterfaceFunctions.html
URL: http://svn.apache.org/viewvc/incubator/trafficserver/site/trunk/docs/sdk/ManagementInterfaceFunctions.html?rev=831152&view=auto
==============================================================================
--- incubator/trafficserver/site/trunk/docs/sdk/ManagementInterfaceFunctions.html (added)
+++ incubator/trafficserver/site/trunk/docs/sdk/ManagementInterfaceFunctions.html Thu Oct 29 23:23:25 2009
@@ -0,0 +1,110 @@
+<html>
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<title>Management Interface Functions</title>
+<link rel="stylesheet" href="http://yui.yahooapis.com/2.2.2/build/reset/reset-min.css" type="text/css">
+<link rel="stylesheet" href="http://yui.yahooapis.com/2.2.2/build/fonts/fonts-min.css" type="text/css">
+<link rel="stylesheet" href="http://yui.yahooapis.com/2.2.2/build/treeview/assets/tree.css" type="text/css">
+<link rel="stylesheet" href="css/ydoc.css" type="text/css">
+<link rel="stylesheet" href="css/ydoc-chunk.css" type="text/css">
+<meta name="generator" content="DocBook XSL Stylesheets V1.69.1">
+<link rel="start" href="index.html" title="Traffic Server Software Developers Kit">
+<link rel="up" href="FunctionReference.html" title="Chapter 18. Function Reference">
+<link rel="prev" href="INKIOBufferWrite.html" title="INKIOBufferWrite">
+<link rel="next" href="TEConfigReadFunctions.html" title="Traffic Server Configuration Read Functions">
+<link rel="preface" href="Preface.html" title="Preface">
+<link rel="chapter" href="GetingStarted.html" title="Chapter 1. Getting Started">
+<link rel="chapter" href="CreatingTSPlugins.html" title="Chapter 2. How to Create Traffic Server Plugins">
+<link rel="index" href="CreatingTSPlugins.html#id372630" title="Index">
+<link rel="chapter" href="ch03.html" title="Chapter 3. Remap Plugin">
+<link rel="chapter" href="HeaderBasedPluginEx.html" title="Chapter 4. Header-Based Plugin Examples">
+<link rel="chapter" href="HTTPTransformationPlugins.html" title="Chapter 5. HTTP Transformation Plugins">
+<link rel="chapter" href="NewProtocolPlugins.html" title="Chapter 6. New Protocol Plugins">
+<link rel="chapter" href="ch07.html" title="Chapter 7. Cache Plugin">
+<link rel="chapter" href="HTTPHooksAndTransactions.html" title="Chapter 8. HTTP Hooks and Transactions">
+<link rel="chapter" href="MiscellaneousInterfaceGuide.html" title="Chapter 9. Miscellaneous Interface Guide">
+<link rel="chapter" href="HTTPHeaders.html" title="Chapter 10. HTTP Headers">
+<link rel="chapter" href="MutexGuide.html" title="Chapter 11. Mutex Guide">
+<link rel="chapter" href="Continuations.html" title="Chapter 12. Continuations">
+<link rel="chapter" href="PluginConfigurations.html" title="Chapter 13. Plugin Configurations">
+<link rel="chapter" href="ActionsGuide.html" title="Chapter 14. Actions Guide">
+<link rel="chapter" href="IOGuide.html" title="Chapter 15. IO Guide">
+<link rel="chapter" href="PluginManagement.html" title="Chapter 16. Plugin Management">
+<link rel="chapter" href="AddingStatistics.html" title="Chapter 17. Adding Statistics">
+<link rel="chapter" href="FunctionReference.html" title="Chapter 18. Function Reference">
+<link rel="appendix" href="App_SampleSourceCode.html" title="Appendix A. Sample Source Code">
+<link rel="appendix" href="App_DeprecatedFunctions.html" title="Appendix B. Deprecated Functions">
+<link rel="appendix" href="App_Troubleshooting.html" title="Appendix C. Troubleshooting Tips">
+<link rel="appendix" href="FunctionIndex.html" title="Appendix D. Function Index">
+<link rel="appendix" href="TypeIndex.html" title="Appendix E. Type Index">
+<link rel="index" href="ConceptIndex.html" title="Index">
+<link rel="subsection" href="ManagementInterfaceFunctions.html#INKMgmtUpdateRegister" title="INKMgmtUpdateRegister">
+<script type="text/javascript" src="http://yui.yahooapis.com/2.2.2/build/yahoo/yahoo-min.js"></script><script type="text/javascript" src="http://yui.yahooapis.com/2.2.2/build/event/event-min.js"></script><script type="text/javascript" src="http://yui.yahooapis.com/2.2.2/build/treeview/treeview-min.js"></script><script type="text/javascript" src="js/tocnodes.js"></script><script type="text/javascript" src="js/toc.js"></script><script type="text/javascript">
+    document.write("<style> div.toc {display: none} </style>"); 
+  </script>
+</head>
+<body>
+<div class="doctitle">
+<a href="index.html">Home</a>
+<img src="images/docbook/ts75.png"><h1 class="doctitle">Traffic Server Software Developers Kit</h1>
+</div>
+<div class="navheader">
+<div class="navprev">
+<a accesskey="p" href="INKIOBufferWrite.html">Prev</a> — INKIOBufferWrite</div>
+<div class="navnext">Traffic Server Configuration Read Functions — <a accesskey="n" href="TEConfigReadFunctions.html">Next</a>
+</div>
+</div>
+<div id="toc"></div>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h2 class="title" style="clear: both">
+<a name="ManagementInterfaceFunctions"></a>Management Interface Functions</h2></div></div></div>
+<p></p>
+<div class="section" lang="en">
+<div class="titlepage"><div><div><h3 class="title">
+<a name="INKMgmtUpdateRegister"></a>INKMgmtUpdateRegister</h3></div></div></div>
+<p>Sets up a plugin’s management interface.</p>
+<div class="variablelist"><dl>
+<dt><span class="term">Prototype</span></dt>
+<dd><p><code class="code">INKReturnCode INKMgmtUpdateRegister (INKCont contp,
+              const char *plugin_name, const char *path)</code></p></dd>
+<dt><span class="term">Arguments</span></dt>
+<dd>
+<p><code class="code">contp</code> is the continuation to be called back
+              if the plugin’s configuration is changed. The handler function
+              for this continutation must handle the event
+              <code class="code">INK_EVENT_MGMT_UPDATE</code>.</p>
+<p><code class="code">plugin_name</code> is the name of the plugin. This
+              name must match the name of the plugin specified in your CGI
+              form submission for <code class="code">INK_PLUGIN_NAME</code>.</p>
+<p><code class="code">path</code> is the location of the plugin's
+              interface, relative to the Traffic Server plugin directory (as
+              specified in the <code class="filename">records.config</code> variable
+              <code class="varname">proxy.config.plugin.plugin_dir</code>). If your
+              plugin has a web user interface, then path must be located under
+              the Traffic Server <code class="code">config</code> directory. This is
+              because Traffic Manager derives the root of all of its web
+              interfaces from the Traffic Server <code class="code">config</code>
+              directory.</p>
+<p>For example, path could be
+              <code class="code">Blacklist/ui/index.html</code> or
+              <code class="code">Blacklist/ui/index.cgi</code>.</p>
+<p>The Traffic Server administrator can view the interface at
+              the following URL:
+              <code class="code">http://traffic_manager:8081/plugins/Blacklist/ui/index.html</code></p>
+<p>Alternatively the administrator can access the interface
+              in the Traffic Manager UI, through the <span class="guiicon">Plugin</span>
+              icon in the <span class="guilabel">Configure</span> tab.</p>
+</dd>
+<dt><span class="term">Returns</span></dt>
+<dd>
+<p><code class="code">INK_SUCCESS</code> if the operation completes
+              successfully.</p>
+<p><code class="code">INK_ERROR</code> if an error occurs.</p>
+</dd>
+<dt><span class="term">First release</span></dt>
+<dd><p>Traffic Server 3.5</p></dd>
+</dl></div>
+</div>
+</div>
+</body>
+</html>

Propchange: incubator/trafficserver/site/trunk/docs/sdk/ManagementInterfaceFunctions.html
------------------------------------------------------------------------------
    svn:keywords = Id



Mime
View raw message