Skip to content

kaniteru/KaniDivert

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

KaniDivert

KaniDivert is a personal fork of WinDivert.


Features

  • CMake-based build system
  • Supports kernel driver and both static and shared library builds
  • Includes fixes and improvements from other forked repositories

Supported platforms

  • SYS

    • MSVC
      • x64: tested and working
      • x86: not tested
  • DLL

    • MSVC
      • x64: tested and working
      • x86: not tested
    • MinGW
      • x64: not tested
      • x86: not tested

Installation

Using 'FetchContent' in CMake

  1. Include and fetch the repository

    include(FetchContent)
    FetchContent_Declare(
            kanidivert
            GIT_REPOSITORY https://github.com/kaniteru/KaniDivert
            GIT_TAG        master # You can replace 'master' with a specific tag or branch if needed.
    )
    FetchContent_MakeAvailable(kanidivert)
  2. Link to your project

    target_link_libraries(your_project PRIVATE kanidivert::shared)

    or

    target_link_libraries(your_project PRIVATE kanidivert::static)
  3. (Optional) Download official WinDivert driver files

    # Downloads the official .sys driver files on post build
    download_windivert_sys(your_project "dest_dir")

Using prebuilt binaries

  1. Download prebuilt binaries from the Releases page.
  2. If you're using the static library, make sure to define WINDIVERTSTATIC in your compiler flags.
  3. (Optional) Download official WinDivert driver files.

License

KaniDivert follows the same dual-license terms as the original WinDivert:

  • GNU Lesser General Public License (LGPL) v3, or
  • GNU General Public License (GPL) v2

This project also uses FindWDK (BSD 3-Clause License) for build system integration.

Please refer to the LICENSE file for full details.