support.h File Reference
#include "base/CbDataList.h"
#include "comm/forward.h"
#include "compat/openssl.h"
#include "sbuf/SBuf.h"
#include "security/Session.h"
#include "ssl/gadgets.h"
#include <queue>
#include <map>
Include dependency graph for support.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  Ssl::VerifyCallbackParameters
 

Namespaces

namespace  AnyP
 
namespace  Ipc
 
namespace  Ssl
 

Macros

#define SQUID_CERT_VALIDATION_ITERATION_MAX   16384
 

Typedefs

typedef RefCount< CertValidationResponse > Ssl::CertValidationResponsePointer
 
typedef char const * Ssl::GETX509ATTRIBUTE(X509 *, const char *)
 
typedef SBuf Ssl::GETX509PEM(X509 *)
 
typedef std::multimap< SBuf, X509 * > Ssl::CertsIndexedList
 certificates indexed by issuer name More...
 

Enumerations

enum  Ssl::BumpMode {
  Ssl::bumpNone = 0 ,
  Ssl::bumpClientFirst ,
  Ssl::bumpServerFirst ,
  Ssl::bumpPeek ,
  Ssl::bumpStare ,
  Ssl::bumpBump ,
  Ssl::bumpSplice ,
  Ssl::bumpTerminate ,
  Ssl::bumpEnd
}
 

Functions

int Ssl::AskPasswordCb (char *buf, int size, int rwflag, void *userdata)
 
void Ssl::Initialize ()
 
bool Ssl::InitServerContext (Security::ContextPointer &, AnyP::PortCfg &)
 initialize a TLS server context with OpenSSL specific settings More...
 
bool Ssl::InitClientContext (Security::ContextPointer &, Security::PeerOptions &, Security::ParsedPortFlags)
 initialize a TLS client context with OpenSSL specific settings More...
 
void Ssl::ConfigurePeerVerification (Security::ContextPointer &, const Security::ParsedPortFlags)
 set the certificate verify callback for a context More...
 
void Ssl::DisablePeerVerification (Security::ContextPointer &)
 
void Ssl::MaybeSetupRsaCallback (Security::ContextPointer &)
 if required, setup callback for generating ephemeral RSA keys More...
 
const char * sslGetUserEmail (SSL *ssl)
 
const char * sslGetUserAttribute (SSL *ssl, const char *attribute_name)
 
const char * sslGetCAAttribute (SSL *ssl, const char *attribute_name)
 
SBuf sslGetUserCertificatePEM (SSL *ssl)
 
SBuf sslGetUserCertificateChainPEM (SSL *ssl)
 
const char * Ssl::bumpMode (int bm)
 
bool Ssl::loadCerts (const char *certsFile, Ssl::CertsIndexedList &list)
 
bool Ssl::loadSquidUntrusted (const char *path)
 
void Ssl::unloadSquidUntrusted ()
 
void Ssl::SSL_add_untrusted_cert (SSL *ssl, X509 *cert)
 
const char * Ssl::findIssuerUri (X509 *cert)
 finds certificate issuer URI in the Authority Info Access extension More...
 
Security::CertPointer Ssl::findIssuerCertificate (X509 *cert, const STACK_OF(X509) *serverCertificates, const Security::ContextPointer &context)
 
bool Ssl::missingChainCertificatesUrls (std::queue< SBuf > &URIs, const STACK_OF(X509) &serverCertificates, const Security::ContextPointer &context)
 
bool Ssl::generateUntrustedCert (Security::CertPointer &untrustedCert, Security::PrivateKeyPointer &untrustedPkey, Security::CertPointer const &cert, Security::PrivateKeyPointer const &pkey)
 
Security::ContextPointer Ssl::GenerateSslContext (CertificateProperties const &, Security::ServerOptions &, bool trusted)
 
bool Ssl::verifySslCertificate (const Security::ContextPointer &, CertificateProperties const &)
 
Security::ContextPointer Ssl::GenerateSslContextUsingPkeyAndCertFromMemory (const char *data, Security::ServerOptions &, bool trusted)
 
Security::ContextPointer Ssl::createSSLContext (Security::CertPointer &x509, Security::PrivateKeyPointer &pkey, Security::ServerOptions &)
 Create SSL context and apply ssl certificate and private key to it. More...
 
void Ssl::chainCertificatesToSSLContext (Security::ContextPointer &, Security::ServerOptions &)
 
void Ssl::configureUnconfiguredSslContext (Security::ContextPointer &, Ssl::CertSignAlgorithm signAlgorithm, AnyP::PortCfg &)
 
bool Ssl::configureSSL (SSL *ssl, CertificateProperties const &properties, AnyP::PortCfg &port)
 
bool Ssl::configureSSLUsingPkeyAndCertFromMemory (SSL *ssl, const char *data, AnyP::PortCfg &port)
 
void Ssl::useSquidUntrusted (SSL_CTX *sslContext)
 
int Ssl::matchX509CommonNames (X509 *peer_cert, void *check_data, int(*check_func)(void *check_data, ASN1_STRING *cn_data))
 
bool Ssl::checkX509ServerValidity (X509 *cert, const char *server)
 
int Ssl::asn1timeToString (ASN1_TIME *tm, char *buf, int len)
 
void Ssl::setClientSNI (SSL *ssl, const char *fqdn)
 
void Ssl::InRamCertificateDbKey (const Ssl::CertificateProperties &certProperties, SBuf &key)
 
BIO * Ssl::BIO_new_SBuf (SBuf *buf)
 
bool Ssl::VerifyConnCertificates (Security::Connection &, const Ssl::X509_STACK_Pointer &extraCerts)
 

Variables

GETX509ATTRIBUTE Ssl::GetX509UserAttribute
 
GETX509ATTRIBUTE Ssl::GetX509CAAttribute
 
GETX509PEM Ssl::GetX509PEM
 
GETX509ATTRIBUTE Ssl::GetX509Fingerprint
 
const EVP_MD * Ssl::DefaultSignHash = nullptr
 
std::vector< const char * > Ssl::BumpModeStr
 

Macro Definition Documentation

◆ SQUID_CERT_VALIDATION_ITERATION_MAX

#define SQUID_CERT_VALIDATION_ITERATION_MAX   16384

Definition at line 45 of file support.h.

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors