This is an automated email from the ASF dual-hosted git repository.
bcall pushed a commit to branch 8.0.x
in repository https://gitbox.apache.org/repos/asf/trafficserver.git
The following commit(s) were added to refs/heads/8.0.x by this push:
new 2366461 Removed spaces and tabs at the end of lines
2366461 is described below
commit 236646199aba49887aa153c2aac41cf31e4a13ae
Author: Bryan Call <[email protected]>
AuthorDate: Tue Oct 9 13:32:11 2018 -0700
Removed spaces and tabs at the end of lines
---
.clang-format | 8 +--
LICENSE | 2 +-
ci/jenkins/bin/clang-analyzer.sh | 2 +-
configure.ac | 8 +--
contrib/openssl/README.md | 2 +-
contrib/openssl/async_engine.c | 6 +--
.../configuration/proxy-protocol.en.rst | 2 +-
doc/admin-guide/plugins/fq_pacing.en.rst | 2 +-
doc/admin-guide/plugins/regex_revalidate.en.rst | 2 +-
doc/admin-guide/plugins/url_sig.en.rst | 4 +-
doc/admin-guide/plugins/xdebug.en.rst | 6 +--
.../command-line/traffic_cache_tool.en.rst | 18 +++----
doc/appendices/command-line/traffic_ctl.en.rst | 4 +-
doc/appendices/command-line/traffic_layout.en.rst | 12 ++---
.../api/functions/TSIpStringToAddr.en.rst | 6 +--
doc/developer-guide/api/functions/TSTypes.en.rst | 8 +--
doc/developer-guide/api/types/TSMgmtTypes.en.rst | 46 ++++++++---------
.../api/types/TSOverridableConfigKey.en.rst | 2 +-
doc/developer-guide/api/types/TSSslSession.en.rst | 4 +-
.../client-session-architecture.en.rst | 24 ++++-----
doc/developer-guide/core-architecture/rpc.en.rst | 60 +++++++++++-----------
doc/developer-guide/documentation/ts-markup.en.rst | 8 +--
.../internal-libraries/MemArena.en.rst | 44 ++++++++--------
doc/developer-guide/introduction/index.en.rst | 2 +-
.../continuations/writing-handler-functions.en.rst | 4 +-
.../hooks-and-transactions/adding-hooks.en.rst | 4 +-
doc/uml/RPC-sequence-diagram.uml | 6 +--
doc/uml/RPC-states.uml | 20 ++++----
lib/tsconfig/TsBuilder.cc | 2 +-
lib/tsconfig/TsConfigSyntax.c | 50 +++++++++---------
lib/yamlcpp/test/create-emitter-tests.py | 8 +--
lib/yamlcpp/test/integration/load_node_test.cpp | 2 +-
mgmt/Makefile.am | 2 +-
plugins/experimental/cache_range_requests/README | 14 ++---
.../experimental/server_push_preload/Makefile.inc | 4 +-
plugins/experimental/url_sig/README | 6 +--
src/Makefile.am | 6 +--
src/tscpp/api/Makefile.am | 2 +-
tests/gold_tests/autest-site/cli_tools.test.ext | 20 ++++----
tests/gold_tests/autest-site/copy_config.test.ext | 2 +-
tests/gold_tests/autest-site/microDNS.test.ext | 2 +-
tests/gold_tests/autest-site/min_cfg/readme.txt | 4 +-
.../gold_tests/autest-site/min_cfg/storage.config | 2 +-
tests/gold_tests/autest-site/setup.cli.ext | 8 +--
.../autest-site/trafficserver_plugins.test.ext | 2 +-
tests/gold_tests/continuations/double.test.py | 2 +-
tests/gold_tests/continuations/double_h2.test.py | 2 +-
tests/gold_tests/continuations/openclose.test.py | 2 +-
.../gold_tests/continuations/openclose_h2.test.py | 4 +-
tests/gold_tests/h2/http2.test.py | 2 +-
tests/gold_tests/headers/http408.gold | 2 +-
tests/gold_tests/headers/http408.test.py | 2 +-
tests/gold_tests/redirect/zone.json | 5 +-
tests/tools/lib/IPConstants.py | 2 +-
tests/tools/microDNS/sample_zonefile.json | 2 +-
tests/tools/microDNS/uDNS.py | 4 +-
tests/tools/microServer/README.md | 2 +-
tests/tools/sessionvalidation/badsession.py | 4 +-
tests/tools/sessionvalidation/sessionvalidation.py | 4 +-
tests/tools/traffic-replay/NonSSL.py | 4 +-
tests/tools/traffic-replay/RandomReplay.py | 4 +-
tests/tools/traffic-replay/SSLReplay.py | 4 +-
tests/tools/traffic-replay/h2Replay.py | 4 +-
63 files changed, 253 insertions(+), 254 deletions(-)
diff --git a/.clang-format b/.clang-format
index 7c2364a..a708974 100644
--- a/.clang-format
+++ b/.clang-format
@@ -19,7 +19,7 @@ AlwaysBreakBeforeMultilineStrings: false
AlwaysBreakTemplateDeclarations: false
BinPackArguments: true
BinPackParameters: true
-BraceWrapping:
+BraceWrapping:
AfterClass: true
AfterControlStatement: true
AfterEnum: true
@@ -54,7 +54,7 @@ DerivePointerAlignment: false
DisableFormat: false
ExperimentalAutoDetectBinPacking: false
FixNamespaceComments: true
-ForEachMacros:
+ForEachMacros:
- forv_Vec
- for_Vec
- forp_Vec
@@ -62,7 +62,7 @@ ForEachMacros:
- Q_FOREACH
- BOOST_FOREACH
IncludeBlocks: Preserve
-IncludeCategories:
+IncludeCategories:
- Regex: '^"(llvm|llvm-c|clang|clang-c)/'
Priority: 2
- Regex: '^(<|"(gtest|isl|json)/)'
@@ -92,7 +92,7 @@ PenaltyBreakString: 1000
PenaltyExcessCharacter: 1000000
PenaltyReturnTypeOnItsOwnLine: 200
PointerAlignment: Right
-RawStringFormats:
+RawStringFormats:
- Delimiter: pb
Language: TextProto
BasedOnStyle: Mozilla
diff --git a/LICENSE b/LICENSE
index 5e1e273..6a9a1e0 100644
--- a/LICENSE
+++ b/LICENSE
@@ -550,4 +550,4 @@ OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
SOFTWARE.
* copied and put under another distribution licence
* [including the GNU Public Licence.]
*/
-
+
diff --git a/ci/jenkins/bin/clang-analyzer.sh b/ci/jenkins/bin/clang-analyzer.sh
index d3b5b87..8efa340 100755
--- a/ci/jenkins/bin/clang-analyzer.sh
+++ b/ci/jenkins/bin/clang-analyzer.sh
@@ -77,7 +77,7 @@ ${LLVM_BASE}/bin/scan-build ./configure ${configure} \
# Since we don't want the analyzer to look at yamlcpp, build it first
# without scan-build. The subsequent make will then skip it.
-# the all-local can be taken out and lib changed to lib/yamlcpp
+# the all-local can be taken out and lib changed to lib/yamlcpp
# by making yaml cpp a SUBDIRS in lib/Makefile.am.
${ATS_MAKE} -j $NPROCS -C lib all-local V=1 Q=
diff --git a/configure.ac b/configure.ac
index 7cce53e..84a96c7 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2006,9 +2006,9 @@ AC_CONFIG_FILES([
doc/ext/local-config.py
doc/uml/Makefile
example/Makefile
- include/Makefile
- include/ts/Makefile
- include/tscpp/api/Makefile
+ include/Makefile
+ include/ts/Makefile
+ include/tscpp/api/Makefile
include/tscpp/util/Makefile
iocore/Makefile
iocore/aio/Makefile
@@ -2045,7 +2045,7 @@ AC_CONFIG_FILES([
rc/trafficserver.conf
rc/trafficserver.service
rc/trafficserver.xml
- src/tscpp/util/Makefile
+ src/tscpp/util/Makefile
src/tscore/Makefile
tools/Makefile
tools/trafficserver.pc
diff --git a/contrib/openssl/README.md b/contrib/openssl/README.md
index ab95898..428f9a6 100644
--- a/contrib/openssl/README.md
+++ b/contrib/openssl/README.md
@@ -3,7 +3,7 @@ For the private key operations it spawns a thread to sleep for
5 seconds and the
It should be built as follows. It must be build against openssl 1.1 or better
for access to the ASYNC_*_job apis.
-gcc -fPIC -shared -g -o async-test.so -I<path to openssl headers> -L<path to
openssl library> -lssl -lcrypto -lpthread async_engine.c
+gcc -fPIC -shared -g -o async-test.so -I<path to openssl headers> -L<path to
openssl library> -lssl -lcrypto -lpthread async_engine.c
load_engine.cnf is an example openssl config file that can be passed to
Traffic Server via the proxy.config.ssl.engine_cnf_file setting.
It describes which crypto engines should be loaded and how they should be
used. In the case of our async-test crypto engine it will be used for
diff --git a/contrib/openssl/async_engine.c b/contrib/openssl/async_engine.c
index 31fbce3..facffe0 100644
--- a/contrib/openssl/async_engine.c
+++ b/contrib/openssl/async_engine.c
@@ -23,7 +23,7 @@
/*
* Test engine to exercise the asynchronous job interface
- * It performs the standard RSA operations, but for private key
+ * It performs the standard RSA operations, but for private key
* operations spawns a thread to sleep for 5 seconds before resuming
* the asynchronous job
*/
@@ -236,11 +236,11 @@ spawn_delay_thread()
} else {
OSSL_ASYNC_FD pipefds[2] = {0,0};
OSSL_ASYNC_FD *writefd = OPENSSL_malloc(sizeof(*writefd));
- pipe(pipefds);
+ pipe(pipefds);
signal_fd = *writefd = pipefds[1];
ASYNC_WAIT_CTX_set_wait_fd(waitctx, engine_id, pipefds[0], writefd,
wait_cleanup);
}
-
+
pthread_create(&thread_id, NULL, delay_method, (void
*)((intptr_t)signal_fd));
}
diff --git a/doc/admin-guide/configuration/proxy-protocol.en.rst
b/doc/admin-guide/configuration/proxy-protocol.en.rst
index 2d7673b..ad0a121 100644
--- a/doc/admin-guide/configuration/proxy-protocol.en.rst
+++ b/doc/admin-guide/configuration/proxy-protocol.en.rst
@@ -31,7 +31,7 @@ TLS connections.
.. note::
- The current version only supports transforming client IP from PROXY
Version 1
+ The current version only supports transforming client IP from PROXY
Version 1
header to the Forwarded: header.
In the current implementation, the client IP address in the PROXY protocol
header
diff --git a/doc/admin-guide/plugins/fq_pacing.en.rst
b/doc/admin-guide/plugins/fq_pacing.en.rst
index 8b5f47e..1ea2a1f 100644
--- a/doc/admin-guide/plugins/fq_pacing.en.rst
+++ b/doc/admin-guide/plugins/fq_pacing.en.rst
@@ -29,7 +29,7 @@ How it Works
------------
When activated during remap processing, this plugin calls
``setsockopt(SO_MAX_PACING_RATE)`` on the
client socket. To prevent the rate from leaking to other remap rules the
client may access in future
-requests, a hook is set to deactivate the pacing when the current transaction
completes.
+requests, a hook is set to deactivate the pacing when the current transaction
completes.
Installation
diff --git a/doc/admin-guide/plugins/regex_revalidate.en.rst
b/doc/admin-guide/plugins/regex_revalidate.en.rst
index 80ee882..a24fbee 100644
--- a/doc/admin-guide/plugins/regex_revalidate.en.rst
+++ b/doc/admin-guide/plugins/regex_revalidate.en.rst
@@ -60,7 +60,7 @@ The rule configuration file format is described below in
`Revalidation Rules`_.
By default The plugin regularly (every 60 seconds) checks its rules
configuration
file for changes and it will also check for changes when ``traffic_ctl config
reload``
-is run. If the file has been modified since its last scan, the contents
+is run. If the file has been modified since its last scan, the contents
are read and the in-memory rules list is updated. Thus, new rules may be added
and
existing ones modified without requiring a service restart.
diff --git a/doc/admin-guide/plugins/url_sig.en.rst
b/doc/admin-guide/plugins/url_sig.en.rst
index 29b2314..242fac8 100644
--- a/doc/admin-guide/plugins/url_sig.en.rst
+++ b/doc/admin-guide/plugins/url_sig.en.rst
@@ -245,8 +245,8 @@ Signature
Signature query parameters embedded in the URL path.
Optionally signature query parameters may be embedded in an opaque base64
encoded container
- embedded in the URL path. The format is a semicolon, siganchor string,
base64 encoded
- string. ``url_sig`` automatically detects the use of embedded path
parameters. The
+ embedded in the URL path. The format is a semicolon, siganchor string,
base64 encoded
+ string. ``url_sig`` automatically detects the use of embedded path
parameters. The
following example shows how to generate an embedded path parameters with
``sign.pl``::
./sign.pl --url
"http://test-remap.domain.com/vod/t/prog_index.m3u8?appid=2&t=1" --useparts 1 \
diff --git a/doc/admin-guide/plugins/xdebug.en.rst
b/doc/admin-guide/plugins/xdebug.en.rst
index 32cc1df..f840e69 100644
--- a/doc/admin-guide/plugins/xdebug.en.rst
+++ b/doc/admin-guide/plugins/xdebug.en.rst
@@ -55,9 +55,9 @@ Diags
that :ts:cv:`proxy.config.diags.debug.enabled` is set to ``1``.
log-headers
- If the ``log-headers`` is requested while
:ts:cv:`proxy.config.diags.debug.tags`
- is set to ``xdebug.headers`` and :ts:cv:`proxy.config.diags.debug.enabled`
is set to ``1``,
- then all client and server, request and response headers are logged.
+ If the ``log-headers`` is requested while
:ts:cv:`proxy.config.diags.debug.tags`
+ is set to ``xdebug.headers`` and :ts:cv:`proxy.config.diags.debug.enabled`
is set to ``1``,
+ then all client and server, request and response headers are logged.
Also, the ``X-Debug: log-headers`` header is always added to the upstream
request.
X-Cache-Key
diff --git a/doc/appendices/command-line/traffic_cache_tool.en.rst
b/doc/appendices/command-line/traffic_cache_tool.en.rst
index 48f11ef..99f3897 100644
--- a/doc/appendices/command-line/traffic_cache_tool.en.rst
+++ b/doc/appendices/command-line/traffic_cache_tool.en.rst
@@ -85,7 +85,7 @@ Commands
``clear``
Clear all the spans by writing updated span headers.
-
+
``span``
Clears an specific span and it's stripes. The span to be cleared is
specified via ``--device``
@@ -115,9 +115,9 @@ Commands
The span to be initialized can be passed via ``--input``
``find``
- Determines the stripe in disk cache where the content corresponding to the
provided URL may be cached.
+ Determines the stripe in disk cache where the content corresponding to the
provided URL may be cached.
This command takes an input file which lists all the urls for which the
stripe assignment needs to be determined.
-
+
========
Examples
========
@@ -140,27 +140,27 @@ Clear all spans.::
--volumes=/usr/local/etc/trafficserver/volume.config \
clear
-Clear a single span.::
+Clear a single span.::
traffic_cache_tool \
--span /opt/etc/trafficserver/storage.config \
--volume /opt/etc/trafficserver/volume.config \
clear span --device "/dev/sdb3" --write
-
+
Initialize a new span.::
-
+
traffic_cache_tool \
--span /opt/etc/trafficserver/storage.config \
--volume /opt/etc/trafficserver/volume.config \
init --input "/dev/sdb3" --write
-
+
Find Stripe Assignment.::
-
+
traffic_cache_tool \
--span /opt/etc/trafficserver/storage.config \
--volume /opt/etc/trafficserver/volume.config \
init --input "/home/user/urls.txt"
-
+
========
See also
========
diff --git a/doc/appendices/command-line/traffic_ctl.en.rst
b/doc/appendices/command-line/traffic_ctl.en.rst
index 8a15290..7bc4797 100644
--- a/doc/appendices/command-line/traffic_ctl.en.rst
+++ b/doc/appendices/command-line/traffic_ctl.en.rst
@@ -261,8 +261,8 @@ traffic_ctl host
.. option:: down --time seconds HOSTNAME [HOSTNAME ...]
Marks the listed hosts as down so that they will not be chosen as a next
hop parent.
- If the --time option is included, the host is marked down for the
specified number of
- seconds after which the host will automatically be marked up. 0 seconds
marks the host
+ If the --time option is included, the host is marked down for the
specified number of
+ seconds after which the host will automatically be marked up. 0 seconds
marks the host
down indefinately until marked up manually and is the default.
.. program:: traffic_ctl host
diff --git a/doc/appendices/command-line/traffic_layout.en.rst
b/doc/appendices/command-line/traffic_layout.en.rst
index a56c7a0..0977443 100644
--- a/doc/appendices/command-line/traffic_layout.en.rst
+++ b/doc/appendices/command-line/traffic_layout.en.rst
@@ -56,16 +56,16 @@ Subcommands
===========
``init``
- Use the current working directory or the specific path to create runroot.
+ Use the current working directory or the specific path to create runroot.
The path can be relative or set up in :envvar:`TS_RUNROOT`.
``remove``
- Find the sandbox to remove in following order:
+ Find the sandbox to remove in following order:
#. specified in --path as absolute or relative.
#. ENV variable: :envvar:`TS_RUNROOT`
#. current working directory
#. installed directory.
-
+
``verify``
Verify the permission of the sandbox.
@@ -77,7 +77,7 @@ Options
.. option:: --run-root=[<path>]
Use the run root file at :arg:`path`.
-
+
.. option:: -V, --version
Print version information and exit.
@@ -94,7 +94,7 @@ Options
.. option:: --absolute
Put directories in the yaml file in the form of absolute path when
creating.
-
+
.. option:: --fix
Fix the permission issues verify found. ``--fix`` requires root privilege
(sudo).
@@ -120,7 +120,7 @@ Remove the runroot. ::
traffic_layout remove (--path /path/to/sandbox/) (--force)
Verify the runroot. ::
-
+
traffic_layout verify (--path /path/to/sandbox/) (--fix)
diff --git a/doc/developer-guide/api/functions/TSIpStringToAddr.en.rst
b/doc/developer-guide/api/functions/TSIpStringToAddr.en.rst
index 8251a29..298705a 100644
--- a/doc/developer-guide/api/functions/TSIpStringToAddr.en.rst
+++ b/doc/developer-guide/api/functions/TSIpStringToAddr.en.rst
@@ -33,10 +33,10 @@ Description
:arg:`str` is expected to be an explicit address, not a hostname. No hostname
resolution is done. This attempts to
recognize and process a port value if present. It is set appropriately, or to
zero if no port was found or it was
-malformed.
+malformed.
It is intended to deal with the brackets that can optionally surround an IP
address (usually IPv6) which in turn are
-used to differentiate between an address and an attached port. E.g.
+used to differentiate between an address and an attached port. E.g.
.. code-block:: none
@@ -45,7 +45,7 @@ used to differentiate between an address and an attached
port. E.g.
Return values
=============
-It returns :data:`TS_SUCCESS` on success, or :data:`TS_ERROR` on failure.
+It returns :data:`TS_SUCCESS` on success, or :data:`TS_ERROR` on failure.
Notes
=====
diff --git a/doc/developer-guide/api/functions/TSTypes.en.rst
b/doc/developer-guide/api/functions/TSTypes.en.rst
index fb49e24..6b18d9a 100644
--- a/doc/developer-guide/api/functions/TSTypes.en.rst
+++ b/doc/developer-guide/api/functions/TSTypes.en.rst
@@ -43,11 +43,11 @@ more widely. Those are described on this page.
.. type:: INK_MD5
Buffer type sufficient to contain an MD5 hash value.
-
+
.. cpp:class:: INK_MD5
See :type:`INK_MD5`.
-
+
.. cpp:class:: RecRawStatBlock
A data block intended to contain |TS| statistics.
@@ -177,11 +177,11 @@ more widely. Those are described on this page.
.. type:: ModuleVersion
A module version.
-
+
.. cpp:type:: ModuleVersion
A module version.
-
+
.. cpp:class:: template<typename T> DLL
An anchor for a double linked instrusive list of instance of :arg:`T`.
diff --git a/doc/developer-guide/api/types/TSMgmtTypes.en.rst
b/doc/developer-guide/api/types/TSMgmtTypes.en.rst
index 9985319..000aef3 100644
--- a/doc/developer-guide/api/types/TSMgmtTypes.en.rst
+++ b/doc/developer-guide/api/types/TSMgmtTypes.en.rst
@@ -28,41 +28,41 @@ Macros used for RPC communications.
Management Signals
==================
-.. c:macro:: MGMT_SIGNAL_PID
+.. c:macro:: MGMT_SIGNAL_PID
-.. c:macro:: MGMT_SIGNAL_MACHINE_UP
+.. c:macro:: MGMT_SIGNAL_MACHINE_UP
-.. c:macro:: MGMT_SIGNAL_MACHINE_DOWN
+.. c:macro:: MGMT_SIGNAL_MACHINE_DOWN
-.. c:macro:: MGMT_SIGNAL_CONFIG_ERROR
+.. c:macro:: MGMT_SIGNAL_CONFIG_ERROR
.. c:macro:: MGMT_SIGNAL_SYSTEM_ERROR
-
+
.. c:macro:: MGMT_SIGNAL_LOG_SPACE_CRISIS
-.. c:macro:: MGMT_SIGNAL_CONFIG_FILE_READ
+.. c:macro:: MGMT_SIGNAL_CONFIG_FILE_READ
-.. c:macro:: MGMT_SIGNAL_CACHE_ERROR
+.. c:macro:: MGMT_SIGNAL_CACHE_ERROR
-.. c:macro:: MGMT_SIGNAL_CACHE_WARNING
+.. c:macro:: MGMT_SIGNAL_CACHE_WARNING
-.. c:macro:: MGMT_SIGNAL_LOGGING_ERROR
+.. c:macro:: MGMT_SIGNAL_LOGGING_ERROR
.. c:macro:: MGMT_SIGNAL_LOGGING_WARNING
-.. c:macro:: MGMT_SIGNAL_PLUGIN_SET_CONFIG
+.. c:macro:: MGMT_SIGNAL_PLUGIN_SET_CONFIG
-.. c:macro:: MGMT_SIGNAL_LOG_FILES_ROLLED
+.. c:macro:: MGMT_SIGNAL_LOG_FILES_ROLLED
-.. c:macro:: MGMT_SIGNAL_LIBRECORDS
+.. c:macro:: MGMT_SIGNAL_LIBRECORDS
-.. c:macro:: MGMT_SIGNAL_HTTP_CONGESTED_SERVER
+.. c:macro:: MGMT_SIGNAL_HTTP_CONGESTED_SERVER
-.. c:macro:: MGMT_SIGNAL_HTTP_ALLEVIATED_SERVER
+.. c:macro:: MGMT_SIGNAL_HTTP_ALLEVIATED_SERVER
-.. c:macro:: MGMT_SIGNAL_CONFIG_FILE_CHILD
+.. c:macro:: MGMT_SIGNAL_CONFIG_FILE_CHILD
-.. c:macro:: MGMT_SIGNAL_SAC_SERVER_DOWN
+.. c:macro:: MGMT_SIGNAL_SAC_SERVER_DOWN
Management Events
@@ -70,13 +70,13 @@ Management Events
.. c:macro:: MGMT_EVENT_SYNC_KEY
-.. c:macro:: MGMT_EVENT_SHUTDOWN
+.. c:macro:: MGMT_EVENT_SHUTDOWN
-.. c:macro:: MGMT_EVENT_RESTART
+.. c:macro:: MGMT_EVENT_RESTART
-.. c:macro:: MGMT_EVENT_BOUNCE
+.. c:macro:: MGMT_EVENT_BOUNCE
-.. c:macro:: MGMT_EVENT_CLEAR_STATS
+.. c:macro:: MGMT_EVENT_CLEAR_STATS
.. c:macro:: MGMT_EVENT_CONFIG_FILE_UPDATE
@@ -84,7 +84,7 @@ Management Events
.. c:macro:: MGMT_EVENT_ROLL_LOG_FILES
-.. c:macro:: MGMT_EVENT_LIBRECORDS
+.. c:macro:: MGMT_EVENT_LIBRECORDS
.. c:macro:: MGMT_EVENT_CONFIG_FILE_UPDATE_NO_INC_VERSION
@@ -96,7 +96,7 @@ Management Events
OpTypes (Possible operations or msgs that can be sent between TM and remote
clients)
====================================================================================
-.. cpp:type:: OpType
+.. cpp:type:: OpType
.. c:macro:: RECORD_SET
@@ -138,7 +138,7 @@ OpTypes (Possible operations or msgs that can be sent
between TM and remote clie
.. c:macro:: LIFECYCLE_MESSAGE
-.. c:macro:: UNDEFINED_OP
+.. c:macro:: UNDEFINED_OP
TSMgmtError
diff --git a/doc/developer-guide/api/types/TSOverridableConfigKey.en.rst
b/doc/developer-guide/api/types/TSOverridableConfigKey.en.rst
index a2d7cea..cb815af 100644
--- a/doc/developer-guide/api/types/TSOverridableConfigKey.en.rst
+++ b/doc/developer-guide/api/types/TSOverridableConfigKey.en.rst
@@ -148,6 +148,6 @@ Enumeration Members
.. c:macro:: TS_CONFIG_HTTP_INSERT_FORWARDED
.. c:macro:: TS_CONFIG_HTTP_ALLOW_MULTI_RANGE
.. c:macro:: TS_CONFIG_HTTP_ALLOW_HALF_OPEN
-
+
Description
===========
diff --git a/doc/developer-guide/api/types/TSSslSession.en.rst
b/doc/developer-guide/api/types/TSSslSession.en.rst
index c6c9401..60a184f 100644
--- a/doc/developer-guide/api/types/TSSslSession.en.rst
+++ b/doc/developer-guide/api/types/TSSslSession.en.rst
@@ -38,8 +38,8 @@ Description
===========
:type:`TSSslSessionID` represents the SSL session ID as a buffer and length.
The ``TS_SSL_MAX_SSL_SESSION_ID_LENGTH`` is the same value
-as the openssl constant ``SSL_MAX_SSL_SESSION_ID_LENGTH``. The plugin has
direct access to this object since creating and
-manipulating session IDs seems like a fairly common operation (rather than
providing an API to access the data via an
+as the openssl constant ``SSL_MAX_SSL_SESSION_ID_LENGTH``. The plugin has
direct access to this object since creating and
+manipulating session IDs seems like a fairly common operation (rather than
providing an API to access the data via an
opaque TS object type).
diff --git a/doc/developer-guide/client-session-architecture.en.rst
b/doc/developer-guide/client-session-architecture.en.rst
index 3dbf0b5..7df36aa 100644
--- a/doc/developer-guide/client-session-architecture.en.rst
+++ b/doc/developer-guide/client-session-architecture.en.rst
@@ -23,12 +23,12 @@ An Overview Client Sessions and Transactions
********************************************
-The User Agent interacts with ATS by creating a session with the ATS server
and
-submitting sequences of requests over the session. ATS supports several
session protocols including
+The User Agent interacts with ATS by creating a session with the ATS server and
+submitting sequences of requests over the session. ATS supports several
session protocols including
HTTP/1.x and HTTP/2. A HTTP State Machine is created for each request to
process the request.
ATS uses the generic classes ProxyClientSession and ProxyClientTransaction to
hide the details of
-the underlaying protocols from the HTTP State Machine.
+the underlaying protocols from the HTTP State Machine.
Classes
=======
@@ -43,7 +43,7 @@ ProxyClientSession
The ProxyClientSession class abstracts the key features of a client session.
It contains zero or more ProxyClientTransaction objects. It also has a
reference to the associated NetVC (either UnixNetVConnection or
SSLNetVConnection). The session class is responsible for interfacing with the
user agent protocol.
At this point there are two concrete subclasses: Http1ClientSession and
Http2ClientSession. The Http1ClientSession
-only has at most one transaction active at a time. The HTTP/2 protocol allows
for multiple simultaneous active
+only has at most one transaction active at a time. The HTTP/2 protocol allows
for multiple simultaneous active
transactions
ProxyClientTransaction
@@ -68,8 +68,8 @@ HTTP/1.x Objects
:align: center
:alt: HTTP1 session objects
-This diagram shows the relationships between objects created as part of a
HTTP/1.x session. A NetVC
-object performs the basic network level protocols. The Http1ClientSession
object has a reference to the
+This diagram shows the relationships between objects created as part of a
HTTP/1.x session. A NetVC
+object performs the basic network level protocols. The Http1ClientSession
object has a reference to the
associated NetVC object. The NetVC object is available via the
:code:`ProxyClientSession::get_netvc()` method.
The Http1ClientSession object contains a Http1ClientTransaction objet. For
each HTTP request, it calls
@@ -77,11 +77,11 @@ the :code:`ProxyClientSession::new_transaction()` method to
instantiate the Http
protocol at most one transaction can be active at a time.
When the Http1ClientTransaction object is instantiated via
:code:`ProxyClientTransaction::new_transaction()` it allocates a
-new HttpSM object, initializes it, and calls
:code:`HttpSM::attach_client_session()` to associate the
+new HttpSM object, initializes it, and calls
:code:`HttpSM::attach_client_session()` to associate the
Http1ClientTransaction object with the new HttpSM.
The ProxyClientTransaction object refers to the HttpSM via the current_reader
member variable. The HttpSM object
-refers to ProxyClientTransaction via the ua_session member variable (session
in the member name is
+refers to ProxyClientTransaction via the ua_session member variable (session
in the member name is
historical because the HttpSM used to refer directly to the ClientSession
object).
HTTP/2 Objects
@@ -96,23 +96,23 @@ to the HTTP/1.x case. The Http2ClientSession object
interacts with the NetVC.
a HttpSM object object when :code:`ProxyClient::new_transaction()` is called.
One difference is that the Http/2 protocol allows for multiple simultaneous
transactions, so the Http2ClientSession
-object must be able to manage multiple streams. From the HttpSM perspective it
is interacting with a
+object must be able to manage multiple streams. From the HttpSM perspective it
is interacting with a
ProxyClientTransaction object, and there is no difference between working with
a Http2Stream and a Http1ClientTransaction.
Transaction and Session Shutdown
================================
-One of the trickiest bits of managing sessions and transactions is cleaning
things up accurately and in a timely fashion.
+One of the trickiest bits of managing sessions and transactions is cleaning
things up accurately and in a timely fashion.
In addition, the TXN_CLOSE hooks and SSN_CLOSE hooks must be executed
accurately. The TXN_CLOSE hooks must be
executely exactly once. The SSN_CLOSE hook must also be executed exactly once
and only after all the TXN_CLOSE
hooks of all the child transactions have been executed. The CLOSE hooks are
important for many plugins to ensure that
plugin allocated objects are appropriately reclaimed.
-If objects are not cleaned up, memory leaks will occurs. If objects are
reclaimed too soon, delayed events may
+If objects are not cleaned up, memory leaks will occurs. If objects are
reclaimed too soon, delayed events may
cause use-after-free and other related memory corruption errors.
To ensure that sessions and transactions are correctly shutdown the following
assertions are maintained.
-* The Session object will not call :code:`::destroy()` on itself until all
child transaction objects are fully shutdown (i.e. TXN_CLOSE hooks are called
and the transaction objects have been freed).
+* The Session object will not call :code:`::destroy()` on itself until all
child transaction objects are fully shutdown (i.e. TXN_CLOSE hooks are called
and the transaction objects have been freed).
* The Transaction object will not call :code:`::destroy()` on itself until the
associated HttpSM has been shutdown. In :code:`HttpSM::kill_this()`, the
HttpSM will call :code:`ProxyClientTransaction::transaction_done()` on the
ua_session object. If the user agent initiates the termination, the
ProxyClientTransaction object will send a WRITE_COMPLETE, EOS, or ERROR event
on the open VIO object. This should signal to the HttpSM object to shut itself
down.
diff --git a/doc/developer-guide/core-architecture/rpc.en.rst
b/doc/developer-guide/core-architecture/rpc.en.rst
index 3c46c84..13c0a2f 100644
--- a/doc/developer-guide/core-architecture/rpc.en.rst
+++ b/doc/developer-guide/core-architecture/rpc.en.rst
@@ -35,7 +35,7 @@ RPC
Overview
========
-In order for programs in different address spaces (remote clients and
|TManager|) to communicate with |TServer|, there is a RPC mechanism in
:ts:git:`mgmt/`.
+In order for programs in different address spaces (remote clients and
|TManager|) to communicate with |TServer|, there is a RPC mechanism in
:ts:git:`mgmt/`.
This is a simple serialization style RPC which runs over unix domain sockets.
The following sections will detail the runtime structure, serialization
mechanisms and how messages are passed from remote clients to |TServer|.
@@ -63,19 +63,19 @@ Runtime Structure
Message Passing
===============
-Sequence diagram for a command sent from |TCtl| to when it is recieved by a
plugin.
+Sequence diagram for a command sent from |TCtl| to when it is recieved by a
plugin.
.. image:: ../../uml/images/RPC-sequence-diagram.svg
-
+
.. note::
- Currently a fire and forget model. traffic_manager sends out an
asynchoronous signal without any acknowledgement. It then proceeds to send a
response itself.
+ Currently a fire and forget model. traffic_manager sends out an
asynchoronous signal without any acknowledgement. It then proceeds to send a
response itself.
=======================
-Remote RPC vs Local RPC
+Remote RPC vs Local RPC
=======================
-The RPC API for remote clients, such as |TCtl|, etc, is different from the RPC
API used between |TManager| and |TServer|.
+The RPC API for remote clients, such as |TCtl|, etc, is different from the RPC
API used between |TManager| and |TServer|.
|TManager| acts like a bridge for remote clients to interact with |TServer|.
Thus, it is currently impossible to do things like have |TCtl| directly send
messages to |TServer|. Classes suffixed with "Remote", ie.
:ts:git:`CoreAPIRemote.cc`, and classes suffixed with "Local", ie.
:ts:git:`NetworkUtilsLocal.cc` are for remote and local clients, respectively.
The following sections will note which set of RPC's are relevant.
@@ -89,12 +89,12 @@ Serialization Mechanism
- **MGMT_MARSHALL_INT** : 4 bytes.
- **MGMT_MARSHALL_LONG** : 8 bytes.
- - **MGMT_MARSHALL_STRING** : 4 bytes to indicate the string size in bytes,
followed by the entire string and NULL terminator.
- - **MGMT_MARSHALL_DATA** : 4 byt es to indicate data size in bytes,
followed by the entire data object.
+ - **MGMT_MARSHALL_STRING** : 4 bytes to indicate the string size in bytes,
followed by the entire string and NULL terminator.
+ - **MGMT_MARSHALL_DATA** : 4 byt es to indicate data size in bytes,
followed by the entire data object.
-When data is actually sent over a connection it must first be seralized. This
is the general serialization mechanism for RPC communcation.
+When data is actually sent over a connection it must first be seralized. This
is the general serialization mechanism for RPC communcation.
-Generally, for remote clients sending messages to |TServer|, the message is
serialized using remote RPC APIs. The serialized message is sent to |TManager|
and |TManager| then simply relays the message to |TServer|. |TServer|
eventually unserializes the message.
+Generally, for remote clients sending messages to |TServer|, the message is
serialized using remote RPC APIs. The serialized message is sent to |TManager|
and |TManager| then simply relays the message to |TServer|. |TServer|
eventually unserializes the message.
Details for how |TManager| and |TServer| communicate are documented in the
next section.
@@ -103,21 +103,21 @@ Marshalling:
.. function:: ssize_t mgmt_message_marshall(void *buf, size_t remain, const
MgmtMarshallType *fields, unsigned count, ...)
- Variable argument wrapper for ``mgmt_message_marshall_v``. Allows for
different datatypes to be marshalled together as long as a field is specified
for each data object. Arguments should be references to objects to be
marshalled.
+ Variable argument wrapper for ``mgmt_message_marshall_v``. Allows for
different datatypes to be marshalled together as long as a field is specified
for each data object. Arguments should be references to objects to be
marshalled.
.. function:: ssize_t mgmt_message_marshall_v(void *buf, size_t remain,
const MgmtMarshallType *fields, unsigned count, va_list ap)
- This function goes through all the data objects and serializes them
together into a buffer. Based on the field, the number of bytes is determined
and if there is enough space, it is written into the buffer.
+ This function goes through all the data objects and serializes them
together into a buffer. Based on the field, the number of bytes is determined
and if there is enough space, it is written into the buffer.
Unmarshalling:
==============
.. function:: ssize_t mgmt_message_parse(const void *buf, size_t len, const
MgmtMarshallType *fields, unsigned count, ...)
- Variable argument wrapper for ``mgmt_message_parse_v``. Reference to
data object to store unmarshalled message needed for variable arguements.
+ Variable argument wrapper for ``mgmt_message_parse_v``. Reference to
data object to store unmarshalled message needed for variable arguements.
.. function:: ssize_t mgmt_message_parse_v(const void *buf, size_t len,
const MgmtMarshallType *fields, unsigned count, va_list ap)
-
+
This function parses all the serialized. Based on the field, the number
of bytes to be read is determined and copied into a ``MgmtMarshallAnyPtr``.
===================
@@ -128,13 +128,13 @@ A RPC message is sent as a :class:`MgmtMessageHdr`
followed by the serialized da
.. class:: MgmtMessageHdr
- .. member:: int msg_id
+ .. member:: int msg_id
ID for the event or signal to be sent.
.. member:: int data_len
- Length in bytes of the message.
+ Length in bytes of the message.
.. uml::
@@ -145,7 +145,7 @@ A RPC message is sent as a :class:`MgmtMessageHdr` followed
by the serialized da
|#LightGreen|Socket|
:send MgmtMessageHdr;
|Write|
- :get the raw data;
+ :get the raw data;
note left : casts from\nchar* to void*
|Socket|
:send raw data;
@@ -166,7 +166,7 @@ A RPC message is sent as a :class:`MgmtMessageHdr` followed
by the serialized da
RPC API for remote clients
==========================
-:ts:git:`NetworkMessage.cc` provides a set of APIs for remote clients to
communicate with |TManager|.
+:ts:git:`NetworkMessage.cc` provides a set of APIs for remote clients to
communicate with |TManager|.
|TManager| will then send a response with the return value. The return value
only indicates if the request was successfully propogated to |TServer|. Thus,
there is no way currently for |TServer| to send information back to remote
clients.
@@ -188,15 +188,15 @@ RPC API for remote clients
Read request from remote client. Used by |TManager|.
.. function:: TSMgmtError recv_mgmt_response(void *buf, size_t buflen, OpType
optype, ...)
-
+
Read response from |TManager|. Used by remote clients.
Using Remote RPC API Example
============================
-This details how a remote client may use the :ts:git:`NetworkMessage.cc`
interface to send messages to |TManager|. Leveraging :func:`send_mgmt_request`
with a :class:`mgmt_message_sender` which specifies how *send* a message, a
remote client can implement its own way to send messages to |TManager| to allow
for things such as preprocessing messages.
+This details how a remote client may use the :ts:git:`NetworkMessage.cc`
interface to send messages to |TManager|. Leveraging :func:`send_mgmt_request`
with a :class:`mgmt_message_sender` which specifies how *send* a message, a
remote client can implement its own way to send messages to |TManager| to allow
for things such as preprocessing messages.
-.. class:: mgmt_message_sender
+.. class:: mgmt_message_sender
.. class:: mgmtapi_sender : public mgmt_message_sender
@@ -204,13 +204,13 @@ This details how a remote client may use the
:ts:git:`NetworkMessage.cc` interfa
Specifies how the message is to be sent. Can do things such as
serialization or preprocessing based on parameters.
-.. code-block:: cpp
+.. code-block:: cpp
#define MGMTAPI_SEND_MESSAGE(fd, optype, ...)
send_mgmt_request(mgmtapi_sender(fd), (optype), __VA_ARGS__)
Now, using this macro, messages can easily be sent. For example:
-.. code-block:: cpp
+.. code-block:: cpp
TSMgmtError ret;
MgmtMarshallData reply = {nullptr, 0};
@@ -234,15 +234,15 @@ RPC API for |TServer| and |TManager|
.. image:: ../../uml/images/RPC-states.svg
:align: center
-|LM| and |PM| follow similar workflows. A manager will poll the socket for any
messages. If it is able to read a message, it will handle it based on the
:arg:`msg_id` from the :class:`MgmtMessageHdr` and select a callback to run
asynchoronously. The async callback will add a response, if any, to an outgoing
event queue within the class. A manager will continue to poll and read on the
socket as long as there are messages avaliable. Two things can stop a manager
from polling.
+|LM| and |PM| follow similar workflows. A manager will poll the socket for any
messages. If it is able to read a message, it will handle it based on the
:arg:`msg_id` from the :class:`MgmtMessageHdr` and select a callback to run
asynchoronously. The async callback will add a response, if any, to an outgoing
event queue within the class. A manager will continue to poll and read on the
socket as long as there are messages avaliable. Two things can stop a manager
from polling.
-1. there are no longer any messages on the socket for a *timeout* time period.
-
-#. an external event, for example, a |TCtl| command, triggers an ``eventfd``
to tell the manager to stop polling. In the case of an external event, the
manager will finish reading anything on the socket, but it will not wait for
any timeout period. So, if there are three pending events on the socket, all
three will be processed and then immediately after, the manager will stop
polling.
+1. there are no longer any messages on the socket for a *timeout* time period.
-Once a manager is done polling, it will begin to send out messages from it's
outgoing event queue. It continues to do this until there are no more messages
left. Note that as a manager is polling, it is unable to write anything on the
socket itself so the number of messages read will always be exhaustive.
+#. an external event, for example, a |TCtl| command, triggers an ``eventfd``
to tell the manager to stop polling. In the case of an external event, the
manager will finish reading anything on the socket, but it will not wait for
any timeout period. So, if there are three pending events on the socket, all
three will be processed and then immediately after, the manager will stop
polling.
-.. class:: BaseManager
+Once a manager is done polling, it will begin to send out messages from it's
outgoing event queue. It continues to do this until there are no more messages
left. Note that as a manager is polling, it is unable to write anything on the
socket itself so the number of messages read will always be exhaustive.
+
+.. class:: BaseManager
LocalManager
============
@@ -256,7 +256,7 @@ LocalManager
This function watches the socket and handles incoming messages from
processes. Used in the main event loop of |TManager|.
.. function:: void sendMgmtMsgToProcesses(MgmtMessageHdr *mh)
-
+
This function is used by |TManager| to process the messages based on
:arg:`msg_id`. It then sends the message to |TServer| over sockets.
ProcessManager
diff --git a/doc/developer-guide/documentation/ts-markup.en.rst
b/doc/developer-guide/documentation/ts-markup.en.rst
index 1a71eab..10a40c0 100644
--- a/doc/developer-guide/documentation/ts-markup.en.rst
+++ b/doc/developer-guide/documentation/ts-markup.en.rst
@@ -54,7 +54,7 @@ three required arguments (the scope, which is the literal
string
argument (the default value). ::
:ts:cv: <scope> <variable name> <data type> <value>
-
+
This corresponds exactly to the line in :file:`records.config`.
Definition
@@ -96,14 +96,14 @@ The domain for configuration variables takes serveral
options.
reloadable
If marked the effect of the variable can be changed by reloading the |TS|
configuration.
-
+
overridable
A flag option that should be set if the variable is overridable per
transaction.
-
+
units
This takes a string option which is a description of the units for the
variable. The most common
case is to distinguish time values with units such as "seconds", "minutes",
"milliseconds", etc.
-
+
deprecated
A simple flag option which, when attached to a configuration variable, is
used to indicate that the variable has been deprecated and should no longer
diff --git a/doc/developer-guide/internal-libraries/MemArena.en.rst
b/doc/developer-guide/internal-libraries/MemArena.en.rst
index 76ffdb4..be71cb1 100644
--- a/doc/developer-guide/internal-libraries/MemArena.en.rst
+++ b/doc/developer-guide/internal-libraries/MemArena.en.rst
@@ -14,7 +14,7 @@
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-
+
.. include:: ../../common.defs
.. highlight:: cpp
@@ -63,7 +63,7 @@ Internals
component [block] as b5
component [block] as b6
- b1 -> b2
+ b1 -> b2
b2 -> b3
b3 -> b4
b4 -> b5
@@ -130,10 +130,10 @@ After the next :func:`MemArena::alloc`:
A caller can actually :func:`MemArena::alloc` **any** number of bytes.
Internally, if the arena is unable to allocate enough memory for the
allocation, it will create a new internal block of memory large enough and
allocate from that. So if the arena is allocated like:
.. code-block:: cpp
-
+
ts::MemArena *arena = new ts::MemArena(64);
-The caller can actually allocate more than 64 bytes.
+The caller can actually allocate more than 64 bytes.
.. code-block:: cpp
@@ -148,9 +148,9 @@ Now, span1 and span2 are in the same generation and can
both be safely used. Aft
ts::MemSpan span3 = arena->alloc(512);
arena->thaw();
-span3 can still be used but span1 and span2 have been deallocated and usage is
undefined.
+span3 can still be used but span1 and span2 have been deallocated and usage is
undefined.
-Internal blocks are adjusted for optimization. Each :class:`MemArena::Block`
is just a header for the underlying memory it manages. The header and memory
are allocated together for locality such that each :class:`MemArena::Block` is
immediately followed with the memory it manages. If a :class:`MemArena::Block`
is larger than a page (defaulted at 4KB), it is aligned to a power of two. The
actual memory that a :class:`MemArena::Block` can allocate out is slightly
smaller. This is because a [...]
+Internal blocks are adjusted for optimization. Each :class:`MemArena::Block`
is just a header for the underlying memory it manages. The header and memory
are allocated together for locality such that each :class:`MemArena::Block` is
immediately followed with the memory it manages. If a :class:`MemArena::Block`
is larger than a page (defaulted at 4KB), it is aligned to a power of two. The
actual memory that a :class:`MemArena::Block` can allocate out is slightly
smaller. This is because a [...]
Reference
+++++++++
@@ -158,8 +158,8 @@ Reference
.. class:: MemArena
.. class:: Block
-
- Underlying memory allocated is owned by the :class:`Block`. A linked
list.
+
+ Underlying memory allocated is owned by the :class:`Block`. A linked
list.
.. member:: size_t size
.. member:: size_t allocated
@@ -173,7 +173,7 @@ Reference
.. function:: explicit MemArena(size_t n)
- Construct an arena with :arg:`n` bytes.
+ Construct an arena with :arg:`n` bytes.
.. function:: MemSpan alloc(size_t n)
@@ -185,19 +185,19 @@ Reference
.. function:: MemArena& thaw()
- Unallocate all internal blocks that were allocated before the current
generation.
-
+ Unallocate all internal blocks that were allocated before the current
generation.
+
.. function:: MemArena& empty()
-
+
Empties the entire arena and deallocates all underlying memory. Next
block size will be equal to the sum of all allocations before the call to empty.
- .. function:: size_t size() const
+ .. function:: size_t size() const
- Get the current generation size. The default size of the arena is 32KB
unless otherwise specified.
+ Get the current generation size. The default size of the arena is 32KB
unless otherwise specified.
- .. function:: size_t remaining() const
+ .. function:: size_t remaining() const
- Amount of space left in the generation.
+ Amount of space left in the generation.
.. function:: size_t allocated_size() const
@@ -205,23 +205,23 @@ Reference
.. function:: size_t unallocated_size() const
- Total number of bytes unallocated in the arena. Can be used to see the
internal fragmentation.
+ Total number of bytes unallocated in the arena. Can be used to see the
internal fragmentation.
.. function:: bool contains (void *ptr) const
Returns whether or not a pointer is in the arena.
-
+
.. function:: Block* newInternalBlock(size_t n, bool custom)
- Create a new internal block and returns a pointer to the block.
+ Create a new internal block and returns a pointer to the block.
.. member:: size_t arena_size
- Current generation size.
-
+ Current generation size.
+
.. member:: size_t total_alloc
- Number of bytes allocated out.
+ Number of bytes allocated out.
.. member:: size_t next_block_size
diff --git a/doc/developer-guide/introduction/index.en.rst
b/doc/developer-guide/introduction/index.en.rst
index 2994bb0..19c4381 100644
--- a/doc/developer-guide/introduction/index.en.rst
+++ b/doc/developer-guide/introduction/index.en.rst
@@ -46,7 +46,7 @@ refer to the :ref:`developer-api-reference`.
Below is a section-by-section breakdown of this guide:
-:ref:`developer-header-files`
+:ref:`developer-header-files`
The header file directory structure, where to find headers for particular
tasks.
:ref:`developer-plugins-getting-started`
diff --git
a/doc/developer-guide/plugins/continuations/writing-handler-functions.en.rst
b/doc/developer-guide/plugins/continuations/writing-handler-functions.en.rst
index 5384fe8..b4cde81 100644
--- a/doc/developer-guide/plugins/continuations/writing-handler-functions.en.rst
+++ b/doc/developer-guide/plugins/continuations/writing-handler-functions.en.rst
@@ -69,8 +69,8 @@ it receives:
.. caution::
- TS_HTTP_SEND_REQUEST_HDR_HOOK may callback several times when the
- OS crashed. Be careful to use functions such as TSContDestroy in
+ TS_HTTP_SEND_REQUEST_HDR_HOOK may callback several times when the
+ OS crashed. Be careful to use functions such as TSContDestroy in
TS_HTTP_SEND_REQUEST_HDR_HOOK hook.
The following table lists events and the corresponding type of
diff --git
a/doc/developer-guide/plugins/hooks-and-transactions/adding-hooks.en.rst
b/doc/developer-guide/plugins/hooks-and-transactions/adding-hooks.en.rst
index c1e0e1d..e617431 100644
--- a/doc/developer-guide/plugins/hooks-and-transactions/adding-hooks.en.rst
+++ b/doc/developer-guide/plugins/hooks-and-transactions/adding-hooks.en.rst
@@ -134,8 +134,8 @@ values for ``TSHttpHookID`` are:
.. caution::
- TS_HTTP_SEND_REQUEST_HDR_HOOK may callback several times when the
- OS crashed. Be careful to use functions such as TSContDestroy in
+ TS_HTTP_SEND_REQUEST_HDR_HOOK may callback several times when the
+ OS crashed. Be careful to use functions such as TSContDestroy in
TS_HTTP_SEND_REQUEST_HDR_HOOK hook.
``TS_HTTP_SSN_CLOSE_HOOK``
diff --git a/doc/uml/RPC-sequence-diagram.uml b/doc/uml/RPC-sequence-diagram.uml
index 08baf39..17d543d 100644
--- a/doc/uml/RPC-sequence-diagram.uml
+++ b/doc/uml/RPC-sequence-diagram.uml
@@ -23,15 +23,15 @@ entity plugin
traffic_manager -> traffic_server : traffic_server registers\ncallback for
""MGMT_EVENT_LIFECYCLE_EVENT""
traffic_server -> plugin : register to ""TS_LIFECYCLE_MSG_HOOK""
-user -> traffic_ctl : "traffic_ctl plugin msg TAG hello"
-traffic_ctl -> remote_rpc : lifecycle message
+user -> traffic_ctl : "traffic_ctl plugin msg TAG hello"
+traffic_ctl -> remote_rpc : lifecycle message
note left : msd id ""MGMT_EVENT_LIFECYCLE_MESSAGE""
remote_rpc -[#blue]-> remote_rpc : <font color="blue">//serialize
message//</font>
remote_rpc -> traffic_manager : sent over sockets
note over traffic_ctl, traffic_manager : Using remote RPC
functions\n""CoreAPIRemote, NetworkUtilsRemote""
traffic_manager -[#blue]-> local_rpc: <font color="blue">//serialized
message//</font>
-local_rpc -> traffic_server : resent over sockets
+local_rpc -> traffic_server : resent over sockets
note over traffic_manager, traffic_server : Local RPC functions\n""CoreAPI,
NetworkUtilsLocal""
traffic_server -> traffic_server : callback function selected based on msg
id\n""MGMT_EVENT_LIFECYCLE_MESSAGE""
traffic_server -[#blue]-> local_rpc : <font color="blue">//unserialize
message//</font>
diff --git a/doc/uml/RPC-states.uml b/doc/uml/RPC-states.uml
index 10ca6ad..ad73b58 100644
--- a/doc/uml/RPC-states.uml
+++ b/doc/uml/RPC-states.uml
@@ -15,26 +15,26 @@ state "LocalManager\nruns in traffic_manager main event
loop" as traffic_manager
tm_dequeue -d-> tm_send_events : based on msg_id
tm_send_events -u-> tm_dequeue
}
-
+
state "pollMgmtProcessServer" as tm_poll_ts {
state "poll socket" as tm_poll_sock : ""mgmt_select""
state "new connection" as tm_new_process : register new client socket
fd\nto start getting msgs from\nclient
state "new message" as tm_new_message : new message from process
state "handle msg" as tm_handle_msg : ""handleMgmtMsgFromProcesses""
will\noften ""signalAlarm"" with recieved\nmsg_id
-
+
tm_poll_sock -d-> tm_new_process : new process trying to connect
tm_poll_sock -d-> tm_new_message : msg from ""traffic_server""
tm_poll_sock -d-> [*] : timed out
tm_new_message -d-> tm_handle_msg : based on msg_id
- tm_handle_msg -u-> tm_poll_sock
+ tm_handle_msg -u-> tm_poll_sock
tm_new_process -u-> tm_poll_sock
-
+
state "External Event" as tm_ext_event : mechanism to stop polling
tm_ext_event -u-> [*] : ""eventfd"" trigger
}
-
+
[*] -d-> tm_process_events
- tm_process_events -d-> tm_poll_ts
+ tm_process_events -d-> tm_poll_ts
tm_poll_ts -d-> [*] : other tasks ""traffic_manager"" is\nresponsible for
including ""rotateLogs"",\nmanaging metrics and monitoring\n""traffic_server""
}
@@ -47,12 +47,12 @@ state "ProcessManager\nruns in processManagerThread from
traffic_server" as traf
ts_handle_event -d-> ts_response : callback enqueues response
ts_response -u-> ts_handle_event
ts_handle_event -u-> ts_poll_sock
-
+
ts_poll_sock -down-> [*] : timed out
state "External Event" as ts_ext_event : mechanism to stop polling
ts_ext_event -u-> [*] : ""eventfd"" trigger
}
-
+
state "processSignalQueue" as ts_send_signals {
state "dequeue signal" as ts_dequeue_signal : dequeue from
""mgmt_signal_queue""
state "send out msg" as ts_outgoing_msg : ""mgmt_write_pipe""
@@ -62,8 +62,8 @@ state "ProcessManager\nruns in processManagerThread from
traffic_server" as traf
}
ts_send_signals : send outgoing messages via processSignalQueue
- ts_poll_tm -down-> ts_send_signals
- ts_send_signals -up-> ts_poll_tm
+ ts_poll_tm -down-> ts_send_signals
+ ts_send_signals -up-> ts_poll_tm
}
ts_send_signals -r-> tm_poll_ts : msg from ""traffic_server"" to
""traffic_manager""
diff --git a/lib/tsconfig/TsBuilder.cc b/lib/tsconfig/TsBuilder.cc
index 969e37b..c174de1 100644
--- a/lib/tsconfig/TsBuilder.cc
+++ b/lib/tsconfig/TsBuilder.cc
@@ -45,7 +45,7 @@ size_t unescape_string(char* text, size_t len) {
if ('\\' != *src) { *dst++ = *src;
} else if (++src < limit) { *dst++ = *src;
} else { *dst++ = '\\'; // trailing backslash.
-
+
}
}zret = dst - text;
}
diff --git a/lib/tsconfig/TsConfigSyntax.c b/lib/tsconfig/TsConfigSyntax.c
index 9d1bd33..8876431 100644
--- a/lib/tsconfig/TsConfigSyntax.c
+++ b/lib/tsconfig/TsConfigSyntax.c
@@ -34,7 +34,7 @@
#if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
/* C99 says to define __STDC_LIMIT_MACROS before including stdint.h,
- * if you want the limit (max/min) macros for int types.
+ * if you want the limit (max/min) macros for int types.
*/
#ifndef __STDC_LIMIT_MACROS
#define __STDC_LIMIT_MACROS 1
@@ -51,7 +51,7 @@ typedef uint32_t flex_uint32_t;
typedef signed char flex_int8_t;
typedef short int flex_int16_t;
typedef int flex_int32_t;
-typedef unsigned char flex_uint8_t;
+typedef unsigned char flex_uint8_t;
typedef unsigned short int flex_uint16_t;
typedef unsigned int flex_uint32_t;
@@ -190,7 +190,7 @@ typedef size_t yy_size_t;
#define YY_LESS_LINENO(n)
#define YY_LINENO_REWIND_TO(ptr)
-
+
/* Return all but the first "n" matched characters back to the input stream. */
#define yyless(n) \
do \
@@ -247,7 +247,7 @@ struct yy_buffer_state
int yy_bs_lineno; /**< The line count. */
int yy_bs_column; /**< The column count. */
-
+
/* Whether to try to fill the input buffer when we reach the
* end of it.
*/
@@ -585,7 +585,7 @@ static int yy_init_globals (yyscan_t yyscanner );
/* This must go here because YYSTYPE and YYLTYPE are included
* from bison output in section 1.*/
# define yylval yyg->yylval_r
-
+
int tsconfiglex_init (yyscan_t* scanner);
int tsconfiglex_init_extra (YY_EXTRA_TYPE user_defined,yyscan_t* scanner);
@@ -640,7 +640,7 @@ extern int tsconfigwrap (yyscan_t yyscanner );
#endif
#ifndef YY_NO_UNPUT
-
+
#endif
#ifndef yytext_ptr
@@ -1476,7 +1476,7 @@ static void tsconfig_load_buffer_state (yyscan_t
yyscanner)
YY_BUFFER_STATE tsconfig_create_buffer (FILE * file, int size , yyscan_t
yyscanner)
{
YY_BUFFER_STATE b;
-
+
b = (YY_BUFFER_STATE) tsconfigalloc(sizeof( struct yy_buffer_state )
,yyscanner );
if ( ! b )
YY_FATAL_ERROR( "out of dynamic memory in
tsconfig_create_buffer()" );
@@ -1542,7 +1542,7 @@ static void tsconfig_load_buffer_state (yyscan_t
yyscanner)
}
b->yy_is_interactive = 0;
-
+
errno = oerrno;
}
@@ -1648,9 +1648,9 @@ static void tsconfigensure_buffer_stack (yyscan_t
yyscanner)
, yyscanner);
if ( ! yyg->yy_buffer_stack )
YY_FATAL_ERROR( "out of dynamic memory in
tsconfigensure_buffer_stack()" );
-
+
memset(yyg->yy_buffer_stack, 0, num_to_alloc * sizeof(struct
yy_buffer_state*));
-
+
yyg->yy_buffer_stack_max = num_to_alloc;
yyg->yy_buffer_stack_top = 0;
return;
@@ -1679,12 +1679,12 @@ static void tsconfigensure_buffer_stack (yyscan_t
yyscanner)
* @param base the character buffer
* @param size the size in bytes of the character buffer
* @param yyscanner The scanner object.
- * @return the newly allocated buffer state object.
+ * @return the newly allocated buffer state object.
*/
YY_BUFFER_STATE tsconfig_scan_buffer (char * base, yy_size_t size , yyscan_t
yyscanner)
{
YY_BUFFER_STATE b;
-
+
if ( size < 2 ||
base[size-2] != YY_END_OF_BUFFER_CHAR ||
base[size-1] != YY_END_OF_BUFFER_CHAR )
@@ -1720,7 +1720,7 @@ YY_BUFFER_STATE tsconfig_scan_buffer (char * base,
yy_size_t size , yyscan_t y
*/
YY_BUFFER_STATE tsconfig_scan_string (yyconst char * yystr , yyscan_t
yyscanner)
{
-
+
return tsconfig_scan_bytes(yystr,strlen(yystr) ,yyscanner);
}
@@ -1737,7 +1737,7 @@ YY_BUFFER_STATE tsconfig_scan_bytes (yyconst char *
yybytes, yy_size_t _yybyte
char *buf;
yy_size_t n;
yy_size_t i;
-
+
/* Get memory for full buffer, including space for trailing EOB's. */
n = _yybytes_len + 2;
buf = (char *) tsconfigalloc(n ,yyscanner );
@@ -1807,10 +1807,10 @@ YY_EXTRA_TYPE tsconfigget_extra (yyscan_t yyscanner)
int tsconfigget_lineno (yyscan_t yyscanner)
{
struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
-
+
if (! YY_CURRENT_BUFFER)
return 0;
-
+
return yylineno;
}
@@ -1820,10 +1820,10 @@ int tsconfigget_lineno (yyscan_t yyscanner)
int tsconfigget_column (yyscan_t yyscanner)
{
struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
-
+
if (! YY_CURRENT_BUFFER)
return 0;
-
+
return yycolumn;
}
@@ -1885,7 +1885,7 @@ void tsconfigset_lineno (int _line_number , yyscan_t
yyscanner)
/* lineno is only valid if an input buffer exists. */
if (! YY_CURRENT_BUFFER )
YY_FATAL_ERROR( "tsconfigset_lineno called with no buffer" );
-
+
yylineno = _line_number;
}
@@ -1900,7 +1900,7 @@ void tsconfigset_column (int _column_no , yyscan_t
yyscanner)
/* column is only valid if an input buffer exists. */
if (! YY_CURRENT_BUFFER )
YY_FATAL_ERROR( "tsconfigset_column called with no buffer" );
-
+
yycolumn = _column_no;
}
@@ -1995,20 +1995,20 @@ int tsconfiglex_init_extra(YY_EXTRA_TYPE
yy_user_defined,yyscan_t* ptr_yy_global
errno = EINVAL;
return 1;
}
-
+
*ptr_yy_globals = (yyscan_t) tsconfigalloc ( sizeof( struct yyguts_t ),
&dummy_yyguts );
-
+
if (*ptr_yy_globals == NULL){
errno = ENOMEM;
return 1;
}
-
+
/* By setting to 0xAA, we expose bugs in
yy_init_globals. Leave at 0x00 for releases. */
memset(*ptr_yy_globals,0x00,sizeof(struct yyguts_t));
-
+
tsconfigset_extra (yy_user_defined, *ptr_yy_globals);
-
+
return yy_init_globals ( *ptr_yy_globals );
}
diff --git a/lib/yamlcpp/test/create-emitter-tests.py
b/lib/yamlcpp/test/create-emitter-tests.py
index 7a03c41..a6bf3a4 100644
--- a/lib/yamlcpp/test/create-emitter-tests.py
+++ b/lib/yamlcpp/test/create-emitter-tests.py
@@ -124,7 +124,7 @@ def expand(template):
for car in expand(template[:1]):
for cdr in expand(template[1:]):
yield car + cdr
-
+
def gen_events():
for template in gen_templates():
@@ -144,7 +144,7 @@ class Writer(object):
def __init__(self, out):
self.out = out
self.indent = 0
-
+
def writeln(self, s):
self.out.write('%s%s\n' % (' ' * self.indent, s))
@@ -157,14 +157,14 @@ class Scope(object):
def __enter__(self):
self.writer.writeln('%s {' % self.name)
self.writer.indent += self.indent
-
+
def __exit__(self, type, value, traceback):
self.writer.indent -= self.indent
self.writer.writeln('}')
def create_emitter_tests(out):
out = Writer(out)
-
+
includes = [
'handler_test.h',
'yaml-cpp/yaml.h',
diff --git a/lib/yamlcpp/test/integration/load_node_test.cpp
b/lib/yamlcpp/test/integration/load_node_test.cpp
index 02bb8fe..2885084 100644
--- a/lib/yamlcpp/test/integration/load_node_test.cpp
+++ b/lib/yamlcpp/test/integration/load_node_test.cpp
@@ -230,7 +230,7 @@ TEST(NodeTest, LoadTildeAsNull) {
Node node = Load("~");
ASSERT_TRUE(node.IsNull());
}
-
+
TEST(NodeTest, LoadTagWithParenthesis) {
Node node = Load("!Complex(Tag) foo");
EXPECT_EQ(node.Tag(), "!Complex(Tag)");
diff --git a/mgmt/Makefile.am b/mgmt/Makefile.am
index 6ae7d27..34c8b03 100644
--- a/mgmt/Makefile.am
+++ b/mgmt/Makefile.am
@@ -38,7 +38,7 @@ AM_CPPFLAGS += \
libmgmt_c_la_SOURCES = \
RecordsConfig.cc \
- RecordsConfig.h
+ RecordsConfig.h
libmgmt_COMMON = \
BaseManager.cc \
diff --git a/plugins/experimental/cache_range_requests/README
b/plugins/experimental/cache_range_requests/README
index 4844156..12ea4d0 100644
--- a/plugins/experimental/cache_range_requests/README
+++ b/plugins/experimental/cache_range_requests/README
@@ -35,22 +35,22 @@ Configuration:
Add cache_range_requests.so to the plugin.config
Parent Selection Mode (consisent-hash only):
-
+
default: Parent selection is based solely on the hash of a URL Path
- In this mode, all partial content of a URL is requested from the
same
+ In this mode, all partial content of a URL is requested from the
same
upstream parent cache listed in parent.config
-
- cache_key_url: Parent selection is based on the full cache_key_url which
+
+ cache_key_url: Parent selection is based on the full cache_key_url which
includes information about the partial content range.
In this mode, all requests (include partial content) will
use
- consistent hashing method for parent selection.
+ consistent hashing method for parent selection.
To enable cache_key_url parent select mode, the following param must be
set:
Global Plugin (plugin.config):
-
+
cache_range_requests.so ps_mode:cache_key_url
Remap Plugin (remap.config):
-
+
<from-url> <to-url> @plugin=cache_range_requests.so
@pparam=ps_mode:cache_key_url
diff --git a/plugins/experimental/server_push_preload/Makefile.inc
b/plugins/experimental/server_push_preload/Makefile.inc
index d1fe088..5a04108 100644
--- a/plugins/experimental/server_push_preload/Makefile.inc
+++ b/plugins/experimental/server_push_preload/Makefile.inc
@@ -20,8 +20,8 @@
experimental_server_push_preload_server_push_preload_la_SOURCES = \
experimental/server_push_preload/server_push_preload.cc
experimental_server_push_preload_server_push_preload_la_LDFLAGS = \
- $(AM_LDFLAGS)
+ $(AM_LDFLAGS)
experimental_server_push_preload_server_push_preload_la_LIBADD = \
- $(top_builddir)/src/tscpp/api/libtscppapi.la
+ $(top_builddir)/src/tscpp/api/libtscppapi.la
diff --git a/plugins/experimental/url_sig/README
b/plugins/experimental/url_sig/README
index 12b4929..a8b4360 100644
--- a/plugins/experimental/url_sig/README
+++ b/plugins/experimental/url_sig/README
@@ -85,9 +85,9 @@ Signing a URL using path parameters instead of using a query
string.
the file part of the request and are never part of the sign string.
Path parameters are separated by a ';' in the path. The complete signature
- string is base64 encoded as a single path parameter that is assinged to the
- 'siganchor', and will appear in that path as siganchor=base64string. The
- following is an example signed request using the path parameter method and
+ string is base64 encoded as a single path parameter that is assinged to the
+ 'siganchor', and will appear in that path as siganchor=base64string. The
+ following is an example signed request using the path parameter method and
with an origin application query string:
http://ds-01.comcast.net/vod/t;urlsig=O0U9MTQ2MzkyOTYxODtBPTE7Sz0zO1A9MTtTPTEyZDlmN2RiNjUyZWI0YmI4MWYyNmVlMjE3MzczZGE5Y2VkYTRmZGY/Frag10Num10.ts?appid=2&t=1
diff --git a/src/Makefile.am b/src/Makefile.am
index fa3e9ce..8fc77e5 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -25,9 +25,9 @@ noinst_PROGRAMS =
SUBDIRS = tscpp/api
-if BUILD_WCCP
-SUBDIRS += wccp
-include traffic_wccp/Makefile.inc
+if BUILD_WCCP
+SUBDIRS += wccp
+include traffic_wccp/Makefile.inc
endif
include traffic_cache_tool/Makefile.inc
diff --git a/src/tscpp/api/Makefile.am b/src/tscpp/api/Makefile.am
index 67446df..182c432 100644
--- a/src/tscpp/api/Makefile.am
+++ b/src/tscpp/api/Makefile.am
@@ -17,7 +17,7 @@
lib_LTLIBRARIES = libtscppapi.la
-libtscppapi_la_CPPFLAGS = $(AM_CPPFLAGS) -I $(abs_top_srcdir)/include
+libtscppapi_la_CPPFLAGS = $(AM_CPPFLAGS) -I $(abs_top_srcdir)/include
libtscppapi_la_LDFLAGS=-lz -lpthread -version-info @TS_LIBTOOL_VERSION@
diff --git a/tests/gold_tests/autest-site/cli_tools.test.ext
b/tests/gold_tests/autest-site/cli_tools.test.ext
index 431abd1..d82a30b 100644
--- a/tests/gold_tests/autest-site/cli_tools.test.ext
+++ b/tests/gold_tests/autest-site/cli_tools.test.ext
@@ -29,20 +29,20 @@ Tools to help with TestRun commands
# ts.StartAfter(*ps)
# tr.StillRunningAfter = ts
#
-# Note that by default, the Default Process is created in this function.
+# Note that by default, the Default Process is created in this function.
def spawn_commands(self, cmdstr, count, retcode = 0, use_default=True):
- ret=[]
+ ret=[]
if use_default:
- count = int(count) - 1
- for cnt in range(0,count):
- ret.append(
- self.Processes.Process(
- name="cmdline-{num}".format(num=cnt),
- cmdstr = cmdstr,
+ count = int(count) - 1
+ for cnt in range(0,count):
+ ret.append(
+ self.Processes.Process(
+ name="cmdline-{num}".format(num=cnt),
+ cmdstr = cmdstr,
returncode = retcode
- )
+ )
)
if use_default:
self.Processes.Default.Command = cmdstr
@@ -50,6 +50,6 @@ def spawn_commands(self, cmdstr, count, retcode = 0,
use_default=True):
self.Processes.Default.StartBefore(
*ret
)
- return ret
+ return ret
ExtendTestRun(spawn_commands, name="SpawnCommands")
diff --git a/tests/gold_tests/autest-site/copy_config.test.ext
b/tests/gold_tests/autest-site/copy_config.test.ext
index 4dc7e25..72a9ba6 100755
--- a/tests/gold_tests/autest-site/copy_config.test.ext
+++ b/tests/gold_tests/autest-site/copy_config.test.ext
@@ -46,7 +46,7 @@ class CopyATSConfig(SetupItem):
# set up the config path for test manually
config_dir = os.path.join(ts_dir, "config")
-
+
host.WriteVerbose("CopyATSConfig", "Copying {0} to {1}".format(
self.file, config_dir))
self.CopyAs(self.file, config_dir, self.targetname)
diff --git a/tests/gold_tests/autest-site/microDNS.test.ext
b/tests/gold_tests/autest-site/microDNS.test.ext
index 513c3c0..e45a496 100644
--- a/tests/gold_tests/autest-site/microDNS.test.ext
+++ b/tests/gold_tests/autest-site/microDNS.test.ext
@@ -109,7 +109,7 @@ def MakeDNServer(obj, name, filename="dns_file.json",
port=False, ip='INADDR_LOO
p.Ready = When.PortOpenv6(port)
else:
p.Ready = When.PortOpenv4(port)
-
+
AddMethodToInstance(p, AddRecord)
AddMethodToInstance(p, addRecords)
diff --git a/tests/gold_tests/autest-site/min_cfg/readme.txt
b/tests/gold_tests/autest-site/min_cfg/readme.txt
index 15a2cf8..8060e96 100644
--- a/tests/gold_tests/autest-site/min_cfg/readme.txt
+++ b/tests/gold_tests/autest-site/min_cfg/readme.txt
@@ -1,3 +1,3 @@
-Contains the miniumn set of config file and setting to allow trafficserver to
start in a usable way.
-The goal is to remove the need for any of these files to exist.
+Contains the miniumn set of config file and setting to allow trafficserver to
start in a usable way.
+The goal is to remove the need for any of these files to exist.
Each of these files should provide an understanding of what we need to fix in
the code
diff --git a/tests/gold_tests/autest-site/min_cfg/storage.config
b/tests/gold_tests/autest-site/min_cfg/storage.config
index 4ebfe89..17b3946 100644
--- a/tests/gold_tests/autest-site/min_cfg/storage.config
+++ b/tests/gold_tests/autest-site/min_cfg/storage.config
@@ -1,4 +1,4 @@
-# seems good enought for doing something for playing with.
+# seems good enought for doing something for playing with.
# not good for production
# File must exist and must have this value in it
storage 256MB
diff --git a/tests/gold_tests/autest-site/setup.cli.ext
b/tests/gold_tests/autest-site/setup.cli.ext
index 25baedc..6dadf32 100644
--- a/tests/gold_tests/autest-site/setup.cli.ext
+++ b/tests/gold_tests/autest-site/setup.cli.ext
@@ -54,11 +54,11 @@ if ENV['ATS_BIN'] is not None:
Variables.update(out)
host.WriteVerbose(['ats'], "Traffic server feature data:\n",
pprint.pformat(out))
- # update version number
- out = subprocess.check_output([traffic_layout, "--version"])
- out = Version(out.decode("utf-8").split("-")[2].strip())
+ # update version number
+ out = subprocess.check_output([traffic_layout, "--version"])
+ out = Version(out.decode("utf-8").split("-")[2].strip())
Variables.trafficserver_version = out
- host.WriteVerbose(['ats'], "Traffic server version:", out)
+ host.WriteVerbose(['ats'], "Traffic server version:", out)
# this querys tsxs for build flags so we can build code for the tests and
get certain
# useful flags as which openssl to use when we don't use the system version
diff --git a/tests/gold_tests/autest-site/trafficserver_plugins.test.ext
b/tests/gold_tests/autest-site/trafficserver_plugins.test.ext
index 0efe6a3..c34fbff 100644
--- a/tests/gold_tests/autest-site/trafficserver_plugins.test.ext
+++ b/tests/gold_tests/autest-site/trafficserver_plugins.test.ext
@@ -33,7 +33,7 @@ def prepare_plugin(self, path, tsproc, plugin_args = ""):
tsxs = os.path.join(self.Variables.BINDIR,'tsxs')
# get the top level object ( ie Test) to add a condition
- # need to change this API in AuTest to be a better name as it now has
value
+ # need to change this API in AuTest to be a better name as it now has value
# to be called by user API - dragon512
self._RootRunable.SkipUnless(
Condition.HasProgram(tsxs, "tsxs needs be installed with trafficserver
package for this test to run")
diff --git a/tests/gold_tests/continuations/double.test.py
b/tests/gold_tests/continuations/double.test.py
index 0c070ec..0449294 100644
--- a/tests/gold_tests/continuations/double.test.py
+++ b/tests/gold_tests/continuations/double.test.py
@@ -53,7 +53,7 @@ numberOfRequests = 25
tr = Test.AddTestRun()
-# Create a bunch of curl commands to be executed in parallel. Default.Process
is set in SpawnCommands.
+# Create a bunch of curl commands to be executed in parallel. Default.Process
is set in SpawnCommands.
ps = tr.SpawnCommands(cmdstr=cmd, count=numberOfRequests)
tr.Processes.Default.Env = ts.Env
diff --git a/tests/gold_tests/continuations/double_h2.test.py
b/tests/gold_tests/continuations/double_h2.test.py
index 3db604b..61da07d 100644
--- a/tests/gold_tests/continuations/double_h2.test.py
+++ b/tests/gold_tests/continuations/double_h2.test.py
@@ -84,7 +84,7 @@ numberOfRequests = 25
tr = Test.AddTestRun()
-# Create a bunch of curl commands to be executed in parallel. Default.Process
is set in SpawnCommands.
+# Create a bunch of curl commands to be executed in parallel. Default.Process
is set in SpawnCommands.
ps = tr.SpawnCommands(cmdstr=cmd, count=numberOfRequests)
tr.Processes.Default.Env = ts.Env
diff --git a/tests/gold_tests/continuations/openclose.test.py
b/tests/gold_tests/continuations/openclose.test.py
index d8e2052..32d45bd 100644
--- a/tests/gold_tests/continuations/openclose.test.py
+++ b/tests/gold_tests/continuations/openclose.test.py
@@ -58,7 +58,7 @@ cmd = 'curl -vs
http://127.0.0.1:{0}'.format(ts.Variables.port)
numberOfRequests = 25
tr = Test.AddTestRun()
-# Create a bunch of curl commands to be executed in parallel. Default.Process
is set in SpawnCommands.
+# Create a bunch of curl commands to be executed in parallel. Default.Process
is set in SpawnCommands.
ps = tr.SpawnCommands(cmdstr=cmd, count=numberOfRequests)
tr.Processes.Default.Env = ts.Env
diff --git a/tests/gold_tests/continuations/openclose_h2.test.py
b/tests/gold_tests/continuations/openclose_h2.test.py
index 2679d2d..f3bba8f 100644
--- a/tests/gold_tests/continuations/openclose_h2.test.py
+++ b/tests/gold_tests/continuations/openclose_h2.test.py
@@ -81,14 +81,14 @@ cmd = 'curl --http2 -k -vs
https://127.0.0.1:{0}/'.format(ts.Variables.ssl_port)
numberOfRequests = 25
tr = Test.AddTestRun()
-# Create a bunch of curl commands to be executed in parallel. Default.Process
is set in SpawnCommands.
+# Create a bunch of curl commands to be executed in parallel. Default.Process
is set in SpawnCommands.
ps = tr.SpawnCommands(cmdstr=cmd, count=numberOfRequests)
tr.Processes.Default.Env = ts.Env
# Execution order is: ts/server, ps(curl cmds), Default Process.
tr.Processes.Default.StartBefore(
server, ready=When.PortOpen(server.Variables.Port))
-# Adds a delay once the ts port is ready. This is because we cannot test the
ts state.
+# Adds a delay once the ts port is ready. This is because we cannot test the
ts state.
tr.Processes.Default.StartBefore(ts, ready=10)
ts.StartAfter(*ps)
server.StartAfter(*ps)
diff --git a/tests/gold_tests/h2/http2.test.py
b/tests/gold_tests/h2/http2.test.py
index f98c6e2..cd9d9de 100644
--- a/tests/gold_tests/h2/http2.test.py
+++ b/tests/gold_tests/h2/http2.test.py
@@ -52,7 +52,7 @@ server.addResponse("sessionlog.json",
post_body =
"12345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"
server.addResponse("sessionlog.jason",
- {"headers": "POST /postchunked HTTP/1.1\r\nHost:
www.example.com\r\n\r\n",
+ {"headers": "POST /postchunked HTTP/1.1\r\nHost:
www.example.com\r\n\r\n",
"timestamp": "1469733493.993",
"body": post_body},
{"headers": "HTTP/1.1 200 OK\r\nServer:
microserver\r\nConnection: close\r\nContent-Length: 10\r\n\r\n", "timestamp":
"1469733493.993", "body": "0123456789"})
diff --git a/tests/gold_tests/headers/http408.gold
b/tests/gold_tests/headers/http408.gold
index 450d542..0793f3b 100644
--- a/tests/gold_tests/headers/http408.gold
+++ b/tests/gold_tests/headers/http408.gold
@@ -1,4 +1,4 @@
-HTTP/1.1 408``
+HTTP/1.1 408``
Date:``
Connection: close
Server:``
diff --git a/tests/gold_tests/headers/http408.test.py
b/tests/gold_tests/headers/http408.test.py
index b7b7137..6fe7dc1 100644
--- a/tests/gold_tests/headers/http408.test.py
+++ b/tests/gold_tests/headers/http408.test.py
@@ -1,5 +1,5 @@
'''
-Test the 408 reponse header.
+Test the 408 reponse header.
'''
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
diff --git a/tests/gold_tests/redirect/zone.json
b/tests/gold_tests/redirect/zone.json
index cfe67a0..0b8e4d6 100644
--- a/tests/gold_tests/redirect/zone.json
+++ b/tests/gold_tests/redirect/zone.json
@@ -1,8 +1,7 @@
-{
+{
"mappings": [
{"iwillredirect.com.": ["127.0.0.1"]}
],
-
+
"otherwise": ["127.0.0.1"]
}
-
\ No newline at end of file
diff --git a/tests/tools/lib/IPConstants.py b/tests/tools/lib/IPConstants.py
index d21b1b1..0531137 100644
--- a/tests/tools/lib/IPConstants.py
+++ b/tests/tools/lib/IPConstants.py
@@ -45,4 +45,4 @@ def getIP(addr):
addr = IPkw[addr]
return str(ipaddress.ip_address(addr))
-
+
diff --git a/tests/tools/microDNS/sample_zonefile.json
b/tests/tools/microDNS/sample_zonefile.json
index e4c8282..03a1284 100644
--- a/tests/tools/microDNS/sample_zonefile.json
+++ b/tests/tools/microDNS/sample_zonefile.json
@@ -1,4 +1,4 @@
-{
+{
"mappings": [
{"abc.xyz.com.": ["127.0.0.1","127.0.1.1"]},
{"yahoo.com.": ["128.0.0.1", "128.0.1.0"]},
diff --git a/tests/tools/microDNS/uDNS.py b/tests/tools/microDNS/uDNS.py
index 2ca7118..297cdcb 100644
--- a/tests/tools/microDNS/uDNS.py
+++ b/tests/tools/microDNS/uDNS.py
@@ -99,7 +99,7 @@ def build_domain_mappings(path):
domain_name = DomainName(d)
print("Domain name:", domain_name)
# we can test using python's built-in ipaddress module, but this
should suffice
- records[domain_name] = [A(x) if ":" not in x else AAAA(x) for x in
domain[domain_name]]
+ records[domain_name] = [A(x) if ":" not in x else AAAA(x) for x in
domain[domain_name]]
print(records[domain_name])
if 'otherwise' in zone_file:
@@ -113,7 +113,7 @@ def add_authoritative_records(reply, domain):
def dns_response(data):
- ''' dns_response takes in the raw bytes from the socket and does all the
logic behind what
+ ''' dns_response takes in the raw bytes from the socket and does all the
logic behind what
RRs get returned as the response '''
global default_records, records, TTL, round_robin
diff --git a/tests/tools/microServer/README.md
b/tests/tools/microServer/README.md
index a20ea85..a7681a3 100644
--- a/tests/tools/microServer/README.md
+++ b/tests/tools/microServer/README.md
@@ -1,7 +1,7 @@
uWServer
========
-uWServer is a mock HTTP server that takes predefined set of sessions for
serving response to HTTP requests. Each session includes one or more
transactions. A transaction is composed of an HTTP request and an HTTP
response.
+uWServer is a mock HTTP server that takes predefined set of sessions for
serving response to HTTP requests. Each session includes one or more
transactions. A transaction is composed of an HTTP request and an HTTP response.
uWServer accepts session data in JSON fromat only.
diff --git a/tests/tools/sessionvalidation/badsession.py
b/tests/tools/sessionvalidation/badsession.py
index 69b3616..7f55de2 100644
--- a/tests/tools/sessionvalidation/badsession.py
+++ b/tests/tools/sessionvalidation/badsession.py
@@ -18,10 +18,10 @@
class BadSession(object):
- '''
+ '''
Session encapsulates a single BAD user session. Bad meaning that for some
reason the session is invalid.
- _filename is the filename of the bad JSON session
+ _filename is the filename of the bad JSON session
_reason is a string with some kind of explanation on why the session was
bad
'''
diff --git a/tests/tools/sessionvalidation/sessionvalidation.py
b/tests/tools/sessionvalidation/sessionvalidation.py
index d38dcfb..7ff97e6 100644
--- a/tests/tools/sessionvalidation/sessionvalidation.py
+++ b/tests/tools/sessionvalidation/sessionvalidation.py
@@ -48,8 +48,8 @@ class SessionValidator(object):
'''
def parse(self):
- '''
- Constructs Session objects from JSON files on disk and stores objects
into _sessions
+ '''
+ Constructs Session objects from JSON files on disk and stores objects
into _sessions
All sessions missing required fields (ie. a session timestamp, a
response for every request, etc) are
dropped and the filename is stored inside _bad_sessions
diff --git a/tests/tools/traffic-replay/NonSSL.py
b/tests/tools/traffic-replay/NonSSL.py
index 02f2194..3d6b85b 100644
--- a/tests/tools/traffic-replay/NonSSL.py
+++ b/tests/tools/traffic-replay/NonSSL.py
@@ -155,8 +155,8 @@ def txn_replay(session_filename, txn, proxy, result_queue,
request_session):
def session_replay(input, proxy, result_queue):
global bSTOP
- ''' Replay all transactions in session
-
+ ''' Replay all transactions in session
+
This entire session will be replayed in one requests.Session (so one
socket / TCP connection)'''
# if timing_control:
# time.sleep(float(session._timestamp)) # allow other threads to run
diff --git a/tests/tools/traffic-replay/RandomReplay.py
b/tests/tools/traffic-replay/RandomReplay.py
index cf241d7..f6bf869 100644
--- a/tests/tools/traffic-replay/RandomReplay.py
+++ b/tests/tools/traffic-replay/RandomReplay.py
@@ -41,8 +41,8 @@ bSTOP = False
def session_replay(input, proxy, result_queue):
global bSTOP
- ''' Replay all transactions in session
-
+ ''' Replay all transactions in session
+
This entire session will be replayed in one requests.Session (so one
socket / TCP connection)'''
# if timing_control:
# time.sleep(float(session._timestamp)) # allow other threads to run
diff --git a/tests/tools/traffic-replay/SSLReplay.py
b/tests/tools/traffic-replay/SSLReplay.py
index bf49a60..c75b6a5 100644
--- a/tests/tools/traffic-replay/SSLReplay.py
+++ b/tests/tools/traffic-replay/SSLReplay.py
@@ -127,7 +127,7 @@ def txn_replay(session_filename, txn, proxy, result_queue,
request_session):
nBytes = int(txn_req_headers_dict['Content-Length'])
body = createDummyBodywithLength(nBytes)
#print("request session is",id(request_session))
-
+
# NOTE: request_session here is actually python's HTTPSConnection,
which is different from that in NonSSL, which uses the requests library -_-
if method == 'GET':
request_session.request('GET', extractHeader.extract_GET_path(
@@ -196,7 +196,7 @@ def client_replay(input, proxy, result_queue, nThread):
def session_replay(input, proxy, result_queue):
- ''' Replay all transactions in session
+ ''' Replay all transactions in session
This entire session will be replayed in one requests.Session (so one
socket / TCP connection)'''
# if timing_control:
diff --git a/tests/tools/traffic-replay/h2Replay.py
b/tests/tools/traffic-replay/h2Replay.py
index ff990c2..2026c74 100644
--- a/tests/tools/traffic-replay/h2Replay.py
+++ b/tests/tools/traffic-replay/h2Replay.py
@@ -262,8 +262,8 @@ def txn_replay(session_filename, txn, proxy, result_queue,
h2conn, request_IDs):
def session_replay(input, proxy, result_queue):
global bSTOP
- ''' Replay all transactions in session
-
+ ''' Replay all transactions in session
+
This entire session will be replayed in one requests.Session (so one
socket / TCP connection)'''
# if timing_control:
# time.sleep(float(session._timestamp)) # allow other threads to run