{"id":13420296,"url":"https://github.com/the-tcpdump-group/libpcap","last_synced_at":"2025-05-13T18:11:25.016Z","repository":{"id":8026624,"uuid":"9435887","full_name":"the-tcpdump-group/libpcap","owner":"the-tcpdump-group","description":"the LIBpcap interface to various kernel packet capture mechanism","archived":false,"fork":false,"pushed_at":"2025-05-12T12:50:48.000Z","size":19873,"stargazers_count":2848,"open_issues_count":148,"forks_count":889,"subscribers_count":131,"default_branch":"master","last_synced_at":"2025-05-12T13:49:40.233Z","etag":null,"topics":["berkeley-packet-filter","bpf","bsd-packet-filter","libpcap","packet-capture","pcap","pcapng","sniffer"],"latest_commit_sha":null,"homepage":"https://www.tcpdump.org/","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/the-tcpdump-group.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES","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,"zenodo":null}},"created_at":"2013-04-14T21:46:36.000Z","updated_at":"2025-05-12T12:50:53.000Z","dependencies_parsed_at":"2023-10-05T04:34:11.870Z","dependency_job_id":"850467c6-5f98-4fa2-a5ff-0d5e8117472a","html_url":"https://github.com/the-tcpdump-group/libpcap","commit_stats":{"total_commits":5398,"total_committers":186,"mean_commits":"29.021505376344088","dds":0.2893664320118562,"last_synced_commit":"ab3f6a677ba66a9679c6f3412f0320a5776842d0"},"previous_names":[],"tags_count":52,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/the-tcpdump-group%2Flibpcap","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/the-tcpdump-group%2Flibpcap/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/the-tcpdump-group%2Flibpcap/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/the-tcpdump-group%2Flibpcap/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/the-tcpdump-group","download_url":"https://codeload.github.com/the-tcpdump-group/libpcap/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254000854,"owners_count":21997442,"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":["berkeley-packet-filter","bpf","bsd-packet-filter","libpcap","packet-capture","pcap","pcapng","sniffer"],"created_at":"2024-07-30T22:01:30.671Z","updated_at":"2025-05-13T18:11:24.967Z","avatar_url":"https://github.com/the-tcpdump-group.png","language":"C","funding_links":[],"categories":["TODO scan for Android support in followings","Networking","C","Networking and Internet","\u003ca id=\"8bc2e181f74ba67ec93fd2a13d95cc0c\"\u003e\u003c/a\u003elibpcap","网络和互联网","内存分配"],"sub_categories":["Advanced books","\u003ca id=\"b239f12aca7aa942b45836032cbef99a\"\u003e\u003c/a\u003e转换","高级书籍","网络"],"readme":"# LIBPCAP 1.x.y by [The Tcpdump Group](https://www.tcpdump.org)\n\n**To report a security issue please send an e-mail to security@tcpdump.org.**\n\nTo report bugs and other problems, contribute patches, request a\nfeature, provide generic feedback etc please see the\n[guidelines for contributing](CONTRIBUTING.md).\n\nThe [documentation directory](doc/) has README files about specific\noperating systems and options.\n\nAnonymous Git is available via:\n\n  https://github.com/the-tcpdump-group/libpcap.git\n\nThis directory contains source code for libpcap, a system-independent\ninterface for user-level packet capture.  libpcap provides a portable\nframework for low-level network monitoring.  Applications include\nnetwork statistics collection, security monitoring, network debugging,\netc.  Since almost every system vendor provides a different interface\nfor packet capture, and since we've developed several tools that\nrequire this functionality, we've created this system-independent API\nto ease in porting and to alleviate the need for several\nsystem-dependent packet capture modules in each application.\n\n```text\nformerly from\tLawrence Berkeley National Laboratory\n\t\tNetwork Research Group \u003clibpcap@ee.lbl.gov\u003e\n\t\tftp://ftp.ee.lbl.gov/old/libpcap-0.4a7.tar.Z\n```\n\n### Support for particular platforms and BPF\nFor some platforms there are `README.{system}` files that discuss issues\nwith the OS's interface for packet capture on those platforms, such as\nhow to enable support for that interface in the OS, if it's not built in\nby default.\n\nThe libpcap interface supports a filtering mechanism based on the\narchitecture in the BSD packet filter.  BPF is described in the 1993\nWinter Usenix paper ``The BSD Packet Filter: A New Architecture for\nUser-level Packet Capture''\n([compressed PostScript](https://www.tcpdump.org/papers/bpf-usenix93.ps.Z),\n[gzipped PostScript](https://www.tcpdump.org/papers/bpf-usenix93.ps.gz),\n[PDF](https://www.tcpdump.org/papers/bpf-usenix93.pdf)).\n\nAlthough most packet capture interfaces support in-kernel filtering,\nlibpcap utilizes in-kernel filtering only for the BPF interface.\nOn systems that don't have BPF, all packets are read into user-space\nand the BPF filters are evaluated in the libpcap library, incurring\nadded overhead (especially, for selective filters).  Ideally, libpcap\nwould translate BPF filters into a filter program that is compatible\nwith the underlying kernel subsystem, but this is not yet implemented.\n\nBPF is standard in NetBSD, FreeBSD, OpenBSD, DragonFly BSD, macOS, and\nSolaris 11; an older, modified and undocumented version is standard\nin AIX.\n\nLinux has a number of BPF based systems, and libpcap does not support\nany of the eBPF mechanisms as yet, although it supports many of the\nmemory mapped receive mechanisms.\nSee the [Linux-specific README](doc/README.linux) for more information.\n\n### Note to Linux distributions and *BSD systems that include libpcap:\n\nThere's now a rule to make a shared library, which should work on Linux\nand *BSD, among other platforms.\n\nIt sets the soname of the library to `libpcap.so.1`; this is what it\nshould be, **NOT** `libpcap.so.1.x` or `libpcap.so.1.x.y` or something such as\nthat.\n\nWe've been maintaining binary compatibility between libpcap releases for\nquite a while; there's no reason to tie a binary linked with libpcap to\na particular release of libpcap.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthe-tcpdump-group%2Flibpcap","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthe-tcpdump-group%2Flibpcap","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthe-tcpdump-group%2Flibpcap/lists"}