The "pseudo" udp header (not the standard udp header) is of type uih_io_hdr_t. uih_io_hdr_t is declared in include/net/gen/udp_hdr.h:
typedef struct udp_io_hdr
{
ipaddr_t uih_src_addr;
ipaddr_t uih_dst_addr;
udpport_t uih_src_port;
udpport_t uih_dst_port;
u16_t uih_ip_opt_len;
u16_t uih_data_len;
} udp_io_hdr_t;
uih_src_addr, uih_dst_addr, uih_src_port, uih_dst_port: Source and destination ip addresses and ports
uih_ip_opt_len: length of the ip options (zero if none exist)
uih_data_len: length of the data
If a udp file descriptor is configured appropriately, a process writing data to the udp file descriptor must prepend a pseudo udp header to the data, thereby specifying the values (given above) in the outgoing udp and ip headers. A udp pseudo header is also prepended to an otherwise header-less packet being copied to the process that requested a read.