John Hay [Sat, 13 Apr 1996 15:13:30 +0000 (15:13 +0000)]
Accept and use the content of packets received that is bigger than the
Novell spec, but still only transmit according to the spec.
Add a feature to dump the RIP and SAP tables when a SIGINFO signal is
received.
Bruce Evans [Sat, 13 Apr 1996 14:55:18 +0000 (14:55 +0000)]
Another try: fixed bogus change of the fifo settings for the non-speed of 0.
rev.1.30 incorrectly changed the behaviour from always disabling the fifo
to always enabling it.
John Hay [Sat, 13 Apr 1996 14:37:22 +0000 (14:37 +0000)]
Don't use a newfangled auto initializer. Initialize everything by
assignment to avoid one bug and several pessimizations.
In the old version, gcc-2.6.3 (i386 version) generates 16 bytes
of static data and copies it using 4 4-byte load-stores. gcc-2.7.2
generates 2 1-byte stores and calls memset() to zero 14 bytes.
Linking fails because memset() doesn't exist in the kernel.
In both versions, the 2 bytes stored directly are all that is
actually used unless the null padding at the end is used, since
the 3 4-byte words in the middle are initialized again by struct
assignment. These words are misaligned. gcc generates misaligned
load-stores for (small) misaligned struct copies.
Bruce Evans [Sat, 13 Apr 1996 14:25:06 +0000 (14:25 +0000)]
Changed _BSD_PID_T_ from long to int. Lite2 changed pid_t from long to
int32_t in <sys/types.h> but this change was missed when the Lite2 types
were merged.
Bruce Evans [Sat, 13 Apr 1996 14:23:29 +0000 (14:23 +0000)]
Changed `noreturn' to `__noreturn__' so that all headers don't break if
an application #defines `noreturn'.
Changed one instance of `const' similarly. This is less like to be a
problem since applications shouldn't #define `const', and the common
hack of #defining `const' as nothing gives harmless (?) null attributes
instead of syntax errors.
Bruce Evans [Sat, 13 Apr 1996 12:53:53 +0000 (12:53 +0000)]
Eliminated sloppy common-style declarations. Now there are no duplicated
common labels for LINT. There are still some common declarations for the
!KERNEL case in tcp_debug.h and spx_debug.h. trpt depends on the ones in
tcp_debug.h.
Bruce Evans [Sat, 13 Apr 1996 12:45:57 +0000 (12:45 +0000)]
Eliminated sloppy common-style declarations. Now there are no duplicated
common labels for LINT. There are still some common declarations for the
!KERNEL case in tcp_debug.h and spx_debug.h. trpt depends on the ones in
tcp_debug.h.
Bruce Evans [Sat, 13 Apr 1996 11:35:54 +0000 (11:35 +0000)]
Changed all per-file errors to warnings. Exit with a nonzero status of
if there was a per-file error. My test case of `wc /proc/curproc/*'
works reasonably now (much like `size /proc/curproc/*'.
Bruce Evans [Sat, 13 Apr 1996 11:24:13 +0000 (11:24 +0000)]
Use PCB_SAVEFPU_SIZE instead of a too-small size in savectx(). This
bug only affected FPU emulators. It might have caused bogus FPU states
in core dumps and in the child pcb after a fork. Emulated FPU states
in core dumps don't work for other reasons, and the child FPU state
is reinitialized by exec, so the problem might not have caused any
noticeable affects.
Update section on mounting DOS extended partitions.
Document the fact that we're now working on BSDI's dos emulator
and point people at the new freebsd-emulation@freebsd.org mailing
list.
Add NO_CDROM, RESTRICTED, BROKEN and Motif support.
(1) The new NO_CDROM Boolean variable means "don't put the distfile/
package on the CDROM you're going to sell". It will basically
turn off everything if FOR_CDROM is set.
Many of the NO_PACKAGE ports are actually "don't sell for profit"
types, which we shouldn't have any problem distributing via ftp.
(2) The new RESTRICTED Boolean variable means don't build this unless
you know what you are doing. It doesn't have any effect unless
NO_RESTRICTED is also set.
(3) BROKEN means this port is broken. At least it will now show up in
INDEX and README.html, and give people more incentive to fix (I
hope).
RESTRICTED and BROKEN are expected to replace the pseudo-targets
in parent Makefiles. (The RESTRICTED and BROKEN list didn't do
anything before, they were solely for grepping purposes.)
(4) The Motif support brings in four new variables: REQUIRES_MOTIF,
which the porter sets for ports that require Motif to build;
HAVE_MOTIF, which the user sets to indicate the system has Motif;
MOTIF_STATIC, which the user sets to indicate that the static
libXm, instead af the default dynamic library, is to be used; and
MOTIFLIB, which is set to "${X11BASE}/lib/libXm.a" or
"-L${X11BASE}/lib -lXm", depending on whether MOTIF_STATIC is set.
The porter is expected to replace all occurrences of libXm in the
{Im,M}akefiles with ${MOTIFLIB}, and this will allow both dynamic
linkage (for users with Motif) and static linkage (for those who
build packages to be used by those withot Motif, i.e., me ;)
automatically.
Bruce Evans [Thu, 11 Apr 1996 21:05:25 +0000 (21:05 +0000)]
Fixed a spl hog. The vmdaemon process ran entirely at splhigh. It
sometimes disabled clock interrupts for 60 msec or more on a P133.
Clock interrupts were lost ...
Bill Paul [Thu, 11 Apr 1996 20:54:15 +0000 (20:54 +0000)]
Fix for memory leak: specify NULL as openinfo parameter when calling
dbopen() to open an NIS map.
Testing with very large maps (e.g. a sample password database with 31,000+
entries) has shown that ypserv will leak memory (ps shows RSS and VSZ
growing to 4000 pages or more) when performing repeated yp_next()s or
a yp_all(). The problem with yp_all() is not immediately obvious since
the ypproc_all service is handled in a child process which exits once
the transfer is finished, but with repeated yp_next()s (like what you
get when you use getpwent() to scroll through the password database),
the parent ypserv grows to enormous size and never shrinks again.
It seems this is related to the HASHINFO parameters I used in yp_dblookup.c,
which I actually stole from pwd_mkdb. Calling dbopen() with the default
parameters (specifying openinfo as NULL) fixes the problem.
I still need to see how this impacts the other NIS tools. I'm also
considering changing from hash to btree databases: the hash database
method doesn't support R_CURSOR, which means yp_next_record() has to
do a lot of ugly work in order to reach an arbitrary location in the
database.
Bruce Evans [Thu, 11 Apr 1996 18:43:37 +0000 (18:43 +0000)]
Fixed the PF_REMOTE case of ptcwrite(). I broke it in rev.1.22. Output
was duplicated until the canq filled up, and write() normally returned 0.
This case is apparently rare. It was reported for Jove's shell buffer in
PR 1130.
Added a note about OPTi 82C929 based cards.
Clarified GUS DMA Settings.
Other misc. changes.
This should hold us over until I can finish cleaning up TASD, and finish
reintegrating all of the FreeBSD changes to the sound driver. At that time
this document will be removed, and it's information moved to the handbook.
David Greenman [Thu, 11 Apr 1996 10:22:16 +0000 (10:22 +0000)]
Implemented a "-D" option that causes ftpd to detach and become a daemon -
accepting connections on the FTP port and forking children processes to
handling them. This is lower overhead than spawning ftpd from inetd and
can be a significant win on busy FTP servers. Be sure to disable ftpd in
inetd.conf if you decide to use this option.
These changes are based on similar changes I made to wu-ftpd and have
been in use on wcarchive for several months.
Mark Murray [Thu, 11 Apr 1996 10:13:40 +0000 (10:13 +0000)]
Priorities were broken. If there was an Index: line and ***/--- lines
with valid names, the ***/---names were taken first.
this broke eg:
Index: foo/Makefile
==========
RCS <blah>
Retrieving <blah>
diff <blah>
*** Makefile <blah>
--- Makefile <blah>
By trying to patch the Makefile in the _curent_ directory, rather than
the one in the foo/ directory.
David Greenman [Thu, 11 Apr 1996 08:14:44 +0000 (08:14 +0000)]
Bugfix based on a kernel fix:
When PPP gets an uncompressed packet, it attempts to save off the TCP/IP
header for use in decompressing subsequant packets. If PPP gets garbage
(such as what happens when there is a port speed mismatch or modem line
noise), it will occasionally mistake the packet as a valid uncompressed
packet. When it tries to save off the header, it doesn't bother to check
for the validity of the header length and will happily clobber not only
the PPP VJC data structure, but parts of other process memory that happens
to follow it...causing, ahem, undesired behavior.
David Greenman [Thu, 11 Apr 1996 06:46:24 +0000 (06:46 +0000)]
When cslip gets an uncompressed packet, it attempts to save off the TCP/IP
header for use in decompressing subsequant packets. If cslip gets garbage
(such as what happens when there is a port speed mismatch or modem line
noise), it will occasionally mistake the packet as a valid uncompressed
packet. When it tries to save off the header, it doesn't bother to check
for the validity of the header length and will happily clobber not only
the cslip data structure, but parts of other kernel memory that happens
to follow it...causing, ahem, undesired behavior.
Marc G. Fournier [Thu, 11 Apr 1996 06:19:44 +0000 (06:19 +0000)]
mentioned support for enabling gameport on ProAudio Spectrum with
appropriately commented out "options" line for PAS_JOYSTICK_ENABLE
(PR#i386/960 - partial closer)
Mike Pritchard [Thu, 11 Apr 1996 05:30:18 +0000 (05:30 +0000)]
Print some warnings if root invokes chpass and sets the
shell to one of the following:
- a non-existent file
- a non-regular file
- a file without any execute bits set
The shell is still set to whatever they entered even if the above
conditions exist (hey, it is the super user doing this after all :-),
but this might give the admin. some warning that they are about to screw
themselves and give them a chance to fix it before it is too late.
Inspired by: some new FreeBSD user on USENET who set his root shell
to a shell that doesn't exist and now can't gain access to root (don't
worry, I sent him some mail on how to recover from this).
Marc G. Fournier [Wed, 10 Apr 1996 04:18:36 +0000 (04:18 +0000)]
Placed an #ifndef around RS_IBUFSIZE so that it can be changed in the
config file ... PR#528 is reportly fixed by adding 'options RS_IBUFSIZE=1024'
to the config file
Mike Pritchard [Tue, 9 Apr 1996 17:20:33 +0000 (17:20 +0000)]
Install crypt.3 so that libcipher will install if /usr/share/man
has been blown away. Previously it depended on an existing
crypt.3 to be present for the man page links to install properly.
Mike Pritchard [Tue, 9 Apr 1996 17:17:31 +0000 (17:17 +0000)]
Do not include math.h because it isn't used and it causes
"make world" to fail if you use the msun math library and
blow away /usr/include and then do "make world". This is because
the msun math.h isn't installed with the other include files before
xlint is built. It finally gets installed when the msun library
is built.
Perhaps "make world" should install the msun math.h file if
it doesn't install the CSRG math.h, to prevent problems
like this in the future.
Gag! Somebody removed the bus mouse from GENERIC for reasons unknown.
That certainly explains why I noticed it suddenly missing from the
2.2 SNAPSHOT! :-)
John Dyson [Tue, 9 Apr 1996 04:36:58 +0000 (04:36 +0000)]
Reinstitute the map lock for processes being swapped out. This
is needed because of the vm_fault used to bring the page table page
for the kernel stack (UPAGES) back in. The consequence of the
previous incorrect change was a system hang.
Add a lock for DMA Channels to prevent two devices from using the same DMA
channel at the same time. The functions isa_dma_acquire() and
isa_dma_release() should be used in all ISA drivers which call isa_dmastart().
This can be used more generally to register the usage of DMA channels in
any driver, but it is required for drivers using isa_dmastart() and friends.
Clean up sanity checks, error messages, etc.
Remove isa_dmadone_nobounce(), it is no longer needed
Mike Pritchard [Mon, 8 Apr 1996 04:18:31 +0000 (04:18 +0000)]
Correct some man page xrefs, and some other minor changes to bring some
man pages up to mdoc guidelines and fix some minor formatting glitches.
Also fixed a number of man pages to not abuse the .Xr macro to
display functions and path names and a lot of other junk.