net: autoDestroy Socket
Refactors net.Socket into using autoDestroy functionality of streams.
During this refactoring due to slightly different timing of things other bugs got activated and needed to be resolved.
Also, the behaviour of net.Socket
and stream.Duplex
needed to be consolidated to have the same generic behaviour in terms of allowHalfOpen
.
Also fixes a close vs shutdown race https://github.com/nodejs/node/issues/32486#issuecomment-604072559
Checklist
-
make -j4 test
(UNIX), orvcbuild test
(Windows) passes -
tests and/or benchmarks are included -
documentation is changed or added -
commit message follows commit guidelines