3 extern uint16 udp_port_local;
5 extern uint16 udp_port_remote;
7 extern byte udp_dgram_len;
9 bool udp_read_dgram_header()
11 /* puerto origen (remoto) */
12 udp_port_remote = net_getw();
13 /* sólo aceptamos datagramas a nuestro puerto */
14 if (net_getw() != udp_port_local)
15 return false; /* drop */
16 /* tamaño del datagrama */
17 if (net_getb()) /* no soportamos más de 255 bytes */
18 return false; /* drop */
19 udp_dgram_len = net_getb();
20 /* descartamos checksum */
25 void udp_write_dgram_header()
28 net_putw(udp_port_local);
30 net_putw(udp_port_remote);
31 /* tamaño del datagrama */
32 net_putb(0x00); /* parte alta en 0 porque no soportamos más de 255 */
33 net_putb(udp_dgram_len);
34 /* indicamos que no se usa checksum */