summaryrefslogtreecommitdiff
path: root/sys/dev/microcode
diff options
context:
space:
mode:
authorsommerfe <sommerfe@NetBSD.org>1999-03-22 17:54:38 +0000
committersommerfe <sommerfe@NetBSD.org>1999-03-22 17:54:38 +0000
commit098b6f8e8a591fffc57f98a50354e7047eafda21 (patch)
tree2210abbf178afd1bca85aa0f7bbfd16af14e3ada /sys/dev/microcode
parent2f0f84b8e89fe880900e8a69fd75f8666c6d648d (diff)
Disallow descriptor-passing of descriptors which are open on
directories which aren't under the recipient's root. Clean up of many error conditions involving descriptor passing, to eliminate infinite loops, panics, premature garbage collection of sockets, and descriptor leaks: - Avoid letting unp_gc() see descriptors with a refcount of zero by removing them from the socket's queue before releasing them. - Avoid socket leak in PRU_ABORT (this will also gc descriptors queued on a not-yet accepted socket when the accepting socket goes away). - Put in block comment explaining how unp_gc() should work. - Correctly manage unp_defer count so we don't get stuck in an infinite loop with nothing to do. - Don't tie MARK and DEFER bits so closely together. - Mark descriptors queued on not-yet-accepted sockets as well. - Don't call sorflush on non-socket, it doesn't work very well. - Deal with discard of NULL file pointer. - Hopefully cause GC to converge faster by only deferring sockets in unp_mark().
Diffstat (limited to 'sys/dev/microcode')
0 files changed, 0 insertions, 0 deletions