26 #ifndef GNUNET_SERVICE_TRANSPORT_H
27 #define GNUNET_SERVICE_TRANSPORT_H
34 #define VERBOSE_VALIDATION GNUNET_YES
127 const char *transport_name);
150 const char *transport_name,
struct GNUNET_MessageHeader * msg
static char * address
GNS address for this phone.
enum State state
current state of profiling
static int result
Global testing status.
struct GNUNET_TIME_Relative GST_receive_callback(void *cls, const struct GNUNET_HELLO_Address *address, struct GNUNET_ATS_Session *session, const struct GNUNET_MessageHeader *message)
Function called by the transport for each received message.
void GST_blacklist_test_cancel(struct GST_BlacklistCheck *bc)
Cancel a blacklist check.
struct GNUNET_PeerIdentity GST_my_identity
Configuration handle.
void GST_blacklist_abort_matching(const struct GNUNET_HELLO_Address *address, struct GNUNET_ATS_Session *session)
Abort blacklist if address and session match.
void(* GST_BlacklistTestContinuation)(void *cls, const struct GNUNET_PeerIdentity *peer, const struct GNUNET_HELLO_Address *address, struct GNUNET_ATS_Session *session, int result)
Continuation called from a blacklist test.
struct GNUNET_ATS_ConnectivityHandle * GST_ats_connect
ATS connectivity handle.
struct GST_BlacklistCheck * GST_blacklist_test_allowed(const struct GNUNET_PeerIdentity *peer, const char *transport_name, GST_BlacklistTestContinuation cont, void *cont_cls, const struct GNUNET_HELLO_Address *address, struct GNUNET_ATS_Session *session)
Test if a peer/transport combination is blacklisted.
void GST_blacklist_add_peer(const struct GNUNET_PeerIdentity *peer, const char *transport_name)
Add the given peer to the blacklist (for the given transport).
struct GNUNET_ATS_SchedulingHandle * GST_ats
ATS handle.
struct GNUNET_NT_InterfaceScanner * GST_is
Interface scanner determines our LAN address range(s).
void(* GNUNET_TRANSPORT_NeighbourChangeCallback)(void *cls, const struct GNUNET_PeerIdentity *peer, const struct GNUNET_HELLO_Address *address, enum GNUNET_TRANSPORT_PeerState state, struct GNUNET_TIME_Absolute state_timeout, struct GNUNET_BANDWIDTH_Value32NBO bandwidth_in, struct GNUNET_BANDWIDTH_Value32NBO bandwidth_out)
Function to call when a peer's address has changed.
struct GNUNET_CRYPTO_EddsaPrivateKey GST_my_private_key
Our private key.
const struct GNUNET_CONFIGURATION_Handle * GST_cfg
Configuration handle.
void GST_clients_broadcast(const struct GNUNET_MessageHeader *msg, int may_drop)
Broadcast the given message to all of our clients.
struct GNUNET_PEERINFO_Handle * GST_peerinfo
Handle to peerinfo service.
struct GNUNET_STATISTICS_Handle * GST_stats
Statistics handle.
void GST_clients_broadcast_disconnect(const struct GNUNET_PeerIdentity *peer)
Notify all clients about a disconnect, and cancel pending SEND_OK messages for this peer.
void GST_clients_broadcast_peer_notification(const struct GNUNET_PeerIdentity *peer, const struct GNUNET_HELLO_Address *address, enum GNUNET_TRANSPORT_PeerState state, struct GNUNET_TIME_Absolute state_timeout)
Broadcast the new active address to all clients monitoring the peer.
Automatic transport selection and outbound bandwidth determination.
API to create, modify and access statistics.
GNUNET_TRANSPORT_PeerState
Possible state of a neighbour.
Handle to the ATS subsystem for connectivity management.
Handle to the ATS subsystem for bandwidth/transport scheduling information.
Session handle for connections.
32-bit bandwidth used for network exchange by GNUnet, in bytes per second.
Private ECC key encoded for transmission.
An address for communicating with a peer.
Handle to the interface scanner.
Handle to the peerinfo service.
The identity of the host (wraps the signing key of the peer).
Time for absolute times used by GNUnet, in microseconds.
Time for relative time used by GNUnet, in microseconds.
Context we use when performing a blacklist check.
GST_BlacklistTestContinuation cont
Continuation to call with the result.
struct GNUNET_ATS_Session * session
Session for GST_blacklist_abort_matching(), can be NULL.
void * cont_cls
Closure for cont.
struct GNUNET_TESTBED_Peer * peer
The peer associated with this model.