17. Sockets

Introduction

Writing a TCP Client

Writing a TCP Server

Communicating over TCP

Setting Up a UDP Client

Setting Up a UDP Server

Using UNIX Domain Sockets

Identifying the Other End of a Socket

Finding Your Own Name and Address

Closing a Socket After Forking

Writing Bidirectional Clients

Forking Servers

Pre-Forking Servers

Non-Forking Servers

Writing a Multi-Homed Server

Making a Daemon Server

Restarting a Server on Demand

Program: backsniff

Program: fwdport