parse quota plists; as well as a getfsquota() function to retrieve quotas
for a single id from a single filesystem (whatever filesystem this is:
a local quota-enabled fs or NFS). This is build on functions getufsquota()
(for local filesystems with UFS-like quotas) and getnfsquota();
which are also available to userland programs.
move functions from quota2_subr.c to libquota or libprop as appropriate,
and ajust in-tree quota tools.
move some declarations from kernel headers to either sys/quota.h or
quota/quota.h as appropriate. ufs/ufs/quota.h still installed because
it's needed by other installed ufs headers.
ufs/ufs/quota1.h still installed as a quick&dirty way to get a code
using the old quotactl() to compile (just include ufs/ufs/quota1.h instead of
ufs/ufs/quota.h - old code won't compile without this change and this is
on purpose).
Discussed on tech-kern@ and tech-net@ (long thread, but not much about
libquota itself ...)
An "attribute specifier" is of the form `__attribute__
((ATTRIBUTE-LIST))'. An "attribute list" is a possibly empty
comma-separated sequence of "attributes", where each attribute is
[...]
- Bugfix: postscreen DNSBL scoring error. When a client disconnected
and then reconnected before all DNSBL results for the earlier
session arrived, DNSBL results for the earlier session would be
added to the score for the later session. This is very unlikely
to have affected any legitimate mail.
- Workaround: the SMTP client did not support mail to [ipv6:ipv6addr].
to 3 times max RPC size rather than 2 times. Avoids nasty TCP stalls observed
at Panix. Will require increase to sbmax via sysctl for those running really
huge NFS rsize/wsize (>64K).
- Make the pidfile name generation functions return their value as a return
value, not an output pointer. And homogenize these into a single function.
- Free allocated memory. Not truly necessary because the test cases die
immediately anyway, but nice to do.
- Remove the pidfile__ prefix from test case names. (This was in advance of
some changes I want to propose to pidfile(3), but it turns out my approach
was flawed. Preemptive smartness is evil!)
and after all io but before actually updating the cluster chain.
Both uvm_vnp_zerorange() and vtruncbuf() call get/putpages -> bmap -> pcbmap
and here the fat cache gets updated with information no longer valid after
truncation.
The cleanup routines were being used to kill the rump process and to delete
the temporary image file. These are things automatically done by atf-run,
but it looks like this code was added here to workaround a previous bug in
the atf-run code.
Note that, in the existing form, the cleanup routines segfault (haven't
spent the time to track down why). atf-run does not care about this
(although it should), buy Kyua does.
As a side effect, this has a teeny-tiny performance speedup in the execution
of the tests including this file.
OKed by njoly@.