crypto: Add tls-cipher-suites object
[qemu.git] / include / crypto / tls-cipher-suites.h
1 /*
2 * QEMU TLS Cipher Suites Registry (RFC8447)
3 *
4 * Copyright (c) 2018-2020 Red Hat, Inc.
5 *
6 * Author: Philippe Mathieu-Daudé <philmd@redhat.com>
7 *
8 * SPDX-License-Identifier: GPL-2.0-or-later
9 */
10
11 #ifndef QCRYPTO_TLSCIPHERSUITES_H
12 #define QCRYPTO_TLSCIPHERSUITES_H
13
14 #include "qom/object.h"
15 #include "crypto/tlscreds.h"
16
17 #define TYPE_QCRYPTO_TLS_CIPHER_SUITES "tls-cipher-suites"
18 #define QCRYPTO_TLS_CIPHER_SUITES(obj) \
19 OBJECT_CHECK(QCryptoTLSCipherSuites, (obj), TYPE_QCRYPTO_TLS_CIPHER_SUITES)
20
21 typedef struct QCryptoTLSCipherSuites {
22 /* <private> */
23 QCryptoTLSCreds parent_obj;
24 /* <public> */
25 } QCryptoTLSCipherSuites;
26
27 /**
28 * qcrypto_tls_cipher_suites_get_data:
29 * @obj: pointer to a TLS cipher suites object
30 * @errp: pointer to a NULL-initialized error object
31 *
32 * Returns: reference to a byte array containing the data.
33 * The caller should release the reference when no longer
34 * required.
35 */
36 GByteArray *qcrypto_tls_cipher_suites_get_data(QCryptoTLSCipherSuites *obj,
37 Error **errp);
38
39 #endif /* QCRYPTO_TLSCIPHERSUITES_H */