Network Programming with Perl

Lincoln D. Stein

Source Code, Errata, and Other Resources

These are the companion Web pages for Network Programming with Perl. Here you can find the source code for all examples in the book, errata, notes, and other resources.

About the Book

Network Programming with Perl is a comprehensive, example-rich guide to creating network-based applications using the Perl programming language. Among its many capabilities, modern Perl provides a straightforward and powerful interface to TCP/IP, and this book shows you how to leverage these capabilities to create robust, maintainable, and efficient custom client/server applications.

Source Code

The source code for each of the examples in the book is available as in online-browsable form, or as compressed archives:

Unpacking the .tar.gz Archive

The .tar.gz archive is suitable for most Unix users. You will need the tar and the gunzip programs, both of which are probably already installed on your system. If not, you can download both programs from the GNU Free Software directory.

After downloading perl_networking.tar.gz to your local machine, unpack it with this command:

% gunzip -c perl_networking.tar.gz | tar xvf -
Users of GNU tar can uncompress and unpack with a single command:
% tar zxvf perl_networking.tar.gz
The archive will unpack into a directory named perl_networking. Read the README file contained inside the directory for further installation directions.

Unpacking the .zip Archive

Macintosh users should have a recent version of UnStuffit, which can be downloaded from Alladin Systems. Windows users should have WinZIP, PKUNZIP or equivalent. WinZIP can be found at WinZip Computing, Inc.

Macintosh users: After downloading the .zip archive, drag it onto UnStuffit.

Windows users: Open the archive from within WinZIP, or double-click on it if you have WinZIP installed to recognize the .zip extension.

The archive will uncompress into a directory named perl_networking. Enter the directory, and follow the further installation instructions in the README file.


Important errata for the first printing can be found on the errata page.

Other Resources

While researching this book, I wrote several modules for managing TCP urgent data, multicasting, and other advanced topics. The pure-Perl versions of the modules are available as code examples in the book and in the source directory at this site. However, they require the h2ph tool to install. A better solution is to use a set of C language (XS extension) modules that I wrote as an alternative. For your convenience, these modules are available here:

These were current as of January 2001. More recent versions may be available on CPAN.

Chapter 16, The IO::Poll Module requires version 0.04 of IO::Poll, which is only available as part of Perl 5.7. For users of earlier versions of Perl, here is IO::Poll 0.04. To install it, just replace PERLLIB/IO/ with this file, where PERLLIB is the directory in which Perl's modules are installed.

Other Books by Lincoln Stein

Lincoln D. Stein,
Cold Spring Harbor Laboratory
Last modified: Sun Jan 7 18:46:56 EST 2001