Bill Paul [Wed, 23 Oct 1996 21:46:17 +0000 (21:46 +0000)]
Add extra sanity checking to the in-place update routine. Sometimes you
find two users with the same UID (i.e. root and toor), but yp_mkdb(8)
forbits duplicate keys, so only one of them will end up in the *.byuid
maps (probably toor, since it comes after root in the template file).
If I asked rpc.yppasswdd(8) to change toor's password, it would update
the *.byname maps correctly, but incorrectly modify root's entry in
the *.byuid maps since the only matching record with UID=0 in those
maps belongs to root.
To fix this, we check that both the name and UID are correct before trying
to write new entries to the maps.
Julian Elischer [Wed, 23 Oct 1996 20:17:57 +0000 (20:17 +0000)]
Reviewed by: various (mailing list feedback)
Submitted by: whistle communications
move the socket from /dev to /var/run by default
TRANSITIONALLY make syslog add a symlink..
I PROMISE I'll remove that as soon as I have the makefiles etc fixed as well.
GNU-style changes:
1) Rename FNM_ICASE to FNM_CASEFOLD
2) Add FNM_LEADING_DIR
Add proper (unsigned char) casts to tolower().
Use 'char' function argument for proper sign extension
Bill Paul [Wed, 23 Oct 1996 15:49:22 +0000 (15:49 +0000)]
In ypxfr_callback(), the failure to create an RPC CLIENT * handle for
the callback is a fatal error for this function; return immediatlely if
this happens. Also make the "failed to establish callback handle" error
mesaage print the IP address of the target callback host.
Bill Paul [Wed, 23 Oct 1996 14:50:30 +0000 (14:50 +0000)]
Fix a core dump condition I discovered the other day (right
after I installed the last SNAP :). Because of the way the 'use NIS
or local?' logic is set up here, it was possible to force the use
of the NIS password changer even though the specified user didn't exist
in NIS (i.e. # passwd foo, where foo is a local-only user). In this
case, we fall intp yp_passwd() without the corresponding yp_password
structure being filled in, which leads to an NULL pointer dereference.
Also fixed the logic like I just did with chpass so that if the user
is both in NIS and the local password database, the program makes a
more sensible guess as to which one to use (if NIS is turned on in
/etc/master.passwd, then use NIS, else default to local).
Bill Paul [Wed, 23 Oct 1996 14:43:39 +0000 (14:43 +0000)]
Add a flag to allow the 'use NIS or local?' logic to tell when NIS is
enabled in /etc/master.passwd & friends. This allows the 'USER_YP_AND_LOCAL'
case to make a more sensible guess (if NIS is enabled, default to NIS,
otherwise default to local -- this is better than defaulting to NIS
all the time).
Paul Traina [Wed, 23 Oct 1996 07:29:44 +0000 (07:29 +0000)]
Remove SC_KBD_PROBE_WORKS option and replace it with a simple run-time flag
bit (0x0008) in the sc driver configuration line. This way it's easy to
boink a generic kernel.
Also, document and place in an opt_ file the #define's for overriding which
serial port is the system console.
Approved by: sos
Marc G. Fournier [Wed, 23 Oct 1996 04:23:36 +0000 (04:23 +0000)]
Description:
Machine come and go...
Little patch removes lists down for over 4 days from the list.
(If you haven't noticed they are down in that period, you should
turn them off!)
Marc G. Fournier [Tue, 22 Oct 1996 21:17:05 +0000 (21:17 +0000)]
Fixes:
>Description:
Applications that rely on getttyent and related calls will
not find entries that are not listed in /etc/ttys. Screen
and xterm (rxvt, color_xterm) will not be able to obtain
unique utmp slots as a result. This isn't a critical problem
but it will keep utilities such as 'finger', 'who' and 'w'
from displaying the correct information.
Marc G. Fournier [Tue, 22 Oct 1996 21:11:49 +0000 (21:11 +0000)]
Fixes:
When an rsh is denied by rshd because the client is lacking appropriate
.rhosts permission, an error message is formatted for syslog which contains
the client's hostname. The hostname portion of the message relies on a pointer
to a field within gethostbyname()'s internal struct hostent which changes state
between when the pointer is initialized and when it is dereferenced to create th
e
message.
Marc G. Fournier [Tue, 22 Oct 1996 21:01:01 +0000 (21:01 +0000)]
Fixes:
>Description:
/usr/libexec/mail.local runs as root. As such is can fill up a
mailbox on a quota'd filesystem, and keep going... Makes quota's
almost useless in an ISP environment.
Closes: PR#bin/1111
Submitted by: Charles Henrich <henrich@crh.cl.msu.edu>
Stefan Eßer [Tue, 22 Oct 1996 20:27:47 +0000 (20:27 +0000)]
Initial version of the user land code for the PCI config register
access functions. Written by Garrett Wollman and modified by me to
better match my view of the (PCI) world.
Stefan Eßer [Tue, 22 Oct 1996 20:20:14 +0000 (20:20 +0000)]
Add support for ioctl() accesses to PCI config space registers.
Garrett Wollman sent me this code a few weeks ago for review, and I made
some significant changes, which he in turn accepted ...
In order to make use of these changes, a device entry has to added to /dev.
Joerg Wunsch [Tue, 22 Oct 1996 16:18:17 +0000 (16:18 +0000)]
The neverending story... vgrind.
For definitions without an "nc" entry, some parts have now been
mis-detected as `non-comment'. Avoid this by not converting the
noregexp in case the "nc" capability has not been found. I begin to
wonder why things like missing "ab"/"ae"'s do work at all...
Marc G. Fournier [Tue, 22 Oct 1996 05:13:42 +0000 (05:13 +0000)]
Fixes:
If timed is running when system clock is changed by date command,
improper wtmp entry is made. According to wtmp(5), two entries, one
with "|" as ut_line field and one with "{" for ut_line, should be
recorded, but, one with "|" and one with "}" are made.
Marc G. Fournier [Tue, 22 Oct 1996 05:02:01 +0000 (05:02 +0000)]
Fixes:
When you ask pr to use form feeds at the end of pages and specify a page
length and tell pr to not put the fancy headers and footers on each
pages, then pr will not separate the pages with a form feed.
Bill Paul [Tue, 22 Oct 1996 03:53:06 +0000 (03:53 +0000)]
Since rpc.yppasswdd(8) also supports adding entries to the
/var/yp/master.passwd template file and it uses the same kind of code
as chpass(1), it may also be vulnerable to the bug from PR #1519.
May as well deal with it since I'm in the area. (yppasswdd in -stable
doesn't do additions, therefore it shouldn't be have this problem.)
Bill Paul [Tue, 22 Oct 1996 03:27:12 +0000 (03:27 +0000)]
Part 2 of fix for PR #1519. The problem here is similar to what
was going on in pwd_mkdb, except here we also have to deal with
the pw_change and pw_expire fields.
Bill Paul [Tue, 22 Oct 1996 03:18:11 +0000 (03:18 +0000)]
Begin closing out PR #1519 (this requires a change to chpass too,
and both changes need to be pulled into the stable branch). The
problem here is that when pwd_mkdb creates /etc/passwd, it turns
empty UID and GID fields into zeroes. To fix this, we check the
_PWF_UID and _PWF_GID bits in the pw_fields flag: if the bits
are not set, we print an empty field instead of a zero. This way,
you don't get zeroes in the UID or GID fields unless you explicit
want them.
Bill Paul [Tue, 22 Oct 1996 00:41:55 +0000 (00:41 +0000)]
Modify the 'couldn't create udp handle' message so it tell you
the name of the host that couldn't be connected to. This will hopefully
make it easier to diagnose problems with certain NIS configuration
problems.
Joerg Wunsch [Mon, 21 Oct 1996 23:54:46 +0000 (23:54 +0000)]
Suggest using `dd' to create the swapfile for diskless operation, with
the required size, as opposed to simply `touch'ing it. This works
around problems in the -current NFS and/or VFS and/or VM code.
Also hint about restricting the permissions to this file.
Bill Paul [Mon, 21 Oct 1996 20:09:30 +0000 (20:09 +0000)]
Add hooks for rpc.ypxfrd in /etc/sysconfig and /etc/rc. Also change
a couple of benign cases of 'yppasswdd' to 'rpc.yppasswdd.' (Like
rpc.yppasswdd, rpc.ypxfrd should only be run on NIS master servers.)
unset TZ from the environment so the timestamp gets the system default,
which is what syslogd presumably uses too. Notice that the "protocol"
is bogus in not defining the timezone. "protocol" because it hardly
deserves the name :-)
Doug Rabson [Mon, 21 Oct 1996 10:07:52 +0000 (10:07 +0000)]
If a large (>4096 bytes) directory was modified, the old directory
contents are discarded, including the cached seek cookies.
Unfortunately, if the directory was larger than NFS_DIRBLKSIZ, then
this confused nfs_readdirrpc(), making it appear as if the directory
was truncated.
Peter Wemm [Mon, 21 Oct 1996 07:30:26 +0000 (07:30 +0000)]
Implement a -c option to ps to display the short command name instead of
the full argument vector.
I've bumped into a few things that expected this switch to be present,
the most recent was the snmp package in ports. I'm not 100% sure of the
origins of this, but Linux has it, so does the "BSD-compatable" version
of ps on our SVR4 systems (so I assume SunOS has it too).
Bill Paul [Sun, 20 Oct 1996 19:52:53 +0000 (19:52 +0000)]
Add a couple of reserved port checks: don't talk to either ypserv
or rpc.ypxfrd processes on remote systems that aren't bound to reserved
ports. The servers already do reserved port checks on the clients.
Obtained from: scrutinizing the OpenBSD ypxfr sources. (Note that this
applies to the ypserv check only; OpenBSD doesn't have an rpc.ypxfrd.)
Better case insensitve search support for pattern with meta chars.
In some rare cases this does not work proper before flag FNM_ICASE was
added to fnmatch(3).
malloc_pages should be static.
Add progname to warning/error message layout. (joerg)
Remove inline assembler, no speed impact, not need for the obfuscation (bde)
Remove on the fly calculation of parameters, no longer critical.
Make D & U flags valid even if we don't support them.
Don't call imalloc until we're done initializing.
Zap contents on free() if we have "Junk" set. [*]
Various nitpicking.
[*] As a sideeffect of this change, if you are worried about
sensitive data lingering in memory, you can use the 'Junk' option
now to make sure phkmalloc zaps memory when it is returned. add
char * malloc_options = "J";
to your source. Obviously there is a performance impact.
Joerg Wunsch [Sun, 20 Oct 1996 12:54:55 +0000 (12:54 +0000)]
Make pstat -s (aka. sswapinfo) print ``[NFS]'' as opposed to
``/dev/??'' for NFS swap.
I had a hard time to figure out whether it's possible to print the
actual mounted swap file, but i failed to get any information. If
anybody knows how to get ``192.168.0.1:/swap.192.168.0.3'' instead,
please step forward!
Ollivier Robert [Sat, 19 Oct 1996 23:13:36 +0000 (23:13 +0000)]
Add an entry about slow starting SCSI CD-ROM:
When I booted my system without the above option, the CDROM could not
respond in time to the bootup probe of devices and was "missed". When
I tried to access the device I got the "Device not configured" error
message. I rebuilt the kernel with the SCSI_DELAY option and the
problem went away.
Joerg Wunsch [Sat, 19 Oct 1996 21:42:40 +0000 (21:42 +0000)]
Various fixes and FreeBSD modifications:
. remove the blubber about `submitter-id's from the man page, we don't
use them,
. use REPLY_TO or REPLYTO in preference over LOGNAME as the value for
the Reply-To address (closes PRs 1471 and its duplicates 1472 and 1823),
. don't abuse ~/.signature as ORGANIZATION, this is almost always
useless blunder,
. actually list the Categories again, instead of xrefing to ``see
above'' (closes PR 1835),
. check the Synopsis field for being not empty,
. make the mail Subject the same as Synopsis if left blank (closes
PR 1209).
The remaining open send-pr related PRs (184 and its duplicate 1047,
and 1415) are pilot errors or local hardware problems.