in IPsec processing that is dependent on protocol and/or port can be bypassed.
Bug report, analysis and initial fix from Karl Knutsson.
Final patch and ok from degroote@
voltage for different frequencies. The fake table can be computed as
driven by the frequency here as well, but don't recompute the voltage as
it would result in an underflow.
Fix argument order in a debug message to match the format string.
to generate syscall_plain() with #defines to remove the trace calls.
Join the club of making micro-optimisations to this code to speed up
benchmarks of empty system calls (eg getpid()):
- Use __predict_false() to get fewer branches in the 'normal' path.
- Just copy all the arguments from the stack frame to 'args', since the
jump indirect for the switch statement is basically unpredicatable.
- Keep the (rather pointless) test for 0 arguments - just for higher
benchmark scores.
NB system call timing are dominated by other factors! I measured getppid()
as faster than getpid(), sometimes open("foo", -1) was also faster.
I also suspect that if trace_is_enabled(p) were a simple bit test (that
could be inlined), then the cost of the tests would be unmeasurable and
the syscall_plain/fancy fiasco could be expunged completely.
- Fix a memory leak in newgrp(). (Noted by ginsbach@.)
- If the new and old groups are the same, addgrp() does nothing so
exit early. (Noted by ginsbach@.)
- In newgrp(), if the new group isn't found in the in-core, check the
group membership list anyway as the in-core list may be full or
/etc/groups may have been edited since login. (Requested by
ginsbach@.)
- Deal with a full in-core group[] array in addgid() rather than
silently ignoring it and ending up with a group[] array that is
inconsistent with the current group.
- More explicit error handling in addgroup().
- Add a "bounce" command as requested by garbled@.
From the manpage:
bounce Takes a list of messages and prompts for an address to bounce the
messages to. All the original header fields are preserved except
for the ``Delivered-To'', ``X-Original-To'' and ``Status''
fields. The new ``To'' field contains the bounce address(es)
plus any addresses in the old ``To'' field minus the user's local
address and any on the alternates list. (See the alternates com-
mand.)