38 #if ! defined(GNUNET_CULL_LOGGING) 39 #define CADET_TIMING_START \ 40 struct GNUNET_TIME_Absolute __timestamp; \ 41 __timestamp = GNUNET_TIME_absolute_get () 43 #define CADET_TIMING_END \ 44 struct GNUNET_TIME_Relative __duration; \ 45 __duration = GNUNET_TIME_absolute_get_duration (__timestamp); \ 46 LOG (GNUNET_ERROR_TYPE_INFO, \ 47 " %s duration %s\n", \ 49 GNUNET_STRINGS_relative_time_to_string (__duration, GNUNET_YES)); 51 #define CADET_TIMING_START 52 #define CADET_TIMING_END 71 #define GNUNET_CADET_LOCAL_CHANNEL_ID_CLI 0x80000000U 76 #define HIGH_PID 0xFF000000 81 #define LOW_PID 0x00FFFFFF 90 #define PID_OVERFLOW(pid, max) (((pid) > HIGH_PID) && ((max) < LOW_PID)) 556 GC_bin2s (
void *bin,
unsigned int len,
char **output);
Message to allow the client send more data to the service (always service -> client).
GNUNET_CADET_DisconnectEventHandler disconnects
Disconnect handler.
uint32_t channel_of_client
Values for channel numbering.
Message for or to a client to destroy tunnel.
Opaque handle to the service.
uint32_t GC_min_pid(uint32_t a, uint32_t b)
Get the lower ACK value out of two values, taking in account overflow.
const char * GC_m2s(uint16_t m)
Convert a message type into a string to help debug Generated with: FIND: "#define ([^ ]+)[ ]*([0-9]+)...
Message for a client to create and destroy channels.
void(* GNUNET_CADET_WindowSizeEventHandler)(void *cls, const struct GNUNET_CADET_Channel *channel, int window_size)
Function called whenever an MQ-channel's transmission window size changes.
Opaque handle to a channel.
Message to inform the client about channels in the service.
unsigned int allow_send
How many messages are we allowed to send to the service right now?
uint32_t GC_max_pid(uint32_t a, uint32_t b)
Get the higher ACK value out of two values, taking in account overflow.
struct GNUNET_CONTAINER_MultiShortmap * connections
Map from struct GNUNET_CADET_ConnectionTunnelIdentifier hash codes to struct CadetConnection objects...
uint16_t type
Type of the message this handler covers, in host byte order.
#define GNUNET_NETWORK_STRUCT_BEGIN
Define as empty, GNUNET_PACKED should suffice, but this won't work on W32.
Message to inform the client about channels in the service.
struct GNUNET_SCHEDULER_Task * mq_cont
Task to allow mq to send more traffic.
static struct GNUNET_ARM_MonitorHandle * m
Monitor connection with ARM.
Message to inform the client about one of the paths known to the service.
void * ctx
Any data the caller wants to put in here, used for the various callbacks (disconnects, window_changes, handlers).
Message to inform the client about one of the peers in the service.
Message to as the service about information on a channel.
Number uniquely identifying a channel of a client.
Message to inform the client about one of the tunnels in the service.
Message to inform the client about channels in the service.
size_t GC_bin2s(void *bin, unsigned int len, char **output)
Allocate a string with a hexdump of any binary data.
struct GNUNET_TESTBED_Peer * peer
The peer associated with this model.
struct GNUNET_MQ_Handle * mq
Message Queue for the channel (which we are implementing).
Message for a client to create channels.
struct GNUNET_CADET_Handle * cadet
Handle to the cadet this channel belongs to.
GNUNET_NETWORK_STRUCT_END char * GC_f2s(int fwd)
Translate a fwd variable into a string representation, for logging.
Handle to a message queue.
#define GNUNET_NETWORK_STRUCT_END
Define as empty, GNUNET_PACKED should suffice, but this won't work on W32;.
The identity of the host (wraps the signing key of the peer).
#define GNUNET_PACKED
gcc-ism to get packed structs.
static uint16_t port
Port number.
struct GNUNET_MQ_Envelope * pending_env
Pending envelope with a message to be transmitted to the service as soon as we are allowed to...
int GC_is_pid_bigger(uint32_t bigger, uint32_t smaller)
Check if one pid is bigger than other, accounting for overflow.
GNUNET_CADET_WindowSizeEventHandler window_changes
Window change handler.
struct GNUNET_CADET_Port * incoming_port
Channel's port, if incoming.
Entry in list of pending tasks.
Message for cadet data traffic.
void(* GNUNET_CADET_DisconnectEventHandler)(void *cls, const struct GNUNET_CADET_Channel *channel)
Function called whenever an MQ-channel is destroyed, unless the destruction was requested by GNUNET_C...
Message to drop another message of specific type.
uint16_t len
length of data (which is always a uint32_t, but presumably this can be used to specify that fewer byt...