-
Notifications
You must be signed in to change notification settings - Fork 7
Expand file tree
/
Copy pathgcrypt.hh
More file actions
31 lines (24 loc) · 779 Bytes
/
gcrypt.hh
File metadata and controls
31 lines (24 loc) · 779 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
// This Source Code Form is subject to the terms of the Mozilla Public
// License, version 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
#pragma once
#include <memory>
#include <functional>
#include <stdexcept>
#include <gcrypt.h>
namespace gcrypt {
class version_error : public std::runtime_error {
private:
const char *const message = "GCrypt: library version mismatch";
public:
version_error() noexcept : runtime_error(GCRYPT_VERSION) {
}
virtual const char* what() const noexcept {
return message;
}
};
void check_version() {
if (!gcry_check_version(GCRYPT_VERSION))
throw gcrypt::version_error();
}
}