Commit Graph

28702 Commits

Author SHA1 Message Date
Bill Paul
a6e95b4420 Improve DoS avoidance in RPC stream oriented transports. The TCP transport
uses readtcp() to gather data from the network; readtcp() uses select(),
with a timeout of 35 seconds. The problem with this is that if you
connect to a TCP server, send two bytes of data, then just pause, the
server will remain blocked in readtcp() for up to 35 seconds, which is
sort of a long time. If you keep doing this every 35 seconds, you can
keep the server occupied indefinitely.

To fix this, I modified readtcp() (and its cousin, readunix() in svc_unix.c)
to monitor all service transport handles instead of just the current socket.
This allows the server to keep handling new connections that arrive while
readtcp() is running. This prevents one client from potentially monopolizing
a server.

Also, while I was here, I fixed a bug in the timeout calculations. Someone
attempted to adjust the timeout so that if select() returned EINTR and the
loop was restarted, the timeout would be reduced so that rather than waiting
for another 35 seconds, you could never wait for more than 35 seconds total.
Unfortunately, the calculation was wrong, and the timeout could expire much
sooner than 35 seconds.
1998-05-18 16:12:13 +00:00
Peter Dufault
2a61a11038 1. Don't use "nosys" and generate coredumps for unconfigured
system calls - return ENOSYS per the spec.

2. Fix interface stub to set priority properly.
1998-05-18 12:53:45 +00:00
Dmitrij Tejblum
af9f1d50ae Fix priority bug in previous commit.
Submitted by:	bde
1998-05-18 10:24:26 +00:00
Joseph Koshy
53e85f8664 Add warning about interaction of S/Key and login(1) for users without S/Key
passwords attempting to invoke login(1) on a pty.

PR: 3289
1998-05-18 09:36:31 +00:00
Philippe Charnier
9ba8bd6557 Correct use of .Nm. Add rcsid. 1998-05-18 06:51:59 +00:00
Philippe Charnier
44dc619ed6 Correct use of .Nm. Add section number to .Xr references. Add rcsid. 1998-05-18 06:50:17 +00:00
Philippe Charnier
3d7b5b9302 Add rcsid. Spelling. 1998-05-18 06:44:24 +00:00
Philippe Charnier
1aad99bc66 Correct use of .Nm. Add rcsid. 1998-05-18 06:40:56 +00:00
Philippe Charnier
df73a899fc Correct use of .Nm. Add section number to .Xr references. 1998-05-18 06:39:17 +00:00
Julian Elischer
c11d29814e try stop the user from using mount -u to set the async flag on
a filesystem currently using soft updates.
Also needs a new copy of ffs_softdep.c to complete the fix.
1998-05-18 06:38:18 +00:00
Philippe Charnier
f43e9d2251 .Nm rm -> .Nm. 1998-05-18 06:37:35 +00:00
John Birrell
ce27694fab Make this safe for an alpha build, leaving out just about everything
that has some sort of kernel issue associated with it.
1998-05-18 04:46:29 +00:00
John Birrell
307253bb9f This library builds from libc source, so it also needs to know what
syscall style libc is using otherwise the library can contain calls
(like issetugid) that you don't find out until you build X programs.
1998-05-18 04:41:07 +00:00
Joseph Koshy
c38eceafa4 kill.1: Remove reference to obsolete sigvec(2) man page. Removed
self reference in sigaction(2) man page.

Submitted by: Josh Gilliam <josh@quick.net>
PR: 6617
1998-05-18 03:33:11 +00:00
John Birrell
0c2e53a8b0 Make perl a build tool since it is required during a make depend.
This should fix the problem people have been having with perl/usub.
1998-05-18 03:28:02 +00:00
Andrey A. Chernov
23ea9f7e98 Back out "always UTC" fix since some people want visually identical 'ls'
output for local users. FTP protocol RFC also says that 'ls' output is
not machine-readable. "always UTC" still possible with TZ= in ftpd
environment by price of having UTC in log files too.

Fix INTERNAL_LS to sense new /etc/localtime after chroot
1998-05-18 00:06:28 +00:00
Tor Egge
5d183e9691 Change simple lock handling to not depend upon having a local apic
available.  The per-cpu variable ss_tpr has been replaced by ss_eflags.
This reduced the number of interrupts sent to the wrong CPU, due to
the cpu having the global lock being inside a critical region.

Remove some unneeded manipulation of tpr register in mplock.s.

Adjust code in mplock.s to be aware of variables on the stack being
destroyed by MPgetlock if GRAB_LOPRIO is defined.
1998-05-17 23:08:04 +00:00
Jonathan M. Bresler
333c76c66d replaced check_rcpt ruleset with one
recommended by Gary Palmer <gpalmer@freebsd.org>
Obtained from: http://www.informatik.uni-kiel.de/%7Eca/email/check.html#check_rcpt
1998-05-17 23:05:16 +00:00
Jonathan M. Bresler
a15417e7cf replaced check_rcpt ruleset with one
recommended by Gary Palmer <gpalmer@freebsd.org>
Obtained from: http://www.informatik.uni-kiel.de/%7Eca/email/check.html#check_rcpt
1998-05-17 22:58:51 +00:00
Tor Egge
2f1e70693d Add forwarding of roundrobin to other cpus. This gives a more regular
update of cpu usage as shown by top when one process is cpu bound
(no system calls) while the system is otherwise idle (except for top).

Don't attempt to switch to the BSP in boot().  If the system was idle when
an interrupt caused a panic, this won't work.  Instead, switch to the BSP
in cpu_reset.

Remove some spurious forward_statclock/forward_hardclock warnings.
1998-05-17 22:12:14 +00:00
Dmitrij Tejblum
0580d32288 Remove extraneous ")" from output. 1998-05-17 21:57:17 +00:00
Dmitrij Tejblum
011cdb576c Fix support for pre-Win95 filesystems: Make it possible to lookup just
created short file name. Don't insert "generation numbers".
1998-05-17 21:18:08 +00:00
Tor Egge
167a4d818c Use a higher priority interrupt vector for 8254 timer interrupts. 1998-05-17 21:15:18 +00:00
Dmitrij Tejblum
058ef24617 Remove bogus LK_RETRY.
Submitted by:	bde
1998-05-17 21:03:35 +00:00
Justin T. Gibbs
6772bb1537 Include "eisa.h" and only provide code if NEISA > 0. 1998-05-17 20:31:50 +00:00
Bruce Evans
ee002b68d1 Fixed interval calculation in realitimexpire() again. Obtained from:
rev.1.9.  Broken in: rev.1.50.

Fixed a spelling error.  Obtained from: Lite2.
1998-05-17 20:13:01 +00:00
Bruce Evans
c8b4782815 Fixed stale references to hzto() in comments. 1998-05-17 20:08:05 +00:00
Tor Egge
cb87a87c16 Supply the correct process argument to dounmount when possible. 1998-05-17 19:38:55 +00:00
Tor Egge
5931a9c24e For SMP, use prv_PPAGE1/prv_PMAP1 instead of PADDR1/PMAP1.
get_ptbase and pmap_pte_quick no longer generates IPIs.
This should reduce the number of IPIs during heavy paging.
1998-05-17 18:53:19 +00:00
Bruce Evans
592d5821a1 Fixed missing and unused forward declarations of structs. 1998-05-17 18:17:59 +00:00
Bruce Evans
5097a20d6e Don't forget to clean up after an error reading the directory entry
in deget().
1998-05-17 18:09:28 +00:00
Bruce Evans
84de3fb77d Removed vestiges of pre-Lite2 locking. 1998-05-17 18:00:45 +00:00
Tor Egge
cf4b29e405 Clear kernel stack pages before usage.
Correct panic message in pmap_zero_page (s/CMAP /CMAP2 /).
1998-05-17 17:43:13 +00:00
Tor Egge
6680ea138a Be more restrictive about when to disregard MP config table values
(previous commit broke support for Dec Personal Workstation).
1998-05-17 17:32:10 +00:00
Poul-Henning Kamp
c21410e119 s/nanoruntime/nanouptime/g
s/microruntime/microuptime/g

Reviewed by:	bde
1998-05-17 11:53:46 +00:00
Søren Schmidt
0e1e9fdca6 Cleanup after Garret, include unpch.h to get at various macros.. 1998-05-17 09:37:39 +00:00
Bill Fenner
4a3bf3b27c Turn on TCP_NODELAY on the remote socket, to turn off sender silly window
syndrome avoidance.  The combination of SWS avoidance and ack-every-other
 causes low throughput if the block size divided by the MSS is odd (which
 is true with the default block size and MSS).
Turning on TCP_NODELAY disables the Nagle algorithm and sender SWS avoidance.
 The rdump request/response protocol can not invoke Nagle and cannot cause
 SWS, so this has no negative effects.
1998-05-17 06:39:38 +00:00
John Dyson
bd6be9150d An important fix for proper inheritance of backing objects for
object splits.  Another excellent detective job by Tor.
Submitted by:	Tor Egge <Tor.Egge@idi.ntnu.no>
1998-05-16 23:03:20 +00:00
John Birrell
86f9ecbad4 Now that FreeBSD/Alpha can be installed on a disk and run on its own,
a bootstrap build under NetBSD is an option.

This makefile will require further changes to ignore aout tools.
1998-05-16 22:20:44 +00:00
Mark Murray
3492514dfd Include correct header to get definition of struct sockaddr_un. 1998-05-16 21:35:37 +00:00
John Birrell
aec120dd4b Moved from directory above. It is i386 specific. 1998-05-16 21:29:17 +00:00
John Birrell
5d625623ae Add an alpha specific ttys 1998-05-16 21:28:45 +00:00
John Birrell
4077bc03dd Make ttys machine specific. 1998-05-16 21:28:17 +00:00
Andrey A. Chernov
34d1ba5cd5 Return back initial tzset() must be before first chroot 1998-05-16 21:23:33 +00:00
Garrett Wollman
8ad9b1a36b Fix rev. 1.7: get offsetof from the correct header file. 1998-05-16 18:04:00 +00:00
Bruce Evans
dae50f6c50 Don't use "ffs" in an ext2fs sleep message string.
Don't forget to clear the inode hash lock before returning from ext2_vget()
after getnewvnode() fails.  Obtained from: rev.1.24 of ffs_vfsops.c (the
original patch for the getnewvnode() race).  Forgotten in: rev.1.4 here.

Removed a duplicate comment.  Duplicated in: rev.1.4 here.

Fixed the MALLOC() vs getnewvnode() race in ext2_vget().  Obtained from:
rev.1.39 of ffs_vfsops.c.
1998-05-16 17:47:44 +00:00
Bruce Evans
2c8838fec4 Abbreviate "ext2fs_fsync" as "e2fsyn" instead of as "extfsn" in a sleep
message string.
1998-05-16 16:52:20 +00:00
Bruce Evans
6fc500878a Get timespecs directly instead of via timevals. 1998-05-16 16:20:50 +00:00
Bruce Evans
7db3328337 Don't abuse `+' to combine flags. 1998-05-16 16:03:10 +00:00
Bruce Evans
ba692924a8 Backed out rev.1.76. It just added style bugs. 1998-05-16 15:21:29 +00:00