Mark Murray [Sat, 26 May 2001 17:40:09 +0000 (17:40 +0000)]
From the submitter:
$ PERL_DL_NONLAZY=1 perl -MPOSIX -e ''
Can't load '/usr/libdata/perl/5.6.0/mach/auto/POSIX/POSIX.so' for module
POSIX: /usr/libdata/perl/5.6.0/mach/auto/POSIX/POSIX.so: Undefined
symbol "sv_setptrobj" at /usr/libdata/perl/5.6.0/XSLoader.pm line 73.
at /usr/libdata/perl/5.6.0/mach/POSIX.pm line 24
Compilation failed in require.
BEGIN failed--compilation aborted.
This problem only exists in -CURRENT. Most often it is reproduced when
compiling some perl extension manually. Make test uses PERL_DL_NONLAZY,
and if a tested module uses POSIX, boom!
Luckily, we don't see it very often, mostly because the vast majority of
p5 ports do not perform the `make test' step.
Submitted by: Anton Berezin <tobez@tobez.org>
Needs to be a committer already: Anton Berezin <tobez@tobez.org>
David Malone [Sat, 26 May 2001 14:40:39 +0000 (14:40 +0000)]
Make dg_echo return up to the first 65536 bytes of a datagram.
The patch I used isn't quite the one Lars suggested, but the size
of the largest datagram you can recv isn't #defined anywhere, and
probably isn't even bounded for some protocols.
PR: 25050
Submitted by: Lars Eggert <larse@isi.edu>
Mark Murray [Sat, 26 May 2001 09:52:36 +0000 (09:52 +0000)]
Deconvolute the authentication mess, and hand total responsiblity
for authentication to PAM. This meens that WHEELSU-type logic can
now be effected in the pam.conf "su" configuration stack. While here,
clean up the mess that the code had assumed over years of hacking by
folks using different styles. ANSIfy.
There is more policy in here that can be handed over to PAM. This will
be revisited.
Currently, each wireless networking driver has it's own control program
despite the fact that most people want to set exactly the same settings
regardless of which card they have. It has been repeatidly suggested
that this configuration should be done via ifconfig. This patch
implements the required functionality in ifconfig and add support to the
wi and an drivers. It also provides partial, untested support for the
awi driver.
PR: 25577
Submitted by: Brooks Davis <brooks@one-eyed-alien.net>
David E. O'Brien [Fri, 25 May 2001 20:51:22 +0000 (20:51 +0000)]
The standard Xterm geometry is 80x24, not 80x_65_.
In the past 2 months or so, after rlogining into another host, the
environment has the geometry wrong. Peter suggested that this behavior
change was most likely caused by the PAM stuff that changed to run a proper
session with a forked child. And that for some reason the window size is
no longer being transferred via an OOB message on the socket.
This change fixes my problem and seems to be a good stopgap measure until
someone has time to ktrace/ktrace -i inetd to catch all the child processes
it spawns while doing an rlogin and change window size a few times to see
how far the change messages are getting.
Warner Losh [Fri, 25 May 2001 18:28:49 +0000 (18:28 +0000)]
Migrate from unit based to dev base. Don't save unit number, but do save
dev. Convert all uses of unit to dev as appropriate. Minor comment fixes
to pcic_softc definition.
Thomas Moestl [Fri, 25 May 2001 18:24:52 +0000 (18:24 +0000)]
Add a check to determine whether extended attributes have been
initialized on the file system before trying to grab the lock of the
per-mount extattr structure, as this lock is unitialized in that case.
This is needed because ufs_extattr_vnode_inactive is called from
ufs_inactive, which is also used by EA-unaware file systems such as
ext2fs.
Bruce A. Mah [Fri, 25 May 2001 18:01:34 +0000 (18:01 +0000)]
RELNOTESng is now the default for -CURRENT release builds. (Floppy
images get TXT renderings only; CDROM and FTP areas get TXT and HTML.)
Remove the old *.TXT release documentation files, as they
have been subsumed into RELNOTESng. The new layout will greatly
facilitate their maintenence and help keep them internally consistent.
Bruce A. Mah [Fri, 25 May 2001 17:08:22 +0000 (17:08 +0000)]
New release notes: O_DIRECT flag for open(2) and fcntl(2), RFC 1323
enabled by default for TCP, ipfw(8) -d, Makefile WARNS, boot-time
enable of background_fsck, ping(8) -A, vidcontrol(1) -p, telnet(1) -u,
default vinum(8) stripe size change to 279KB, OpenSSH 0.9.6.
Robert Watson [Fri, 25 May 2001 16:59:11 +0000 (16:59 +0000)]
o Merge contents of struct pcred into struct ucred. Specifically, add the
real uid, saved uid, real gid, and saved gid to ucred, as well as the
pcred->pc_uidinfo, which was associated with the real uid, only rename
it to cr_ruidinfo so as not to conflict with cr_uidinfo, which
corresponds to the effective uid.
o Remove p_cred from struct proc; add p_ucred to struct proc, replacing
original macro that pointed.
p->p_ucred to p->p_cred->pc_ucred.
o Universally update code so that it makes use of ucred instead of pcred,
p->p_ucred instead of p->p_pcred, cr_ruidinfo instead of p_uidinfo,
cr_{r,sv}{u,g}id instead of p_*, etc.
o Remove pcred0 and its initialization from init_main.c; initialize
cr_ruidinfo there.
o Restruction many credential modification chunks to always crdup while
we figure out locking and optimizations; generally speaking, this
means moving to a structure like this:
newcred = crdup(oldcred);
...
p->p_ucred = newcred;
crfree(oldcred);
It's not race-free, but better than nothing. There are also races
in sys_process.c, all inter-process authorization, fork, exec, and
exit.
o Remove sigio->sio_ruid since sigio->sio_ucred now contains the ruid;
remove comments indicating that the old arrangement was a problem.
o Restructure exec1() a little to use newcred/oldcred arrangement, and
use improved uid management primitives.
o Clean up exit1() so as to do less work in credential cleanup due to
pcred removal.
o Clean up fork1() so as to do less work in credential cleanup and
allocation.
o Clean up ktrcanset() to take into account changes, and move to using
suser_xxx() instead of performing a direct uid==0 comparision.
o Improve commenting in various kern_prot.c credential modification
calls to better document current behavior. In a couple of places,
current behavior is a little questionable and we need to check
POSIX.1 to make sure it's "right". More commenting work still
remains to be done.
o Update credential management calls, such as crfree(), to take into
account new ruidinfo reference.
o Modify or add the following uid and gid helper routines:
change_euid()
change_egid()
change_ruid()
change_rgid()
change_svuid()
change_svgid()
In each case, the call now acts on a credential not a process, and as
such no longer requires more complicated process locking/etc. They
now assume the caller will do any necessary allocation of an
exclusive credential reference. Each is commented to document its
reference requirements.
o CANSIGIO() is simplified to require only credentials, not processes
and pcreds.
o Remove lots of (p_pcred==NULL) checks.
o Add an XXX to authorization code in nfs_lock.c, since it's
questionable, and needs to be considered carefully.
o Simplify posix4 authorization code to require only credentials, not
processes and pcreds. Note that this authorization, as well as
CANSIGIO(), needs to be updated to use the p_cansignal() and
p_cansched() centralized authorization routines, as they currently
do not take into account some desirable restrictions that are handled
by the centralized routines, as well as being inconsistent with other
similar authorization instances.
o Update libkvm to take these changes into account.
Add the contributed directory from the i4b tarball and the files from it
which would be nice to have.
Move isdnd_acct and isdnctl to the contrib directory where they belong to.
Alexander Langer [Fri, 25 May 2001 12:27:00 +0000 (12:27 +0000)]
This script can control the state of your ISDN line. It counts
how many scripts/users currently use the ISDN line and uses
"ifconfig down" if noone uses it any more.
David E. O'Brien [Fri, 25 May 2001 10:36:46 +0000 (10:36 +0000)]
+ Turn on SMP support by default (yes an Alpha SMP kernel works on
uniprocessor systems, aren't Alpha's neat :-))
+ Add example KTR (debugging) options.
Kris Kennaway [Fri, 25 May 2001 09:24:50 +0000 (09:24 +0000)]
Add the 'next' and 'prev' commands (aliased to '+' and '-') which skip
forward or backward by a specified number of tracks (defaulting to 1).
Use strvisx() to display the media catalog in case it contains unprintable
characters. Sort includes. Based on two patches submitted by PR, plus
style fixes and other changes of my own.
Use the name given to the dev_t, rather than creating our own.
This makes it possible to give sensible information for /dev/fd.720
and similar "special" devices.
Add a CAPI (hardware independent) driver i4bcapi(4) and hardware driver
iavc (4) to support active CAPI-based BRI and PRI cards (currently AVM
B1 and T1 cards) to isdn4bsd.
Warner Losh [Fri, 25 May 2001 05:25:43 +0000 (05:25 +0000)]
Add intrack field to each slot. This can be used to acknowledge
interrupts on other buses. Right now it isn't used, but will be for
the pci attachment.
# Add copyright by me for this year since I've changed so much.
David E. O'Brien [Thu, 24 May 2001 19:29:15 +0000 (19:29 +0000)]
Back out rev 1.4 (wint_t and mbstate_t) as I am tired of the complaints.
The STLport will probably become broken again, but I'll work on fixing it
later.
I wish someone would explain why the NetBSD Cirtus branch has the types
in their stddef.h...
Mark Murray [Thu, 24 May 2001 18:35:52 +0000 (18:35 +0000)]
Add the "auth_as_self" option to the pam_unix module (there is no
reason not to add it to others later). This causes the pam_unix
module to check the user's _own_ password, not the password of the
account that the user is authenticating into. This will allow eg:
WHEELSU type behaviour from su(1).
If the user exists abruptly, tip's "tipout" child can hang around
forever. Since the lock file doesn't get cleaned up, this prevents
other users from accessing the target device.
(phk adds: Man, this has been bugging me for YEARS!)
Matthew Dillon [Thu, 24 May 2001 07:22:27 +0000 (07:22 +0000)]
This patch implements O_DIRECT about 80% of the way. It takes a patchset
Tor created a while ago, removes the raw I/O piece (that has cache coherency
problems), and adds a buffer cache / VM freeing piece.
Essentially this patch causes O_DIRECT I/O to not be left in the cache, but
does not prevent it from going through the cache, hence the 80%. For
the last 20% we need a method by which the I/O can be issued directly to
buffer supplied by the user process and bypass the buffer cache entirely,
but still maintain cache coherency.
I also have the code working under -stable but the changes made to sys/file.h
may not be MFCable, so an MFC is not on the table yet.
Warner Losh [Thu, 24 May 2001 06:54:48 +0000 (06:54 +0000)]
Use bus_space functions rather than inb/outb.
Add defines for PCIC_INDEX and PCIC_DATA offsets.
Change PCIC_INDEX_0 to PCIC_PORT_0
Add define for PCIC_NPORT.
Document why the vadem probe works.