[php-src] PR #23880: Fix GH-23879: Do not report AcceptFailed on non-blocking accept timeout

From: Date: Thu, 24 Sep 2026 08:11:41 +0000
Subject: [php-src] PR #23880: Fix GH-23879: Do not report AcceptFailed on non-blocking accept timeout
Groups: php.git-pulls 
Request: Send a blank email to git-pulls+get-38761@lists.php.net to get a copy of this message
Pull Request: https://github.com/php/php-src/pull/23880 Author: lazerg On a non-blocking listener, stream_socket_accept() with no client waiting went down the same path as a real failure and raised AcceptFailed ("Connection timed out"). That makes the usual "accept until empty" drain loop throw in StreamErrorMode::Exception, and the only way to tell it apart from something like fd exhaustion was the message text. The TCP and TLS transports now treat a poll timeout or EAGAIN on a non-blocking listener as "nothing to accept" and return success without a client, so stream_socket_accept() returns false without reporting an error. Blocking listeners still report the timeout as before. PHP_TIMEOUT_ERROR_VALUE moved from network.c to php_network.h so the transports can check for it. Fixes GH-23879

« previous php.git-pulls (#38761) next »