|
CDI SDK
SDK for transporting chunks of data reliably and with low latency using a polled mode network driver.
|
This file contains internal definitions and implementation used within the SDK to support functionality that is not part of the API. More...
#include "adapter_efa.h"#include "adapter_efa_probe_rx.h"#include "adapter_api.h"#include "adapter_efa_probe_control.h"#include "adapter_efa_probe_tx.h"#include "endpoint_manager.h"#include "internal_rx.h"#include "internal_utility.h"#include "cdi_os_api.h"#include <arpa/inet.h>Functions | |
| static void | SaveRemoteEndpointInfo (CdiEndpointHandle cdi_endpoint_handle, const CdiDecodedProbeHeader *probe_hdr_ptr, const struct sockaddr_in *source_address_ptr) |
| static ProbeEndpointState * | FindProbeEndpoint (AdapterConnectionHandle handle, const CdiDecodedProbeHeader *probe_hdr_ptr, const struct sockaddr_in *address_ptr) |
| static void | DestroyRxEndpoint (ProbeEndpointState *probe_ptr) |
| void | ProbeRxEfaMessageFromEndpoint (void *param_ptr, Packet *packet_ptr, EndpointMessageType message_type) |
| void | ProbeRxControlMessageFromEndpoint (void *param_ptr, Packet *packet_ptr) |
| bool | ProbeRxControlProcessPacket (ProbeEndpointState *probe_ptr, const CdiDecodedProbeHeader *probe_hdr_ptr, const struct sockaddr_in *source_address_ptr, uint64_t *wait_timeout_ms_ptr) |
| uint64_t | ProbeRxControlProcessProbeState (ProbeEndpointState *probe_ptr) |
This file contains internal definitions and implementation used within the SDK to support functionality that is not part of the API.
|
static |
Destroy Rx endpoint.
| probe_ptr | Pointer to probe endpoint state data. |
|
static |
Use the specified control packet to try and find an existing probe endpoint that matches the information contained in the packet. If a match is found, the handle of the matching probe endpoint is returned, otherwise NULL is returned.
| handle | Handle of adpater connection. |
| probe_hdr_ptr | Pointer to control packet header. |
| address_ptr | Pointer to address structure (sockaddr_in). |
| void ProbeRxControlMessageFromEndpoint | ( | void * | param_ptr, |
| Packet * | packet_ptr ) |
Process a control packet completion message received from an endpoint.
NOTE: This function is called from SocketReceiveThread().
| param_ptr | Pointer to probe endpoint state data (AdapterEndpointState*). |
| packet_ptr | Pointer to packet containing the control message. |
| bool ProbeRxControlProcessPacket | ( | ProbeEndpointState * | probe_ptr, |
| const CdiDecodedProbeHeader * | probe_hdr_ptr, | ||
| const struct sockaddr_in * | source_address_ptr, | ||
| uint64_t * | wait_timeout_ms_ptr ) |
Process control message for Rx connection.
NOTE: This function is called from ProbeControlThread().
| probe_ptr | Pointer to probe endpoint state data. |
| probe_hdr_ptr | Pointer to control message header. |
| source_address_ptr | Pointer to source address structure (sockaddr_in). |
| wait_timeout_ms_ptr | Pointer to current wait timeout. This function may alter the contents of the value. |
| uint64_t ProbeRxControlProcessProbeState | ( | ProbeEndpointState * | probe_ptr | ) |
Called when the wait timeout period has expired. Time to process the current Rx probe state.
NOTE: This function is called from ProbeControlThread().
| probe_ptr | Pointer to probe endpoint state data. |
| void ProbeRxEfaMessageFromEndpoint | ( | void * | param_ptr, |
| Packet * | packet_ptr, | ||
| EndpointMessageType | message_type ) |
Process a probe packet completion message from the receiver EFA endpoint.
NOTE: This function is called from PollThread().
| param_ptr | Pointer to probe endpoint state data (ProbeEndpointState*). |
| packet_ptr | Pointer to packet. |
| message_type | Endpoint message type. |
|
static |
Save data from remote endpoint.
| cdi_endpoint_handle | CDI endpoint handle. |
| probe_hdr_ptr | Pointer to control packet header data. |
| source_address_ptr | Pointer to source address structure (sockaddr_in). |