blob: 5797d153cb01d620b1e83190c0f4d9dee3124fe0 [file] [log] [blame]
Juan Quintela41d64222017-04-05 17:45:16 +02001/*
2 * QEMU migration TLS support
3 *
4 * Copyright (c) 2015 Red Hat, Inc.
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
Chetan Pantef19b502020-10-23 12:31:30 +00009 * version 2.1 of the License, or (at your option) any later version.
Juan Quintela41d64222017-04-05 17:45:16 +020010 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
15 *
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, see <http://www.gnu.org/licenses/>.
18 *
19 */
20
21#ifndef QEMU_MIGRATION_TLS_H
22#define QEMU_MIGRATION_TLS_H
23
24#include "io/channel.h"
Chuan Zhengbfb790e2020-09-15 11:03:58 +080025#include "io/channel-tls.h"
Juan Quintela41d64222017-04-05 17:45:16 +020026
27void migration_tls_channel_process_incoming(MigrationState *s,
28 QIOChannel *ioc,
29 Error **errp);
30
Juan Quintela0deb7e92023-04-26 21:33:08 +020031QIOChannelTLS *migration_tls_client_create(QIOChannel *ioc,
Chuan Zhengbfb790e2020-09-15 11:03:58 +080032 const char *hostname,
33 Error **errp);
34
Juan Quintela41d64222017-04-05 17:45:16 +020035void migration_tls_channel_connect(MigrationState *s,
36 QIOChannel *ioc,
37 const char *hostname,
38 Error **errp);
Peter Xu85a85782022-07-07 14:55:13 -040039
40/* Whether the QIO channel requires further TLS handshake? */
41bool migrate_channel_requires_tls_upgrade(QIOChannel *ioc);
42
Juan Quintela41d64222017-04-05 17:45:16 +020043#endif