Publicity from my web provider :



version

française
lcrzo

Introduction

Lcrzo is a network library.
Lcrzoex is a program containing usage examples for the library lcrzo.

Presentation of lcrzo

Lcrzo is a network library.
Its main objective is to easily create network test programs. This library provides network functionnalities for Ethernet, IP, UDP, TCP, ICMP, ARP and RARP protocols. It supports spoofing, sniffing, client and server creation. Furthermore, lcrzo contains high level functions dealing with data storage and handling. Using all these functions, you can quickly create a network test program. Lcrzo, which means "Laurent Constantin RéZO" (RéZO=Network in French), is available under the GNU LGPL license. This library was successfully installed under Linux, FreeBSD and Solaris.

The library lcrzo provides :
  + network functionnalities :
    - address conversion
    - packet encoding/decoding/printing
    - spoofing
    - real/virtual UDP/TCP clients/servers
    - sniffing
    - device(network board) dealing
    - etc.
  + and general functionnalities :
    - data conversion
    - chained list
    - IPC
    - etc.

Presentation of lcrzoex

Lcrzoex is a program containing usage examples for the library lcrzo.
Actually, lcrzoex contains more than 150 examples. The main objective of lcrzoex is to teach you how to use the library lcrzo. Every example can be compiled alone and modified to match your needs.

Examples provided by lcrzoex can be used in the following contexts :
  - discover the Ethernet address of a computer (examples 2, 3, 134, etc.)
  - sniff your LAN to detect what's going on (examples 7, 8, 9, etc.)
  - check the checksums created by a network program which isn't working (examples 16, 17, 18, etc.)
  - intercept a session and replay it as many times you want to strictly test your application (examples 10, 11, 12, 22, etc.)
  - verify if a router is well configured even if the needed computers are down (examples 48, ..., 53, etc.)
  - check if your router/firewall/computer blocks
    - IP protocols (examples 29, ..., 34, etc.)
    - IP options (examples 29, ..., 34, 73, ..., 79, etc.), source routing (examples 45, 56, 59, 62, etc.)
    - IP fragments (examples 44, 55, 58, 61, 72, etc.)
    - TCP options (examples 48, ..., 53, etc.)
    - ICMP types (examples 65, ..., 70, etc.)
    - ARP poisoning (examples 80, 81, 82, 83, etc.)
  - create a tcp/udp client with a special local port (examples 85, 89, 86, 93, 97, etc.)
  - convert between numbers (examples 139, ..., 148, etc.)
  - etc.

Supported platforms

Lcrzo was successfully installed on the following platforms :
- FreeBSD 3.1, 4.0 (Intel386)
- Linux Debian 2.1, 2.2 (Intel386)
- Linux Mandrake 7.0 (Intel386)
- Linux RedHat 5.0, 5.2, 6.1 (Intel386)
- Linux Slackware 3.4 (Intel386)
- Linux SuSE 5.1, 6.4 (Intel386)
- Solaris 2.5, 2.6 (Sparc)
- Solaris 2.7 (Intel386)
Lcrzo was deeply tested under Linux.

Download

Versions 3.x of the library lcrzo are available here.
The lcrzoex program is included in lcrzo library's sources.
If you want to be informed when a new version appears, drop me a note by email.
Versions 1.x and 2.x are obsolete (to be used only for old projects).

Please, give me feedback

Your feedback (bugs, improvements, etc.) helps the evolution of lcrzo. Further, the more I know it is used, the more it motivates me to developp.
I'm also interested in the programs you'll developp with lcrzo. The way you use it helps me to find new functionalities and ideas.
So, do not hesitate to contact me.

External references

Here are html pages which reference lcrzo.

home page
current email address : laurent.constantin@aql.fr
main server : http://www.laurentconstantin.com/ [you are here]
backup server : http://go.to/laurentconstantin/
backup server : http://laurentconstantin.est-la.com/