The Libnet Reference Manual v.02 / 10.27.99

Mike D. Schiffman



    This manual covers libnet up through version 1.0.0 (the "stable" release).  It does not cover the development release 1.1.x.



    Chapter 1    Introduction
    Chapter 2    Broad Overview
        2.1    Ports
        2.2    Getting Started
    Chapter 3    Design Decisions
        3.1    Modularity (interfaces and implementations)
        3.2    Nomenclature
        3.3    Error Handling and Reporting
        3.4    Assertions and Exit Points
        3.5    IPv4 vs. IPv6
        3.6    The Configure Script
    Chapter 4    A Means to an Ends
        4.1    The Order of Operations
            4.1.1    Memory Allocation and Initialization
            4.1.2    Network Initialization
            4.1.3    Packet Construction
            4.1.4    Packet Checksums
            4.1.5    Packet Injection
        4.2    Using the Configure Script
        4.3    IP-layer vs. Link Layer
        4.4    Spoofing Ethernet Addresses
        4.5    Raw Sockets Limitations
    Chapter 5    Internals
        5.1    Memory Management Functions
        5.2    Address Resolution Functions
        5.3    Packet Injection Support Functions
        5.4    Packet Construction Functions
        5.5    Support Functions
        5.6    Symbolic Constants
        5.7    Macros
        5.8    Structures (planned)
    Chapter 6    Sample Applications
        6.1    Example 1
        6.2    Example 2
        6.3    Example 3
        6.4    Example 4
    Chapter 7    References
        7.1    URLS