rust/library/std/src/sys
bors 3fbcfd2b6f Auto merge of #116132 - darthunix:connect_poll, r=cuviper
Make TCP connect handle EINTR correctly

According to the [POSIX](https://pubs.opengroup.org/onlinepubs/009695399/functions/connect.html) standard, if connect() is interrupted by a signal that is caught while blocked waiting to establish a connection, connect() shall fail and set errno to EINTR, but the connection request shall not be aborted, and the connection shall be established asynchronously. When the connection has been established asynchronously, select() and poll() shall indicate that the file descriptor for the socket is ready for writing.

The previous implementation differs from the recomendation: in a case of the EINTR we tried to reconnect in a loop and sometimes get EISCONN error (this problem was originally detected on MacOS).

1. More details about the problem in an [article](http://www.madore.org/~david/computers/connect-intr.html).
2. The original [issue](https://git.picodata.io/picodata/picodata/tarantool-module/-/issues/157).
2023-10-19 11:22:28 +00:00
..
common Add Minimal Std implementation for UEFI 2023-09-22 17:23:30 +05:30
hermit Auto merge of #116132 - darthunix:connect_poll, r=cuviper 2023-10-19 11:22:28 +00:00
itron Add a new helper to avoid calling io::Error::kind 2023-08-25 21:26:06 -04:00
personality Rewrite read_encoded_pointer conforming to strict provenance 2023-10-10 09:59:46 +02:00
sgx Auto merge of #111595 - fortanix:raoul/waitqueue_clarifications, r=workingjubilee 2023-10-06 11:12:13 +00:00
solid Auto merge of #116132 - darthunix:connect_poll, r=cuviper 2023-10-19 11:22:28 +00:00
uefi Implement args for UEFI 2023-10-15 18:45:13 +05:30
unix Auto merge of #116132 - darthunix:connect_poll, r=cuviper 2023-10-19 11:22:28 +00:00
unsupported Auto merge of #114590 - ijackson:stdio-stdio-2, r=dtolnay 2023-09-09 19:56:51 +00:00
wasi Use io_error_more on WASI 2023-10-06 19:05:45 +02:00
wasm std: replace generic thread parker with explicit no-op parker 2023-02-16 15:06:45 +01:00
windows Auto merge of #116132 - darthunix:connect_poll, r=cuviper 2023-10-19 11:22:28 +00:00
xous std: xous: add support for locks 2023-08-22 20:25:38 +08:00
mod.rs Use RawOsError for UEFI 2023-09-22 17:23:33 +05:30