+ INTERNAL:
+
+ - Did a code audit using IBM's code checker program and made several
+ changes, including: replacing most of the strcpy() and sprintf() calls
+ with strlcpy(), snprintf(), and memcpy(); adding a 0-value to an enum
+ that had been intermingling a literal 0 with the defined enum values.
+
+ - Fixed a potential bug in f_name_cmp() when both the args are a
+ top-level "." dir (which doesn't happen in normal operations).
+
+ - Changed exit_cleanup() so that it can never return instead of exit.
+ The old code might return if it found the exit_cleanup() function
+ was being called recursively. The new code adds a check into the
+ logging functions so that they return back to the exit function
+ instead of recursing.
+