mirror of
https://github.com/jart/cosmopolitan.git
synced 2025-06-04 03:32:27 +00:00
Rewrite Windows connect()
Our old code wasn't working with projects like Qt that call connect() in O_NONBLOCK mode multiple times. This change overhauls connect() to use a simpler WSAConnect() API and follows the same pattern as cosmo accept(). This change also reduces the binary footprint of read(), which no longer needs to depend on our enormous clock_gettime() function.
This commit is contained in:
parent
5469202ea8
commit
e142124730
25 changed files with 556 additions and 277 deletions
|
@ -28,6 +28,7 @@ struct Cursor {
|
|||
struct Fd {
|
||||
char kind;
|
||||
bool isbound;
|
||||
char connecting;
|
||||
unsigned flags;
|
||||
unsigned mode;
|
||||
long handle;
|
||||
|
@ -38,7 +39,6 @@ struct Fd {
|
|||
unsigned sndtimeo; /* millis; 0 means wait forever */
|
||||
void *connect_op;
|
||||
struct Cursor *cursor;
|
||||
struct sockaddr_storage peer;
|
||||
};
|
||||
|
||||
struct Fds {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue