2012-05-22 19:43:11 +02:00
|
|
|
/*
|
|
|
|
+----------------------------------------------------------------------+
|
|
|
|
| PHP Version 5 |
|
|
|
|
+----------------------------------------------------------------------+
|
2012-05-28 05:10:49 +02:00
|
|
|
| Copyright (c) 1997-2012 The PHP Group |
|
2012-05-22 19:43:11 +02:00
|
|
|
+----------------------------------------------------------------------+
|
|
|
|
| This source file is subject to version 3.01 of the PHP license, |
|
|
|
|
| that is bundled with this package in the file LICENSE, and is |
|
|
|
|
| available through the world-wide-web at the following url: |
|
|
|
|
| http://www.php.net/license/3_01.txt |
|
|
|
|
| If you did not receive a copy of the PHP license and are unable to |
|
|
|
|
| obtain it through the world-wide-web, please send a note to |
|
|
|
|
| license@php.net so we can mail you a copy immediately. |
|
|
|
|
+----------------------------------------------------------------------+
|
2012-05-28 05:10:49 +02:00
|
|
|
| Authors: Shuhei Tanuma <chobieeee@php.net> |
|
2012-05-22 19:43:11 +02:00
|
|
|
+----------------------------------------------------------------------+
|
|
|
|
*/
|
|
|
|
|
|
|
|
#include "php_uv.h"
|
2012-06-22 16:01:32 +02:00
|
|
|
#include <fcntl.h>
|
2012-05-22 19:43:11 +02:00
|
|
|
|
|
|
|
void php_uv_init(TSRMLS_D);
|
|
|
|
zend_class_entry *uv_class_entry;
|
|
|
|
|
2012-05-29 05:03:05 +02:00
|
|
|
/* TODO: will be add soon */
|
2012-05-22 19:43:11 +02:00
|
|
|
static zend_function_entry php_uv_methods[] = {
|
|
|
|
{NULL, NULL, NULL}
|
|
|
|
};
|
|
|
|
|
2012-05-23 06:35:28 +02:00
|
|
|
static int php_uv_class_init(TSRMLS_D)
|
2012-05-22 19:43:11 +02:00
|
|
|
{
|
|
|
|
zend_class_entry ce;
|
|
|
|
INIT_CLASS_ENTRY(ce, "UV", php_uv_methods);
|
|
|
|
uv_class_entry = zend_register_internal_class(&ce TSRMLS_CC);
|
|
|
|
//uv_class_entry->create_object = php_uv_new;
|
2012-05-23 06:35:28 +02:00
|
|
|
|
2014-01-03 07:37:18 +01:00
|
|
|
zend_declare_class_constant_long(uv_class_entry, "RUN_DEFAULT", sizeof("RUN_DEFAULT")-1, UV_RUN_DEFAULT TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "RUN_ONCE", sizeof("RUN_ONCE")-1, UV_RUN_ONCE TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "RUN_NOWAIT", sizeof("RUN_NOWAIT")-1, UV_RUN_NOWAIT TSRMLS_CC);
|
|
|
|
|
2012-06-23 07:18:38 +02:00
|
|
|
zend_declare_class_constant_long(uv_class_entry, "CHANGE", sizeof("CHANGE")-1, UV_CHANGE TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "RENAME", sizeof("RENAME")-1, UV_RENAME TSRMLS_CC);
|
2012-07-09 05:24:35 +02:00
|
|
|
zend_declare_class_constant_long(uv_class_entry, "READABLE",sizeof("READABLE")-1, UV_READABLE TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "WRITABLE",sizeof("WRITABLE")-1, UV_WRITABLE TSRMLS_CC);
|
2012-06-23 07:18:38 +02:00
|
|
|
|
2012-06-22 16:01:32 +02:00
|
|
|
zend_declare_class_constant_long(uv_class_entry, "O_RDONLY", sizeof("O_RDONLY")-1, O_RDONLY TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "O_WRONLY", sizeof("O_WRONLY")-1, O_WRONLY TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "O_RDWR", sizeof("O_RDWR")-1, O_RDWR TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "O_CREAT", sizeof("O_CREAT")-1, O_CREAT TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "O_EXCL", sizeof("O_EXCL")-1, O_EXCL TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "O_TRUNC", sizeof("O_TRUNC")-1, O_TRUNC TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "O_APPEND", sizeof("O_APPEND")-1, O_APPEND TSRMLS_CC);
|
2012-06-25 16:59:49 +02:00
|
|
|
|
Add UV::S_IFDIR + UV::S_IFREG constants
These constants allow differentiation between regular files (S_IFREG)
and directories (S_IFDIR) when used for bitwise AND operations against
the "mode" value returned from uv_fs_stat/fstat/lstat().
Example:
uv_fs_open(uv_default_loop(), __FILE__, UV::O_RDONLY, 0, function($r){
uv_fs_fstat(uv_default_loop(), $r, function($result, $da){
echo "is directory: ", ($da['mode'] & UV::S_IFDIR ? 'yes' : 'no'), "\n";
echo "if file: ", ($da['mode'] & UV::S_IFREG ? 'yes' : 'no'), "\n";
});
});
uv_run();
2014-06-18 15:33:53 +02:00
|
|
|
zend_declare_class_constant_long(uv_class_entry, "S_IFDIR", sizeof("S_IFDIR")-1, S_IFDIR TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "S_IFREG", sizeof("S_IFREG")-1, S_IFREG TSRMLS_CC);
|
|
|
|
|
2012-06-25 17:10:40 +02:00
|
|
|
#ifndef PHP_WIN32
|
2012-06-22 17:53:58 +02:00
|
|
|
zend_declare_class_constant_long(uv_class_entry, "O_NOCTTY", sizeof("O_NOCTTY")-1, O_NOCTTY TSRMLS_CC);
|
2012-06-22 16:01:32 +02:00
|
|
|
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "S_IRWXU", sizeof("S_IRWXU")-1, S_IRWXU TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "S_IRUSR", sizeof("S_IRUSR")-1, S_IRUSR TSRMLS_CC);
|
2013-01-31 17:54:13 +01:00
|
|
|
zend_declare_class_constant_long(uv_class_entry, "S_IWUSR", sizeof("S_IWUSR")-1, S_IWUSR TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "S_IXUSR", sizeof("S_IXUSR")-1, S_IXUSR TSRMLS_CC);
|
2012-06-22 16:01:32 +02:00
|
|
|
zend_declare_class_constant_long(uv_class_entry, "S_IRWXG", sizeof("S_IRWXG")-1, S_IRWXG TSRMLS_CC);
|
2013-02-04 17:56:42 +01:00
|
|
|
zend_declare_class_constant_long(uv_class_entry, "S_IRGRP", sizeof("S_IRGRP")-1, S_IRGRP TSRMLS_CC);
|
2012-06-22 16:01:32 +02:00
|
|
|
zend_declare_class_constant_long(uv_class_entry, "S_IWGRP", sizeof("S_IWGRP")-1, S_IWGRP TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "S_IXGRP", sizeof("S_IXGRP")-1, S_IXGRP TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "S_IRWXO", sizeof("S_IRWXO")-1, S_IRWXO TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "S_IROTH", sizeof("S_IROTH")-1, S_IROTH TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "S_IWOTH", sizeof("S_IWOTH")-1, S_IWOTH TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "S_IXOTH", sizeof("S_IXOTH")-1, S_IXOTH TSRMLS_CC);
|
2014-05-07 21:53:06 +02:00
|
|
|
|
|
|
|
/* Non-windows Signal Constants */
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIG_IGN", sizeof("SIG_IGN")-1, (long) SIG_IGN TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIG_DFL", sizeof("SIG_DFL")-1, (long) SIG_DFL TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIG_ERR", sizeof("SIG_ERR")-1, (long) SIG_ERR TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGHUP", sizeof("SIGHUP")-1, (long) SIGHUP TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGINT", sizeof("SIGINT")-1, (long) SIGINT TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGQUIT", sizeof("SIGQUIT")-1, (long) SIGQUIT TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGILL", sizeof("SIGILL")-1, (long) SIGILL TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGTRAP", sizeof("SIGTRAP")-1, (long) SIGTRAP TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGABRT", sizeof("SIGABRT")-1, (long) SIGABRT TSRMLS_CC);
|
|
|
|
#ifdef SIGIOT
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGIOT", sizeof("SIGIOT")-1, (long) SIGIOT TSRMLS_CC);
|
|
|
|
#endif
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGBUS", sizeof("SIGBUS")-1, (long) SIGBUS TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGFPE", sizeof("SIGFPE")-1, (long) SIGFPE TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGKILL", sizeof("SIGKILL")-1, (long) SIGKILL TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGUSR1", sizeof("SIGUSR1")-1, (long) SIGUSR1 TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGSEGV", sizeof("SIGSEGV")-1, (long) SIGSEGV TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGUSR2", sizeof("SIGUSR2")-1, (long) SIGUSR2 TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGPIPE", sizeof("SIGPIPE")-1, (long) SIGPIPE TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGALRM", sizeof("SIGALRM")-1, (long) SIGALRM TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGTERM", sizeof("SIGTERM")-1, (long) SIGTERM TSRMLS_CC);
|
|
|
|
#ifdef SIGSTKFLT
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGSTKFLT",sizeof("SIGSTKFLT")-1, (long) SIGSTKFLT TSRMLS_CC);
|
|
|
|
#endif
|
|
|
|
#ifdef SIGCLD
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGCLD", sizeof("SIGCLD")-1, (long) SIGCLD TSRMLS_CC);
|
|
|
|
#endif
|
|
|
|
#ifdef SIGCHLD
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGCHLD", sizeof("SIGCHLD")-1, (long) SIGCHLD TSRMLS_CC);
|
|
|
|
#endif
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGCONT", sizeof("SIGCONT")-1, (long) SIGCONT TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGSTOP", sizeof("SIGSTOP")-1, (long) SIGSTOP TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGTSTP", sizeof("SIGTSTP")-1, (long) SIGTSTP TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGTTIN", sizeof("SIGTTIN")-1, (long) SIGTTIN TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGTTOU", sizeof("SIGTTOU")-1, (long) SIGTTOU TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGURG", sizeof("SIGURG")-1, (long) SIGURG TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGXCPU", sizeof("SIGXCPU")-1, (long) SIGXCPU TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGXFSZ", sizeof("SIGXFSZ")-1, (long) SIGXFSZ TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGVTALRM",sizeof("SIGVTALRM")-1, (long) SIGVTALRM TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGPROF", sizeof("SIGPROF")-1, (long) SIGPROF TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGWINCH", sizeof("SIGWINCH")-1, (long) SIGWINCH TSRMLS_CC);
|
|
|
|
#ifdef SIGPOLL
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGPOLL", sizeof("SIGPOLL")-1, (long) SIGPOLL TSRMLS_CC);
|
|
|
|
#endif
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGIO", sizeof("SIGIO")-1, (long) SIGIO TSRMLS_CC);
|
|
|
|
#ifdef SIGPWR
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGPWR", sizeof("SIGPWR")-1, (long) SIGPWR TSRMLS_CC);
|
|
|
|
#endif
|
|
|
|
#ifdef SIGSYS
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGSYS", sizeof("SIGSYS")-1, (long) SIGSYS TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGBABY", sizeof("SIGBABY")-1, (long) SIGSYS TSRMLS_CC);
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#else
|
|
|
|
/* Windows Signal Constants */
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGBREAK", sizeof("SIGBREAK")-1, (long) SIGBREAK TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGINT", sizeof("SIGINT")-1, (long) SIGINT TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGHUP", sizeof("SIGHUP")-1, (long) SIGHUP TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "SIGWINCH", sizeof("SIGWINCH")-1, (long) SIGWINCH TSRMLS_CC);
|
2012-06-25 16:59:49 +02:00
|
|
|
#endif
|
2012-06-22 16:01:32 +02:00
|
|
|
|
2012-06-23 20:34:06 +02:00
|
|
|
zend_declare_class_constant_long(uv_class_entry, "AF_INET", sizeof("AF_INET")-1, AF_INET TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "AF_INET6", sizeof("AF_INET6")-1, AF_INET6 TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "AF_UNSPEC", sizeof("AF_UNSPEC")-1, AF_UNSPEC TSRMLS_CC);
|
|
|
|
|
2012-06-24 15:33:47 +02:00
|
|
|
zend_declare_class_constant_long(uv_class_entry, "LEAVE_GROUP", sizeof("LEAVE_GROUP")-1, UV_LEAVE_GROUP TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "JOIN_GROUP", sizeof("JOIN_GROUP")-1, UV_JOIN_GROUP TSRMLS_CC);
|
|
|
|
|
2012-07-15 19:50:38 +02:00
|
|
|
/* for uv_handle_type */
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "IS_UV_TCP", sizeof("IS_UV_TCP")-1, IS_UV_TCP TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "IS_UV_UDP", sizeof("IS_UV_UDP")-1, IS_UV_UDP TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "IS_UV_PIPE", sizeof("IS_UV_PIPE")-1, IS_UV_PIPE TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "IS_UV_IDLE", sizeof("IS_UV_IDLE")-1, IS_UV_IDLE TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "IS_UV_TIMER", sizeof("IS_UV_TIMER")-1, IS_UV_TIMER TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "IS_UV_ASYNC", sizeof("IS_UV_ASYNC")-1, IS_UV_ASYNC TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "IS_UV_LOOP", sizeof("IS_UV_LOOP")-1, IS_UV_LOOP TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "IS_UV_HANDLE", sizeof("IS_UV_HANDLE")-1, IS_UV_HANDLE TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "IS_UV_STREAM", sizeof("IS_UV_STREAM")-1, IS_UV_STREAM TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "IS_UV_ADDRINFO", sizeof("IS_UV_ADDRINFO")-1, IS_UV_ADDRINFO TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "IS_UV_PROCESS", sizeof("IS_UV_PROCESS")-1, IS_UV_PROCESS TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "IS_UV_PREPARE", sizeof("IS_UV_PREPARE")-1, IS_UV_PREPARE TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "IS_UV_CHECK", sizeof("IS_UV_CHECK")-1, IS_UV_CHECK TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "IS_UV_WORK", sizeof("IS_UV_WORK")-1, IS_UV_WORK TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "IS_UV_FS", sizeof("IS_UV_FS")-1, IS_UV_FS TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "IS_UV_FS_EVENT", sizeof("IS_UV_FS_EVENT")-1, IS_UV_FS_EVENT TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "IS_UV_TTY", sizeof("IS_UV_TTY")-1, IS_UV_TTY TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "IS_UV_FS_POLL", sizeof("IS_UV_FS_POLL")-1, IS_UV_FS_POLL TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "IS_UV_POLL", sizeof("IS_UV_POLL")-1, IS_UV_POLL TSRMLS_CC);
|
|
|
|
|
|
|
|
/* for guess handle */
|
2012-07-15 19:06:05 +02:00
|
|
|
zend_declare_class_constant_long(uv_class_entry, "UNKNOWN_HANDLE", sizeof("UNKNOWN_HANDLE")-1, UV_UNKNOWN_HANDLE TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "FILE", sizeof("FILE")-1, UV_FILE TSRMLS_CC);
|
|
|
|
#define XX(uc, lc) zend_declare_class_constant_long(uv_class_entry, #uc, sizeof(#uc)-1, UV_##uc TSRMLS_CC);
|
|
|
|
UV_HANDLE_TYPE_MAP(XX)
|
|
|
|
#undef XX
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "HANDLE_TYPE_MAX", sizeof("HANDLE_TYPE_MAX")-1, UV_HANDLE_TYPE_MAX TSRMLS_CC);
|
|
|
|
|
2012-07-22 14:54:19 +02:00
|
|
|
|
|
|
|
/* stdio flags */
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "IGNORE", sizeof("IGNORE")-1, UV_IGNORE TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "CREATE_PIPE", sizeof("CREATE_PIPE")-1, UV_CREATE_PIPE TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "INHERIT_FD", sizeof("INHERIT_FD")-1, UV_INHERIT_FD TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "INHERIT_STREAM", sizeof("INHERIT_STREAM")-1, UV_INHERIT_STREAM TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "READABLE_PIPE", sizeof("READABLE_PIPE")-1, UV_READABLE_PIPE TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "WRITABLE_PIPE", sizeof("WRITABLE_PIPE")-1, UV_WRITABLE_PIPE TSRMLS_CC);
|
|
|
|
|
|
|
|
/* process */
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "PROCESS_SETUID", sizeof("PROCESS_SETUID")-1, UV_PROCESS_SETUID TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "PROCESS_SETGID", sizeof("PROCESS_SETGID")-1, UV_PROCESS_SETGID TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "PROCESS_WINDOWS_VERBATIM_ARGUMENTS", sizeof("PROCESS_WINDOWS_VERBATIM_ARGUMENTS")-1, UV_PROCESS_WINDOWS_VERBATIM_ARGUMENTS TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "PROCESS_DETACHED", sizeof("PROCESS_DETACHED")-1, UV_PROCESS_DETACHED TSRMLS_CC);
|
|
|
|
|
2014-08-21 02:31:25 +02:00
|
|
|
#ifdef ENABLE_HTTPPARSER
|
|
|
|
/* http parser */
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "HTTP_BOTH", sizeof("HTTP_BOTH")-1, HTTP_BOTH TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "HTTP_REQUEST", sizeof("HTTP_REQUEST")-1, HTTP_REQUEST TSRMLS_CC);
|
|
|
|
zend_declare_class_constant_long(uv_class_entry, "HTTP_RESPONSE", sizeof("HTTP_RESPONSE")-1, HTTP_RESPONSE TSRMLS_CC);
|
|
|
|
#endif
|
|
|
|
|
2015-01-18 02:58:40 +01:00
|
|
|
#define PHP_UV_ERRNO_GEN(name, msg_notused) zend_declare_class_constant_long(uv_class_entry, ZEND_STRL(#name), UV_##name);
|
2012-07-23 15:50:06 +02:00
|
|
|
UV_ERRNO_MAP(PHP_UV_ERRNO_GEN)
|
|
|
|
#undef PHP_UV_ERRNO_GEN
|
|
|
|
|
2012-05-23 06:35:28 +02:00
|
|
|
return 0;
|
2012-05-22 19:43:11 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
void php_uv_init(TSRMLS_D)
|
|
|
|
{
|
|
|
|
php_uv_class_init(TSRMLS_C);
|
|
|
|
}
|