summaryrefslogtreecommitdiff
path: root/doc/libnet.Pod
blob: 6dd5cade3be5adf8a7cb7197041fb615b545f0af (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
=pod

=encoding utf8

=head1 NAME

libnet - A C library for packet creation and injection

=head1 SYNOPSIS

B<#include E<lt>libnet.hE<gt>>

=head1 DESCRIPTION

libnet is a packet assembly library that provides a portable interface for
packet creation and injection.

It is a high-level API that allows an application programmer to construct and
inject network packets. libnet provides a simplified interface for low-level
network packet shaping, handling and injection.

libnet hides much of the tedium of packet creation from the application
programmer such as multiplexing, buffer management, arcane packet header
information, byte-ordering, OS-dependent issues, and much more. libnet features
portable packet creation interfaces at the IP and link layer, as well
as a host of supplementary and complementary functionality. Using libnet, quick
and simple packet assembly applications can be whipped up with little effort.
With a bit more time, more complex programs can be written (L<traceroute(8)> and L<ping(8)> were easily rewritten using libnet and L<pcap(3)>.

When building applications with libnet, the L<libnet-config(1)> script or the L<pkg-config(1)> program can be used to return the compiler and linker flags
of the installed libnet library as well as give other useful information.

B<NOTE>: If you are writing your application with libnet, include F<libnet.h>,
which will include any additional header for you, rather than including
F<libnet/libnet-functions.h>, F<libnet/libnet-macros.h> or any of the others.

=head1 BACKWARDS COMPATIBILITY

Your old code (circa libnet B<1.0.x>) WILL NOT WORK with libnet> B<E<gt>=1.1.x>.
See B<doc/MIGRATION> for easy steps on porting your old code.

=head1 SEE ALSO

L<libnet-config(1)>, L<libnet-functions(3)>, L<libnet-macros(3)>

=head1 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 Ali Abdulkadir and available at

        <https://github.com/sgeto/libnet>

=head1 BUGS

For bugs, questions, patch submissions, desirable enhancements, etc. see:

        <https://github.com/sgeto/libnet/issues>

=head1 COPYRIGHT

libnet is licensed under the 3-Clause BSD License. You can basically
do whatever you want with it.

=cut