sysconf_posix.go 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. // Copyright 2018 Tobias Klauser. All rights reserved.
  2. // Use of this source code is governed by a BSD-style
  3. // license that can be found in the LICENSE file.
  4. //go:build darwin || dragonfly || freebsd || linux || openbsd
  5. package sysconf
  6. func sysconfPOSIX(name int) (int64, error) {
  7. switch name {
  8. case SC_ADVISORY_INFO:
  9. return _POSIX_ADVISORY_INFO, nil
  10. case SC_ASYNCHRONOUS_IO:
  11. return _POSIX_ASYNCHRONOUS_IO, nil
  12. case SC_BARRIERS:
  13. return _POSIX_BARRIERS, nil
  14. case SC_CLOCK_SELECTION:
  15. return _POSIX_CLOCK_SELECTION, nil
  16. case SC_CPUTIME:
  17. return _POSIX_CPUTIME, nil
  18. case SC_FSYNC:
  19. return _POSIX_FSYNC, nil
  20. case SC_IPV6:
  21. return _POSIX_IPV6, nil
  22. case SC_JOB_CONTROL:
  23. return _POSIX_JOB_CONTROL, nil
  24. case SC_MAPPED_FILES:
  25. return _POSIX_MAPPED_FILES, nil
  26. case SC_MEMLOCK:
  27. return _POSIX_MEMLOCK, nil
  28. case SC_MEMLOCK_RANGE:
  29. return _POSIX_MEMLOCK_RANGE, nil
  30. case SC_MONOTONIC_CLOCK:
  31. return _POSIX_MONOTONIC_CLOCK, nil
  32. case SC_MEMORY_PROTECTION:
  33. return _POSIX_MEMORY_PROTECTION, nil
  34. case SC_MESSAGE_PASSING:
  35. return _POSIX_MESSAGE_PASSING, nil
  36. case SC_PRIORITIZED_IO:
  37. return _POSIX_PRIORITIZED_IO, nil
  38. case SC_PRIORITY_SCHEDULING:
  39. return _POSIX_PRIORITY_SCHEDULING, nil
  40. case SC_RAW_SOCKETS:
  41. return _POSIX_RAW_SOCKETS, nil
  42. case SC_READER_WRITER_LOCKS:
  43. return _POSIX_READER_WRITER_LOCKS, nil
  44. case SC_REALTIME_SIGNALS:
  45. return _POSIX_REALTIME_SIGNALS, nil
  46. case SC_REGEXP:
  47. return _POSIX_REGEXP, nil
  48. case SC_SEMAPHORES:
  49. return _POSIX_SEMAPHORES, nil
  50. case SC_SHARED_MEMORY_OBJECTS:
  51. return _POSIX_SHARED_MEMORY_OBJECTS, nil
  52. case SC_SHELL:
  53. return _POSIX_SHELL, nil
  54. case SC_THREADS:
  55. return _POSIX_THREADS, nil
  56. case SC_TIMEOUTS:
  57. return _POSIX_TIMEOUTS, nil
  58. case SC_TIMERS:
  59. return _POSIX_TIMERS, nil
  60. case SC_VERSION:
  61. return _POSIX_VERSION, nil
  62. case SC_2_C_BIND:
  63. return _POSIX2_C_BIND, nil
  64. case SC_2_C_DEV:
  65. return _POSIX2_C_DEV, nil
  66. case SC_2_FORT_DEV:
  67. return -1, nil
  68. case SC_2_FORT_RUN:
  69. return -1, nil
  70. case SC_2_LOCALEDEF:
  71. return _POSIX2_LOCALEDEF, nil
  72. case SC_2_SW_DEV:
  73. return _POSIX2_SW_DEV, nil
  74. case SC_2_VERSION:
  75. return _POSIX2_VERSION, nil
  76. }
  77. return -1, errInvalid
  78. }