This is stuff that your system ought to have but might not. Some of these are just quick fakes that do the right thing for C News but not in general; some are freely-redistributable portable implementations of the real thing. Dbz is a wrapper that imitates dbz's extra functionality using dbm. Fsync and symlink are C-News-specific fakes. The mem* and str* and *index functions come from Henry Spencer's public-domain string-functions implementation. Said implementation is somewhat in need of an updating to match ANSI C, and there are minor portability glitches, but in general these should do the right thing for you. Getopt is Henry Spencer's public-domain implementation of System III getopt. It differs from the System V one in minor ways. Mkdir may give problems if called from a setuid program and either your system does not implement setuid(geteuid()) or the program doesn't bother to do it. Otherwise it's fine. Putenv is crude but works.