diff options
| author | Garrett D'Amore <garrett@damore.org> | 2018-08-14 11:32:03 +0500 |
|---|---|---|
| committer | Garrett D'Amore <garrett@damore.org> | 2018-08-14 16:00:38 +0500 |
| commit | 658fe8b446905158437f4698933a971c15d29e9e (patch) | |
| tree | 0a51ea03d07ebe1fd2044be5fb477c734dd23d01 /src/platform | |
| parent | 77311bfcc94bba96cdee73ddcd1ac9a6d0ed17d2 (diff) | |
| download | nng-658fe8b446905158437f4698933a971c15d29e9e.tar.gz nng-658fe8b446905158437f4698933a971c15d29e9e.tar.bz2 nng-658fe8b446905158437f4698933a971c15d29e9e.zip | |
fixes #648 REQ protocol can hang on close
Actually the problem was in socket core, in particular in the
shutdown code. The socket shutdown is supposed to ensure that
no pipes were present on the socket, so that protocols need not
concern themselves with this. The code unfortunately was busted,
due to an ordering problem compounded by a race condition. This
fixes that, and changes the REQ protocol to avoid the blocking
condition altogether, and sprinkles a few assertions to validate
these rules are being adhered to.
Diffstat (limited to 'src/platform')
0 files changed, 0 insertions, 0 deletions
