This is not a library issue, and nothing about it will be affected by discussing it here. The behavior you mention is determined by the kernel. How it behaves now is correct under the POSIX standard.