tcphdr
От: Аноним  
Дата: 30.12.03 21:41
Оценка:
typedef    struct    TCPHeader {
    UCHAR    Source[2];
    UCHAR    Destination[2];
    UCHAR    Seq[4];
    UCHAR    Ack[4];
    UCHAR    Rsvd0:4;
    UCHAR    Offset:4;
    UCHAR    Flags:6;
    UCHAR    Rsvd1:2;
    UCHAR    Window[2];
    UCHAR    Checksum[2];
    UCHAR    UrgPoint[2];
    UCHAR    Data[1];
} TCPHeader;

Как вывести tcphdr->Source в понятном виде (т.е. в правильном!)?
Re: tcphdr
От: butcher Россия http://bu7cher.blogspot.com
Дата: 30.12.03 21:57
Оценка:
Здравствуйте, Аноним, Вы писали:


А>
А>typedef    struct    TCPHeader {
А>    UCHAR    Source[2];
А>    UCHAR    Destination[2];
А>    UCHAR    Seq[4];
А>    UCHAR    Ack[4];
А>    UCHAR    Rsvd0:4;
А>    UCHAR    Offset:4;
А>    UCHAR    Flags:6;
А>    UCHAR    Rsvd1:2;
А>    UCHAR    Window[2];
А>    UCHAR    Checksum[2];
А>    UCHAR    UrgPoint[2];
А>    UCHAR    Data[1];
А>} TCPHeader;
А>

А>Как вывести tcphdr->Source в понятном виде (т.е. в правильном!)?

 cout<<ntohs(tcphdr->Source);

Нет ничего невозможного..
Re[2]: tcphdr
От: Аноним  
Дата: 30.12.03 22:01
Оценка:
Здравствуйте, butcher, Вы писали:



B>
B> cout<<ntohs(tcphdr->Source);
B>

char b1[65535];
wsprintf(b1, "%s\n", ntohs(tcphdr->Source))?
Re: tcphdr
От: JimAndre  
Дата: 31.12.03 04:10
Оценка:
Здравствуйте, Аноним, Вы писали:


А>
А>typedef    struct    TCPHeader {
А>    UCHAR    Source[2];
А>    UCHAR    Destination[2];
А>    UCHAR    Seq[4];
А>    UCHAR    Ack[4];
А>    UCHAR    Rsvd0:4;
А>    UCHAR    Offset:4;
А>    UCHAR    Flags:6;
А>    UCHAR    Rsvd1:2;
А>    UCHAR    Window[2];
А>    UCHAR    Checksum[2];
А>    UCHAR    UrgPoint[2];
А>    UCHAR    Data[1];
А>} TCPHeader;
А>

А>Как вывести tcphdr->Source в понятном виде (т.е. в правильном!)?
Подсчитать только надо знать какай байт Source[2] младший и ntohs()
Re[2]: tcphdr
От: Аноним  
Дата: 31.12.03 10:33
Оценка:
Здравствуйте, JimAndre, Вы писали:


А>>Как вывести tcphdr->Source в понятном виде (т.е. в правильном!)?

JA>Подсчитать только надо знать какай байт Source[2] младший и ntohs()
А как, простите?
Re[3]: tcphdr
От: butcher Россия http://bu7cher.blogspot.com
Дата: 31.12.03 16:29
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, JimAndre, Вы писали:



А>>>Как вывести tcphdr->Source в понятном виде (т.е. в правильном!)?

JA>>Подсчитать только надо знать какай байт Source[2] младший и ntohs()
А>А как, простите?

не понимаю, в чём проблема-то?
или ты думаешь, что tcphdr->Source — это адрес источника? из названий структуры не совсем понятно, что это порт источника..
порт — это слово из двух байт в "сетевом" представлении, т.е. байты поменяны местами, нужно использовать функцию ntohs (Network to host short) для преобразования к "нормальному" виду.

Нет ничего невозможного..
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.