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 typedef struct QCryptoTLSCipherSuites QCryptoTLSCipherSuites;
19 DECLARE_INSTANCE_CHECKER(QCryptoTLSCipherSuites, QCRYPTO_TLS_CIPHER_SUITES,
20                          TYPE_QCRYPTO_TLS_CIPHER_SUITES)
21 
22 struct QCryptoTLSCipherSuites {
23     /* <private> */
24     QCryptoTLSCreds parent_obj;
25     /* <public> */
26 };
27 
28 /**
29   * qcrypto_tls_cipher_suites_get_data:
30   * @obj: pointer to a TLS cipher suites object
31   * @errp: pointer to a NULL-initialized error object
32   *
33   * Returns: reference to a byte array containing the data.
34   * The caller should release the reference when no longer
35   * required.
36   */
37 GByteArray *qcrypto_tls_cipher_suites_get_data(QCryptoTLSCipherSuites *obj,
38                                                Error **errp);
39 
40 #endif /* QCRYPTO_TLSCIPHERSUITES_H */
41