modified:   apue.h