Page MenuHomeFreeBSD

D31699.diff
No OneTemporary

D31699.diff

diff --git a/sys/kern/uipc_syscalls.c b/sys/kern/uipc_syscalls.c
--- a/sys/kern/uipc_syscalls.c
+++ b/sys/kern/uipc_syscalls.c
@@ -484,7 +484,7 @@
{
struct socket *so;
struct file *fp;
- int error, interrupted = 0;
+ int error;
#ifdef CAPABILITY_MODE
if (IN_CAPABILITY_MODE(td) && (dirfd == AT_FDCWD))
@@ -522,11 +522,8 @@
while ((so->so_state & SS_ISCONNECTING) && so->so_error == 0) {
error = msleep(&so->so_timeo, &so->so_lock, PSOCK | PCATCH,
"connec", 0);
- if (error != 0) {
- if (error == EINTR || error == ERESTART)
- interrupted = 1;
+ if (error != 0)
break;
- }
}
if (error == 0) {
error = so->so_error;
@@ -534,8 +531,6 @@
}
SOCK_UNLOCK(so);
bad:
- if (!interrupted)
- so->so_state &= ~SS_ISCONNECTING;
if (error == ERESTART)
error = EINTR;
done1:

File Metadata

Mime Type
text/plain
Expires
Fri, Jun 26, 11:35 PM (7 h, 38 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
34374293
Default Alt Text
D31699.diff (813 B)

Event Timeline