diff --git a/libctru/include/netinet/in.h b/libctru/include/netinet/in.h index bc8d6f8..5d274b0 100644 --- a/libctru/include/netinet/in.h +++ b/libctru/include/netinet/in.h @@ -3,15 +3,25 @@ #include #include -#define INADDR_ANY 0x00000000 -#define INADDR_BROADCAST 0xFFFFFFFF -#define INADDR_NONE 0xFFFFFFFF +#define INADDR_ANY 0x00000000 +#define INADDR_BROADCAST 0xFFFFFFFF +#define INADDR_NONE 0xFFFFFFFF #define INET_ADDRSTRLEN 16 -//#define IPPROTO_IP ??? -//#define IPPROTO_TCP ??? -//#define IPPROTO_UDP ??? +/* + * Protocols (See RFC 1700 and the IANA) + */ +#define IPPROTO_IP 0 /* dummy for IP */ +#define IPPROTO_UDP 17 /* user datagram protocol */ +#define IPPROTO_TCP 6 /* tcp */ + +#define IP_TOS 7 +#define IP_TTL 8 +#define IP_MULTICAST_LOOP 9 +#define IP_MULTICAST_TTL 10 +#define IP_ADD_MEMBERSHIP 11 +#define IP_DROP_MEMBERSHIP 12 typedef uint16_t in_port_t; typedef uint32_t in_addr_t; @@ -26,3 +36,9 @@ struct sockaddr_in { struct in_addr sin_addr; unsigned char sin_zero[8]; }; + +/* Request struct for multicast socket ops */ +struct ip_mreq { + struct in_addr imr_multiaddr; /* IP multicast address of group */ + struct in_addr imr_interface; /* local IP address of interface */ +}; \ No newline at end of file