Hello,
We are introducing APIs in the traffic server for the plugins to allow early
intervention exposing NetAccept objects.Following are the list of APIs
introduced:-
TSAcceptor**********
Traffic Server API's related to Accept objects
Synopsis========
`#include <ts/ts.h>`
.. function:: TSAcceptor TSAcceptorGet(TSVConn sslp).. function:: TSAcceptor
TSAcceptorGetbyID(int id).. function:: int TSAcceptorIDGet(TSAcceptor
acceptor).. function:: int TSAcceptorCount()
Description===========
Traffic Server allows plugins to get information from an accept object that
created a certain TSVConn object using the above mentioned APIs.An acceptor
thread listens for incoming connections and creates the virtual connection
(:type:`TSVConn`) for each accepted connection.
:func:`TSAcceptorGet` returns :type:`TSAcceptor` object that created
:arg:`sslp`.
:func:`TSAcceptorGetbyID` returns the :type:`TSAcceptor` object identified by
:arg:`id`. :type:`TSAcceptor` represents the acceptor object created by the
coretraffic server.
:func:`TSAcceptorIDGet` returns the Integer number that identifies
:arg:`acceptor`. All the cloned :type:`TSAcceptor` objects will have the same
identifying number.
:func:`TSAcceptorCount` returns the number of :type:`TSAcceptor` objects
created by the server.
TSProtoSet******************
Synopsis========
`#include <ts/ts.h>`
.. function:: TSNextProtocolSet TSGetcloneProtoSet(TSAcceptor tna).. function::
TSNextProtocolSet TSUnregisterProtocol(TSNextProtocolSet protoset, const char*
protocol).. function:: void TSRegisterProtocolSet(TSVConn sslp,
TSNextProtocolSet ps)
Description===========
:func:`TSGetcloneProtoSet` makes a copy of the ProtocolSet to be advertised by
the ssl connection associated with :arg:`tna`. This functionreturns
:type:`TSNextProtocolSet` object which points to a clone of the protocolset
owned by :arg:`tna`. This type represents the protocolsetcontaining the
protocols which are advertised by an ssl connection during ssl handshake. Each
:type:`TSAcceptor` object is associated with a protocolset.
:func:`TSUnregisterProtocol` unregisters :arg:`protocol` from :arg:`protoset`
and returns the protocol set.The returned protocol set needs to be registered
with the :type:`TSVConn` using :func:`TSRegisterProtocolSet` that will
advertise the protocols.
:func:`TSRegisterProtocolSet` registers :arg:`ps` with :arg:`sslp`. This
function clears the protocolset string created by the already
registeredprotocolset before registering the new protocolset. On Success, the
ssl object associated with :arg:`sslp` will then advertise the protocols
contained in :arg:`ps`.
Syeda Persia Aziz
Software DeveloperYahoo! Inc.Champaign, Illinois