LIBNET(3)
π NAME π
libnet(3) β straight out of the libnet Programmers Guide β is a C library for packet creation and injection. No cap, thatβs the whole vibe. π¦
β¨ SYNOPSIS β¨
#include <libnet.h>
πΈ DESCRIPTION πΈ
Okay so bestie, libnet is a packet assembly library that gives you a portable interface for packet creation and injection. Itβs a high-level API that lets an application programmer construct and inject network packets, and it provides a simplified interface for low-level network packet shaping, handling and injection. Iconic behavior, honestly. π
libnet hides much of the tedium of packet creation from the application programmer β like multiplexing, buffer management, arcane packet header information, byte-ordering, OS-dependent issues, and much more. It features portable packet creation interfaces at the IP and link layer, plus a host of supplementary and complementary functionality. With libnet, quick and simple packet assembly applications can be whipped up with little effort. Give it a bit more time, and more complex programs can be written β traceroute(8) and ping(8) were easily rewritten using libnet and pcap(3). π₯
When youβre building applications with libnet, we recommend using pkg-config(1) to detect the presence and required version of libnet. The libnet-config(1) script is still bundled in the libnet distribution, but itβs considered deprecated in favor of pkg-config(1). Both can be used to get compiler and linker flags of the installed libnet library, as well as provide other useful information. For applications using GNU autotools, we recommend using the PKG_PROG_PKG_CONFIG and PKG_CHECK_MODULES m4 macros. π
NOTE: If you are writing your application withlibnet, includelibnet.h, which will include any additional header for you β rather than includinglibnet/libnet-functions.h,libnet/libnet-macros.hor any of the others. This is the way. π«Ά
π§ BACKWARDS COMPATIBILITY π§
Your old code (circa libnet 1.0.x) WILL NOT WORK with libnet >=1.1.x. Like, itβs giving βmiss me with that old APIβ energy, and it is not kidding. π See doc/MIGRATION.md for easy steps on porting your old code.
π SEE ALSO π
π AUTHORS π
The original author of libnet is Mike D. Schiffman. β¨
libnet has been maintained and extensively enhanced since 2009 by Sam Roberts. It is currently maintained by the Libnet Maintainers at GitHub:
<https://github.com/libnet/libnet>
π BUGS π
Suggestions, bug reports/fixes, and pull requests, see:
<https://github.com/libnet/libnet/issues>
π COPYRIGHT π
libnet is licensed under the 3-Clause BSD License.
This pageβs footer energy is libnet-1.3, dated 2023-10-24, LIBNET(3) β and thatβs the whole manual, bestie. Bye! π
π
π¦ where this page comes from
- opensuse-leap 16.0: libnet-devel 1.3-160000.3.2 Β· BSD-3-Clause
- opensuse-leap 16.0: libnet-devel 1.3-160000.3.2 Β· BSD-3-Clause
- opensuse-leap 16.0: libnet-devel 1.3-160000.3.2 Β· BSD-3-Clause
- opensuse-leap 16.0: libnet-devel 1.3-160000.3.2 Β· BSD-3-Clause
- opensuse-leap 16.0: libnet-doc 1.3-160000.3.2 Β· BSD-3-Clause
- opensuse-leap 16.0: libnet-doc 1.3-160000.3.2 Β· BSD-3-Clause
- opensuse-leap 16.0: libnet-doc 1.3-160000.3.2 Β· BSD-3-Clause
- opensuse-leap 16.0: libnet-doc 1.3-160000.3.2 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms