diff options
-rw-r--r-- | c/src/exec/libnetworking/rtems/rtems_select.c | 2 | ||||
-rw-r--r-- | c/src/lib/libnetworking/rtems/rtems_select.c | 2 | ||||
-rw-r--r-- | c/src/libnetworking/rtems/rtems_select.c | 2 | ||||
-rw-r--r-- | cpukit/libnetworking/rtems/rtems_select.c | 2 |
4 files changed, 8 insertions, 0 deletions
diff --git a/c/src/exec/libnetworking/rtems/rtems_select.c b/c/src/exec/libnetworking/rtems/rtems_select.c index 972bf2d650..2219c145f3 100644 --- a/c/src/exec/libnetworking/rtems/rtems_select.c +++ b/c/src/exec/libnetworking/rtems/rtems_select.c @@ -56,12 +56,14 @@ socket_select (struct socket *so, int which, rtems_id tid) case FREAD: if (soreadable(so)) return (1); + so->so_rcv.sb_flags |= SB_WAIT; so->so_rcv.sb_sel.si_pid = tid; break; case FWRITE: if (sowriteable(so)) return (1); + so->so_rcv.sb_flags |= SB_WAIT; so->so_snd.sb_sel.si_pid = tid; break; diff --git a/c/src/lib/libnetworking/rtems/rtems_select.c b/c/src/lib/libnetworking/rtems/rtems_select.c index 972bf2d650..2219c145f3 100644 --- a/c/src/lib/libnetworking/rtems/rtems_select.c +++ b/c/src/lib/libnetworking/rtems/rtems_select.c @@ -56,12 +56,14 @@ socket_select (struct socket *so, int which, rtems_id tid) case FREAD: if (soreadable(so)) return (1); + so->so_rcv.sb_flags |= SB_WAIT; so->so_rcv.sb_sel.si_pid = tid; break; case FWRITE: if (sowriteable(so)) return (1); + so->so_rcv.sb_flags |= SB_WAIT; so->so_snd.sb_sel.si_pid = tid; break; diff --git a/c/src/libnetworking/rtems/rtems_select.c b/c/src/libnetworking/rtems/rtems_select.c index 972bf2d650..2219c145f3 100644 --- a/c/src/libnetworking/rtems/rtems_select.c +++ b/c/src/libnetworking/rtems/rtems_select.c @@ -56,12 +56,14 @@ socket_select (struct socket *so, int which, rtems_id tid) case FREAD: if (soreadable(so)) return (1); + so->so_rcv.sb_flags |= SB_WAIT; so->so_rcv.sb_sel.si_pid = tid; break; case FWRITE: if (sowriteable(so)) return (1); + so->so_rcv.sb_flags |= SB_WAIT; so->so_snd.sb_sel.si_pid = tid; break; diff --git a/cpukit/libnetworking/rtems/rtems_select.c b/cpukit/libnetworking/rtems/rtems_select.c index 972bf2d650..2219c145f3 100644 --- a/cpukit/libnetworking/rtems/rtems_select.c +++ b/cpukit/libnetworking/rtems/rtems_select.c @@ -56,12 +56,14 @@ socket_select (struct socket *so, int which, rtems_id tid) case FREAD: if (soreadable(so)) return (1); + so->so_rcv.sb_flags |= SB_WAIT; so->so_rcv.sb_sel.si_pid = tid; break; case FWRITE: if (sowriteable(so)) return (1); + so->so_rcv.sb_flags |= SB_WAIT; so->so_snd.sb_sel.si_pid = tid; break; |