Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

windows user mode network library

License

NotificationsYou must be signed in to change notification settings

kouzhudong/libnet

Repository files navigation

windows network library

建立本工程的目的。
这是一个应用层的收集(本地/本机)各种网路操作的集合,主要是API的用法,枚举和信息的收集。
注意:这不是一个扫描器,可以说是本地(本机)网络信息查看器。

本仓库办包含的内容:

  1. socket(raw)
  2. Spi(lsp)
  3. wfp 应用层,不包含驱动层。
  4. wlan(wifi)
  5. winhttp(proxy)
  6. wininet
  7. netblos 不包含驱动层。
  8. IpHelper 不包含驱动层。
  9. html
  10. firewall
  11. Netapi
  12. netsh 有待添加。

本仓库不包含的内容:

  1. 命名管道
  2. 邮件槽
  3. TDI
  4. WSK
  5. WFP 的 驱动层
  6. NDIS
  7. SSPI 驱动层和应用层都不包含。

本库的设计的几个规则:

  1. 尽量不调用日志函数。
    刚开始的时候还考虑是否使用日志,以及何种日志。
  2. 因为上一条,所以代码失败要返回详细的信息,也就是失败的原因。
  3. 因为上两条的原因,所以使用者要检查返回值,并记录日志。
  4. 代码不会主动抛异常。代码尽量屏蔽异常。但是不代表代码中没有异常。
    代码尽量捕捉异常并返回信息。
  5. 导出(对外公开的)的函数都是NTAPI调用格式。
  6. 代码尽量使用SAL(source-code annotation language:源代码批注语言)。
  7. 代码格式类似go和python.
  8. 代码尽量不使用硬编码。
  9. 代码开启静态的语法检查(启用Microsoft Code Analysis, 关闭Clang-Tidy)。
  10. 警告的等级是4级,且将警告视为错误。
  11. 代码的运行要过:驱动程序校验器/应用程序校验器/gflags.exe.
  12. 禁止使用断言(估计现在代码中还有不少断言)。
  13. 接口的参数只有基本类型和指针(没有类,模板和引用)。
  14. 只依赖操作系统的库,不再依赖第三方的库(特指动态库),当然crt,wil不可免。
  15. 所有接口皆为C接口,即EXTERN_C。
  16. C语言标准选择:ISO C17 (2018)标准 (/std:c17)。
  17. C++语言标准选择:ISO C++17 标准 (/std:c++17) 或者:预览 - 最新 C++ 工作草案中的功能 (/std:c++latest)。

特别说明:
本库只提供c/c++/rust调用接口文档,
其他的,如:ASM,C#,GO,PYTHON,JAVA,PHP等自行定义。

注意:接口或者回调的调用方式。__stdcall or __cdecl or __fastcall。


为了彰显本程序库的力量,特添加一个工程:

  1. 利用本程序库的功能而制作一个程序。
  2. 这个程序主要是显示网络信息,但还有别的功能。
  3. 这个程序没有利用驱动。
  4. 这个程序的名字叫:NetTool.exe吧!叫NetInfo.exe的格局有点小。
  5. 重写操作系统自带的网络工具,添加或扩展功能,修改BUG,至少显示给改进下(对齐,错位)。

About

windows user mode network library

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

[8]ページ先頭

©2009-2025 Movatter.jp