OpenBSD 4.0 man 7 ip says: struct sockaddr_in { sa_family_t sin_family; /* address family: AF_INET */ u_int16_t sin_port; /* port in network byte order */ struct in_addr sin_addr; /* internet address */ };
/usr/include/netinet/in.h: struct sockaddr_in { u_int8_t sin_len; sa_family_t sin_family; in_port_t sin_port; struct in_addr sin_addr; int8_t sin_zero[8]; }; No wonder my program didn't work properly and sent UDP with a nonsensical source port when I wrote it according to the manpage and the manpage is wrong. When I added the sin_len entry, it started to work properly. CL<