Date: Wed, 12 Jul 2000 22:15:26 -0700 From: Alfred Perlstein <bright@wintelcom.net> To: Wilbert de Graaf <wilbertdg@hetnet.nl> Cc: FreeBSD-hackers <FreeBSD-hackers@FreeBSD.ORG> Subject: Re: #include question: <netinet/in.h> requires <sys/socket.h> Message-ID: <20000712221526.L25571@fw.wintelcom.net> In-Reply-To: <095401bfec6f$495ba110$0a00a8c0@alias>; from wilbertdg@hetnet.nl on Wed, Jul 12, 2000 at 07:08:47PM -0700 References: <095401bfec6f$495ba110$0a00a8c0@alias>
next in thread | previous in thread | raw e-mail | index | archive | help
* Wilbert de Graaf <wilbertdg@hetnet.nl> [000712 19:11] wrote: > > Maybe obvious to some of you, but I had to define two new structures (as > described in an ietf draft) in <netinet/in.h>. This in order to be able to > support igmpv3 / multicast source filters. Anyway, these structures require > 'struct sockaddr_storage' which is defined in <sys/socket.h>. > When I compiled the code, it stopped since several source files only include > <netinet/in.h> and not <sys/socket.h>. To solve this I added these 3 lines > > #ifndef _SYS_SOCKET_H > #include <sys/socket.h> > #endif > > somewhere in the top of <netinet/in.h>. I want to verify if this is indeed > the best way to solve it ? No, the proper solution is to do a forward struct declaration like so: struct something; struct bigger_something { struct something foo; } -- -Alfred Perlstein - [bright@wintelcom.net|alfred@freebsd.org] "I have the heart of a child; I keep it in a jar on my desk." To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20000712221526.L25571>