doc: convert TSTrafficServerVersionGet(3) to sphinx
Project: http://git-wip-us.apache.org/repos/asf/trafficserver/repo Commit: http://git-wip-us.apache.org/repos/asf/trafficserver/commit/e0a2dd5d Tree: http://git-wip-us.apache.org/repos/asf/trafficserver/tree/e0a2dd5d Diff: http://git-wip-us.apache.org/repos/asf/trafficserver/diff/e0a2dd5d Branch: refs/heads/3.3.x Commit: e0a2dd5d630557390fd3216a1f5c8080b0dbcb57 Parents: fa4be92 Author: James Peach <[email protected]> Authored: Thu Aug 1 11:38:15 2013 -0700 Committer: James Peach <[email protected]> Committed: Thu Aug 1 11:38:15 2013 -0700 ---------------------------------------------------------------------- doc/conf.py | 1 + .../api/TSTrafficServerVersionGet.en.rst | 98 ++++++++++++++++++++ 2 files changed, 99 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/trafficserver/blob/e0a2dd5d/doc/conf.py ---------------------------------------------------------------------- diff --git a/doc/conf.py b/doc/conf.py index e2067b0..d7c9f2b 100644 --- a/doc/conf.py +++ b/doc/conf.py @@ -223,6 +223,7 @@ man_pages = [ ('reference/api/TSmalloc.en', 'TSmalloc', u'Traffic Server memory allocation API', None, u'3ts'), ('reference/api/TSPluginInit.en', 'TSPluginInit', u'Traffic Server plugin loading and registration', None, u'3ts'), ('reference/api/TSRemap.en', 'TSRemap', u'Traffic Server remap plugin entry points ', None, u'3ts'), + ('reference/api/TSTrafficServerVersionGet.en', 'TSTrafficServerVersionGet', u'return Traffic Server version information', None, u'3ts'), ('reference/commands/traffic_cop.en', 'traffic_cop', u'Traffic Server watchdog', None, '8'), ('reference/commands/traffic_line.en', 'traffic_line', u'Traffic Server command line', None, '8'), http://git-wip-us.apache.org/repos/asf/trafficserver/blob/e0a2dd5d/doc/reference/api/TSTrafficServerVersionGet.en.rst ---------------------------------------------------------------------- diff --git a/doc/reference/api/TSTrafficServerVersionGet.en.rst b/doc/reference/api/TSTrafficServerVersionGet.en.rst new file mode 100644 index 0000000..e450743 --- /dev/null +++ b/doc/reference/api/TSTrafficServerVersionGet.en.rst @@ -0,0 +1,98 @@ +.. 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. + +.. default-domain:: c + +========================= +TSTrafficServerVersionGet +========================= + +Synopsis +======== + +`#include <ts/ts.h>` + +.. function:: const char * TSTrafficServerVersionGet(void) +.. function:: int TSTrafficServerVersionGetMajor(void) +.. function:: int TSTrafficServerVersionGetMinor(void) +.. function:: int TSTrafficServerVersionGetPatch(void) + +Description +=========== + +:func:`TSTrafficServerVersionGet` returns a pointer to a string of characters +that indicates the Traffic Server release version. This string must not +be modified. + +The other APIs return an integer version number. + +Example +======= + +:: + + #include <stdio.h> + #include <ts/ts.h> + + int + check_ts_version() + { + const char *ts_version = TSTrafficServerVersionGet(); + int result = 0; + + if (ts_version) { + int major_ts_version = 0; + int minor_ts_version = 0; + int patch_ts_version = 0; + + if (sscanf(ts_version, "%d.%d.%d", &major_ts_version, + &minor_ts_version, &patch_ts_version) != 3) { + return 0; + } + + /* We need at least Traffic Server 3.0 */ + if (major_ts_version >= 3) { + result = 1; + } + } + + return result; + } + + void + TSPluginInit (int argc, const char *argv[]) + { + TSPluginRegistrationInfo info; + info.plugin_name = "hello-world"; + info.vendor_name = "MyCompany"; + info.support_email = "[email protected]"; + + if (TSPluginRegister(TS_SDK_VERSION_3_0 , &info) != TS_SUCCESS) { + TSError("Plugin registration failed. 0); + } + + if (!check_ts_version()) { + TSError("Plugin requires Traffic Server 3.0 or later0); + return; + } + + TSDebug("debug-hello", "Hello World!0); + } + +See also +======== + +:manpage:`TSAPI(3ts)`
