19#define STUB_API "ssl/libsslsquid.la"
27 ssl_crt_validator(nullptr)
29 ssl_crt_validator_Children.concurrency = 1;
35#include "ssl/context_storage.h"
44#include "ssl/ErrorDetail.h"
#define STUB
macro to stub a void function.
#define STUB_RETSTATREF(x)
either a domain name (as defined in DNS RFC 1034) or an IP address
TLS squid.conf settings for a listening port.
static Pointer Create(const Mgr::Command::Pointer &cmd)
void dump(StoreEntry *sentry) override
void reconfigureStart()
When reconfigring should be called this method.
void addLocalStorage(Ip::Address const &address, size_t size_of_store)
Create new SSL context storage for the local listening address/port.
LocalContextStorage * getLocalStorage(Ip::Address const &address)
Return the local storage for the given listening address/port.
void fatal(const char *message)
Security::ContextPointer GenerateSslContext(CertificateProperties const &, Security::ServerOptions &, bool trusted)
std::vector< const char * > BumpModeStr
SBuf sslGetUserCertificatePEM(SSL *ssl)
bool generateUntrustedCert(Security::CertPointer &untrustedCert, Security::PrivateKeyPointer &untrustedPkey, Security::CertPointer const &cert, Security::PrivateKeyPointer const &pkey)
const char * sslGetUserAttribute(SSL *ssl, const char *attribute_name)
bool verifySslCertificate(const Security::ContextPointer &, CertificateProperties const &)
int asn1timeToString(ASN1_TIME *tm, char *buf, int len)
const char * sslGetCAAttribute(SSL *ssl, const char *attribute_name)
Security::ContextPointer GenerateSslContextUsingPkeyAndCertFromMemory(const char *data, Security::ServerOptions &, bool trusted)
SBuf sslGetUserCertificateChainPEM(SSL *ssl)
void setClientSNI(SSL *ssl, const char *fqdn)
const char * sslGetUserEmail(SSL *ssl)
Network/connection security abstraction layer.
std::shared_ptr< SSL_CTX > ContextPointer
std::unordered_set< Security::ErrorCode > Errors
bool HasMatchingSubjectName(X509 &, const GeneralNameMatcher &)
bool HasSubjectName(X509 &, const AnyP::Host &)
whether at least one common or alternate subject name matches the given one
void DisablePeerVerification(Security::ContextPointer &)
bool InitClientContext(Security::ContextPointer &, Security::PeerOptions &, Security::ParsedPortFlags)
initialize a TLS client context with OpenSSL specific settings
bool ParseErrorString(const char *name, Security::Errors &)
ClpMap< SBuf, Security::ContextPointer, MemoryUsedByContext > LocalContextStorage
int AskPasswordCb(char *buf, int size, int rwflag, void *userdata)
void MaybeSetupRsaCallback(Security::ContextPointer &)
if required, setup callback for generating ephemeral RSA keys
void ConfigurePeerVerification(Security::ContextPointer &, const Security::ParsedPortFlags)
set the certificate verify callback for a context
bool InitServerContext(Security::ContextPointer &, AnyP::PortCfg &)
initialize a TLS server context with OpenSSL specific settings