gad [Wed, 5 Dec 2001 02:07:20 +0000 (02:07 +0000)]
Move the checks for '/' a little sooner in the code which receives files
for a remote print job. This change comes from OpenBSD (who got it from
Sebastian Krahmer of SuSE). In OpenBSD this avoids a tiny theoretical
security issue, but that security issue does not exist in FreeBSD's lpr
due to the changes which added 'ctl_renametf()' just before 4.4-release.
This change is still worth doing in our version, but it isn't fixing a
security issue.
sos [Tue, 4 Dec 2001 21:48:56 +0000 (21:48 +0000)]
Add the ability to write VCD/SVCD disc's.
It is still nessesary to supply the tracks as individual files, burncd
can't read .cue files yet, but now the infrastructure to do it is
present we just need a .cue file parser (hint hint)...
iedowse [Tue, 4 Dec 2001 16:53:42 +0000 (16:53 +0000)]
When VOP_SYMLINK fails, the value of *vpp is junk, so we must NULL
out nd.ni_vp to prevent the resource cleanup code at the end of
nfsrv_symlink from trying to vrele it. This fixes a "vrele: negative
ref cnt" panic that can occur when a symlink is attempted on an NFS
filesystem with no free space. Found locally, but the symptoms
correspond to those in the PR referenced below.
mdoc(7) police: section 1 and 8 manpages document their exit
codes under the DIAGNOSTICS section, not RETURN VALUES, which
is for section 2, 3, and 9 manpages.
imp [Tue, 4 Dec 2001 13:48:16 +0000 (13:48 +0000)]
implement MFC links properly (and I think long links too). This make
the sprint wireless card try to attach. Sadly, the pci code at the
bridge keeps this from happening.
des [Tue, 4 Dec 2001 12:31:02 +0000 (12:31 +0000)]
Add a missing error check. This fixes a bug that would cause pwd_mkdb to
dump core if invoked with an input file that looks like a password file
but isn't (e.g. /etc/group).
marcel [Tue, 4 Dec 2001 03:55:10 +0000 (03:55 +0000)]
When translating the interface name when "eth?" is given, do not
use the internal index number as the unit number to compare with.
The first ethernet interface in Linux is called "eth0", whereas
our internal index starts wth 1 and is not unique to ethernet
interfaces (lo0 has index 1 for example). Instead, use a function-
local index number that starts with 0 and is incremented only
for ethernet interfaces. This way the unit number will match the
n-th ethernet interface in the system, which is exactly what it
means in Linux.
Tested by: Glenn Johnson <gjohnson@srrc.ars.usda.gov>
MFC after: 3 days
des [Tue, 4 Dec 2001 00:48:21 +0000 (00:48 +0000)]
Call the ATAPI tape devices "ast" and "nast", not "rast" and "nrast". Add
backward compatibility symlinks for good measure.
DEVFS already gets this right (except for the symlinks).
PR: 24781
Submitted by: Christian Weisgerber <naddy@mips.inka.de>
MFC after: 3 days
bde [Mon, 3 Dec 2001 22:31:09 +0000 (22:31 +0000)]
Unbreak "make lint" for programs and "make llib-l${LIB}.ln" for
libraries a little by not passing all of ${CFLAGS} to lint. Pass
only options matching -[DIU]*. The important -nostdinc option can't
be passed like I first thought because lint misinterprets as
"-n -o stdinc". The unimportant -B* option can't be passed because
lint doesn't support it. Otherwise, we pass the same options as
to mkdep, exept for a bug in the latter: -U* is not passed. All
this depends on option args not being separated from option flags
by a space.
rwatson [Mon, 3 Dec 2001 16:12:27 +0000 (16:12 +0000)]
o Introduce pr_mtx into struct prison, providing protection for the
mutable contents of struct prison (hostname, securelevel, refcount,
pr_linux, ...)
o Generally introduce mtx_lock()/mtx_unlock() calls throughout kern/
so as to enforce these protections, in particular, in kern_mib.c
protection sysctl access to the hostname and securelevel, as well as
kern_prot.c access to the securelevel for access control purposes.
o Rewrite linux emulator abstractions for accessing per-jail linux
mib entries (osname, osrelease, osversion) so that they don't return
a pointer to the text in the struct linux_prison, rather, a copy
to an array passed into the calls. Likewise, update linprocfs to
use these primitives.
o Update in_pcb.c to always use prison_getip() rather than directly
accessing struct prison.
obrien [Mon, 3 Dec 2001 11:29:01 +0000 (11:29 +0000)]
Reapply rev 1.37 (hide the __attribute__ gcc keyword) into RELENG_4 even
though it was backed out.
With out this change the TenDRA compiler is not bootstrapable.
jedgar [Mon, 3 Dec 2001 00:51:36 +0000 (00:51 +0000)]
style(9) cleanups mostly consisting of:
o explicitly check return values and variables against a value
o return x; -> return (x);
o fix inconsistent sysexits usage by nuking it (partially
suggested by bde)