Don't use SIG_DFL or SIG_IGN for case label expressions. ANSI requires
such expressions to have integral type. "gcc -ansi -pedantic -W..."
fails to diagnose this constraint error.
Maintain pw_fields, and output same to password database.
!!!!!!!!
NB
!!!!!!!!
You MUST pwd_mkdb /etc/master.passwd before attempting to use the new
libc, or things may go wrong. (I doubt anything actually /will/ go
wrong, but the actual behavior is undefined. YOU HAVE BEEN WARNED.)
The database format is, however, backwards-compatible, so old executables
will still work.
Add a new field to the passwd structure, indicating which of the fields have
something in them, and which ones were left blank. This will be used
for YP support in a few minutes, and for user login classes if anyone cares
to implement them.
Function in this module bloodly called 'gethostname' and linked
with all pgms, you can imagine results!
Change 'gethostname' -> 'ntp_gettime', I don't know what real name
must be here but try to guess.
More elegant fix for short settings.
(Our existing fixes already plugged the security holes involved.)
Submitted by: Geoff Rehmet after consultation with David Burren
This is the present state of CTM version 2. Please do not ask for
subscriptions yet. Wait for the announcement.
CTM is my humble attempt to get -current out to people beyond TCP/IP
connections. This is for people with dial-up connections and such.
CTM can make a delta from one version to another of a source-tree, in
a efficient and verified way. Even if there are binary files in the
tree. It will even try to make the delta as small as possible.
It is OK with me if you yell "Bloating!" but I'll just forward your email
to some of the happy customers from CTM version 1, and let them tell you
what they think.
I will not put ctm into "make world" yet. For now it is just the logical
way to get the sources out to people who helps me test this.
Change level of setlocale hack enabling from compile option STARTUP_LOCALE
to check (via getenv) environment variable "ENABLE_STARTUP_LOCALE" at
runtime.
Submitted by: me per Bruce suggestion
Modified DEPENDS rule so that anything you depend on gets both
made AND installed. Folks, check out DEPENDS if you have one port
that depends on another! With this change, it should be really convenient
to use.
Restore the simple leap year calculation as a macro and document it so
that it doesn't become complicated again. The simple version works
for all leap years covered by 32-bit time_t's. The complicated version
doesn't work for all leap years covered by 64-bit time_t's since among
other reasons, the solar system is not stable for long enough.
Use new-style declarations for min/max functions so that
"gcc -Wstrict-prototypes" doesn't emit warnings about them.
Write each min/max functions on a single line so that the similarity and
triviality of the functions is more obvious.
Put the quad min/max functions in the correct place (aphabetical order).
The u_quad min/max functions are missing. Only 3 or 4 of the min/max
functions are actually used. sys/socketvar.h ``should use "lmin" but
it doesn't exist now''. lmin does exist now, but isn't used. Since we
depend on gcc for `inline', perhaps we should depend on it for __typeof
and function-expressions and use only macros min() and max() that work
for any types (I'm not sure how to handle mixed types).
Make GCC's back end be shared among all languages. cc, c++, and cpp now
no longer link against the whole library, since they don't require much
from it, but just compile the few small modules they actually need static.
This should save a measurable amount of space; compare:
-r-xr-xr-x 1 bin bin 155648 Sep 18 18:00 cc1*
-r-xr-xr-x 1 root bin 1048576 Sep 18 17:33 cc1.noshae*
Of course, the library takes up a bit of space, but when you add in the
savings from the C++ compiler, you more than make up the difference:
-r--r--r-- 1 bin bin 1157344 Sep 18 18:27 /usr/lib/libcc_int.so.26.0
-r-xr-xr-x 1 bin bin 491520 Sep 18 18:27 /usr/libexec/cc1plus*
Add (#ifdef'ed by STARTUP_LOCALE) following line to crt0.c
(void) setlocale(LC_ALL, "");
It will be easiest way now to make national chars available
for all ctype-oriented programs at once by simple:
setenv LANG Your_National_Charset
Default case (without "LANG" environment
variable) will be fully ANSI compatible (got "C" locale).
If "LANG" variable present, extention becomes active.
Effect of this extention is great: in one time all ctype
oriented programs can accept/print national characters
without any touching source/binary code, it is big win, IMHO.
This method is fully compatible with ISO8859-* and russian koi8-r
too (in general -- with all 8-bit character sets). I think
it is very useful.
I got this idea from Xenix locale implementation.
This extention is even never compiled in, unless you set
setenv STARTUP_LOCALE
before rebuilding crt0.c or corresponding variable in /etc/make.conf
1. Remove commented out CFLAGS+=-DDEBUG from Makefile
2. Clean up code so it compiles -Wall (except for sccsid's and copyright).
This included fixing several printf formats that where not correct,
and changing the data types of a few things.
3. Implement new option -i that produces indented mtree output files.
4. Implement new option -n that turns off directory comments.
5. Only emit /set records if something has changed since the last one.
This code is mostly taken from the 1.1 port (which was in turn taken from
Dave Mills's kern.tar.Z example). A few significant differences:
1) ntp_gettime() is now a MIB variable rather than a system call. A few
fiddles are done in libc to make it behave the same.
2) mono_time does not participate in the PLL adjustments.
3) A new interface has been defined (in <machine/clock.h>) for doing
possibly machine-dependent things around the time of the clock update.
This is used in Pentium kernels to disable interrupts, set `time', and
reset the CPU cycle counter as quickly as possible to avoid jitter in
microtime(). Measurements show an apparent resolution of a bit more than
8.14usec, which is reasonable given system-call overhead.
Added a missing ${DESTDIR}. The real problem is that stuff related to
floppy formatting is in /sys/i386/isa/fdreg.h, it should be in /usr/include
somewhere ??
Makefile: add ${LDDESTDIR} to linking of boot code so ${DESTDIR}/usr/lib
is used instead of /usr/lib
io.c: add #include <machine/cpufunc.h> as instructed by David Greenman to
avoid inb/outb linking errors.
NOTE: I just discovered that if GNUC is not used the inline functions will not be expanded from the include file and real inb/outb functions would
be needed.