20070605
    portability problem: unsigned short int is not guaranteed to be an
        16-bit integer. And unsigned long int is not guaranteed to be
        an 32-bit integer. impact: couldn't compile. fix: included
        inttypes.h and used uint16_t and uint32_t. Thanks, Wayne Marshall.
20040303
	portability problem: errno is not guaranteed to be an int. impact:
		couldn't compile. fix: changed "extern int errno;" to "#include
		<errno.h>".
