minix/include
David van Moolenbroek e5cc85fdc4 Extend dupfrom(2) into copyfd(2)
This single function allows copying file descriptors from and to
processes, and closing a previously copied remote file descriptor.
This function replaces the five FD-related UDS backcalls. While it
limits the total number of in-flight file descriptors to OPEN_MAX,
this change greatly improves crash recovery support of UDS, since all
in-flight file descriptors will be closed instead of keeping them
open indefinitely (causing VFS to crash on system shutdown). With the
new copyfd call, UDS becomes simpler, and the concept of filps is no
longer exposed outside of VFS.

This patch also moves the checkperms(2) stub into libminlib, thus
fully abstracting away message details of VFS communication from UDS.

Change-Id: Idd32ad390a566143c8ef66955e5ae2c221cff966
2014-03-01 09:04:58 +01:00
..
arch arm:switch to dynamic configuration for the kernel. 2013-12-17 11:32:38 +01:00
arpa Removing obsolete _MINIX define 2013-02-26 09:44:20 +00:00
ddekit Upgrading build system to new NetBSD revision 2012-11-15 16:07:29 +01:00
heimdal Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
minix Extend dupfrom(2) into copyfd(2) 2014-03-01 09:04:58 +01:00
net Removing obsolete _NBSD_LIBC define 2013-02-26 09:44:24 +00:00
protocols Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
rpc Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
rpcsvc Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
ssp Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
sys Straighten ioctl.h 2014-03-01 09:04:53 +01:00
a.out.h <a.out.h>, MINIX style: remove as obsolete 2013-08-06 11:43:35 +02:00
aio.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
ar.h Import NetBSD's make 2010-02-04 16:52:54 +00:00
assert.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
atomic.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
bitstring.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
bm.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
cdbr.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
cdbw.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
complex.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
cpio.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
ctype.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
db.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
dirent.h Alignement on netbsd types, part 1 2014-02-18 11:25:01 +01:00
disktab.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
dlfcn.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
env.h vm: make WARNS=5 proof 2013-09-06 11:51:20 +02:00
err.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
errno.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
fenv.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
fetch.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
fmtmsg.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
fnmatch.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
fstab.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
fts.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
ftw.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
getopt.h We have sys/cdefs.h now, so remove hacks. 2010-06-17 15:14:57 +00:00
glob.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
grp.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
hesiod.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
iconv.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
ieeefp.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
ifaddrs.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
inttypes.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
iso646.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
kvm.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
langinfo.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
lib.h Extend dupfrom(2) into copyfd(2) 2014-03-01 09:04:58 +01:00
libgen.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
libutil.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
limits.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
link.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
link_aout.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
link_elf.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
locale.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
login_cap.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
lwp.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
Makefile Replacing timer_t by netbsd's timer_t 2014-03-01 09:04:54 +01:00
malloc.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
math.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
md2.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
memory.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
mntopts.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
monetary.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
mpool.h includes: header files for netbsd db code. 2010-07-14 14:52:02 +00:00
mqueue.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
ndbm.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
netconfig.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
netdb.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
netgroup.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
nl_types.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
nlist.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
nsswitch.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
paths.h include/paths.h: correct _PATH_MAILDIR 2013-03-23 13:29:55 +01:00
pwd.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
quota.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
randomid.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
ranlib.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
re_comp.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
regex.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
regexp.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
res_update.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
resolv.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
rmt.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
sa.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
sched.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
search.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
semaphore.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
setjmp.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
sgtty.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
signal.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
stab.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
stdbool.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
stddef.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
stdio.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
stdlib.h Enable devname(3) 2014-03-01 09:04:53 +01:00
string.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
stringlist.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
strings.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
struct.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
sysexits.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
tar.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
tgmath.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
time.h Replacing timer_t by netbsd's timer_t 2014-03-01 09:04:54 +01:00
ttyent.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
tzfile.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
ucontext.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
ulimit.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
unistd.h moving prototypes to lib.h 2014-02-18 11:25:01 +01:00
util.h Updating libutil from netbsd 2012-11-15 16:07:29 +01:00
utime.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
utmp.h Changing field utmp.ut_time from int to time_t 2013-01-14 11:36:27 +01:00
utmpx.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
uuid.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
varargs.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
vis.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
wchar.h Libraries updates and cleanup 2013-01-14 11:36:26 +01:00
wctype.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00
wordexp.h Full switch to clang/ELF. Drop ack. Simplify. 2012-02-14 14:52:02 +01:00