aboutsummaryrefslogtreecommitdiff
path: root/src/include/gnunet_transport_address_service.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/include/gnunet_transport_address_service.h')
-rw-r--r--src/include/gnunet_transport_address_service.h119
1 files changed, 0 insertions, 119 deletions
diff --git a/src/include/gnunet_transport_address_service.h b/src/include/gnunet_transport_address_service.h
deleted file mode 100644
index b33a11411..000000000
--- a/src/include/gnunet_transport_address_service.h
+++ /dev/null
@@ -1,119 +0,0 @@
1/*
2 This file is part of GNUnet.
3 Copyright (C) 2009-2018 GNUnet e.V.
4
5 GNUnet is free software: you can redistribute it and/or modify it
6 under the terms of the GNU Affero General Public License as published
7 by the Free Software Foundation, either version 3 of the License,
8 or (at your option) any later version.
9
10 GNUnet is distributed in the hope that it will be useful, but
11 WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Affero General Public License for more details.
14
15 You should have received a copy of the GNU Affero General Public License
16 along with this program. If not, see <http://www.gnu.org/licenses/>.
17
18 SPDX-License-Identifier: AGPL3.0-or-later
19*/
20
21/**
22 * @author Christian Grothoff
23 *
24 * @deprecated NOTE: we may want to drop this API and
25 * only keep the gnunet_transport_application_service.h in the future!
26 *
27 * @file
28 * Provide addresses to transport for validation
29 *
30 * @defgroup transport TRANSPORT service
31 * Low-level communication with other peers
32 *
33 * @see [Documentation](https://gnunet.org/transport-service)
34 *
35 * @{
36 */
37
38#ifndef GNUNET_TRANSPORT_ADDRESS_SERVICE_H
39#define GNUNET_TRANSPORT_ADDRESS_SERVICE_H
40
41#ifdef __cplusplus
42extern "C" {
43#if 0 /* keep Emacsens' auto-indent happy */
44}
45#endif
46#endif
47
48#include "gnunet_util_lib.h"
49#include "gnunet_nt_lib.h"
50
51/**
52 * Version number of the transport address API.
53 */
54#define GNUNET_TRANSPORT_ADDRESS_VERSION 0x00000000
55
56
57/**
58 * Opaque handle to the transport service for communicators.
59 */
60struct GNUNET_TRANSPORT_AddressHandle;
61
62
63/**
64 * Connect to the transport service.
65 *
66 * @param cfg configuration to use
67 * @return NULL on error
68 */
69struct GNUNET_TRANSPORT_AddressHandle *
70GNUNET_TRANSPORT_address_connect (
71 const struct GNUNET_CONFIGURATION_Handle *cfg);
72
73
74/**
75 * Disconnect from the transport service.
76 *
77 * @param ch handle returned from connect
78 */
79void
80GNUNET_TRANSPORT_address_disconnect (struct GNUNET_TRANSPORT_AddressHandle *ch);
81
82
83/**
84 * The client has learned about a possible address for peer @a pid
85 * (i.e. via broadcast, multicast, DHT, ...). The transport service
86 * should consider validating it. Note that the plugin is NOT expected
87 * to have verified the signature, the transport service must decide
88 * whether to check the signature.
89 *
90 * While the notification is sent to @a ch asynchronously, this API
91 * does not return a handle as the delivery of addresses is simply
92 * unreliable, and if @a ch is down, the data provided will simply be
93 * lost.
94 *
95 * @param ch communicator handle
96 * @param pid peer the address is for
97 * @param raw raw address data
98 * @param raw_size number of bytes in @a raw
99 */
100void
101GNUNET_TRANSPORT_address_try (struct GNUNET_TRANSPORT_AddressHandle *ch,
102 const struct GNUNET_PeerIdentity *pid,
103 const void *raw,
104 const size_t raw_size);
105
106
107#if 0 /* keep Emacsens' auto-indent happy */
108{
109#endif
110#ifdef __cplusplus
111}
112#endif
113
114/* ifndef GNUNET_TRANSPORT_ADDRESS_SERVICE_H */
115#endif
116
117/** @} */ /* end of group */
118
119/* end of gnunet_transport_address_service.h */