examples/multi_process: fix compilation error on FreeBSD
Checks
Commit Message
Caught on FreeBSD 12:
/usr/include/netinet/ip.h:71:17: error: field 'ip_src' has incomplete type
struct in_addr ip_src,ip_dst; /* source and dest address */
^~~~~~
POSIX defines netinet/in.h as the right header for in_addr.
Linux seems fine without it but let's include it explicitly.
Signed-off-by: David Marchand <david.marchand@redhat.com>
---
examples/multi_process/client_server_mp/mp_server/main.c | 1 +
1 file changed, 1 insertion(+)
Comments
05/06/2019 11:06, David Marchand:
> Caught on FreeBSD 12:
>
> /usr/include/netinet/ip.h:71:17: error: field 'ip_src' has incomplete type
> struct in_addr ip_src,ip_dst; /* source and dest address */
> ^~~~~~
>
> POSIX defines netinet/in.h as the right header for in_addr.
> Linux seems fine without it but let's include it explicitly.
>
> Signed-off-by: David Marchand <david.marchand@redhat.com>
Please could you add a "Fixes:" tag with Cc stable?
On Wed, Jun 5, 2019 at 11:26 AM Thomas Monjalon <thomas@monjalon.net> wrote:
> 05/06/2019 11:06, David Marchand:
> > Caught on FreeBSD 12:
> >
> > /usr/include/netinet/ip.h:71:17: error: field 'ip_src' has incomplete
> type
> > struct in_addr ip_src,ip_dst; /* source and dest address */
> > ^~~~~~
> >
> > POSIX defines netinet/in.h as the right header for in_addr.
> > Linux seems fine without it but let's include it explicitly.
> >
> > Signed-off-by: David Marchand <david.marchand@redhat.com>
>
> Please could you add a "Fixes:" tag with Cc stable?
>
We did not build the examples before.
Not sure what to tag as the "culprit".
The one that adds FreeBSD support ?
05/06/2019 11:36, David Marchand:
> On Wed, Jun 5, 2019 at 11:26 AM Thomas Monjalon <thomas@monjalon.net> wrote:
>
> > 05/06/2019 11:06, David Marchand:
> > > Caught on FreeBSD 12:
> > >
> > > /usr/include/netinet/ip.h:71:17: error: field 'ip_src' has incomplete
> > type
> > > struct in_addr ip_src,ip_dst; /* source and dest address */
> > > ^~~~~~
> > >
> > > POSIX defines netinet/in.h as the right header for in_addr.
> > > Linux seems fine without it but let's include it explicitly.
> > >
> > > Signed-off-by: David Marchand <david.marchand@redhat.com>
> >
> > Please could you add a "Fixes:" tag with Cc stable?
> >
>
> We did not build the examples before.
> Not sure what to tag as the "culprit".
> The one that adds FreeBSD support ?
I was thinking about the patch using in_addr so we can have a meaningful backport.
On Wed, Jun 5, 2019 at 11:52 AM Thomas Monjalon <thomas@monjalon.net> wrote:
> 05/06/2019 11:36, David Marchand:
> > On Wed, Jun 5, 2019 at 11:26 AM Thomas Monjalon <thomas@monjalon.net>
> wrote:
> >
> > > 05/06/2019 11:06, David Marchand:
> > > > Caught on FreeBSD 12:
> > > >
> > > > /usr/include/netinet/ip.h:71:17: error: field 'ip_src' has incomplete
> > > type
> > > > struct in_addr ip_src,ip_dst; /* source and dest address */
> > > > ^~~~~~
> > > >
> > > > POSIX defines netinet/in.h as the right header for in_addr.
> > > > Linux seems fine without it but let's include it explicitly.
> > > >
> > > > Signed-off-by: David Marchand <david.marchand@redhat.com>
> > >
> > > Please could you add a "Fixes:" tag with Cc stable?
> > >
> >
> > We did not build the examples before.
> > Not sure what to tag as the "culprit".
> > The one that adds FreeBSD support ?
>
> I was thinking about the patch using in_addr so we can have a meaningful
> backport.
>
I can't find the reason why this header is included and it goes back to the
initial release.
Removed this header include with a 1.2.3r0 and it builds fine :-)
@@ -11,6 +11,7 @@
#include <inttypes.h>
#include <sys/queue.h>
#include <errno.h>
+#include <netinet/in.h>
#include <netinet/ip.h>
#include <signal.h>