so it can't be completely fixed here. Putting -I paths to the current
headers in CFLAGS is more likely to break things than fix them, since
there is no reason why current headers should work with old libraries.
Other Makefiles that do this may only work because they are not used early
in the bootstrap. However, the usual problem with errno being defined in
terms of a nonexistent library doesn't seem to occur here, since we don't
reference errno.
a circular dependency problem, wherein rpcgen depends on the latest
includes, but those same includes depend on rpcgen to build
include/rpcsvc. This was causing the build or librpcsvc to fail
(like I said, only on upgrades of 9 month old sources).
If there's stylistic problems, tell me, I'll learn and fix them.
I did a buildworld with this, it should be safe.
Fix bug with od/hd/hexdump. "*" lines are supposed to indicate one or
duplicates of the previous line, but a small file with less then 16
characters of zeros in it will be falsy identified as a repeat of
the (non-existant) previous line. i.e. the first line of output winds
up being a "*". Added a bit of code to handle the degenerate 'there is
no previous line' case for the first line.
Increase the size of a number of buffers and replace strcpy/strcat/sprintf
with snprintf(). There was a minor and possibly not exploitable security
hole related to one sprintf().
Update chpass(1) manual page. Change the definition of the class
field and also reorganize the field list to match that of the
/etc/master.passwd file, to avoid confusion.
Remove the temp directory in trap.
Replace the buggy awk script with a correct perl script.
Don't make a copy of the input data anymore if the input is already
sorted (option -presort). This scheme avoid large temporary files in
/tmp.
to half compensate for broken scaling of p_pctcpu in the kernel, but the
previous commit removed this compensation. %cpu values will be wrong by
a factor of stathz/hz until the kernel is fixed. (The kernel gets it
wrong by a factor of stathz/hz, and top got the compensation wrong by
a factor of 100/stathz.)
because libpam is built shared only. There is a way to build PAM
into a static library that contains all (or a selected subset) of
the modules. But our Makefiles don't support that yet. Until I get
that working, just force NOSHARED=no in login's Makefile. Of
course, it still won't work if NOPIC is set.
Submitted by: bde
Change login to use PAM for authentication. I kept the built-in
passwd/NIS authentication support, to handle cases where the system
is missing its "/etc/pam.conf" file. S/Key and KerberosIV
authentication methods are removed from the login program, but
still available in PAM modules.
"Here is a new gencat(1) man page. It contains examples
and information not in the current man page (e.g., file
format) per the X/Open documentation. It also updates some
aspects of the X/Open documentation (e.g., the X/Open
document neglects to say how to embed a $quote character
into a string)."
Submitted by: Terry Lambert <tlambert@primenet.com>
Review and small corrections by: jkoshy
not complete, and it hasn't been touched for 18 months. All the
ifdefs obfuscate the code. I discussed the LOGIN_CAP_AUTH support
with its author and he agreed that it is a dead end. I am bringing
PAM into the tree within the next two weeks. It is much more
flexible than LOGIN_CAP_AUTH, and will serve as a superior replacement
for it.
Fix usage string. Fix getopt() string. Fix ordering of compatibility options.
fetch.1:
Fix synopsis. Fix ordering of T and t options. Fix minor grammar nit.
build 2.2-stable worlds on 3.0-current systems again. objformat
calls getobjformat(), which doesn't exist in 2.2's libc.
Technically there should have been a version number bump when it was
added in -current. But it's used in so few places that it hardly
seems worth that. Besides, the objformat program is very heavily
used during a make world; it won't hurt to have it load a little
faster.
BSD-able Makefile, add a man page (that also puts a bold warning about
the weakness of the encryption), and implement the -k option for
compatibility with other vendor's implementations. (Unlike those
other vendors, we actually also document this option and its
problems.)
There are more violations of style(9) in it, like the not-use of
getopt(3), but it's not worth the while fixing all of this.
Cryptbreakers Workbench. While arguably a rather weak encryption,
it's in some use in the Internet still, and provided by a bunch of
other Unix systesms, so we include it here for compatibility.
Silently agreed by: core
Also added entry for the debugger files as well. The PE format is
used for all Win32 platforms (Win95, Win98, WinNT and WinCE), so it is
nice to be able to tell what kind of thing the foo.dll.... Don't have
any data for powerpc formats, however...
headers under /usr/include, not just for the ones in <sys/ioctl.h>.
The generated file includes all headers that seem to define ioctls,
so build errors will probably occur if headers become less self-
sufficient than they are already. This is a feature. Build errors
shall not be fixed by adding more includes here.
Optionally generate a case statement instead of a list of if
statements. This source must be edited to change this. The case
statement should be non-optional. It currently can't be, because
many ioctl numbers are not unique.
This case did not need to be tested when RANLIBMAG was defined
(as when in an `aout' environment) because Arch_StatMember() treated
the two cases of the library not being present and a member of
the library not being present the same way, forcing a rebuild
of the library. Since in the ELF environment we don't look inside
archive libraries we now need to check if the archive library is
present in order to determine its `out-of-date'-ness.
(I hope I've been able to meet the Oct 15th freeze).
Reported-by: Steve Price (and a few others whom I've forgotten, sorry)
If it is ELF, print a diagnostic saying that it is not supported yet
by this program. This is a stop-gap anti-bug-report measure because
it looks like there won't be time to implement gcore's ELF support
before 3.0 is released.
struct linker_set around the contents of ELF linker sets. This tool
also generates setdef0.c and setdef1.c for the alpha and i386 rather than
having these duplicated all over the tree too.
This is required for building KLD modules.
execvp() in the child branch of a vfork(). Changed to use fork()
instead.
Some of these (mv, find, apply, xargs) might benefit greatly from
being rewritten to use vfork() properly.
PR: Loosely related to bin/8252
Approved by: jkh and bde
popen(), but worse. The child calls execvp(), which calls malloc()
a bit more than execl(), and it calls non-library functions that call
malloc() and who-knows-what else (stdio is called in at least some
error cases).
temporary file names were uninitialized if TMPDIR was set and 1 too
small otherwise.
Fixed style bugs in previous commit.
Fixed missing checks for malloc failure in previous commit.
Report malloc failure consistently, at least in temp.c.
bug:
"head -c <n>" never exit and loops forever (until it is killed),
if the input stream has fewer bytes than specified (n).
PR: bin/8225
Submitted-by: FUJIMOTO Kensaku <fujimoto@oscar.elec.waseda.ac.jp>
an ``a'' command that has an escaped newline on the
last line of the last script that we're processing.
This fixes exmh2/scripts/build when /etc/malloc.conf -> AJ
generation was causing unaligned access faults on the Alpha.
I have incremented the devstat version number, since this is an interface
change. You'll need to recompile libdevstat, systat, iostat, vmstat and
rpc.rstatd along with your kernel.
Partially Submitted by: Andrew Gallatin <gallatin@cs.duke.edu>
- if a command was specified and script(1) failed to execute it,
it would print the name of your shell in the error message
instead of that of the command that failed.
- since finish() was installed as a SIGCHLD handler, it would
often run before the main loop had had time to process the
last few bytes of output. This resulted in very strange
truncated error messages.
- script(1) would almost always return with an exit status of 0,
even if the command returned a non-zero exit status. This broke
my 'build world, install it and rebuild the kernel' scripts
because 'make installworld' would run even if 'make buildworld'
had failed.
option lets make look inside archive libraries when determining if a
library is out-of-date. I don't think that make should look inside
files, so this fix effectively tells it not to. If the decision is
made (by someone else) that make _should_ be doing this, it will need
to be taught how to recognise elf archive libraries.
Problem noticed by: Joseph Koshy <jkoshy@freebsd.org>
the executable file, so it will work for both a.out and ELF format
files. I have split the object format specific code into separate
source files. It's cleaner than it was before, but it's still
pretty crufty.
Don't cheat on your make world for this update. A lot of things
have to be rebuilt for it to work, including the compiler and all
of the profiled libraries.
a port so there is nothing to be done on that side now.
Approved by: jkh
===
To: "Jordan K. Hubbard" <jkh@time.cdrom.com>
cc: Andreas Klemm <andreas@klemm.gtn.com>, current@freebsd.org
Subject: Re: Make this a relese coordinator decision (was Re: ports-current/packages-current discontinued)
From: David Greenman <dg@root.com>
Date: Sun, 03 Aug 1997 20:23:31 -0700
>decision is, I'll respect it.
Another chance to architect people's principles...I can hardly wait. Seems
quite appropriate for a Sunday - I just need to get one of those collection
plates (and money envelopes) so I can profit, too. :-)
Tcl stays in /usr/src for now, but it needs to be kept up to date; same
for perl. If Jordan doesn't have "setup" (written in tcl) ready for 3.0,
then tcl will be yanked prior to the 3.0 release (and made into a port).
As for the ports tree only supporting the last FreeBSD release, this seems
sensible to me. The "ports" have always been a moving target between releases
and the problem is only going to get worse when we expand to supporting other
processor architectures. In any case, Satoshi is and always has been in charge
of the ports tree and whatever he wants to do with it (within reason :-)) is
his decision.
Does this cover the issue completely? I admit to deleting messages in this
thread with unusual fervor (people have FAR too much time on their hands!).
There's a fair bit of reasoning behind the above, but since everyone is sick
of arguing about this, I'll spare you the analysis.
-DG
David Greenman
Core-team/Principal Architect, The FreeBSD Project