проблема с tcp.rst

Тема в разделе "WASM.NETWORKS", создана пользователем Flasher, 3 сен 2006.

  1. Flasher

    Flasher Member

    Публикаций:
    0
    Регистрация:
    31 янв 2004
    Сообщения:
    640
    Пакет собрал, вроди checksum'ы корректно считываются, но пакет отправляет с "Sequence number" значением ноль, хотя я задал значение 34 в 32 битном виде вот так:
    Код (Text):
    1.        mov eax,34
    2.        bswap eax
    3.        shr eax,32
    4.        mov (tcphdr ptr [esi]).th_seq,eax
    правильно-же?
    для наглядности - полный исходник в аттаче.
    Спасибо за внимание! :)
     
  2. ECk

    ECk Member

    Публикаций:
    0
    Регистрация:
    9 апр 2004
    Сообщения:
    454
    Адрес:
    Russia
    shr eax,32 обнуляет eax
     
  3. Flasher

    Flasher Member

    Публикаций:
    0
    Регистрация:
    31 янв 2004
    Сообщения:
    640
    брихня :)
    с invoke htonl,32 тож не катит...
     
  4. ECk

    ECk Member

    Публикаций:
    0
    Регистрация:
    9 апр 2004
    Сообщения:
    454
    Адрес:
    Russia
    если bswap сделал, зачем shr eax,32 делать?
    в еах 32 разряда - сдвигая все 32 направо ты его обнуляеь просто
     
  5. Flasher

    Flasher Member

    Публикаций:
    0
    Регистрация:
    31 янв 2004
    Сообщения:
    640
    bswap - эффект зеpкала относительно содеpжимого pегистpа
    Код (Text):
    1. mov eax, 12345678h                    ;5 байтов
    2. bswap eax ;2 байта
    3. ; тепеpь eax = 78563412h
    SHR Логический сдвиг вправо

    Где обнуление увидел?
    Был бы благодарен еслиб по делу писали....
     
  6. q_q

    q_q New Member

    Публикаций:
    0
    Регистрация:
    5 окт 2003
    Сообщения:
    1.706
    ECk
    На каком процессоре shr eax,32 обнуляет? У меня на тулике eax не меняется, afaik в этой команде процессор смотрит только на правые пять бит, а там нули, т.е. ничего не двигать. Вот shr eax,31 - обнулит.

    Flasher
    Где обнуление увидел?
    В твоем первом посте этой темы между bswap и mov стоит shr - зачем?.
     
  7. Flasher

    Flasher Member

    Публикаций:
    0
    Регистрация:
    31 янв 2004
    Сообщения:
    640
    q_q,
    по rfc
    Может не совсем правильно выразился.., но то что этот кусок кода рабочий - уверен...
     
  8. q_q

    q_q New Member

    Публикаций:
    0
    Регистрация:
    5 окт 2003
    Сообщения:
    1.706
    Flasher
    Мой вопрос был _зачем_ shr?

    по rfc
    В rfc не может быть упоминания а команде сдига. Давай ссылку на rfc.

    пакет отправляет с "Sequence number" значением ноль
    Где/как ты это определил?
    + где текст подпрограммы _chksum?
    + на всякий случай, какая вкрсия winpcap?
     
  9. Flasher

    Flasher Member

    Публикаций:
    0
    Регистрация:
    31 янв 2004
    Сообщения:
    640
    И в правду, что-то нету такого :)
    Поглядел через сниффер - Ethereal
    Версия 2 с чем-то.., уже давно не инсталировал.., 3 dll и sys перекидываю в нужные папки и фсё. (в новых версиях нужно ещё и регить в реестре чтоб заработал драйвер поэтому предпочитаю юзать старую..)