check_utility_compat(3)

check_utility_compat3

Determine whether a utility should be compatible

Usage

#include <unistd.h>

int

check_utility_compat(const char *utility);

Library

Standard C Library (libc, -lc)

Overview

The check_utility_compat() function checks whether utility should behave in a traditional (FreeBSD 4.7-compatible) manner, or in accordance with IEEE Std 1003.1-2001 (“POSIX.1”). The configuration is given as a comma-separated list of utility names; if the list is present but empty, all supported utilities assume their most compatible mode. The check_utility_compat() function first checks for an environment variable named _COMPAT_FreeBSD_4. If that environment variable does not exist, then check_utility_compat() will attempt to read the contents of a symbolic link named /etc/compat-FreeBSD-4-util. If no configuration is found, compatibility mode is disabled.

Return values

The check_utility_compat() function returns zero if utility should implement strict IEEE Std 1003.1-2001 (“POSIX.1”) behavior, and nonzero otherwise.

Files

/etc/compat-FreeBSD-4-util

If present, a symbolic link whose expansion gives system-wide default settings for the check_utility_compat() function.

Errors

No errors are detected.

Releases

56 releases since FreeBSD 5.0-RELEASE; the text changed 33 times.

  1. 5.0–5.5
  2. 6.0–6.3
  3. 6.4
  4. 7.0
  5. 7.1
  6. 7.2
  7. 7.3
  8. 7.4
  9. 8.0
  10. 8.1
  11. 8.2
  12. 8.3
  13. 8.4
  14. 9.0
  15. 9.1
  16. 9.2
  17. 9.3
  18. 10.0
  19. 10.1
  20. 10.2
  21. 10.3
  22. 10.4
  23. 11.0
  24. 11.1
  25. 11.2
  26. 11.3
  27. 11.4
  28. 12.0
  29. 12.1
  30. 12.2
  31. 12.3
  32. 12.4
  33. 13.0–13.2
  34. 13.3–16.0

History

The check_utility_compat() function first appeared in FreeBSD 5.0.

Authors

This manual page was written by Garrett Wollman ⟨[email protected]⟩.

From base 16.0-CURRENT-20261027-61c70dc16a79 in FreeBSD 16.0-CURRENT (2026-10-27). Parsed by carta from the page's mdoc source.