| /* | |
| * udp.h | |
| * | |
| * User Datagram Protocol (RFC 768). | |
| * | |
| * Copyright (c) 2000 Dug Song <dugsong@monkey.org> | |
| * | |
| * $Id: udp.h,v 1.8 2002/04/02 05:05:39 dugsong Exp $ | |
| */ | |
| #ifndef DNET_UDP_H | |
| #define DNET_UDP_H | |
| #define UDP_HDR_LEN 8 | |
| struct udp_hdr { | |
| uint16_t uh_sport; /* source port */ | |
| uint16_t uh_dport; /* destination port */ | |
| uint16_t uh_ulen; /* udp length (including header) */ | |
| uint16_t uh_sum; /* udp checksum */ | |
| }; | |
| #define UDP_PORT_MAX 65535 | |
| #define udp_pack_hdr(hdr, sport, dport, ulen) do { \ | |
| struct udp_hdr *udp_pack_p = (struct udp_hdr *)(hdr); \ | |
| udp_pack_p->uh_sport = htons(sport); \ | |
| udp_pack_p->uh_dport = htons(dport); \ | |
| udp_pack_p->uh_ulen = htons(ulen); \ | |
| } while (0) | |
| #endif /* DNET_UDP_H */ |