GNUnet 0.21.1
RequestRecord Struct Reference

Entry we keep for each active request. More...

Collaboration diagram for RequestRecord:
[legend]

Data Fields

struct ClientRecord ** client_wait_list
 List of clients that still need to see this request (each entry is set to NULL when the client is done). More...
 
char * payload
 Payload of the UDP packet (the UDP payload), can be either query or already the response. More...
 
struct GNUNET_DNSSTUB_RequestSocketrs
 Socket we are using to transmit this request (must match if we receive a response). More...
 
struct sockaddr_storage src_addr
 Source address of the original request (for sending response). More...
 
struct sockaddr_storage dst_addr
 Destination address of the original request (for potential use as exit). More...
 
uint64_t request_id
 ID of this request, also basis for hashing. More...
 
size_t payload_length
 Number of bytes in payload. More...
 
unsigned int client_wait_list_length
 Length of the client_wait_list. More...
 
enum RequestPhase phase
 In which phase this this request? More...
 

Detailed Description

Entry we keep for each active request.

Definition at line 144 of file gnunet-service-dns.c.

Field Documentation

◆ client_wait_list

struct ClientRecord** RequestRecord::client_wait_list

List of clients that still need to see this request (each entry is set to NULL when the client is done).

Definition at line 150 of file gnunet-service-dns.c.

Referenced by cleanup_rr(), client_disconnect_cb(), handle_client_response(), next_phase(), process_helper_messages(), and request_done().

◆ payload

char* RequestRecord::payload

Payload of the UDP packet (the UDP payload), can be either query or already the response.

Definition at line 156 of file gnunet-service-dns.c.

Referenced by cleanup_rr(), handle_client_response(), next_phase(), process_dns_result(), process_helper_messages(), request_done(), and send_request_to_client().

◆ rs

struct GNUNET_DNSSTUB_RequestSocket* RequestRecord::rs

Socket we are using to transmit this request (must match if we receive a response).

Definition at line 162 of file gnunet-service-dns.c.

Referenced by next_phase().

◆ src_addr

struct sockaddr_storage RequestRecord::src_addr

Source address of the original request (for sending response).

Definition at line 167 of file gnunet-service-dns.c.

Referenced by process_helper_messages(), and request_done().

◆ dst_addr

struct sockaddr_storage RequestRecord::dst_addr

Destination address of the original request (for potential use as exit).

Definition at line 172 of file gnunet-service-dns.c.

Referenced by next_phase(), process_helper_messages(), and request_done().

◆ request_id

uint64_t RequestRecord::request_id

ID of this request, also basis for hashing.

Lowest 16 bit will be our message ID when doing a global DNS request and our index into the 'requests' array.

Definition at line 179 of file gnunet-service-dns.c.

Referenced by handle_client_response(), next_phase(), process_dns_result(), process_helper_messages(), request_done(), and send_request_to_client().

◆ payload_length

size_t RequestRecord::payload_length

◆ client_wait_list_length

unsigned int RequestRecord::client_wait_list_length

Length of the client_wait_list.

Definition at line 189 of file gnunet-service-dns.c.

Referenced by cleanup_rr(), client_disconnect_cb(), handle_client_response(), next_phase(), process_helper_messages(), and request_done().

◆ phase

enum RequestPhase RequestRecord::phase

In which phase this this request?

Definition at line 194 of file gnunet-service-dns.c.

Referenced by handle_client_response(), next_phase(), process_dns_result(), process_helper_messages(), and request_done().


The documentation for this struct was generated from the following file: