call POSIX file API directly