php_sysvsem.h 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. /*
  2. +----------------------------------------------------------------------+
  3. | Copyright (c) The PHP Group |
  4. +----------------------------------------------------------------------+
  5. | This source file is subject to version 3.01 of the PHP license, |
  6. | that is bundled with this package in the file LICENSE, and is |
  7. | available through the world-wide-web at the following url: |
  8. | https://www.php.net/license/3_01.txt |
  9. | If you did not receive a copy of the PHP license and are unable to |
  10. | obtain it through the world-wide-web, please send a note to |
  11. | license@php.net so we can mail you a copy immediately. |
  12. +----------------------------------------------------------------------+
  13. | Author: Tom May <tom@go2net.com> |
  14. +----------------------------------------------------------------------+
  15. */
  16. #ifndef PHP_SYSVSEM_H
  17. #define PHP_SYSVSEM_H
  18. #ifdef HAVE_SYSVSEM
  19. extern zend_module_entry sysvsem_module_entry;
  20. #define sysvsem_module_ptr &sysvsem_module_entry
  21. #include "php_version.h"
  22. #define PHP_SYSVSEM_VERSION PHP_VERSION
  23. PHP_MINIT_FUNCTION(sysvsem);
  24. PHP_MINFO_FUNCTION(sysvsem);
  25. typedef struct {
  26. int key; /* For error reporting. */
  27. int semid; /* Returned by semget(). */
  28. int count; /* Acquire count for auto-release. */
  29. int auto_release; /* flag that says to auto-release. */
  30. zend_object std;
  31. } sysvsem_sem;
  32. #else
  33. #define sysvsem_module_ptr NULL
  34. #endif
  35. #define phpext_sysvsem_ptr sysvsem_module_ptr
  36. #endif /* PHP_SYSVSEM_H */