reactphp / socket

Async, streaming plaintext TCP/IP and secure TLS socket server and client connections for ReactPHP.
https://reactphp.org/socket/
MIT License
1.2k stars 156 forks source link

Improve error reporting when DNS lookup fails (happy eyeballs) #230

Closed clue closed 4 years ago

clue commented 4 years ago

Improve error reporting when DNS lookup fails (happy eyeballs). The rejection message now always contains the underlying DNS error message with more details.

Also fixes a fatal error with legacy PHP 5 where it would fail with a (catchable) fatal error when either DNS lookup fails. During test runs, this would automatically be turned into an Exception and would successfully reject the promise. Without an appropriate error handler, a soft DNS error (such as when IPv6 is not available) would previously terminate the program with a fatal error.

Builds on top of #224 and #225 Refs #171 and others