<?xml version="1.0" encoding="utf-8"?> <!-- $Revision$ --> <refentry xmlns="http://docbook.org/ns/docbook" xml:id="function.socket-accept"> <refnamediv> <refname>socket_accept</refname> <refpurpose>Accepts a connection on a socket</refpurpose> </refnamediv> <refsect1 role="description"> &reftitle.description; <methodsynopsis> <type>resource</type><methodname>socket_accept</methodname> <methodparam><type>resource</type><parameter>socket</parameter></methodparam> </methodsynopsis> <para> After the socket <parameter>socket</parameter> has been created using <function>socket_create</function>, bound to a name with <function>socket_bind</function>, and told to listen for connections with <function>socket_listen</function>, this function will accept incoming connections on that socket. Once a successful connection is made, a new socket resource is returned, which may be used for communication. If there are multiple connections queued on the socket, the first will be used. If there are no pending connections, <function>socket_accept</function> will block until a connection becomes present. If <parameter>socket</parameter> has been made non-blocking using <function>socket_set_blocking</function> or <function>socket_set_nonblock</function>, &false; will be returned. </para> <para> The socket resource returned by <function>socket_accept</function> may not be used to accept new connections. The original listening socket <parameter>socket</parameter>, however, remains open and may be reused. </para> </refsect1> <refsect1 role="parameters"> &reftitle.parameters; <para> <variablelist> <varlistentry> <term><parameter>socket</parameter></term> <listitem> <para> A valid socket resource created with <function>socket_create</function>. </para> </listitem> </varlistentry> </variablelist> </para> </refsect1> <refsect1 role="returnvalues"> &reftitle.returnvalues; <para> Returns a new socket resource on success, or &false; on error. The actual error code can be retrieved by calling <function>socket_last_error</function>. This error code may be passed to <function>socket_strerror</function> to get a textual explanation of the error. </para> </refsect1> <refsect1 role="seealso"> &reftitle.seealso; <para> <simplelist> <member><function>socket_connect</function></member> <member><function>socket_listen</function></member> <member><function>socket_create</function></member> <member><function>socket_bind</function></member> <member><function>socket_strerror</function></member> </simplelist> </para> </refsect1> </refentry> <!-- Keep this comment at the end of the file Local variables: mode: sgml sgml-omittag:t sgml-shorttag:t sgml-minimize-attributes:nil sgml-always-quote-attributes:t sgml-indent-step:1 sgml-indent-data:t indent-tabs-mode:nil sgml-parent-document:nil sgml-default-dtd-file:"~/.phpdoc/manual.ced" sgml-exposed-tags:nil sgml-local-catalogs:nil sgml-local-ecat-files:nil End: vim600: syn=xml fen fdm=syntax fdl=2 si vim: et tw=78 syn=sgml vi: ts=1 sw=1 -->