another layer of posix compat