raw socket programming SOLVED

Alin-Adrian Anton aanton at reversedhell.net
Mon Jul 7 07:56:55 PDT 2003


Harti Brandt wrote:

>On Sun, 6 Jul 2003, Alin-Adrian Anton wrote:
>
>AA>Harti Brandt wrote:
>AA>
>AA>>On Sun, 6 Jul 2003, Alin-Adrian Anton wrote:
>AA>>
>AA>>AA>>>In file included from raw.c:7:
>AA>>AA>>>/usr/include/netinet/ip.h:156: syntax error before `n_long'
>AA>>AA>>>/usr/include/netinet/ip.h:159: syntax error before `n_long'
>AA>>
>AA>>You may want to include <netinet/in_systm.h>
>AA>>
>AA>>harti
>AA>>
>AA>>
>AA>
>AA>Yes, indeed this solves the n_long problem. This is how my include list
>AA>looks now:
>AA>
>AA>#include <sys/types.h>
>AA>#include <sys/socket.h>
>AA>#include <stdio.h>
>AA>#include <string.h>
>AA>#include <errno.h>
>AA>#include <netinet/in_systm.h>
>AA>#include <netinet/ip.h>
>AA>#include <netinet/in.h>
>AA>#include <unistd.h>
>AA>#include <netinet/tcp.h>
>AA>
>AA>And this is what I get when trying to compile:
>AA>
>AA>beast# cc -o raw raw.c
>AA>In file included from raw.c:7:
>AA>/usr/include/netinet/ip.h:73: field `ip_src' has incomplete type
>AA>/usr/include/netinet/ip.h:73: field `ip_dst' has incomplete type
>AA>/usr/include/netinet/ip.h:158: field `ipt_addr' has incomplete type
>AA>beast#
>
>Try to swap ip.h and in.h (in.h declares struct in_addr).
>
>harti
>  
>
Yes, it works now, with these includes:
-------------------------------
#include <sys/types.h>
#include <sys/socket.h>
#include <stdio.h>
#include <string.h>
#include <errno.h>

#include <netinet/in_systm.h>
#include <netinet/in.h>
#include <netinet/ip.h>

#include <unistd.h>
#include <netinet/tcp.h>
-------------------------------

Thank you very much everybody!

Best Regards,
Alin.




More information about the freebsd-hackers mailing list