TSNetAcceptNamedProtocol

Listen on all SSL ports for connections for the specified protocol name.

Synopsis

#include <ts/ts.h>
TSReturnCode TSNetAcceptNamedProtocol(TSCont contp, const char *protocol)

Description

TSNetAcceptNamedProtocol registers the specified protocol for all statically configured TLS ports. When a client using the TLS Next Protocol Negotiation extension negotiates the requested protocol, Traffic Server will route the request to the given handler contp.

Note

Be aware that the protocol is not registered on ports opened by other plugins.

The event and data provided to the handler are the same as for TSNetAccept(). If a connection is successfully accepted, the event code will be TS_EVENT_NET_ACCEPT and the event data will be a valid TSVConn bound to the accepted connection.

Important

Neither contp nor protocol are copied. They must remain valid for the lifetime of the plugin.

TSNetAcceptNamedProtocol fails if the requested protocol cannot be registered on all of the configured TLS ports. If it fails, the protocol will not be registered on any ports. There is no partial failure.