{"id":13417950,"url":"https://github.com/mfontanini/libtins","last_synced_at":"2025-04-11T09:33:58.148Z","repository":{"id":12062760,"uuid":"14649399","full_name":"mfontanini/libtins","owner":"mfontanini","description":"High-level, multiplatform C++ network packet sniffing and crafting library. ","archived":false,"fork":false,"pushed_at":"2024-07-26T15:11:23.000Z","size":5771,"stargazers_count":1943,"open_issues_count":160,"forks_count":384,"subscribers_count":99,"default_branch":"master","last_synced_at":"2025-04-03T10:07:18.176Z","etag":null,"topics":["libpcap","network","packet-analyser","packet-parsing","packets","pcap","sniffing"],"latest_commit_sha":null,"homepage":"http://libtins.github.io/","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-2-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mfontanini.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2013-11-23T19:59:46.000Z","updated_at":"2025-04-01T09:56:32.000Z","dependencies_parsed_at":"2024-01-07T22:49:44.654Z","dependency_job_id":"d54323a7-f397-46b4-be29-6f07ad91b9a7","html_url":"https://github.com/mfontanini/libtins","commit_stats":{"total_commits":1179,"total_committers":84,"mean_commits":"14.035714285714286","dds":"0.17726887192536045","last_synced_commit":"df509e7e36474c9b19c30686895d58b6aad0546a"},"previous_names":[],"tags_count":17,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mfontanini%2Flibtins","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mfontanini%2Flibtins/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mfontanini%2Flibtins/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mfontanini%2Flibtins/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mfontanini","download_url":"https://codeload.github.com/mfontanini/libtins/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248368402,"owners_count":21092353,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["libpcap","network","packet-analyser","packet-parsing","packets","pcap","sniffing"],"created_at":"2024-07-30T22:00:56.028Z","updated_at":"2025-04-11T09:33:58.127Z","avatar_url":"https://github.com/mfontanini.png","language":"C++","funding_links":[],"categories":["C++","TODO scan for Android support in followings","\u003ca id=\"79499aeece9a2a9f64af6f61ee18cbea\"\u003e\u003c/a\u003e浏览嗅探\u0026\u0026流量拦截\u0026\u0026流量分析\u0026\u0026中间人","\u003ca id=\"7bf0f5839fb2827fdc1b93ae6ac7f53d\"\u003e\u003c/a\u003e工具"],"sub_categories":["\u003ca id=\"99398a5a8aaf99228829dadff48fb6a7\"\u003e\u003c/a\u003e未分类-Network","\u003ca id=\"32739127f0c38d61b14448c66a797098\"\u003e\u003c/a\u003e嗅探\u0026\u0026Sniff"],"readme":"# libtins\n\n[![Build status](https://travis-ci.org/mfontanini/libtins.svg?branch=master)](https://travis-ci.org/mfontanini/libtins) \n[![Build status](https://ci.appveyor.com/api/projects/status/33n8ib68nx3tptib/branch/master?svg=true)](https://ci.appveyor.com/project/mfontanini/libtins/branch/master)\n\nlibtins is a high-level, multiplatform C++ network packet sniffing and \ncrafting library. \n\nIts main purpose is to provide the C++ developer an easy, efficient, \nplatform and endianess-independent way to create tools which need to \nsend, receive and manipulate specially crafted packets. \n\nIn order to read tutorials, examples and checkout some benchmarks of the\nlibrary, please visit:\n\nhttp://libtins.github.io/\n\n## Compiling ##\n\n[libtins](http://libtins.github.io/) depends on \n[libpcap](http://www.tcpdump.org/) and \n[openssl](http://www.openssl.org/), although the latter is not necessary \nif some features of the library are disabled.\n\nIn order to compile, execute:\n\n```Shell\n# Create the build directory\nmkdir build\ncd build\n\n# Configure the project. Add any relevant configuration flags\ncmake ../\n\n# Compile!\nmake\n```\n\n### Static/shared build\nNote that by default, only the shared object is compiled. If you would\nlike to generate a static library file, run:\n\n```Shell\ncmake ../ -DLIBTINS_BUILD_SHARED=0\n```\n\nThe generated static/shared library files will be located in the \n_build/lib_ directory.\n\n### C++11 support\n\nlibtins is noticeably faster if you enable _C++11_ support. Therefore, \nif your compiler supports this standard, then you should enable it. \nIn order to do so, use the _LIBTINS_ENABLE_CXX11_ switch:\n\n```Shell\ncmake ../ -DLIBTINS_ENABLE_CXX11=1\n```\n\n### TCP ACK tracker\n\nThe TCP ACK tracker feature requires the boost.icl library (header only).\nThis feature is enabled by default but will be disabled if the boost\nheaders are not found. You can disable this feature by using:\n\n```Shell\ncmake ../ -DLIBTINS_ENABLE_ACK_TRACKER=0\n```\n\nIf your boost installation is on some non-standard path, use \nthe parameters shown on the\n[CMake FindBoost help](https://cmake.org/cmake/help/v3.0/module/FindBoost.html)\n\n### WPA2 decryption\n\nIf you want to disable _WPA2_ decryption support, which will remove \nopenssl as a dependency for compilation, use the \n_LIBTINS_ENABLE_WPA2_ switch:\n\n```Shell\ncmake ../ -DLIBTINS_ENABLE_WPA2=0\n```\n\n### IEEE 802.11 support\n\nIf you want to disable IEEE 802.11 support(this will also disable \nRadioTap and WPA2 decryption), which will reduce the size of the \nresulting library in around 20%, use the _LIBTINS_ENABLE_DOT11_ switch:\n\n```Shell\ncmake ../ -DLIBTINS_ENABLE_DOT11=0\n```\n\n## Installing ##\n\nOnce you're done, if you want to install the header files and the \nshared object, execute as root:\n\n```Shell\nmake install\n```\n\nThis will install the shared object typically in _/usr/local/lib_. Note\nthat you might have to update ldconfig's cache before using it, so \nin order to invalidate it, you should run(as root):\n\n```Shell\nldconfig\n```\n\n## Running tests ##\n\nYou may want to run the unit tests on your system so you make sure\neverything works. In order to do so, you need to follow these steps:\n\n```Shell\n# This will fetch the googletest submodule, needed for tests\ngit submodule init\ngit submodule update\n\nmkdir build\ncd build\n\n# Use any options you want\ncmake .. \n\n# Compile tests\nmake tests\n\n# Run them\nmake test\n```\n\nIf you find that any tests fail, please create an ticket in the\nissue tracker indicating the platform and architecture you're using.\n\n## Examples ##\n\nYou might want to have a look at the examples located  in the \"examples\"\ndirectory. The same samples can be found online at:\n\nhttp://libtins.github.io/examples/\n\n## Contributing ##\n\nIf you want to report a bug or make a pull request, please have a look at \nthe [contributing](CONTRIBUTING.md) file before doing so.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmfontanini%2Flibtins","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmfontanini%2Flibtins","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmfontanini%2Flibtins/lists"}