Squid internals IPC (src/ipc.c) (ctd.) How it works Create a connecting TCP, UDP or FIFO socket Label the fds with appropriate descriptions Fork off the external process Parent Close shared socket with child If a TCP or UDP socket, connect to the parent, and wait for a test HELLO Set the fds non-blocking Return the fds