Add APUE ch18 code