/*++ /* NAME /* tlsproxy_clnt 3 /* SUMMARY /* tlsproxy(8) client support /* SYNOPSIS /* #include <tlsproxy_clnt.h> /* /* VSTREAM *tls_proxy_open(service, flags, peer_stream, peer_addr, /* peer_port, handshake_timeout, session_timeout, /* serverid, tls_params, init_props, start_props) /* const char *service; /* int flags; /* VSTREAM *peer_stream; /* const char *peer_addr; /* const char *peer_port; /* int handshake_timeout; /* int session_timeout; /* const char *serverid; /* void *tls_params; /* void *init_props; /* void *start_props; /* /* TLS_SESS_STATE *tls_proxy_context_receive(proxy_stream) /* VSTREAM *proxy_stream; /* AUXILIARY FUNCTIONS /* VSTREAM *tls_proxy_legacy_open(service, flags, peer_stream, /* peer_addr, peer_port, /* timeout, serverid) /* const char *service; /* int flags; /* VSTREAM *peer_stream; /* const char *peer_addr; /* const char *peer_port; /* int timeout; /* const char *serverid; /* DESCRIPTION /* tls_proxy_open() prepares for inserting the tlsproxy(8) /* daemon between the current process and a remote peer (the /* actual insert operation is described in the next paragraph). /* The result value is a null pointer on failure. The peer_stream /* is not closed. The resulting proxy stream is single-buffered. /* /* After this, it is a good idea to use the CA_VSTREAM_CTL_SWAP_FD /* request to swap the file descriptors between the plaintext /* peer_stream and the proxy stream from tls_proxy_open(). /* This avoids the loss of application-configurable VSTREAM /* attributes on the plaintext peer_stream (such as longjmp /* buffer, timeout, etc.). Once the file descriptors are /* swapped, the proxy stream should be closed. /* /* tls_proxy_context_receive() receives the TLS context object /* for the named proxy stream. This function must be called /* only if the TLS_PROXY_SEND_CONTEXT flag was specified in /* the tls_proxy_open() call. Note that this TLS context object /* is not compatible with tls_session_free(). It must be given /* to tls_proxy_context_free() instead. /* /* After this, the proxy_stream is ready for plain-text I/O. /* /* tls_proxy_legacy_open() is a backwards-compatibility feature /* that provides a historical interface. /* /* Arguments: /* .IP service /* The (base) name of the tlsproxy service. /* .IP flags /* Bit-wise OR of: /* .RS /* .IP TLS_PROXY_FLAG_ROLE_SERVER /* Request the TLS server proxy role. /* .IP TLS_PROXY_FLAG_ROLE_CLIENT /* Request the TLS client proxy role. /* .IP TLS_PROXY_FLAG_SEND_CONTEXT /* Send the TLS context object. /* .RE /* .IP peer_stream /* Stream that connects the current process to a remote peer. /* .IP peer_addr /* Printable IP address of the remote peer_stream endpoint. /* .IP peer_port /* Printable TCP port of the remote peer_stream endpoint. /* .IP handshake_timeout /* Time limit that the tlsproxy(8) daemon should use during /* the TLS handshake. /* .IP session_timeout /* Time limit that the tlsproxy(8) daemon should use after the /* TLS handshake. /* .IP serverid /* Unique service identifier. /* .IP tls_params /* Pointer to TLS_CLIENT_PARAMS or TLS_SERVER_PARAMS. /* .IP init_props /* Pointer to TLS_CLIENT_INIT_PROPS or TLS_SERVER_INIT_PROPS. /* .IP start_props /* Pointer to TLS_CLIENT_START_PROPS or TLS_SERVER_START_PROPS. /* .IP proxy_stream /* Stream from tls_proxy_open(). /* .IP tls_context /* TLS session object from tls_proxy_context_receive(). /* LICENSE /* .ad /* .fi /* The Secure Mailer license must be distributed with this software. /* AUTHOR(S) /* Wietse Venema /* IBM T.J. Watson Research /* P.O. Box 704 /* Yorktown Heights, NY 10598, USA /* /* Wietse Venema /* Google, Inc. /* 111 8th Avenue /* New York, NY 10011, USA
/*--*/
¤ Diese beiden folgenden Angebotsgruppen bietet das Unternehmen0.1Angebot
(Wie Sie bei der Firma Beratungs- und Dienstleistungen beauftragen können 2026-08-08)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.