GNUnet  0.17.6
gnunet_transport_application_service.h
Go to the documentation of this file.
1 /*
2  This file is part of GNUnet.
3  Copyright (C) 2010-2015, 2018, 2019 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  */
35 #ifndef GNUNET_TRANSPORT_APPLICATION_SERVICE_H
36 #define GNUNET_TRANSPORT_APPLICATION_SERVICE_H
37 
38 #include "gnunet_constants.h"
39 #include "gnunet_util_lib.h"
40 #include "gnunet_nt_lib.h"
41 #include "gnunet_testing_lib.h"
42 #include "gnunet_testing_ng_lib.h"
43 
49 
50 
59  const struct GNUNET_CONFIGURATION_Handle *cfg);
60 
61 
67 void
70 
71 
85  const struct GNUNET_PeerIdentity *peer,
88 
89 
95 void
98 
99 
115 void
118  const struct GNUNET_PeerIdentity *peer,
119  enum GNUNET_NetworkType nt,
120  const char *addr);
121  /* end of group */
123  /* end of group addition */
125 
126 #endif
127 /* end of file gnunet_ats_application_service.h */
static const struct GNUNET_CONFIGURATION_Handle * cfg
Configuration we are using.
Definition: gnunet-abd.c:36
static struct SolverHandle * sh
static struct GNUNET_CADET_Channel * ch
Channel handle.
Definition: gnunet-cadet.c:117
struct GNUNET_IDENTITY_PrivateKey pk
Private key from command line option, or NULL.
static struct GNUNET_NAT_AUTO_Test * nt
Handle to a NAT test operation.
struct GNUNET_BIO_WriteHandle * bw
handle to the file to write the load statistics to
Convenience API for writing testcases for GNUnet.
void GNUNET_TRANSPORT_application_done(struct GNUNET_TRANSPORT_ApplicationHandle *ch)
Shutdown TRANSPORT application client.
struct GNUNET_TRANSPORT_ApplicationSuggestHandle * GNUNET_TRANSPORT_application_suggest(struct GNUNET_TRANSPORT_ApplicationHandle *ch, const struct GNUNET_PeerIdentity *peer, enum GNUNET_MQ_PriorityPreferences pk, struct GNUNET_BANDWIDTH_Value32NBO bw)
An application would like TRANSPORT to connect to a peer.
struct GNUNET_TRANSPORT_ApplicationHandle * GNUNET_TRANSPORT_application_init(const struct GNUNET_CONFIGURATION_Handle *cfg)
Initialize the TRANSPORT application client handle.
void GNUNET_TRANSPORT_application_validate(struct GNUNET_TRANSPORT_ApplicationHandle *ch, const struct GNUNET_PeerIdentity *peer, enum GNUNET_NetworkType nt, const char *addr)
An application (or a communicator) has received a HELLO (or other address data of another peer) and w...
void GNUNET_TRANSPORT_application_suggest_cancel(struct GNUNET_TRANSPORT_ApplicationSuggestHandle *sh)
We no longer care about being connected to a peer.
GNUNET_MQ_PriorityPreferences
Per envelope preferences and priorities.
GNUNET_NetworkType
Types of networks (with separate quotas) we support.
Definition: gnunet_nt_lib.h:36
32-bit bandwidth used for network exchange by GNUnet, in bytes per second.
The identity of the host (wraps the signing key of the peer).
Handle to the TRANSPORT subsystem for application management.
Handle for TRANSPORT address suggestion requests.
struct GNUNET_TESTBED_Peer * peer
The peer associated with this model.