-
Notifications
You must be signed in to change notification settings - Fork 7
network-related library glue for C projects in userland
License
fichtner/libpeak
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
libpeak -- network-related library glue ======================================= This library consists of several modules and generic base headers designed around the daily needs of network packet-related userland tools written in C. The available modules are: peak_audit: thread-safe runtime counters peak_jar: context-based circular buffer peak_li: lightweight inspection (DPI) peak_load: PCAP/PCAPNG/ERF/NETMON file reader peak_locate: geolocation database peak_magic: libmagic MIME type detection wrapper peak_number: string-based number comparison peak_netmap: simplified netmap(4) bindings peak_packet: packet preprocessor peak_store: PCAP file writer peak_stream: stream memory allocator peak_string: full-text string search peak_regex: full-text regex (pcre) search peak_track: tree-based flow tracker The available binaries are: flowsplit(1) split a PCAP trace file into smaller connection-based chunks (think SplitCap) geoconv(1) compile geolocation info into a binary file netfuse(1) bridge two network interfaces using netmap(4) peek(1) run a PCAP trace through lightweight DPI There's also a bunch of arch-independent base headers, which offer simple memory pools, runtime allocation wrappers, network address mapping, some hashes, output macros, spinlock/barrier wrappers, and so forth. A good introduction to the code would be its man pages. We take good care of them, so please look at them first. Licensing and contributions =========================== The library has been developed by Packetwerk and is released under the ISC license (see COPYING for details). We advocate open licensing and are happy to help in any way we can. Let us know! Feel free to fork or contribute back. To do so, use GitHub or send your patches to us via email. Contributions can also be made in the form of supplying trace files or hard to come by documentation to help maintain a reliable and free library. A big thanks goes out to the individual authors of this code, namely: Diego Assencio, Tobias Boertitz, Masoud Chelongar, Franco Fichtner, Ulrich Klein, Victor Pereira, Alexey Saushev and Thomas Siegmund. For further info check us out at http://packetwerk.com Basic directory layout ====================== bin/ project binaries contrib/ third-party bits include/ base headers lib/ specific modules regress/ test framework sample/ trace files scripts/ auxiliary stuff test/ test binaries Building and running the code ============================= The code builds fine on MacOS, NetBSD, OpenBSD, FreeBSD, DragonFly BSD and Linux. The following packes must be installed: * libmagic (development variety) * pcre (development variety) * bmake or pmake (non-BSD) * flex/bison (non-BSD) Building the code: make Running the tests: cd regress && make Having fun: priceless ;)
About
network-related library glue for C projects in userland
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published