NegotiationHistory.h
Go to the documentation of this file.
1/*
2 * Copyright (C) 1996-2023 The Squid Software Foundation and contributors
3 *
4 * Squid software is distributed under GPLv2+ license and includes
5 * contributions from numerous individuals and organizations.
6 * Please see the COPYING and CONTRIBUTORS files for details.
7 */
8
9#ifndef SQUID_SRC_SECURITY_NEGOTIATIONHISTORY_H
10#define SQUID_SRC_SECURITY_NEGOTIATIONHISTORY_H
11
13#include "security/Handshake.h"
14#include "security/Session.h"
15
16namespace Security {
17
19{
20public:
22
25
28
29 const char *cipherName() const;
31 const char *negotiatedVersion() const {return printTlsVersion(version_);}
33 const char *helloVersion() const {return printTlsVersion(helloVersion_);}
36 const char *supportedVersion() const {return printTlsVersion(supportedVersion_);}
37private:
39 const char *printTlsVersion(AnyP::ProtocolVersion const &v) const;
43#if USE_OPENSSL
44 const SSL_CIPHER *cipher;
45#endif
46};
47
48} // namespace Security
49
50#endif /* SQUID_SRC_SECURITY_NEGOTIATIONHISTORY_H */
51
AnyP::ProtocolVersion version_
The negotiated TLS version.
void retrieveParsedInfo(Security::TlsDetails::Pointer const &details)
Extract information from parser stored in TlsDetails object.
const SSL_CIPHER * cipher
The negotiated cipher.
AnyP::ProtocolVersion helloVersion_
The TLS version of the hello message.
const char * negotiatedVersion() const
String representation of TLS negotiated version.
AnyP::ProtocolVersion supportedVersion_
The maximum supported TLS version.
const char * helloVersion() const
String representation of the received TLS hello message version.
const char * supportedVersion() const
void retrieveNegotiatedInfo(const Security::SessionPointer &)
Extract negotiation information from TLS object.
const char * printTlsVersion(AnyP::ProtocolVersion const &v) const
String representation of the TLS version 'v'.
Network/connection security abstraction layer.
Definition: Connection.h:34
std::shared_ptr< SSL > SessionPointer
Definition: Session.h:49

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors