10#ifndef BOTAN_TLS_PROTOCOL_VERSION_H_
11#define BOTAN_TLS_PROTOCOL_VERSION_H_
13#include <botan/types.h>
38#if defined(BOTAN_HAS_TLS_13)
68 Protocol_Version(static_cast<uint16_t>((static_cast<uint16_t>(major) << 8) | minor)) {}
78 bool known_version()
const;
83 uint8_t
major_version()
const {
return static_cast<uint8_t
>(m_version >> 8); }
88 uint8_t
minor_version()
const {
return static_cast<uint8_t
>(m_version & 0xFF); }
103 bool is_datagram_protocol()
const;
108 bool is_pre_tls_13()
const;
115 return (m_version == other.m_version);
123 return (m_version != other.m_version);
136 return (*
this == other || *
this > other);
144 return !(*
this >= other);
152 return (*
this == other || *
this < other);
Protocol_Version(uint8_t major, uint8_t minor)
static Protocol_Version latest_dtls_version()
bool operator==(const Protocol_Version &other) const
uint8_t major_version() const
bool operator!=(const Protocol_Version &other) const
static Protocol_Version latest_tls_version()
bool operator>=(const Protocol_Version &other) const
uint16_t version_code() const
bool operator<=(const Protocol_Version &other) const
Protocol_Version(uint16_t code)
bool operator<(const Protocol_Version &other) const
uint8_t minor_version() const
Protocol_Version(Version_Code named_version)
int(* final)(unsigned char *, CTX *)
#define BOTAN_PUBLIC_API(maj, min)
bool operator>(const ASN1_Time &, const ASN1_Time &)
std::string to_string(ErrorType type)
Convert an ErrorType to string.