]> git.ipfire.org Git - thirdparty/systemd.git/blame - src/resolve/resolved-dnstls.h
Merge pull request #15891 from bluca/host_os_release
[thirdparty/systemd.git] / src / resolve / resolved-dnstls.h
CommitLineData
6016fcb0
IT
1/* SPDX-License-Identifier: LGPL-2.1+ */
2#pragma once
3
aedf00a2 4#if ENABLE_DNS_OVER_TLS
6016fcb0 5
be28f72d
DDM
6#include <stdint.h>
7
8typedef struct DnsServer DnsServer;
9typedef struct DnsStream DnsStream;
e22c5b20 10typedef struct DnsTlsManagerData DnsTlsManagerData;
6016fcb0
IT
11typedef struct DnsTlsServerData DnsTlsServerData;
12typedef struct DnsTlsStreamData DnsTlsStreamData;
be28f72d 13typedef struct Manager Manager;
6016fcb0 14
096cbdce 15#if DNS_OVER_TLS_USE_GNUTLS
6016fcb0 16#include "resolved-dnstls-gnutls.h"
096cbdce
IT
17#elif DNS_OVER_TLS_USE_OPENSSL
18#include "resolved-dnstls-openssl.h"
19#else
20#error Unknown dependency for supporting DNS-over-TLS
6016fcb0
IT
21#endif
22
6016fcb0
IT
23#define DNSTLS_STREAM_CLOSED 1
24
25int dnstls_stream_connect_tls(DnsStream *stream, DnsServer *server);
26void dnstls_stream_free(DnsStream *stream);
04c4d919 27int dnstls_stream_on_io(DnsStream *stream, uint32_t revents);
6016fcb0
IT
28int dnstls_stream_shutdown(DnsStream *stream, int error);
29ssize_t dnstls_stream_write(DnsStream *stream, const char *buf, size_t count);
30ssize_t dnstls_stream_read(DnsStream *stream, void *buf, size_t count);
31
6016fcb0 32void dnstls_server_free(DnsServer *server);
e22c5b20 33
71a681ae 34int dnstls_manager_init(Manager *manager);
e22c5b20 35void dnstls_manager_free(Manager *manager);
aedf00a2
IT
36
37#endif /* ENABLE_DNS_OVER_TLS */