UDP module implementation. More...
#include <async.h>
#include <fibril_synch.h>
#include <malloc.h>
#include <stdio.h>
#include <ipc/ipc.h>
#include <ipc/services.h>
#include "../../err.h"
#include "../../messages.h"
#include "../../modules.h"
#include "../../structures/dynamic_fifo.h"
#include "../../structures/packet/packet_client.h"
#include "../../include/checksum.h"
#include "../../include/in.h"
#include "../../include/in6.h"
#include "../../include/inet.h"
#include "../../include/ip_client.h"
#include "../../include/ip_interface.h"
#include "../../include/ip_protocols.h"
#include "../../include/icmp_client.h"
#include "../../include/icmp_interface.h"
#include "../../include/net_interface.h"
#include "../../include/socket_codes.h"
#include "../../include/socket_errno.h"
#include "../../socket/socket_core.h"
#include "../../socket/socket_messages.h"
#include "../tl_common.h"
#include "../tl_messages.h"
#include "udp.h"
#include "udp_header.h"
#include "udp_module.h"
Defines | |
#define | NET_DEFAULT_UDP_CHECKSUM_COMPUTING true |
Default UDP checksum computing. | |
#define | NET_DEFAULT_UDP_AUTOBINDING true |
Default UDP autobind when sending via unbound sockets. | |
#define | MAX_UDP_FRAGMENT_SIZE 65535 |
Maximum UDP fragment size. | |
#define | UDP_FREE_PORTS_START 1025 |
Free ports pool start. | |
#define | UDP_FREE_PORTS_END 65535 |
Free ports pool end. | |
Functions | |
int | udp_received_msg (device_id_t device_id, packet_t packet, services_t receiver, services_t error) |
Processes the received UDP packet queue. | |
int | udp_process_packet (device_id_t device_id, packet_t packet, services_t error) |
Processes the received UDP packet queue. | |
int | udp_release_and_return (packet_t packet, int result) |
Releases the packet and returns the result. | |
int | udp_initialize (async_client_conn_t client_connection) |
Initializes the UDP module. | |
int | udp_message (ipc_callid_t callid, ipc_call_t *call, ipc_call_t *answer, int *answer_count) |
Processes the UDP message. | |
Socket messages processing functions | |
int | udp_process_client_messages (ipc_callid_t callid, ipc_call_t call) |
Processes the socket client messages. | |
int | udp_sendto_message (socket_cores_ref local_sockets, int socket_id, const struct sockaddr *addr, socklen_t addrlen, int fragments, size_t *data_fragment_size, int flags) |
Sends data from the socket to the remote address. | |
int | udp_recvfrom_message (socket_cores_ref local_sockets, int socket_id, int flags, size_t *addrlen) |
Receives data to the socket. | |
Variables | |
udp_globals_t | udp_globals |
UDP global data. |
UDP module implementation.