14#define STUB_API "security/libsecurity.la"
25 AsyncJob(
"Security::BlindPeerConnector"),
26 Security::PeerConnector(aServerConn, aCallback, alp, 0)
30FuturePeerContext *BlindPeerConnector::peerContext() const
STUB_RETVAL(
nullptr)
34#include "security/EncryptorAnswer.h"
38#include "security/Certificate.h"
44#include "security/Handshake.h"
48#include "security/Io.h"
56#include "security/KeyData.h"
78#include "security/NegotiationHistory.h"
82const
char *
Security::NegotiationHistory::cipherName() const
STUB
83const
char *
Security::NegotiationHistory::printTlsVersion(
AnyP::ProtocolVersion const &) const
STUB
85#include "security/PeerConnector.h"
91PeerConnector::~PeerConnector()
STUB
92void PeerConnector::start()
STUB
93bool PeerConnector::doneAll() const
STUB_RETVAL(true)
94void PeerConnector::swanSong()
STUB
95const
char *PeerConnector::status() const
STUB_RETVAL("")
100void PeerConnector::negotiate()
STUB
101bool PeerConnector::sslFinalized()
STUB_RETVAL(false)
103void PeerConnector::noteWantRead()
STUB
104void PeerConnector::noteWantWrite()
STUB
107void PeerConnector::sendSuccess()
STUB
108void PeerConnector::callBack()
STUB
109void PeerConnector::disconnect()
STUB
110void PeerConnector::countFailingConnection()
STUB
111void PeerConnector::recordNegotiationDetails()
STUB
112EncryptorAnswer &PeerConnector::answer()
STUB_RETREF(EncryptorAnswer)
115#include "security/PeerOptions.h"
118Security::PeerOptions::PeerOptions() {
126void
Security::PeerOptions::updateTlsVersionLimits()
STUB
132void Security::PeerOptions::dumpCfg(
std::ostream &,
char const*) const
STUB
136#include "security/ServerOptions.h"
144void Security::ServerOptions::createSigningContexts(const
AnyP::PortCfg &)
STUB
151#include "security/Session.h"
#define RefCountable
The locking interface for use on Reference-Counted classes.
void parse_securePeerOptions(Security::PeerOptions *opt)
#define STUB
macro to stub a void function.
#define CBDATA_NAMESPACED_CLASS_INIT(namespace, type)
an interface for those capable of configuring an ACLFilledChecklist object
a smart AsyncCall pointer for delivery of future results
interface for supplying additional information about a transaction failure
BlindPeerConnector(HttpRequestPointer &aRequest, const Comm::ConnectionPointer &aServerConn, const AsyncCallback< EncryptorAnswer > &aCallback, const AccessLogEntryPointer &alp, time_t timeout=0)
~EncryptorAnswer()
deletes error if it is still set
SBuf verbose(const HttpRequestPointer &) const override
ErrorDetail(ErrorCode err_no, const CertPointer &peer, const CertPointer &broken, const char *aReason=nullptr)
void setPeerCertificate(const CertPointer &)
HandshakeParser(MessageSource)
bool parseHello(const SBuf &data)
a summary a TLS I/O operation outcome
void printWithExtras(std::ostream &) const
void printGist(std::ostream &) const
reports brief summary (on one line) suitable for low-level debugging
void loadFromFiles(const AnyP::PortCfg &, const char *portType)
load the contents of certFile and privateKeyFile into memory cert, pkey and chain
void maybeLog(const Connection &, const Acl::ChecklistFiller &)
(slowly checks logging preconditions and) logs if possible
PeerConnector(const Comm::ConnectionPointer &aServerConn, const AsyncCallback< EncryptorAnswer > &, const AccessLogEntryPointer &alp, const time_t timeout=0)
TLS squid.conf settings for a remote server peer.
Security::ContextPointer createClientContext(bool setOptions)
generate a security client-context from these configured options
virtual void parse(const char *)
parse a TLS squid.conf option
TLS squid.conf settings for a listening port.
Security::ContextPointer createBlankContext() const override
generate an unset security context object
void parse(const char *) override
parse a TLS squid.conf option
void dumpCfg(std::ostream &, const char *pfx) const override
output squid.conf syntax with 'pfx' prefix on parameters for the stored settings
ServerOptions & operator=(const ServerOptions &)
Abstraction layer for TCP, UDP, TLS, UDS and filedescriptor sockets.
Network/connection security abstraction layer.
void SetSessionCacheCallbacks(Security::ContextPointer &)
Setup the given TLS context with callbacks used to manage the session cache.
SBuf IssuerName(Certificate &)
The Issuer field of the given certificate (if found) or an empty SBuf.
std::shared_ptr< SSL_CTX > ContextPointer
bool CreateClientSession(FuturePeerContext &, const Comm::ConnectionPointer &, const char *squidCtx)
bool CreateServerSession(const Security::ContextPointer &, const Comm::ConnectionPointer &, Security::PeerOptions &, const char *squidCtx)
IoResult Accept(Comm::Connection &transport)
accept a TLS connection over the specified to-Squid transport connection
int ErrorCode
Squid-defined error code (<0), an error code returned by X.509 API, or zero.
const char * ErrorNameFromCode(ErrorCode err, bool prefixRawCode=false)
Security::SessionPointer NewSessionObject(const Security::ContextPointer &)
void SetSessionResumeData(const Security::SessionPointer &, const Security::SessionStatePointer &)
std::shared_ptr< SSL > SessionPointer
IoResult Connect(Comm::Connection &transport)
establish a TLS connection over the specified from-Squid transport connection
unsigned long LibErrorCode
TLS library-reported non-validation error.
bool SessionIsResumed(const Security::SessionPointer &)
whether the session is a resumed one
void SessionSendGoodbye(const Security::SessionPointer &)
send the shutdown/bye notice for an active TLS session.
SessionPointer::element_type * ConnectionPointer
Security::LockingPointer< X509, X509_free_cpp, HardFun< int, X509 *, X509_up_ref > > CertPointer
ErrorCode ErrorCodeFromName(const char *name)
SBuf SubjectName(Certificate &)
The SubjectName field of the given certificate (if found) or an empty SBuf.
bool IssuedBy(Certificate &cert, Certificate &issuer)
std::unique_ptr< SSL_SESSION, HardFun< void, SSL_SESSION *, &SSL_SESSION_free > > SessionStatePointer
void MaybeGetSessionResumeData(const Security::SessionPointer &, Security::SessionStatePointer &data)
PeerOptions & ProxyOutgoingConfig()
configuration options for DIRECT server access
std::ostream & operator<<(std::ostream &, const EncryptorAnswer &)
void ForgetErrors()
clear any errors that a TLS library has accumulated in its global storage