Нужно заставить Ndis driver вести логи по человечески ...

Тема в разделе "WASM.NETWORKS", создана пользователем axl, 24 янв 2005.

  1. axl

    axl New Member

    Публикаций:
    0
    Регистрация:
    12 ноя 2004
    Сообщения:
    19
    Адрес:
    Russia
    Проблема в следующем, есть Ndis driver, который фильтрует сетевые пакеты. Но я незнаю как заставить его вести логи. Нужно сохранять в файл информацию о блокированных пакетах(информацию о пакете, порт назначения, протокол), IP - отправителя и время. Сейчас драйвер умеет выводить некоторую инфу в DBGPrint, но этот вариант не подходит. Заранее благодарю за оказаную помощь.
     
  2. Zufyxe

    Zufyxe New Member

    Публикаций:
    0
    Регистрация:
    13 авг 2004
    Сообщения:
    137
    Адрес:
    Russia
    В свое время я делал такой вариант при помощи win32 сервиса, упрощенно это выглядит так:

    - Сервис регистрирует свой EVENT в драйвере фильтра через IOCTL. И WaitForSingleObject.

    - Фильтр забивает логами буфер в памяти и ставит EVENT.

    - Сервис делает IRP_MJ_READ, и снова ждет, а другой поток сливает все это в файл.