mirror of
https://github.com/simh/simh.git
synced 2026-04-15 16:11:13 +00:00
SOCKET: Implement missing non-blocking for TCP sockets opened with connect
Outbound connections are rare and most may have wanted explicit blocking behavior, so no one noticed the missing non-blocking case. Any place which did do outbound connects have explicitly added SIM_SOCK_OPT_BLOCKING so that the prior behavior is preserved. The SIM_SOCK_OPT_BLOCKING flag is no honored as it was originally intended to be.
This commit is contained in:
@@ -120,7 +120,7 @@ int sim_parse_addr_ex (const char *cptr, char *host, size_t hostlen, const char
|
||||
SOCKET sim_master_sock_ex (const char *hostport, int *parse_status, int opt_flags);
|
||||
#define sim_master_sock(hostport, parse_status) sim_master_sock_ex(hostport, parse_status, ((sim_switches & SWMASK ('U')) ? SIM_SOCK_OPT_REUSEADDR : 0))
|
||||
SOCKET sim_connect_sock_ex (const char *sourcehostport, const char *hostport, const char *default_host, const char *default_port, int opt_flags);
|
||||
#define sim_connect_sock(hostport, default_host, default_port) sim_connect_sock_ex(NULL, hostport, default_host, default_port, 0)
|
||||
#define sim_connect_sock(hostport, default_host, default_port) sim_connect_sock_ex(NULL, hostport, default_host, default_port, SIM_SOCK_OPT_BLOCKING)
|
||||
SOCKET sim_accept_conn_ex (SOCKET master, char **connectaddr, int opt_flags);
|
||||
#define sim_accept_conn(master, connectaddr) sim_accept_conn_ex(master, connectaddr, 0)
|
||||
int sim_check_conn (SOCKET sock, int rd);
|
||||
|
||||
Reference in New Issue
Block a user