You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by ig...@apache.org on 2010/11/06 07:30:02 UTC
svn commit: r1031963 [1/13] - in /trafficserver/site/branches/ats-cms:
content/docs/trunk/sdk/ templates/
Author: igalic
Date: Sat Nov 6 06:29:56 2010
New Revision: 1031963
URL: http://svn.apache.org/viewvc?rev=1031963&view=rev
Log:
Licenses.
Removed:
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/css.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/images.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/js.en.mdtext
Modified:
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ASimplePlugin.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/AccessPluginFiles.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/AccessingTransactionProc.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ActionFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ActionsGuide.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ActivateContinuations.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/AddingHooks.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/AddingStatistics.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/AlternateSelectionFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/App_DeprecatedFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/App_SampleSourceCode.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/App_Troubleshooting.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/AppendTransformPlugin.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/BasicAuthorizatonPlugin.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/BlacklistPlugin.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/CacheAPI.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/CacheAPI_Example.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/CacheInterfaceFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ConceptIndex.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ContinuationFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/Continuations.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/Conventions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/CoupledStatistics.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/CoupledStatsFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/CreatingTSPlugins.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/CustInstallLicenseFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/DebuggingFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/Dep_IOBufferInterface.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/Dep_MutexFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/DeprecatedMarshBufFuncs.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/DoACacheRemove.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/DoACacheWrite.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/DuplicateMIMEFlds.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/Errors_Cache.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/FunctionIndex.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/FunctionReference.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/GenerateLicenseKey.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/GetingStarted.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/GuideTSHTTPHdrSyst.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/HTTPAlternateSelection.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/HTTPFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/HTTPHeaderFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/HTTPHeaders.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/HTTPHeaders2.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/HTTPHooksAndTransactions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/HTTPSessionFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/HTTPSessions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/HTTPTransactionFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/HTTPTransformationPlugins.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/HTTP_Transactions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/HeaderBasedPluginEx.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/HostLookupFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/HostsLookupAPI.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKActionDone.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKAssert.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKCacheKeyDestroy.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKCacheKeyDigestSet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKCacheKeyHostNameSet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKCacheKeyPinnedSet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKCacheRead.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKCacheReady.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKCacheRemove.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKCacheWrite.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKConfigGet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKConfigRelease.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKConfigSet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKContCreate.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKContDataGet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKContDataSet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKContDestroy.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKContMutexGet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKContSchedule.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKError.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKHostLookupResultIPGet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKHttpTxnServerIntercept.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKIOBufferBlockReadAvail.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKIOBufferBlockReadStart.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKIOBufferBlockWriteAvail.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKIOBufferBlockWriteStart.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKIOBufferCopy.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKIOBufferCreate.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKIOBufferDestroy.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKIOBufferProduce.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKIOBufferReaderAlloc.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKIOBufferReaderAvail.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKIOBufferReaderClone.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKIOBufferReaderConsume.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKIOBufferReaderFree.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKIOBufferReaderStart.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKIOBufferSizedCreate.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKIOBufferStart.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKIOBufferWaterMarkGet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKIOBufferWaterMarkSet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKIOBufferWrite.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKIsDebugTagSet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKMBufferDestroy.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKMgmtFloatGet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKMgmtIntGet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKMgmtStringGet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKMutexLock.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKMutexLockTry.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKMutexUnlock.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKNetConnect.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKNetVConnRemoteIPGet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKNetVConnRemotePortGet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKPluginDirGet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKPluginLicenseRequired.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKPluginRegister.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKReleaseAssert.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKTextLogObjectDestroy.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKTextLogObjectFlush.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKTextLogObjectHeaderSet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKTextLogObjectRollingEnabledSet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKTextLogObjectRollingIntervalSecSet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKTextLogObjectRollingOffsetHrSet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKTextLogObjectWrite.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKThreadDestroy.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKThreadInit.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKThreadSelf.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKTrafficServerVersionGet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKTransformOutputVConnGet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKVConnCacheObjectSizeGet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKVConnClose.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKVConnClosedGet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKVConnRead.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKVConnReadVIOGet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKVConnShutdown.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKVConnWrite.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKVConnWriteVIOGet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKVIOContGet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKVIOMutexGet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKVIONBytesGet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKVIONBytesSet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKVIONDoneGet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKVIONDoneSet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKVIONTodoGet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKVIOReaderGet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKVIOReenable.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKVIOVConnGet.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKfflush.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKfgets.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKfopen.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKfopenFamily.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKfopenFamilyFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKfread.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKfwrite.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKmalloc.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKrealloc.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKstrdup.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/INKstrndup.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/IOBufferInterfaceFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/IOBuffers_IO.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/IOGuide.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ImplementHandler_GetTransHandle.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/InitializationFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/InitiateConnectionFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/InitiateHTTPConnection.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/InterceptingHTTPTransactionFuncs.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/InterceptingHTTPTx.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/Interface_ThreadFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/LicensingPlugin.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/LoggingAPI.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/LoggingFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/MIMEFldsBelongAssocMIMEHdr.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/MIMEHeaders.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ManagementInterfaceFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/MarshalBuffers.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/MarshallBuffersFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/MemoryAllocation.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/MemoryAllocationFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/MimeHeadersFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/MiscellaneousInterfaceGuide.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/MutexFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/MutexGuide.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/NamingConventions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/NetVconnections.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/NetvconnectionFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/NewProtocolPlugins.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/OtherDeprecatedFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/PluginConfigurationFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/PluginConfigurations.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/PluginManagement.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/PlusingRegisAndVersionCkg.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/Preface.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ReadTESettingStats.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/RemapAPI_Example.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/RestartingTS.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/RlsMarshalBufHandles.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/Roadmap_CreatingPlugins.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/SampleBufferedNullTransformPlugin.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/SampleNullTransformPlugin.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/SetTransactionHook.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/SetUpLicensing.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/SettingGlobalHook.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/SettingUpTransacHook.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/SettingUpUIUpdateCallbacks.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/SpecifyingPluginLocation.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/StatisticsFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/TEConfigReadFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ThreadFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/TransformationFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/Transformations_IO.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/Trouble_DebugMemLeaks.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/Trouble_DebugTags.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/Trouble_LoadPlugins.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/Trouble_UsingDebugger.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/TypeIndex.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/URLFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/URLs.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/Updatingplugin.configFile.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/VIOFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/VIOs_IO.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/VconnectionFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ViewStatsUsingTrafLine.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/WorkWHTTPHeaderFunc.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/WorkWithHTTPHeaders.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/WritingHandlerFunctions.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ch03.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ch03s02.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ch03s03.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ch03s04.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ch07.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ch07s02.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ch07s03.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ch07s04.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ch07s05.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ch18s09s04.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/index.en.mdtext
trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/pr01s02.en.mdtext
trafficserver/site/branches/ats-cms/templates/single_narrative.html
Modified: trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ASimplePlugin.en.mdtext
URL: http://svn.apache.org/viewvc/trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ASimplePlugin.en.mdtext?rev=1031963&r1=1031962&r2=1031963&view=diff
==============================================================================
--- trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ASimplePlugin.en.mdtext (original)
+++ trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ASimplePlugin.en.mdtext Sat Nov 6 06:29:56 2010
@@ -1,2 +1,75 @@
+Title: Apache Traffic Server⢠Software Developers Kit
+Notice: 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
+ "License"); 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
+ "AS IS" 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.
+
+[Prev](GetingStarted) - Chapter 1. Getting Started
+Update the `plugin.config` File -
+[Next](Updatingplugin.configFile)
+## A Simple Plugin
+
+This section describes how to write, compile, configure, and run a
+simple Traffic Server plugin. You'll follow the steps below:
+
+1. Make sure that your plugin source code contains an
+ `INKPluginInit` initialization function.
+
+2. Compile your plugin source code, creating a shared library.
+
+3. Add an entry to your plugin's `plugin.config` file.
+
+4. Add the path to your plugin shared library into the
+ `records.config` file.
+
+5. Restart Traffic Server.
+
+
+### Compile Your Plugin
+
+The process for compiling a shared library varies with the platform
+used, so the Traffic Server API provides `makefile` templates you
+can use to create shared libraries on all the supported Traffic
+Server platforms.
+
+#### Unix Example
+
+Assuming the sample program is stored in the file `hello-world.c`,
+you could use the following commands to building a shared library
+on Solaris using the GNU C compiler.
+
+ gcc -g -Wall -fPIC -o hello-world.o -c hello-world.c
+ gcc -g -Wall -shared -o hello-world.so hello-world.o
+
+The first command compiles `hello-world.c` as Position Independent
+Code (PIC); the second command links the single `hello-world.o`
+object file into the `hello-world.so` shared library.
+
+![[Caution]](images/docbook/caution.png)
+Caution
+Make sure that your plugin is not statically linked with system
+libraries.
+
+#### HPUX Example
+
+Assuming the sample program is stored in the file `hello_world.c`,
+you could use the following commands to build a shared library on
+HPUX:
+
+ cc +z -o hello_world.o -c hello_world.c
+ ld -b -o hello_world.so hello_world.o
+
Modified: trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/AccessPluginFiles.en.mdtext
URL: http://svn.apache.org/viewvc/trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/AccessPluginFiles.en.mdtext?rev=1031963&r1=1031962&r2=1031963&view=diff
==============================================================================
--- trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/AccessPluginFiles.en.mdtext (original)
+++ trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/AccessPluginFiles.en.mdtext Sat Nov 6 06:29:56 2010
@@ -1,2 +1,100 @@
+Title: Apache Traffic Server⢠Software Developers Kit
+Notice: 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
+ "License"); 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
+ "AS IS" 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.
+
+[Prev](ReadTESettingStats) - Reading Traffic Server Settings
+and Statistics
+Licensing Your Plugin - [Next](LicensingPlugin)
+## Accessing Installed Plugin Files
+
+Your plugin might rely on files in addition to its source code,
+such as configuration files. When you upgrade Traffic Server, you
+might need to make sure your plugin is always able to find its
+associated files. The mechanism for preserving relative file
+locations with upgrades is as follows:
+
+- Make sure that all plugins are contained in their own
+ directories within the `plugin` directory.
+
+- The plugin directory path is specified in the Traffic Server
+ `records.config` file variable
+ `<i>proxy.config.plugin.plugin_dir</i>`. This path is relative to
+ the Traffic Server install directory. The default value is
+ `config/plugin`.
+
+- Make sure that all plugins are listed in the `plugin.db` file.
+ For each plugin, this file contains the plugin name, object file,
+ license key, file name(s), and directory relative to the `plugin`
+ directory.
+
+- When Traffic Server is upgraded, the Traffic Server
+ installation program looks at the `plugin.db` file to see which
+ plugins to copy over to the new Traffic Server installation, and
+ what the appropriate object files, license keys, additional files,
+ and directories should be.
+
+
+The format of the `plugin.db` file is as follows:
+
+ [name of your plugin]
+ Object=[name of plugin's shared object file
+ License=[license key]
+ Dir=[name of any directories to be copied over]
+
+- Entries in `plugin.db` are case-sensitive.
+
+- Do not include white spaces in your entries. For example, the
+ following line is incorrect:
+
+ Object = plugin.so
+
+ The correct entry would be:
+
+ Object=plugin.so
+
+
+For example, suppose you have a blacklist plugin in the `plugin`
+directory. Its object file is `Blacklist.so` and it has some user
+interface files (images and HTML files) in the `Blacklist/ui`
+directory. To make sure that the blacklist plugin is upgraded
+properly, `plugin.db` needs the following entry:
+
+ [Blacklist plugin]
+ Object=Blacklist.so
+ License=ABCD0123456789
+ Dir=Blacklist/ui
+
+In this example, if all of the necessary files and directories are
+in the Blacklist directory, then you could simply specify
+`Dir=Blacklist`.
+
+This means that the Blacklist image and HTML files are always
+located in:
+
+`<Traffic Server install directory>``/<plugin directory>``/Blacklist/ui`
+
+Your plugin might need to specify the absolute location of its
+associated files. The following functions provide the Traffic
+Server install directory path and plugin directory path:
+
+- [INKInstallDirGet](CustInstallLicenseFunctions#INKInstallDirGet "INKInstallDirGet")
+
+- [INKPluginDirGet](INKPluginDirGet "INKPluginDirGet")
+
+
Modified: trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/AccessingTransactionProc.en.mdtext
URL: http://svn.apache.org/viewvc/trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/AccessingTransactionProc.en.mdtext?rev=1031963&r1=1031962&r2=1031963&view=diff
==============================================================================
--- trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/AccessingTransactionProc.en.mdtext (original)
+++ trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/AccessingTransactionProc.en.mdtext Sat Nov 6 06:29:56 2010
@@ -1,2 +1,68 @@
+Title: Apache Traffic Server⢠Software Developers Kit
+Notice: 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
+ "License"); 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
+ "AS IS" 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.
+
+[Prev](SettingUpUIUpdateCallbacks) - Setting Up UI Update
+Callbacks
+Setting Up a Transaction Hook - [Next](SettingUpTransacHook)
+### Accessing the Transaction Being Processed
+
+A continuation's handler function is of type `INKEventFunc`; the
+prototype is as follows:
+
+ static int function_name (INKCont contp, INKEvent event, void *edata)
+
+In general, the return value of the handler function is not used.
+The continuation argument is the continuation being called back,
+the event is the event being sent to the continuation, and the data
+pointed to by `void *edata` depends on the type of event. The data
+types for each event type are listed in
+[Writing Handler Functions](WritingHandlerFunctions "Writing Handler Functions").
+
+The key here is that if the event is an HTTP transaction event,
+then the data passed to the continuation's handler is of type
+`INKHttpTxn<a class="indexterm" name="id373419"></a>` (a data type
+that represents HTTP transactions). Your plugin can then do things
+with the transaction. Here's how it looks in the code for the
+Blacklist plugin's handler:
+
+ static int
+ blacklist_plugin (INKCont contp, INKEvent event, void *edata)
+ {
+ INKHttpTxn txnp = (INKHttpTxn) edata;
+ switch (event) {
+ case INK_EVENT_HTTP_OS_DNS:
+ handle_dns (txnp, contp);
+ return 0;
+ case INK_EVENT_HTTP_SEND_RESPONSE_HDR:
+ handle_response (txnp);
+ return 0;
+ case INK_EVENT_MGMT_UPDATE:
+ read_blacklist ();
+ return 0;
+ default:
+ break;
+ }
+ return 0;
+ }
+
+For example: when the origin server DNS lookup event is sent,
+`blacklist_plugin` can call `handle_dns`and pass `txnp` as an
+argument.
+
Modified: trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ActionFunctions.en.mdtext
URL: http://svn.apache.org/viewvc/trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ActionFunctions.en.mdtext?rev=1031963&r1=1031962&r2=1031963&view=diff
==============================================================================
--- trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ActionFunctions.en.mdtext (original)
+++ trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ActionFunctions.en.mdtext Sat Nov 6 06:29:56 2010
@@ -1,2 +1,48 @@
+Title: Apache Traffic Server⢠Software Developers Kit
+Notice: 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
+ "License"); 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
+ "AS IS" 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.
+
+[Prev](INKConfigSet) - INKConfigSet
+INKActionDone - [Next](INKActionDone)
+## Action Functions
+
+****
+[INKActionCancel](ActionFunctions#INKActionCancel)
+[INKActionDone](INKActionDone)
+### INKActionCancel
+
+Cancels an action.
+
+**Prototype**
+ ~ `INKReturnCode INKActionCancel (INKAction <em class="replaceable"><code>actionp`)
+
+**Description**
+ ~ Cancels an `INKAction`. If a `NULL` argument is passed to
+ `INKActionCancel`, then Traffic Server crashes and does not return
+ `INK_ERROR`.
+
+ ~ **Note**: it is the programmer's responsibility to ensure that
+ a non-null value is passed to `INKActionCancel`.
+
+**Returns**
+ ~ `INK_SUCCESS` if the action is successfully cancelled.
+
+ `INK_ERROR` if an error occurs.
+
+
Modified: trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ActionsGuide.en.mdtext
URL: http://svn.apache.org/viewvc/trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ActionsGuide.en.mdtext?rev=1031963&r1=1031962&r2=1031963&view=diff
==============================================================================
--- trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ActionsGuide.en.mdtext (original)
+++ trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ActionsGuide.en.mdtext Sat Nov 6 06:29:56 2010
@@ -1,2 +1,182 @@
+Title: Apache Traffic Server⢠Software Developers Kit
+Notice: 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
+ "License"); 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
+ "AS IS" 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.
+
+[Prev](PluginConfigurations) - Chapter 13. Plugin
+Configurations
+Hosts Lookup API - [Next](HostsLookupAPI)
+## Chapter 14. Actions Guide
+
+**Table of Contents**
+
+- [Actions](ActionsGuide#Actions)
+- [Hosts Lookup API](HostsLookupAPI)
+
+## Actions
+
+An **action** is a handle to an operation initiated by a plugin
+that has not yet completed. For example: when a plugin connects to
+a remote server, it uses the call `INKNetConnect` - which takes
+`INKCont` as an argument to call back when the connection is
+established. `INKNetConnect` might not call the continuation back
+immediately and will return an `INKAction` structure that the
+caller can use to cancel the operation. Cancelling the operation
+does not necessarily mean that the operation will not occur; it
+simply means that the continuation passed into the operation will
+not be called back. In such an example, the connection might still
+occur if the action is cancelled; however, the continuation that
+initiated the connection would not be called back.
+
+In the preceding example, it is also possible that the connection
+will complete and call back the continuation before `INKNetConnect`
+returns. If that occurs, then `INKNetConnect` returns a special
+action that causes `INKActionDone` to return `1`. This specifies
+that the operation has already completed, so it's pointless to try
+to cancel the operation. Also note that an action will never change
+from non-completed to completed. When the operation actually
+succeeds and the continuation is called back, the continuation must
+zero out its action pointer to indicate to itself that the
+operation succeeded.
+
+The asynchronous nature of all operations in Traffic Server
+necessitates actions. You should notice from the above discussion
+that once a call to a function like `INKNetConnect` is made by a
+continuation and that function returns a valid action
+(`INKActionDone` returns `0`), it is not safe for the continuation
+to do anything else except return from its handler function. It is
+not safe to modify or examine the continuation's data because the
+continuation may have already been destroyed.
+
+Below is an example of typical usage for an action:
+
+ #include <ts/ts.h>
+ static int
+ handler (INKCont contp, INKEvent event, void *edata)
+ {
+ if (event == INK_EVENT_IMMEDIATE) {
+ INKAction actionp = INKNetConnect (contp, 127.0.0.1, 9999);
+ if (!INKActionDone (actionp)) {
+ INKContDataSet (contp, actionp);
+ } else {
+ /* We've already been called back... */
+ return 0;
+ }
+ } else if (event == INK_EVENT_NET_CONNECT) {
+ /* Net connection succeeded */
+ INKContDataSet (contp, NULL);
+ return 0;
+ } else if (event == INK_EVENT_NET_CONNECT_FAILED) {
+ /* Net connection failed */
+ INKContDataSet (contp, NULL);
+ return 0;
+ }
+ return 0;
+ }
+
+ void
+ INKPluginInit (int argc, const char *argv[])
+ {
+ INKCont contp;
+
+ contp = INKContCreate (handler, INKMutexCreate ());
+
+ /* We don't want to call things out of INKPluginInit
+ directly since it's called before the rest of the
+ system is initialized. We'll simply schedule an event
+ on the continuation to occur as soon as the rest of
+ the system is started up. */
+ INKContSchedule (contp, 0);
+ }
+
+The example above shows a simple plugin that creates a continuation
+and then schedules it to be called immediately. When the plugin's
+handler function is called the first time, the event is
+`INK_EVENT_IMMEDIATE`. The plugin then tries to open a net
+connection to port 9999 on `localhost` (127.0.0.1). The IP
+description was left in cider notation to further clarify what is
+going on; also note that the above won't actually compile until the
+IP address is modified. The action returned from `INKNetConnect` is
+examined by the plugin. If the operation has not completed, then
+the plugin stores the action in its continuation. Otherwise, the
+plugin knows it has already been called back and there is no reason
+to store the action pointer.
+
+A final question might be, "why would a plugin want to cancel an
+action?" In the above example, a valid reason could be to place a
+limit on the length of time it takes to open a connection. The
+plugin could schedule itself to get called back in 30 seconds and
+then initiate the net connection. If the timeout expires first,
+then the plugin would cancel the action. The following sample code
+implements this:
+
+ #include <ts/ts.h>
+ static int
+ handler (INKCont contp, INKEvent event, void *edata)
+ {
+ switch (event) {
+ case (INK_EVENT_IMMEDIATE):
+ INKContSchedule (contp, 30000);
+ INKAction actionp = INKNetConnect(contp, 127.0.0.1, 9999);
+ if (!INKActionDone (actionp)) {
+ INKContDataSet (contp, actionp);
+ } else {
+ /* We've already been called back ... */
+ }
+ break;
+
+ case (INK_EVENT_TIMEOUT):
+ INKAction actionp = INKContDataGet (contp);
+ if (!INKActionDone(actionp)) {
+ INKActionCancel (actionp);
+ }
+ break;
+
+ case (INK_EVENT_NET_CONNECT):
+ /* Net connection succeeded */
+ INKContDataSet (contp, NULL);
+ break;
+
+ case (INK_EVENT_NET_CONNECT_FAILED):
+ /* Net connection failed */
+ INKContDataSet (contp, NULL);
+ break;
+
+ }
+ return 0;
+ }
+
+ void
+ INKPluginInit (int argc, const char *argv[])
+ {
+ INKCont contp;
+
+ contp = INKContCreate (handler, INKMutexCreate ());
+ /* We don't want to call things out of INKPluginInit
+ directly since it's called before the rest of the
+ system is initialized. We'll simply schedule an event
+ on the continuation to occur as soon as the rest of
+ the system is started up. */
+ INKContSchedule (contp, 0);
+ }
+
+The action functions are:
+
+- `<a href="ActionFunctions#INKActionCancel" title="INKActionCancel">INKActionCancel</a>`
+- `<a href="INKActionDone.html" title="INKActionDone">INKActionDone</a>`[](INKActionDone "INKActionDone")
+
Modified: trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ActivateContinuations.en.mdtext
URL: http://svn.apache.org/viewvc/trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ActivateContinuations.en.mdtext?rev=1031963&r1=1031962&r2=1031963&view=diff
==============================================================================
--- trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ActivateContinuations.en.mdtext (original)
+++ trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/ActivateContinuations.en.mdtext Sat Nov 6 06:29:56 2010
@@ -1,2 +1,40 @@
+Title: Apache Traffic Server⢠Software Developers Kit
+Notice: 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
+ "License"); 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
+ "AS IS" 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.
+
+[Prev](Continuations) - Chapter 12. Continuations
+Writing Handler Functions - [Next](WritingHandlerFunctions)
+## How to Activate Continuations
+
+Continuations are activated when they receive an event or by
+`INKContSchedule` (which schedules a continuation to receive an
+event). Continuations might receive an event because:
+
+- Your plugin calls `INKContCall`
+
+- The Traffic Server HTTP state machine sends an event
+ corresponding to a particular HTTP hook
+
+- A Traffic Server IO processor (such as a cache processor or net
+ processor) is letting a continuation know there is data (cache or
+ network) available to read or write. These callbacks are a result
+ of using functions such `INKVConnRead`/`Write` or
+ `INKCacheRead`/`Write`
+
+
Modified: trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/AddingHooks.en.mdtext
URL: http://svn.apache.org/viewvc/trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/AddingHooks.en.mdtext?rev=1031963&r1=1031962&r2=1031963&view=diff
==============================================================================
--- trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/AddingHooks.en.mdtext (original)
+++ trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/AddingHooks.en.mdtext Sat Nov 6 06:29:56 2010
@@ -1,2 +1,150 @@
+Title: Apache Traffic Server⢠Software Developers Kit
+Notice: 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
+ "License"); 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
+ "AS IS" 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.
+
+[Prev](HTTPHooksAndTransactions) - Chapter 8. HTTP Hooks and
+Transactions
+HTTP Sessions - [Next](HTTPSessions)
+## Adding Hooks
+
+There are several ways to add hooks to your plugin.
+
+- **Global HTTP hooks**
+
+ HTTP transaction hooks are set on a global basis using the function
+ `INKHttpHookAdd`. This means that the continuation specified as the
+ parameter to `INKHttpHookAdd` is called for every transaction.
+ `INKHttpHookAdd` must be used in `INKPluginInit`.
+
+- **Transaction hooks**
+
+ Transaction hooks can be used to call plugins back for a specific
+ HTTP transaction. You cannot add transaction hooks in
+ `INKPluginInit`; you first need a handle to a transaction. See
+ [Accessing the Transaction Being Processed](AccessingTransactionProc "Accessing the Transaction Being Processed").
+
+- **Transformation hooks**
+
+ Transformation hooks are a special case of transaction hooks. See
+ [INKVConnCacheObjectSizeGet](INKVConnCacheObjectSizeGet "INKVConnCacheObjectSizeGet")
+ for more information about transformation hooks. You add a
+ transformation hook using `INKHttpTxnHookAdd`, as described in
+ [HTTP Transactions](HTTP_Transactions "HTTP Transactions").
+
+- **Session hooks**
+
+ An HTTP session starts when a client opens a connection to Traffic
+ Server and ends when the connection closes. A session can consist
+ of several transactions. Session hooks enable you to hook your
+ plugin to a particular point in every transaction within a
+ specified session (see
+ [HTTP Sessions](HTTPSessions "HTTP Sessions")). Session hooks
+ are added in a manner similar to transaction hooks (ie, you first
+ need a handle to an HTTP session).
+
+- **HTTP select alternate hook**
+
+ Alternate selection hooks enable you to hook on to the alternate
+ selection state. These hooks must be added globally, since Traffic
+ Server does not have a handle to a transaction or session when
+ alternate selection is taking place. See
+ [HTTP Alternate Selection](HTTPAlternateSelection "HTTP Alternate Selection")
+ for information on the alternate selection mechanism.
+
+
+All of the hook addition functions
+([`INKHttpHookAdd`](HTTPFunctions#INKHttpHookAdd "INKHttpHookAdd"),
+[`INKHttpSsnHookAdd`](HTTPSessionFunctions#INKHttpSsnHookAdd "INKHttpSsnHookAdd"),
+[`INKHttpSsnReenable`](HTTPSessionFunctions#INKHttpSsnReenable "INKHttpSsnReenable"))
+take `INKHttpHookID` (identifies the hook to add on to) and
+`INKCont` (the basic callback mechanism in Traffic Server). A
+single `INKCont` can be added to any number of hooks at a time.
+
+An HTTP hook is identified by the enumerated type `INKHttpHookID`.
+The values for `INKHttpHookID` are:
+
+Table 8.1. `INKHttpHookID` Values
+**Values for INKHttpHookID**
+**Description**
+`INK_HTTP_CACHE_LOOKUP_COMPLETE_HOOK`
+Called after the HTTP state machine has completed the cache lookup
+for the document requested in the ongoing transaction. Register
+this hook via `INKHttpTxnHookAdd` or `INKHttpHookAdd`. Corresponds
+to the event `INK_EVENT_HTTP_CACHE_LOOKUP_COMPLETE`.
+`INK_HTTP_OS_DNS_HOOK`
+Called immediately after the HTTP state machine has completed a DNS
+lookup of the origin server. The HTTP state machine will know the
+origin server's IP address at this point, which is useful for
+performing both authentication and blacklisting. Corresponds to the
+event `INK_EVENT_HTTP_OS_DNS`.
+`INK_HTTP_READ_CACHE_HDR_HOOK`
+Called immediately after the request and response header of a
+previously-cached object is read from cache. This hook is only
+called if the document is being served from cache. Corresponds to
+the event `INK_EVENT_HTTP_READ_CACHE_HDR`.
+`INK_HTTP_READ_RESPONSE_HDR_HOOK`
+Called immediately after the response header is read from the
+origin server or parent proxy. Corresponds to the event
+`INK_EVENT_HTTP_READ_RESPONSE_HDR`.
+`INK_HTTP_RESPONSE_TRANSFORM_HOOK`
+See
+"["Transformations"](HTTPTransformationPlugins#Transformations "Transformations")
+for information about transformation hooks.
+`INK_HTTP_READ_REQUEST_HDR_HOOK`
+Called immediately after the request header is read from the
+client. Corresponds to the event `INK_EVENT_HTTP_READ_REQUEST_HDR`.
+`INK_HTTP_READ_REQUEST_PRE_REMAP_HOOK`
+Called after the request header is read from the client, before any
+remapping of the headers occurs. Corresponds to the event
+`INK_EVENT_HTTP_READ_REQUEST_PRE_REMAP`.
+`INK_HTTP_REQUEST_TRANSFORM_HOOK`
+See["Transformations"](HTTPTransformationPlugins#Transformations "Transformations")
+for information about transformation hooks.
+`INK_HTTP_SELECT_ALT_HOOK`
+See
+["HTTP Alternate Selection"](HTTPAlternateSelection "HTTP Alternate Selection")
+for information about the alternate selection mechanism.
+`INK_HTTP_SEND_RESPONSE_HDR_HOOK`
+Called immediately before the proxy's response header is written to
+the client; this hook is usually used for modifying the response
+header. Corresponds to the event
+`INK_EVENT_HTTP_SEND_RESPONSE_HDR`.
+`INK_HTTP_SEND_REQUEST_HDR_HOOK`
+Called immediately before the proxy's request header is sent to the
+origin server or the parent proxy. This hook is not called if the
+document is being served from cache. This hook is usually used for
+modifying the proxy's request header before it is sent to the
+origin server or parent proxy.
+`INK_HTTP_SSN_CLOSE_HOOK`
+Called when an HTTP session ends. A session ends when the client
+connection is closed. You can only add this hook as a global hook
+`INK_HTTP_SSN_START_HOOK`
+Called when an HTTP session is started. A session starts when a
+client connects to Traffic Server. You can only add this hook as a
+global hook.
+`INK_HTTP_TXN_CLOSE_HOOK`
+Called when an HTTP transaction ends.
+`INK_HTTP_TXN_START_HOOK`
+Called when an HTTP transaction is started. A transaction starts
+when either a client connects to Traffic Server and data is
+available on the connection, or a previous client connection that
+was left open for keep alive has new data available.
+The function you use to add a global HTTP hook is
+[`INKHttpHookAdd`](HTTPFunctions#INKHttpHookAdd "INKHttpHookAdd").
+
Modified: trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/AddingStatistics.en.mdtext
URL: http://svn.apache.org/viewvc/trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/AddingStatistics.en.mdtext?rev=1031963&r1=1031962&r2=1031963&view=diff
==============================================================================
--- trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/AddingStatistics.en.mdtext (original)
+++ trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/AddingStatistics.en.mdtext Sat Nov 6 06:29:56 2010
@@ -1,2 +1,73 @@
+Title: Apache Traffic Server⢠Software Developers Kit
+Notice: 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
+ "License"); 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
+ "AS IS" 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.
+
+[Prev](LoggingAPI) - Guide to the Logging API
+Coupled Statistics - [Next](CoupledStatistics)
+## Chapter 17. Adding Statistics
+
+This chapter describes how to add statistics to your plugins.
+Statistics can be coupled or uncoupled; **coupled** statistics are
+quantities that are related and must therefore be updated together.
+The Traffic Server API statistics functions add your plugin's
+statistics to the Traffic Server statistics system. You can view
+your plugin statistics as you would any other Traffic Server
+statistic, using Traffic Line (Traffic Server's command line
+interface). This chapter contains the following topics:
+
+- [Uncoupled Statistics](AddingStatistics#UncoupledStatistics "Uncoupled Statistics")
+
+- [Coupled Statistics](CoupledStatistics "Coupled Statistics")
+
+- [Viewing Statistics Using Traffic Line](ViewStatsUsingTrafLine "Viewing Statistics Using Traffic Line")
+
+
+## Uncoupled Statistics
+
+A statistic is an object of type `INKStat`. The value of the
+statistic is of type `INKStatType`. The possible `INKStatTypes`
+are:
+
+- `INKSTAT_TYPE_INT64`
+
+- `INKSTAT_TYPE_FLOAT`
+
+
+There is *no* `INKSTAT_TYPE_INT32`.
+
+To add uncoupled statistics, follow the steps below:
+
+1. Declare your statistic as a global variable in your plugin. For
+ example:
+
+ static INKStat my_statistic;
+
+2. In `INKPluginInit`, create new statistics using
+ `INKStatCreate`.
+
+ When you create a new statistic, you need to give it an "external"
+ name that the Traffic Server command line interface (Traffic Line)
+ uses to access the statistic. For example:
+
+ my_statistic = INKStatCreate ("my.statistic", INKSTAT_TYPE_INT64);
+
+3. Modify (increment, decrement, or other modification) your
+ statistic in plugin functions.
+
+
Modified: trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/AlternateSelectionFunctions.en.mdtext
URL: http://svn.apache.org/viewvc/trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/AlternateSelectionFunctions.en.mdtext?rev=1031963&r1=1031962&r2=1031963&view=diff
==============================================================================
--- trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/AlternateSelectionFunctions.en.mdtext (original)
+++ trafficserver/site/branches/ats-cms/content/docs/trunk/sdk/AlternateSelectionFunctions.en.mdtext Sat Nov 6 06:29:56 2010
@@ -1,2 +1,112 @@
+Title: Apache Traffic Server⢠Software Developers Kit
+Notice: 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
+ "License"); 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
+ "AS IS" 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.
+
+[Prev](INKHttpTxnServerIntercept) - INKHttpTxnServerIntercept
+Handle Release Functions - [Next](ch18s09s04)
+### Alternate Selection Functions
+
+****
+[INKHttpAltInfoCachedReqGet](AlternateSelectionFunctions#INKHttpAltInfoCachedReqGet)
+[INKHttpAltInfoCachedRespGet](AlternateSelectionFunctions#INKHttpAltInfoCachedRespGet)
+[INKHttpAltInfoClientReqGet](AlternateSelectionFunctions#INKHttpAltInfoClientReqGet)
+[INKHttpAltInfoQualitySet](AlternateSelectionFunctions#INKHttpAltInfoQualitySet)
+#### INKHttpAltInfoCachedReqGet
+
+Gets the cached request header from the specified alternate
+information.
+
+**Prototype**
+ ~ `INKReturnCode INKHttpAltInfoCachedReqGet (INKHttpAltInfo <em class="replaceable"><code>infop`,
+ INKMBuffer \**`bufp`*, INKMLoc \**`offset`*)
+
+**Description**
+ ~ Retrieves the cached client request header from the alternate
+ information `<em class="replaceable"><code>infop`.
+
+ Call from within `HTTP_SELECT_ALT_HOOK`.
+
+**Returns**
+ ~ `INK_SUCCESS` if the operation completes successfully.
+
+ `INK_ERROR` if an error occurs.
+
+
+#### INKHttpAltInfoCachedRespGet
+
+Gets the cached response header from the specified alternate
+information.
+
+**Prototype**
+ ~ `INKReturnCode INKHttpAltInfoCachedRespGet (INKHttpAltInfo <em class="replaceable"><code>infop`,
+ INKMBuffer \**`bufp`*, INKMLoc \**`offset`*)
+
+**Description**
+ ~ Retrieves the cached client response header from the alternate
+ information `<em class="replaceable"><code>infop`.
+
+ Call from within `HTTP_SELECT_ALT_HOOK`.
+
+**Returns**
+ ~ `INK_SUCCESS` if the operation completes successfully.
+
+ `INK_ERROR` if an error occurs.
+
+
+#### INKHttpAltInfoClientReqGet
+
+Gets the client request header from the specified alternate
+information.
+
+**Prototype**
+ ~ `INKReturnCode INKHttpAltInfoClientReqGet (INKHttpAltInfo <em class="replaceable"><code>infop`,
+ INKMBuffer \**`bufp`*, INKMLoc \**`offset`*)
+
+**Description**
+ ~ Retrieves the client request header from the alternate
+ information `<em class="replaceable"><code>infop`.
+
+ Call from within `HTTP_SELECT_ALT_HOOK`.
+
+**Returns**
+ ~ `INK_SUCCESS` if the operation completes successfully.
+
+ `INK_ERROR` if an error occurrs.
+
+
+#### INKHttpAltInfoQualitySet
+
+Sets the quality value for the specified alternate information.
+
+**Prototype**
+ ~ `INKReturnCode INKHttpAltInfoQualitySet (INKHttpAltInfo <em class="replaceable"><code>infop`,
+ float *`quality`*)
+
+**Description**
+ ~ Sets the quality value for this alternate information
+ `<em class="replaceable"><code>infop`.
+
+ Call from within `HTTP_SELECT_ALT_HOOK`.
+
+**Returns**
+ ~ `INK_SUCCESS` if the operation completes successfully.
+
+ `INK_ERROR` if an error occurs.
+
+