reduce base::file::socket code
fix: splice flag behaviour