#include "enc28j60_udp.h"
#include "enc28j60_spi.h"
Zobrazit zdrojový text tohoto souboru.
Funkce | |
void | udp_recv (struct ip_h *ip_header) |
Funkce volaná funkcí ip_recv() po příchodu UDP datagramu. | |
char | udp_send (unsigned int dest_port, unsigned int src_port, unsigned long ip) |
Odešle UDP datagram s daty uloženými v tx bufferu. | |
unsigned int | udp_checksum (unsigned long dest_ip, int length) |
Vypočítá 16-bitový checksum z UDP datagramu - interní funkce. | |
unsigned int | udp_bind (unsigned int port, void *handler) |
Zaregistruje handler k číslu portu. | |
void | udp_unbind (unsigned int port) |
Odregistruje Callback handler od čísla portu. | |
Proměnné | |
udp_socket | udp_socket_table [SOCKET_COUNT] |
unsigned long | local_ip |
unsigned int udp_bind | ( | unsigned int | port, | |
void * | handler | |||
) |
Zaregistruje handler k číslu portu.
port | - číslo portu | |
handler | - Callback handler, funkce, která bude volána při příchodu UDP datagramu k příslušnému portu. |
0 | - chyba, neplatné argumenty nebo není volný socket | |
jinak | - číslo registrovaného portu |
Definice je uvedena na řádku 140 v souboru enc28j60_udp.c.
Odkazuje se na SOCKET_COUNT a udp_socket_table.
Používá se v dhcp_init() a dhcp_reset().
unsigned int udp_checksum | ( | unsigned long | dest_ip, | |
int | length | |||
) |
Vypočítá 16-bitový checksum z UDP datagramu - interní funkce.
Definice je uvedena na řádku 107 v souboru enc28j60_udp.c.
Odkazuje se na local_ip a tx_checksum().
Používá se v udp_send().
void udp_recv | ( | struct ip_h * | ip_header | ) |
Funkce volaná funkcí ip_recv() po příchodu UDP datagramu.
Definice je uvedena na řádku 55 v souboru enc28j60_udp.c.
Odkazuje se na udp_h::dest_port, NTOHS, rx_read(), SOCKET_COUNT, UDP_HEADER_LEN a udp_socket_table.
Používá se v ip_recv().
char udp_send | ( | unsigned int | dest_port, | |
unsigned int | src_port, | |||
unsigned long | ip | |||
) |
Odešle UDP datagram s daty uloženými v tx bufferu.
dest_port | - cílový port | |
src_port | - zdrojový port | |
ip | - IP adresa cíle |
0 | - datagram odeslán | |
-1 | - chyba při odesílání | |
-2 | - ARP protokol nezjistil MAC adresu cíle, neodesláno |
Definice je uvedena na řádku 78 v souboru enc28j60_udp.c.
Odkazuje se na udp_h::checksum, udp_h::dest_port, HTONS, ip_send(), udp_h::length, udp_h::src_port, tx_data_len(), tx_seek(), tx_write(), udp_checksum() a UDP_HEADER_LEN.
Používá se v dhcp_send_discover() a dhcp_send_request().
void udp_unbind | ( | unsigned int | port | ) |
Odregistruje Callback handler od čísla portu.
port | - číslo portu |
Definice je uvedena na řádku 167 v souboru enc28j60_udp.c.
Odkazuje se na SOCKET_COUNT a udp_socket_table.
Používá se v UDP_APP_HANDLER().
unsigned long local_ip |
Definice je uvedena na řádku 59 v souboru enc28j60_ip.c.
struct udp_socket udp_socket_table[SOCKET_COUNT] |
Definice je uvedena na řádku 49 v souboru enc28j60_udp.c.
Používá se v udp_bind(), udp_recv() a udp_unbind().