Botan 3.0.0-alpha0
Crypto and TLS for C&
tls_exceptn.h
Go to the documentation of this file.
1/*
2* Exceptions
3* (C) 2004-2006 Jack Lloyd
4*
5* Botan is released under the Simplified BSD License (see license.txt)
6*/
7
8#ifndef BOTAN_TLS_EXCEPTION_H_
9#define BOTAN_TLS_EXCEPTION_H_
10
11#include <botan/exceptn.h>
12#include <botan/tls_alert.h>
13
14namespace Botan {
15
16namespace TLS {
17
18/**
19* TLS Exception Base Class
20*/
22 {
23 public:
24 Alert::Type type() const { return m_alert_type; }
25
27 const std::string& err_msg = "Unknown error") :
28 Exception(err_msg), m_alert_type(type) {}
29
30 int error_code() const noexcept override { return static_cast<int>(m_alert_type); }
31
32 ErrorType error_type() const noexcept override { return ErrorType::TLSError; }
33
34 private:
35 Alert::Type m_alert_type;
36 };
37
38/**
39* Unexpected_Message Exception
40*/
42 {
43 public:
44 explicit Unexpected_Message(const std::string& err) :
45 TLS_Exception(Alert::UNEXPECTED_MESSAGE, err) {}
46 };
47
48}
49
50}
51
52#endif
Alert::Type type() const
Definition: tls_exceptn.h:24
ErrorType error_type() const noexcept override
Definition: tls_exceptn.h:32
int error_code() const noexcept override
Definition: tls_exceptn.h:30
TLS_Exception(Alert::Type type, const std::string &err_msg="Unknown error")
Definition: tls_exceptn.h:26
Unexpected_Message(const std::string &err)
Definition: tls_exceptn.h:44
int(* final)(unsigned char *, CTX *)
#define BOTAN_PUBLIC_API(maj, min)
Definition: compiler.h:31
Definition: alg_id.cpp:13
ErrorType
Definition: exceptn.h:20
MechanismType type