__init__.py 1.3 KB

123456789101112131415161718192021222324252627282930313233343536
  1. import sys
  2. """
  3. Platform-specific APIs.
  4. Public APIs are documented in platform.base.
  5. """
  6. from .base import listxattr, getxattr, setxattr, ENOATTR
  7. from .base import acl_get, acl_set
  8. from .base import set_flags, get_flags
  9. from .base import SaveFile, SyncFile, sync_dir, fdatasync, safe_fadvise
  10. from .base import swidth, API_VERSION
  11. from .base import process_alive, get_process_id, local_pid_alive, fqdn, hostname, hostid
  12. OS_API_VERSION = API_VERSION
  13. if not sys.platform.startswith(('win32', )):
  14. from .posix import process_alive, local_pid_alive
  15. # posix swidth implementation works for: linux, freebsd, darwin, openindiana, cygwin
  16. from .posix import swidth
  17. if sys.platform.startswith('linux'): # pragma: linux only
  18. from .linux import API_VERSION as OS_API_VERSION
  19. from .linux import listxattr, getxattr, setxattr
  20. from .linux import acl_get, acl_set
  21. from .linux import set_flags, get_flags
  22. from .linux import SyncFile
  23. elif sys.platform.startswith('freebsd'): # pragma: freebsd only
  24. from .freebsd import API_VERSION as OS_API_VERSION
  25. from .freebsd import listxattr, getxattr, setxattr
  26. from .freebsd import acl_get, acl_set
  27. elif sys.platform == 'darwin': # pragma: darwin only
  28. from .darwin import API_VERSION as OS_API_VERSION
  29. from .darwin import listxattr, getxattr, setxattr
  30. from .darwin import acl_get, acl_set