to satisfy the SuSv3/POSIX-2004/etc requirement that "If there is no
foreground process group, tcgetpgrp() shall return a value greater than 1
that does not match the process group ID of any existing process group."
Should fix PR standards/28493 and zsh.
(ie. just before we skip the per-page cache invalidations while tearing down
each context) instead of just before we recycle all the contexts in ctx_alloc().
the latter is not good enough since a (physically tagged) L1 cache line is
valid for all contexts, not just the one that was used to instantiate it.
fixes PRs 24126, 25669 and 27730.
some strange type names with their C99 equivalent.
This avoids sign extension of 32bit fields (like the file size) on 64bit
archs.
Based on a patch supplied by Olaf 'Rhialto' Seibert in PR kern/28471;
should fix that PR.
is set, so that the single-step trap happens in the thread's context
and not in the middle of _setcontext_u.
XXX might be able to do something here with iret, too, but it needs
more testing.
1. make fileops const
2. add 2 new negative errno's to `officially' support the cloning hack:
- EDUPFD (used to overload ENODEV)
- EMOVEFD (used to overload ENXIO)
3. Created an fdclone() function to encapsulate the operations needed for
EMOVEFD, and made all cloners use it.
4. Centralize the local noop/badop fileops functions to:
fnullop_fcntl, fnullop_poll, fnullop_kqfilter, fbadop_stat
parse a #include'd file which does not pass S_ISREG() if the environment variable
CPP_RESTRICTED is set.
This is primarily intended for use by programs such as calendar(1) which
use cpp to parse untrusted user files -- without this change (and the corresponding
change to calendar(1)), any user can cause a denial-of-service for the daily
calendar -a run by #include'ing a named pipe.
Many thanks to christos@netbsd for his help in polishing this.
directory, use the first found of:
./calendar
./.calendar
/etc/calendar
Note that currently only the first found of these is used (so that users may
override a system calendar placed in /etc if desired). Users who want can always
use #include to continue the chain...