невозможно прочитать заголовки tcp / ip - PullRequest
1 голос
/ 25 марта 2011

Я получаю эту ошибку: у «struct iphdr» нет члена с именем «ip_ttl» То же самое и для других участников, но не для протокола каково его решение? и у вас это происходит? PS: Я видел это на разных форумах, но не мог понять, почему он может обращаться к протоколу ipHeader->, а не к другим

1 Ответ

1 голос
/ 25 марта 2011

Если вы используете Linux, попробуйте взглянуть на /usr/include/linux/ip.h.Этот заголовочный файл определяет структуру:

struct iphdr {
#if defined(__LITTLE_ENDIAN_BITFIELD)
    __u8    ihl:4,
        version:4;
#elif defined (__BIG_ENDIAN_BITFIELD)
    __u8    version:4,
        ihl:4;
#else
#error  "Please fix <asm/byteorder.h>"
#endif
    __u8    tos;
    __be16  tot_len;
    __be16  id;
    __be16  frag_off;
    __u8    ttl;
    __u8    protocol;
    __sum16 check;
    __be32  saddr;
    __be32  daddr;
    /*The options start here. */
};

Как видите, имя поля ttl, а не ip_ttl.

...