ip.h parse error (gcc 3.3.3, 5.2-CURRENT, 2003/01/25)

Giovanni P. Tirloni gpt at tirloni.org
Mon Jan 26 17:21:33 PST 2004


 I'm getting an error while trying to compile a small piece of code of
 mime that was compiling fine yesterday when the system was 5.1-RELEASE.

 These are the headers that I'm using:

 #include <sys/types.h>
 #include <sys/socket.h>
 #include <netinet/in.h>
 #include <netinet/ip.h>

 The only error I get is this one:

 > gcc -o divert_exceeded divert_exceeded.c
 In file included from divert_exceeded.c:4:
 /usr/include/netinet/ip.h:164: error: syntax error before "n_long"
 /usr/include/netinet/ip.h:167: error: syntax error before "n_long"

 Code snippet:

 union ipt_timestamp {
                n_long  ipt_time[1];
                struct  ipt_ta {
                        struct in_addr ipt_addr;
                        n_long ipt_time;
                } ipt_ta[1];
        } ipt_timestamp;

 and it won't generate the binary. I'm sorry that I don't really
 remember the output from yesteday (5.1-RELEASE) but I'm +/- sure it was
 giving me the same error, altough it would finish compilation. It was
 gcc 3.2.3 (or 3.2.2).

 I couldn't find a PR about this but I thought it would be better to ask
 for help here before. My code only creates a socket, bind it and try to
 receive from. Nothing really useful. In fact, it doesn't really do
 anything yet because I stopped coding trying to find how to fix this

 Giovanni P. Tirloni <gpt at tirloni.org>
 Fingerprint: 8C3F BEC5 79BD 3E9B EDB8  72F4 16E8 BA5E D031 5C26

More information about the freebsd-current mailing list