<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <title>Predefined Constants</title> </head> <body><div class="manualnavbar" style="text-align: center;"> <div class="prev" style="text-align: left; float: left;"><a href="sockets.resources.html">Resource Types</a></div> <div class="next" style="text-align: right; float: right;"><a href="sockets.examples.html">Examples</a></div> <div class="up"><a href="book.sockets.html">Sockets</a></div> <div class="home"><a href="index.html">PHP Manual</a></div> </div><hr /><div id="sockets.constants" class="appendix"> <h1>Predefined Constants</h1> <p class="simpara"> The constants below are defined by this extension, and will only be available when the extension has either been compiled into PHP or dynamically loaded at runtime. </p> <dl> <dt id="constant.af-unix"> <span class="term"> <strong><code>AF_UNIX</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.af-inet"> <span class="term"> <strong><code>AF_INET</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.af-inet6"> <span class="term"> <strong><code>AF_INET6</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Only available if compiled with IPv6 support. </span> </dd> </dt> <dt id="constant.sock-stream"> <span class="term"> <strong><code>SOCK_STREAM</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.sock-dgram"> <span class="term"> <strong><code>SOCK_DGRAM</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.sock-raw"> <span class="term"> <strong><code>SOCK_RAW</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.sock-seqpacket"> <span class="term"> <strong><code>SOCK_SEQPACKET</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.sock-rdm"> <span class="term"> <strong><code>SOCK_RDM</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.msg-oob"> <span class="term"> <strong><code>MSG_OOB</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.msg-waitall"> <span class="term"> <strong><code>MSG_WAITALL</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.msg-peek"> <span class="term"> <strong><code>MSG_PEEK</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.msg-dontroute"> <span class="term"> <strong><code>MSG_DONTROUTE</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.msg-eor"> <span class="term"> <strong><code>MSG_EOR</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Not available on Windows platforms. </span> </dd> </dt> <dt id="constant.msg-eof"> <span class="term"> <strong><code>MSG_EOF</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Not available on Windows platforms. </span> </dd> </dt> <dt id="constant.so-debug"> <span class="term"> <strong><code>SO_DEBUG</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.so-reuseaddr"> <span class="term"> <strong><code>SO_REUSEADDR</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.so-reuseport"> <span class="term"> <strong><code>SO_REUSEPORT</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> This constant is only available in PHP 5.4.10 or later on platforms that support the <strong><code>SO_REUSEPORT</code></strong> socket option: this includes Mac OS X and FreeBSD, but does not include Linux or Windows. </span> </dd> </dt> <dt id="constant.so-keepalive"> <span class="term"> <strong><code>SO_KEEPALIVE</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.so-dontroute"> <span class="term"> <strong><code>SO_DONTROUTE</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.so-linger"> <span class="term"> <strong><code>SO_LINGER</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.so-broadcast"> <span class="term"> <strong><code>SO_BROADCAST</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.so-oobinline"> <span class="term"> <strong><code>SO_OOBINLINE</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.so-sndbuf"> <span class="term"> <strong><code>SO_SNDBUF</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.so-rcvbuf"> <span class="term"> <strong><code>SO_RCVBUF</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.so-sndlowat"> <span class="term"> <strong><code>SO_SNDLOWAT</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.so-rcvlowat"> <span class="term"> <strong><code>SO_RCVLOWAT</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.so-sndtimeo"> <span class="term"> <strong><code>SO_SNDTIMEO</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.so-rcvtimeo"> <span class="term"> <strong><code>SO_RCVTIMEO</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.so-type"> <span class="term"> <strong><code>SO_TYPE</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.so-error"> <span class="term"> <strong><code>SO_ERROR</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.tcp-nodelay"> <span class="term"> <strong><code>TCP_NODELAY</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Used to disable Nagle TCP algorithm. Added in PHP 5.2.7. </span> </dd> </dt> <dt id="constant.sol-socket"> <span class="term"> <strong><code>SOL_SOCKET</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.php-normal-read"> <span class="term"> <strong><code>PHP_NORMAL_READ</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.php-binary-read"> <span class="term"> <strong><code>PHP_BINARY_READ</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.sol-tcp"> <span class="term"> <strong><code>SOL_TCP</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.sol-udp"> <span class="term"> <strong><code>SOL_UDP</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> </dl> <p class="simpara"> The following constants are defined under Windows and UNIX-like platforms. Each constant is only defined if their equal is available on the platform. </p> <dl> <dt id="constant.socket-eintr"> <span class="term"> <strong><code>SOCKET_EINTR</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Interrupted system call. </span> </dd> </dt> <dt id="constant.socket-ebadf"> <span class="term"> <strong><code>SOCKET_EBADF</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Bad file number. </span> </dd> </dt> <dt id="constant.socket-eacces"> <span class="term"> <strong><code>SOCKET_EACCES</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Permission denied. </span> </dd> </dt> <dt id="constant.socket-efault"> <span class="term"> <strong><code>SOCKET_EFAULT</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Bad address. </span> </dd> </dt> <dt id="constant.socket-einval"> <span class="term"> <strong><code>SOCKET_EINVAL</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Invalid argument. </span> </dd> </dt> <dt id="constant.socket-emfile"> <span class="term"> <strong><code>SOCKET_EMFILE</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Too many open files. </span> </dd> </dt> <dt id="constant.socket-enametoolong"> <span class="term"> <strong><code>SOCKET_ENAMETOOLONG</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> File name too long. </span> </dd> </dt> <dt id="constant.socket-enotempty"> <span class="term"> <strong><code>SOCKET_ENOTEMPTY</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Directory not empty. </span> </dd> </dt> <dt id="constant.socket-eloop"> <span class="term"> <strong><code>SOCKET_ELOOP</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Too many symbolic links encountered. </span> </dd> </dt> <dt id="constant.socket-ewouldblock"> <span class="term"> <strong><code>SOCKET_EWOULDBLOCK</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Operation would block. </span> </dd> </dt> <dt id="constant.socket-eremote"> <span class="term"> <strong><code>SOCKET_EREMOTE</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Object is remote. </span> </dd> </dt> <dt id="constant.socket-eusers"> <span class="term"> <strong><code>SOCKET_EUSERS</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Too many users. </span> </dd> </dt> <dt id="constant.socket-enotsock"> <span class="term"> <strong><code>SOCKET_ENOTSOCK</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Socket operation on non-socket. </span> </dd> </dt> <dt id="constant.socket-edestaddrreq"> <span class="term"> <strong><code>SOCKET_EDESTADDRREQ</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Destination address required. </span> </dd> </dt> <dt id="constant.socket-emsgsize"> <span class="term"> <strong><code>SOCKET_EMSGSIZE</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Message too long. </span> </dd> </dt> <dt id="constant.socket-eprototype"> <span class="term"> <strong><code>SOCKET_EPROTOTYPE</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Protocol wrong type for socket. </span> </dd> </dt> <dt id="constant.socket-eprotonosupport"> <span class="term"> <strong><code>SOCKET_EPROTONOSUPPORT</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Protocol not supported. </span> </dd> </dt> <dt id="constant.socket-esocktnosupport"> <span class="term"> <strong><code>SOCKET_ESOCKTNOSUPPORT</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Socket type not supported. </span> </dd> </dt> <dt id="constant.socket-eopnotsupp"> <span class="term"> <strong><code>SOCKET_EOPNOTSUPP</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Operation not supported on transport endpoint. </span> </dd> </dt> <dt id="constant.socket-epfnosupport"> <span class="term"> <strong><code>SOCKET_EPFNOSUPPORT</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Protocol family not supported. </span> </dd> </dt> <dt id="constant.socket-eafnosupport"> <span class="term"> <strong><code>SOCKET_EAFNOSUPPORT</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Address family not supported by protocol. </span> </dd> </dt> <dt id="constant.socket-eaddrnotavail"> <span class="term"> <strong><code>SOCKET_EADDRNOTAVAIL</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Cannot assign requested address. </span> </dd> </dt> <dt id="constant.socket-enetdown"> <span class="term"> <strong><code>SOCKET_ENETDOWN</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Network is down. </span> </dd> </dt> <dt id="constant.socket-enetunreach"> <span class="term"> <strong><code>SOCKET_ENETUNREACH</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Network is unreachable. </span> </dd> </dt> <dt id="constant.socket-enetreset"> <span class="term"> <strong><code>SOCKET_ENETRESET</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Network dropped connection because of reset. </span> </dd> </dt> <dt id="constant.socket-econnaborted"> <span class="term"> <strong><code>SOCKET_ECONNABORTED</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Software caused connection abort. </span> </dd> </dt> <dt id="constant.socket-econnreset"> <span class="term"> <strong><code>SOCKET_ECONNRESET</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Connection reset by peer. </span> </dd> </dt> <dt id="constant.socket-enobufs"> <span class="term"> <strong><code>SOCKET_ENOBUFS</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> No buffer space available. </span> </dd> </dt> <dt id="constant.socket-eisconn"> <span class="term"> <strong><code>SOCKET_EISCONN</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Transport endpoint is already connected. </span> </dd> </dt> <dt id="constant.socket-enotconn"> <span class="term"> <strong><code>SOCKET_ENOTCONN</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Transport endpoint is not connected. </span> </dd> </dt> <dt id="constant.socket-eshutdown"> <span class="term"> <strong><code>SOCKET_ESHUTDOWN</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Cannot send after transport endpoint shutdown. </span> </dd> </dt> <dt id="constant.socket-etimedout"> <span class="term"> <strong><code>SOCKET_ETIMEDOUT</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Connection timed out. </span> </dd> </dt> <dt id="constant.socket-econnrefused"> <span class="term"> <strong><code>SOCKET_ECONNREFUSED</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Connection refused. </span> </dd> </dt> <dt id="constant.socket-ehostdown"> <span class="term"> <strong><code>SOCKET_EHOSTDOWN</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Host is down. </span> </dd> </dt> <dt id="constant.socket-ehostunreach"> <span class="term"> <strong><code>SOCKET_EHOSTUNREACH</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> No route to host. </span> </dd> </dt> <dt id="constant.socket-ealready"> <span class="term"> <strong><code>SOCKET_EALREADY</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Operation already in progress. </span> </dd> </dt> <dt id="constant.socket-einprogress"> <span class="term"> <strong><code>SOCKET_EINPROGRESS</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Operation now in progress. </span> </dd> </dt> </dl> <p class="simpara"> The following constants are only defined under Windows. </p> <dl> <dt id="constant.socket-enoprotoopt"> <span class="term"> <strong><code>SOCKET_ENOPROTOOPT</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.socket-eaddrinuse"> <span class="term"> <strong><code>SOCKET_EADDRINUSE</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.socket-etoomyrefs"> <span class="term"> <strong><code>SOCKET_ETOOMYREFS</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.socket-eproclim"> <span class="term"> <strong><code>SOCKET_EPROCLIM</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.socket-eduot"> <span class="term"> <strong><code>SOCKET_EDUOT</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.socket-estale"> <span class="term"> <strong><code>SOCKET_ESTALE</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.socket-ediscon"> <span class="term"> <strong><code>SOCKET_EDISCON</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.socket-sysnotready"> <span class="term"> <strong><code>SOCKET_SYSNOTREADY</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.socket-vernotsupported"> <span class="term"> <strong><code>SOCKET_VERNOTSUPPORTED</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.socket-notinitialised"> <span class="term"> <strong><code>SOCKET_NOTINITIALISED</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.socket-host-not-found"> <span class="term"> <strong><code>SOCKET_HOST_NOT_FOUND</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.socket-try-again"> <span class="term"> <strong><code>SOCKET_TRY_AGAIN</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.socket-no-recovery"> <span class="term"> <strong><code>SOCKET_NO_RECOVERY</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.socket-no-data"> <span class="term"> <strong><code>SOCKET_NO_DATA</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> <dt id="constant.socket-no-address"> <span class="term"> <strong><code>SOCKET_NO_ADDRESS</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> </span> </dd> </dt> </dl> <p class="simpara"> The following constants are only available on UNIX-like platforms. Each constant is only defined if their equal is available on the platform. </p> <dl> <dt id="constant.socket-eperm"> <span class="term"> <strong><code>SOCKET_EPERM</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Operation not permitted. </span> </dd> </dt> <dt id="constant.socket-enoent"> <span class="term"> <strong><code>SOCKET_ENOENT</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> No such file or directory. </span> </dd> </dt> <dt id="constant.socket-eio"> <span class="term"> <strong><code>SOCKET_EIO</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> I/O error. </span> </dd> </dt> <dt id="constant.socket-enxio"> <span class="term"> <strong><code>SOCKET_ENXIO</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> No such device or address. </span> </dd> </dt> <dt id="constant.socket-e2big"> <span class="term"> <strong><code>SOCKET_E2BIG</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Arg list too long. </span> </dd> </dt> <dt id="constant.socket-eagain"> <span class="term"> <strong><code>SOCKET_EAGAIN</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Try again. </span> </dd> </dt> <dt id="constant.socket-enomem"> <span class="term"> <strong><code>SOCKET_ENOMEM</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Out of memory. </span> </dd> </dt> <dt id="constant.socket-enotblk"> <span class="term"> <strong><code>SOCKET_ENOTBLK</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Block device required. </span> </dd> </dt> <dt id="constant.socket-ebusy"> <span class="term"> <strong><code>SOCKET_EBUSY</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Device or resource busy. </span> </dd> </dt> <dt id="constant.socket-eexist"> <span class="term"> <strong><code>SOCKET_EEXIST</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> File exists. </span> </dd> </dt> <dt id="constant.socket-exdev"> <span class="term"> <strong><code>SOCKET_EXDEV</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Cross-device link. </span> </dd> </dt> <dt id="constant.socket-enodev"> <span class="term"> <strong><code>SOCKET_ENODEV</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> No such device. </span> </dd> </dt> <dt id="constant.socket-enotdir"> <span class="term"> <strong><code>SOCKET_ENOTDIR</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Not a directory. </span> </dd> </dt> <dt id="constant.socket-eisdir"> <span class="term"> <strong><code>SOCKET_EISDIR</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Is a directory. </span> </dd> </dt> <dt id="constant.socket-enfile"> <span class="term"> <strong><code>SOCKET_ENFILE</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> File table overflow. </span> </dd> </dt> <dt id="constant.socket-enotty"> <span class="term"> <strong><code>SOCKET_ENOTTY</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Not a typewriter. </span> </dd> </dt> <dt id="constant.socket-enospc"> <span class="term"> <strong><code>SOCKET_ENOSPC</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> No space left on device. </span> </dd> </dt> <dt id="constant.socket-espipe"> <span class="term"> <strong><code>SOCKET_ESPIPE</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Illegal seek. </span> </dd> </dt> <dt id="constant.socket-erofs"> <span class="term"> <strong><code>SOCKET_EROFS</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Read-only file system. </span> </dd> </dt> <dt id="constant.socket-emlink"> <span class="term"> <strong><code>SOCKET_EMLINK</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Too many links. </span> </dd> </dt> <dt id="constant.socket-epipe"> <span class="term"> <strong><code>SOCKET_EPIPE</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Broken pipe. </span> </dd> </dt> <dt id="constant.socket-enolck"> <span class="term"> <strong><code>SOCKET_ENOLCK</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> No record locks available. </span> </dd> </dt> <dt id="constant.socket-enosys"> <span class="term"> <strong><code>SOCKET_ENOSYS</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Function not implemented. </span> </dd> </dt> <dt id="constant.socket-enomsg"> <span class="term"> <strong><code>SOCKET_ENOMSG</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> No message of desired type. </span> </dd> </dt> <dt id="constant.socket-eidrm"> <span class="term"> <strong><code>SOCKET_EIDRM</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Identifier removed. </span> </dd> </dt> <dt id="constant.socket-echrng"> <span class="term"> <strong><code>SOCKET_ECHRNG</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Channel number out of range. </span> </dd> </dt> <dt id="constant.socket-el2nsync"> <span class="term"> <strong><code>SOCKET_EL2NSYNC</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Level 2 not synchronized. </span> </dd> </dt> <dt id="constant.socket-el3hlt"> <span class="term"> <strong><code>SOCKET_EL3HLT</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Level 3 halted. </span> </dd> </dt> <dt id="constant.socket-el3rst"> <span class="term"> <strong><code>SOCKET_EL3RST</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Level 3 reset. </span> </dd> </dt> <dt id="constant.socket-elnrng"> <span class="term"> <strong><code>SOCKET_ELNRNG</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Link number out of range. </span> </dd> </dt> <dt id="constant.socket-eunatch"> <span class="term"> <strong><code>SOCKET_EUNATCH</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Protocol driver not attached. </span> </dd> </dt> <dt id="constant.socket-enocsi"> <span class="term"> <strong><code>SOCKET_ENOCSI</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> No CSI structure available. </span> </dd> </dt> <dt id="constant.socket-el2hlt"> <span class="term"> <strong><code>SOCKET_EL2HLT</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Level 2 halted. </span> </dd> </dt> <dt id="constant.socket-ebade"> <span class="term"> <strong><code>SOCKET_EBADE</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Invalid exchange. </span> </dd> </dt> <dt id="constant.socket-ebadr"> <span class="term"> <strong><code>SOCKET_EBADR</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Invalid request descriptor. </span> </dd> </dt> <dt id="constant.socket-exfull"> <span class="term"> <strong><code>SOCKET_EXFULL</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Exchange full. </span> </dd> </dt> <dt id="constant.socket-enoano"> <span class="term"> <strong><code>SOCKET_ENOANO</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> No anode. </span> </dd> </dt> <dt id="constant.socket-ebadrqc"> <span class="term"> <strong><code>SOCKET_EBADRQC</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Invalid request code. </span> </dd> </dt> <dt id="constant.socket-ebadslt"> <span class="term"> <strong><code>SOCKET_EBADSLT</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Invalid slot. </span> </dd> </dt> <dt id="constant.socket-enostr"> <span class="term"> <strong><code>SOCKET_ENOSTR</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Device not a stream. </span> </dd> </dt> <dt id="constant.socket-enodata"> <span class="term"> <strong><code>SOCKET_ENODATA</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> No data available. </span> </dd> </dt> <dt id="constant.socket-etime"> <span class="term"> <strong><code>SOCKET_ETIME</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Timer expired. </span> </dd> </dt> <dt id="constant.socket-enosr"> <span class="term"> <strong><code>SOCKET_ENOSR</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Out of streams resources. </span> </dd> </dt> <dt id="constant.socket-enonet"> <span class="term"> <strong><code>SOCKET_ENONET</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Machine is not on the network. </span> </dd> </dt> <dt id="constant.socket-enolink"> <span class="term"> <strong><code>SOCKET_ENOLINK</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Link has been severed. </span> </dd> </dt> <dt id="constant.socket-eadv"> <span class="term"> <strong><code>SOCKET_EADV</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Advertise error. </span> </dd> </dt> <dt id="constant.socket-esrmnt"> <span class="term"> <strong><code>SOCKET_ESRMNT</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Srmount error. </span> </dd> </dt> <dt id="constant.socket-ecomm"> <span class="term"> <strong><code>SOCKET_ECOMM</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Communication error on send. </span> </dd> </dt> <dt id="constant.socket-eproto"> <span class="term"> <strong><code>SOCKET_EPROTO</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Protocol error. </span> </dd> </dt> <dt id="constant.socket-emultihop"> <span class="term"> <strong><code>SOCKET_EMULTIHOP</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Multihop attempted. </span> </dd> </dt> <dt id="constant.socket-ebadmsg"> <span class="term"> <strong><code>SOCKET_EBADMSG</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Not a data message. </span> </dd> </dt> <dt id="constant.socket-enotuniq"> <span class="term"> <strong><code>SOCKET_ENOTUNIQ</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Name not unique on network. </span> </dd> </dt> <dt id="constant.socket-ebadfd"> <span class="term"> <strong><code>SOCKET_EBADFD</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> File descriptor in bad state. </span> </dd> </dt> <dt id="constant.socket-eremchg"> <span class="term"> <strong><code>SOCKET_EREMCHG</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Remote address changed. </span> </dd> </dt> <dt id="constant.socket-erestart"> <span class="term"> <strong><code>SOCKET_ERESTART</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Interrupted system call should be restarted. </span> </dd> </dt> <dt id="constant.socket-estrpipe"> <span class="term"> <strong><code>SOCKET_ESTRPIPE</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Streams pipe error. </span> </dd> </dt> <dt id="constant.socket-eprotoopt"> <span class="term"> <strong><code>SOCKET_EPROTOOPT</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Protocol not available. </span> </dd> </dt> <dt id="constant.socket-addrinuse"> <span class="term"> <strong><code>SOCKET_ADDRINUSE</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Address already in use. </span> </dd> </dt> <dt id="constant.socket-etoomanyrefs"> <span class="term"> <strong><code>SOCKET_ETOOMANYREFS</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Too many references: cannot splice. </span> </dd> </dt> <dt id="constant.socket-eisnam"> <span class="term"> <strong><code>SOCKET_EISNAM</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Is a named type file. </span> </dd> </dt> <dt id="constant.socket-eremoteio"> <span class="term"> <strong><code>SOCKET_EREMOTEIO</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Remote I/O error. </span> </dd> </dt> <dt id="constant.socket-edquot"> <span class="term"> <strong><code>SOCKET_EDQUOT</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Quota exceeded. </span> </dd> </dt> <dt id="constant.socket-enomedium"> <span class="term"> <strong><code>SOCKET_ENOMEDIUM</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> No medium found. </span> </dd> </dt> <dt id="constant.socket-emediumtype"> <span class="term"> <strong><code>SOCKET_EMEDIUMTYPE</code></strong> (<span class="type"><a href="language.types.integer.html" class="type integer">integer</a></span>) </span> <dd> <span class="simpara"> Wrong medium type. </span> </dd> </dt> </dl> </div> <hr /><div class="manualnavbar" style="text-align: center;"> <div class="prev" style="text-align: left; float: left;"><a href="sockets.resources.html">Resource Types</a></div> <div class="next" style="text-align: right; float: right;"><a href="sockets.examples.html">Examples</a></div> <div class="up"><a href="book.sockets.html">Sockets</a></div> <div class="home"><a href="index.html">PHP Manual</a></div> </div></body></html>