Completely revamp the way getconf(1) works, for better adherence to the
intent of the Standard.
- Make getconf able to distinguish between configuration variables which
are entirely unknown and those which are merely not defined in the
compilation environment. The latter now get a more appropriate
"undefined\n" result rather than a diagnostic. This may not be
exactly right, but it's closer to the intent of the Standard than
the previous behavior.
- Support ``programming environments'' by validating that the environment
requested with the `-v' flag is the one-and-only execution environment.
(If more environments are supported for some platforms in the future,
multiple getconf(1) executables will be required, but a simple edit in
progenv.gperf will enable automatic support for it.) Document POSIX
standard programming environments.
- Add all of the 1003.1-2001 configuration variables. FreeBSD does not
support all of these (including some that are mandatory); getconf will
later be fixed to break the world should a required variable not be
defined.
As a result of all these changes, gperf is no longer adequate. Keep the
overall format and names of the files for now, to preserve revision history.
Use an awk script to process the .gperf files into C source, which does a
few things that gperf, as a more general tool, cannot do. The keyword
recognition function is no longer a perfect hash function.
This may obviate the need for gperf in the source tree.
- Add a small compile-time regression test to break the build if any of the
.gperf files declare conflicting token sets. (gperf itself would have done
this for the simple case of duplicate tokens in the same input file.)
Peter Wemm [Thu, 19 Sep 2002 03:36:25 +0000 (03:36 +0000)]
Add Yet Another Duplicate of the font.h and ukbdmap.h rules. Remove
the font8x16.o glue, since that appears to have died ages ago and has
no remaining references.
style nit: unsigned -> u_int in the kernel, particularly to
stay consistent in this file, and keep m_length() and m_fixhdr()
consistent with their prototypes in mbuf.h
John Baldwin [Wed, 18 Sep 2002 20:44:46 +0000 (20:44 +0000)]
For the default case of CPUTYPE not being set, don't define CPUTYPE to the
lowest value in order to get the right MACHINE_CPU values since setting
CPUTYPE can result in problems later in the buildkernel case. Instead,
set MACHINE_CPU directly and leave CPUTYPE alone.
Optimize the way we call BPF a tiny bit: If we chop the ether-header off
ourselves, call bpf before we do so, rather than re-construct the entire
thing afterwards.
Brian Feldman [Wed, 18 Sep 2002 16:25:59 +0000 (16:25 +0000)]
Update the usage string in the limits(1) manpage to include -b for
sbsize. Also, correct the format string in getopt(3) usage to reflect
that -b takes an argument, and correct another case of RLIMIT_SBSIZE
having been forgotten.
Juli Mallett [Wed, 18 Sep 2002 16:13:03 +0000 (16:13 +0000)]
Make the DEBUGF() macro portable by (ugh) adding a Debug() function, which
is merely printf() but to stderr. This takes care of the caveat which lead
to the use of a vararg macro -- getting everything to stderr.
Jacques Vidrine [Wed, 18 Sep 2002 14:17:14 +0000 (14:17 +0000)]
These RFCs and internet-drafts are not really needed in the base
system, and I've not been importing them lately. cvs rm them now
so they can be cleaned out of the attic later.
Tim J. Robbins [Wed, 18 Sep 2002 12:17:28 +0000 (12:17 +0000)]
Optimise the common case where no special encoding is in use (LC_CTYPE is "C"
or "POSIX", other European locales). Use __sgetc() and __sputc() where
possible to avoid a wasteful lock and unlock for each byte and to avoid
function call overhead.
Boris Popov [Wed, 18 Sep 2002 09:54:16 +0000 (09:54 +0000)]
Always open file in the DENYNONE mode and let the server to decide what is
good for this file.
This should allow read only access to file which is already opened on server.
Don Lewis [Wed, 18 Sep 2002 09:34:01 +0000 (09:34 +0000)]
Style and markup changes only.
Capitalize the first letter of the descriptions for the entries in the ERRORS
section if they are complete sentences and end the sentences with periods.
Fix implementation of rc variables $amd_flags and $amd_map_program in
rcNG. The $amd_flags variable was already taken over into $rc_flags
by run_rc_command() when amd_precmd() is executed, so changing
$amd_flags there no longer effects the actual execution of amd.
Hence in amd_precmd() the $rc_flags have to be adjusted instead.
Jeff Roberson [Wed, 18 Sep 2002 08:26:30 +0000 (08:26 +0000)]
- Split UMA_ZFLAG_OFFPAGE into UMA_ZFLAG_OFFPAGE and UMA_ZFLAG_HASH.
- Remove all instances of the mallochash.
- Stash the slab pointer in the vm page's object pointer when allocating from
the kmem_obj.
- Use the overloaded object pointer to find slabs for malloced memory.
Mike Barcroft [Wed, 18 Sep 2002 07:51:46 +0000 (07:51 +0000)]
ARIN has annoyingly started using caps when referencing
whois.apnic.net. To properly receive hints for recursive IP searches,
we convert a buffer to lowercase before searching for magic words.
PR: 42834
Submitted by: Andre Albsmeier <andre.albsmeier@mchp.siemens.de> (mostly)
X-MFC-After: re approval
Tim J. Robbins [Wed, 18 Sep 2002 06:11:21 +0000 (06:11 +0000)]
Mark mbmb(), mbrune(), and mbrrune() as deprecated functions. We want to
get applications to move to the ISO C interfaces as well as have the
freedom to replace the rune interfaces with ones that support stateful
conversions some time in the future.
Tim J. Robbins [Wed, 18 Sep 2002 05:58:11 +0000 (05:58 +0000)]
Reimplement the functionality of fgetrune(), fputrune(), and fungetrune()
here in terms of mbrtowc(), wcrtomb(), and the single-byte I/O functions.
The rune I/O functions are about to become deprecated in favour of the
ones provided by ISO C90 Amd. 1 and C99.
Make obrien happy. Add a bad awk script which emulates as much of
gperf's behavior as we ever actually needed here. This generates
a much-less-efficient keyword recognizer, but it's not like that matters
in this application. Makefile changes coming once this passes the world
test.
Sam Leffler [Tue, 17 Sep 2002 22:39:57 +0000 (22:39 +0000)]
MFC: Elan support;
o Recognize AMD Elan SC520 hostbridge.
o Add initialization code for the AMD Elan sc520 which maps the MMCR
into KVM and sets the i8254 frequency to the correct value.
o MAKEDEV entry for elan-mmcr device
Juli Mallett [Tue, 17 Sep 2002 22:31:26 +0000 (22:31 +0000)]
Move common use of if (DEBUG(FOO)) printf... to DEBUGF(FOO, ...), using
variable length arguments to a macro. Bump version as this makes DEBUG
statements *always* go to stderr rather than sometimes stdout. There are
a few stragglers, which I will take care of as soon as I can. Mostly these
relate to the need-for-death-of some of the remote job code.
Nearby stylistic nits and XXX added/fixed where appropriate.
Mike Barcroft [Tue, 17 Sep 2002 22:22:50 +0000 (22:22 +0000)]
o Add typedefs for mode_t, off_t, pid_t rather than including
<sys/types.h>.
o Use the relatively new visibility primitives for conditionals.
o Make O_SYNC an alias for O_FSYNC.
o Mark the F* names as deprecated.
o Add some comments to note missing POSIX requirements or options.
Matthew Dillon [Tue, 17 Sep 2002 22:21:37 +0000 (22:21 +0000)]
Guido reported an interesting bug where an FTP connection between a
Windows 2000 box and a FreeBSD box could stall. The problem turned out
to be a timestamp reply bug in the W2K TCP stack. FreeBSD sends a
timestamp with the SYN, W2K returns a timestamp of 0 in the SYN+ACK
causing FreeBSD to calculate an insane SRTT and RTT, resulting in
a maximal retransmit timeout (60 seconds). If there is any packet
loss on the connection for the first six or so packets the retransmit
case may be hit (the window will still be too small for fast-retransmit),
causing a 60+ second pause. The W2K box gives up and closes the
connection.