AUI Framework  master
Cross-platform module-based framework for developing C++20 desktop applications
AX509.h
1/*
2 * AUI Framework - Declarative UI toolkit for modern C++20
3 * Copyright (C) 2020-2024 Alex2772 and Contributors
4 *
5 * SPDX-License-Identifier: MPL-2.0
6 *
7 * This Source Code Form is subject to the terms of the Mozilla Public
8 * License, v. 2.0. If a copy of the MPL was not distributed with this
9 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
10 */
11
12#pragma once
13#include "AUI/Rsa.h"
14#include "AUI/Common/AByteBuffer.h"
15
20class API_AUI_CRYPT AX509: public aui::noncopyable
21{
22 friend class AX509Store;
23private:
24 void* mX509;
25
26 explicit AX509(void* x509);
27
28public:
29 ~AX509();
30
31 bool isCA() const;
32 bool checkHost(const AString& name) const;
33 bool checkTrust() const;
34
35 static _<AX509> fromPEM(AByteBufferView buffer);
36};
Acts like std::string_view but for AByteBuffer.
Definition: AByteBufferView.h:24
Represents a Unicode character string.
Definition: AString.h:37
x509 certificate store object.
Definition: AX509Store.h:22
x509 certificate object.
Definition: AX509.h:21
An std::weak_ptr with AUI extensions.
Definition: SharedPtrTypes.h:177
Forbids copy of your class.
Definition: values.h:40