forward.h File Reference
#include "base/CbDataList.h"
#include "base/forward.h"
#include "base/ToCpp.h"
#include "security/LockingPointer.h"
#include <list>
#include <limits>
#include <memory>
#include "compat/openssl.h"
#include <unordered_set>
Include dependency graph for forward.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  Security
 Network/connection security abstraction layer.
 
namespace  Security::Io
 

Macros

#define sk_dtor_wrapper(sk_object, argument_type, freefunction)
 
#define SSL_FLAG_NO_DEFAULT_CA   (1<<0)
 
#define SSL_FLAG_DELAYED_AUTH   (1<<1)
 
#define SSL_FLAG_DONT_VERIFY_PEER   (1<<2)
 
#define SSL_FLAG_DONT_VERIFY_DOMAIN   (1<<3)
 
#define SSL_FLAG_NO_SESSION_REUSE   (1<<4)
 
#define SSL_FLAG_VERIFY_CRL   (1<<5)
 
#define SSL_FLAG_VERIFY_CRL_ALL   (1<<6)
 
#define SSL_FLAG_CONDITIONAL_AUTH   (1<<7)
 

Typedefs

typedef CbDataList< Security::CertErrorSecurity::CertErrors
 Holds a list of X.509 certificate errors. More...
 
typedef X509 Security::Certificate
 
typedef Security::LockingPointer< X509, X509_free_cpp, HardFun< int, X509 *, X509_up_ref > > Security::CertPointer
 
typedef Security::LockingPointer< X509_CRL, X509_CRL_free_cpp, HardFun< int, X509_CRL *, X509_CRL_up_ref > > Security::CrlPointer
 
typedef std::list< Security::CertPointerSecurity::CertList
 
typedef std::list< Security::CrlPointerSecurity::CertRevokeList
 
typedef Security::LockingPointer< DH, DH_free_cpp, HardFun< int, DH *, DH_up_ref > > Security::DhePointer
 
typedef int Security::ErrorCode
 Squid-defined error code (<0), an error code returned by X.509 API, or zero. More...
 
typedef unsigned long Security::LibErrorCode
 TLS library-reported non-validation error. More...
 
typedef std::unordered_set< Security::ErrorCodeSecurity::Errors
 
using Security::ParsedOptions = uint64_t
 
typedef long Security::ParsedPortFlags
 
typedef RefCount< ErrorDetailSecurity::ErrorDetailPointer
 

Enumerations

enum  Security::Io::Type {
  Security::Io::BIO_TO_CLIENT = 6000 ,
  Security::Io::BIO_TO_SERVER
}
 
enum  {
  SQUID_TLS_ERR_OFFSET = std::numeric_limits<int>::min() ,
  SQUID_TLS_ERR_ACCEPT ,
  SQUID_TLS_ERR_CONNECT ,
  SQUID_X509_V_ERR_CERT_CHANGE ,
  SQUID_X509_V_ERR_DOMAIN_MISMATCH ,
  SQUID_X509_V_ERR_INFINITE_VALIDATION ,
  SQUID_TLS_ERR_END
}
 

Functions

 Security::CtoCpp1 (X509_free, X509 *)
 
 Security::CtoCpp1 (X509_CRL_free, X509_CRL *)
 
 Security::CtoCpp1 (EVP_PKEY_free, EVP_PKEY *) using PrivateKeyPointer
 
 Security::CtoCpp1 (DH_free, DH *)
 
const char * Security::ErrorString (const LibErrorCode code)
 converts numeric LibErrorCode into a human-friendlier string More...
 
std::ostream & Security::operator<< (std::ostream &, const KeyLog &)
 
void Security::OpenLogs ()
 opens logs enabled in the current configuration More...
 
void Security::RotateLogs ()
 rotates logs opened by OpenLogs() More...
 
void Security::CloseLogs ()
 closes logs opened by OpenLogs() More...
 

Macro Definition Documentation

◆ sk_dtor_wrapper

#define sk_dtor_wrapper (   sk_object,
  argument_type,
  freefunction 
)
Value:
struct sk_object ## _free_wrapper { \
void operator()(argument_type a) { sk_object ## _pop_free(a, freefunction); } \
}

Definition at line 44 of file forward.h.

◆ SSL_FLAG_CONDITIONAL_AUTH

#define SSL_FLAG_CONDITIONAL_AUTH   (1<<7)

Definition at line 58 of file forward.h.

◆ SSL_FLAG_DELAYED_AUTH

#define SSL_FLAG_DELAYED_AUTH   (1<<1)

Definition at line 52 of file forward.h.

◆ SSL_FLAG_DONT_VERIFY_DOMAIN

#define SSL_FLAG_DONT_VERIFY_DOMAIN   (1<<3)

Definition at line 54 of file forward.h.

◆ SSL_FLAG_DONT_VERIFY_PEER

#define SSL_FLAG_DONT_VERIFY_PEER   (1<<2)

Definition at line 53 of file forward.h.

◆ SSL_FLAG_NO_DEFAULT_CA

#define SSL_FLAG_NO_DEFAULT_CA   (1<<0)

Definition at line 51 of file forward.h.

◆ SSL_FLAG_NO_SESSION_REUSE

#define SSL_FLAG_NO_SESSION_REUSE   (1<<4)

Definition at line 55 of file forward.h.

◆ SSL_FLAG_VERIFY_CRL

#define SSL_FLAG_VERIFY_CRL   (1<<5)

Definition at line 56 of file forward.h.

◆ SSL_FLAG_VERIFY_CRL_ALL

#define SSL_FLAG_VERIFY_CRL_ALL   (1<<6)

Definition at line 57 of file forward.h.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum

Squid-specific TLS handling errors (a subset of ErrorCode) These errors either distinguish high-level library calls/contexts or supplement official certificate validation errors to cover special cases. We use negative values, assuming that those official errors are positive.

Enumerator
SQUID_TLS_ERR_OFFSET 
SQUID_TLS_ERR_ACCEPT 

failure to accept a connection from a TLS client

SQUID_TLS_ERR_CONNECT 

failure to establish a connection with a TLS server

SQUID_X509_V_ERR_CERT_CHANGE 
SQUID_X509_V_ERR_DOMAIN_MISMATCH 
SQUID_X509_V_ERR_INFINITE_VALIDATION 
SQUID_TLS_ERR_END 

Definition at line 225 of file forward.h.

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors