{
memset(f, 0, sizeof *f);
- f->fd = syscall(SYS_open, filename, O_RDONLY|O_LARGEFILE|O_CLOEXEC, 0);
+ f->fd = sys_open(filename, O_RDONLY|O_CLOEXEC);
if (f->fd < 0) return 0;
+ __syscall(SYS_fcntl, f->fd, F_SETFD, FD_CLOEXEC);
f->flags = F_NOWR | F_PERM;
f->buf = buf + UNGET;