Commit graph

29055 commits

Author SHA1 Message Date
Brian Somers dd0645c5b7 o Add the `set mode' command for change a links current mode. It
is not possible to switch to or from dedicated or direct mode,
  but all other combinations are ok (eg. -auto -> -ddial).
o Cope with the fact that commands with optional context may not
  be able to obtain a link with command_ChooseLink() (if all links
  have been deleted for example).
o Allow `clone'ing in non-multilink mode.  We may for example want
  to configure two links in unilink mode and dial them both, using
  the one that comes up first.  It's also possible to rename
  ``deflink'' by cloning it, deleting the original, then setting
  the mode of the new link.
1998-05-15 23:58:30 +00:00
Bill Paul a9352e90f0 Patch RPC library to avoid possible denial of service attacks as described
recently in BUGTRAQ. The set_input_fragment() routine in the XDR record
marking code blindly trusts that the first two bytes it sees will in fact
be an actual record header and that the specified size will be sane. In
fact, if you just telnet to a listening port of an RPC service and send a
few carriage returns, set_input_fragment() will obtain a ridiculously large
record size and sit there for a long time trying to read from the network.

A sanity test is required: if the record size is larger than the receive
buffer, punt.
1998-05-15 22:57:31 +00:00
Bill Paul 9c69f26836 Patch RPC library to avoid possible denial of service attacks as described
recently in BUGTRAQ. If a stream oriented transport fails to properly decode
an RPC message header structure where there should be one, it should mark
the stream as dead so that the connection will be dropped.
1998-05-15 22:53:47 +00:00
Andrey A. Chernov 59fcc4ce0f Low level use of 'vidattr()' can cause a NULL pointer to be
dereferenced.  This is because 'SP' is only initialized via 'newterm()'
(which is not required if you are going to interact with the 'terminfo'
database without using 'ncurses').

PR: 6648
Submitted by: Max Euston <meuston@jmrodgers.com>
1998-05-15 21:35:53 +00:00
David E. O'Brien 361854f773 Change an arbitarly hardcoded `10' to MAX_NO_DISKS, which is currently "20".
Otherwise can't see sd10 (obtained using wired down sd unit numbers),
reguardless of the number of actual disks you have.
1998-05-15 21:17:01 +00:00
Garrett Wollman 4f81ef5056 mbuf, inet, and unix modules no longer read kvm. 1998-05-15 20:19:21 +00:00
Garrett Wollman 98271db4d5 Convert socket structures to be type-stable and add a version number.
Define a parameter which indicates the maximum number of sockets in a
system, and use this to size the zone allocators used for sockets and
for certain PCBs.

Convert PF_LOCAL PCB structures to be type-stable and add a version number.

Define an external format for infomation about socket structures and use
it in several places.

Define a mechanism to get all PF_LOCAL and PF_INET PCB lists through
sysctl(3) without blocking network interrupts for an unreasonable
length of time.  This probably still has some bugs and/or race
conditions, but it seems to work well enough on my machines.

It is now possible for `netstat' to get almost all of its information
via the sysctl(3) interface rather than reading kmem (changes to follow).
1998-05-15 20:11:40 +00:00
Garrett Wollman eb92a34766 Fix an obvious parameter-order bogon. (Don't know what happened to
the warning message before.)
1998-05-15 20:02:47 +00:00
Pierre Beyssac 40907429e4 Small typo in T/TCP patch ("speicfy" -> "specify"). 1998-05-15 19:16:35 +00:00
Brian Somers ea7229694b o Call bundle_LinkClosed() when transferring a datalink so that
the bundle has the opportunity to go PHASE_DEAD and cleanup
  the interface (if it's the last link).
o Regnerate our phys_type value when we transfer the link.
o Always clean up the interface when destroying our bundle in case
  we're abending.
o Always clean up our interface when the last link is gone rather than
  delaying things 'till exit time in the -direct case (the interface
  is useless anyway).  Do this *after* slamming down our NCPs (if
  they're still around).
o Our MP server descriptor now clears the relevent device descriptor
  from our descriptor [fd]sets when a datalink is on death-row (to
  be transferred to another running ppp), thus avoiding the possibility
  of passing a bum descriptor to select() and having ppp abend.
o Handle the MP socket descriptor functions from within the bundle
  descriptor functions.  Now we ensure that the MP socket descriptor
  functions see the descriptor sets *after* they've been seen by our
  datalinks.
o Add/fix a few more comments.
1998-05-15 18:21:45 +00:00
Brian Somers 0a1b5c9d9e o Activate link-level CCPs in multilink mode, by bringing them
into the ST_STOPPED state.
o Allow an optional ccp|lcp argument to `down'.  The default is
  still lcp (as before).  You can now call down with no context
  in multilink mode, in which case it'll down the multilink ccp
  or the entire bundle (*very* rude).
o Allow an optional `!' after `close ccp' (close ccp!) to tell
  ccp to stay in the CLOSED state after the terminate ACK.  The
  default is now to re-enter STOPPED so that the peer can bring
  the layer back up if desired.
o Always handle proto-compressed packets, even if we've agreed
  (in LCP) that the peer will not send us 1 byte protocols.
  If the peer violates the LCP agreement, log it to the HDLC
  log.
o Fix some comments.
1998-05-15 18:21:12 +00:00
Bruce Evans 7b97e2bbd6 Don't use `&&' in any shell commands here. Using it to give conditional
execution is usually unnecessary in BSD Makefiles because BSD make
invokes shells with -e.  Using it to give conditional execution is
often wrong in BSD makefiles because BSD make joins shell commands
when invoked in certain ways (in particular, as `make -jN').  Example
makefile:
---
clean:
	cd /
	false && true
	rm -rf *		# a dangerous command
---
This should terminate after the `false && true' command fails, but
it doesn't when the commands are joined (`false && true' is a non-
simple command, so -e doesn't cause termination).  The b-maked version:
---
clean:
	cd /
	false; true
	rm -rf *		# a dangerous command
---
terminates after the `false' command fails (`false' is a simple
command, so -e causes termination).  However, for versions of
make like gnu make that don't invoke shells with -e, this change
completely breaks the makefile.

This is one of the fixes for the bug suite that caused `make world'
to sometimes put raw cpp output in .depend files.  Building of cc
sometimes failed, but the failure did not terminate the build
immediately, and various wrong versions of the cc components were
used until one was wrong enough to cause a fatal error.
1998-05-15 17:12:00 +00:00
Andrey A. Chernov f350361770 Return back vfork and use execve with TZ="" environment in vfork case 1998-05-15 16:51:06 +00:00
Andrey A. Chernov f85f9e5656 Use fork instead of vfork since setenv clobber parent environment
Fork already used for INTERNAL_LS in anycase
1998-05-15 16:30:09 +00:00
Andrey A. Chernov 46589cb624 Move TZ="" assignment just before exec to not touch other time stuff 1998-05-15 16:08:52 +00:00
Andrey A. Chernov 2903069462 Do TZ= as first thing, since FTP protocol is unable to tell zone offset in
any case.

It makes no difference for anon account (since chroot already makes it GMT),
but if you do mirror with special non-anon login, in old variant
your mirror will be wholy retransmitted twice in the year due to
time zone changes (/etc/localtime plays bad role here)
1998-05-15 15:06:58 +00:00
Daniel O'Callaghan 0eaa45335d PR: 6641
Submitted by:	Andre Albsmeier <andre.albsmeier@mchp.siemens.de>
Make -q work for zeroing a specific rule.
1998-05-15 12:38:07 +00:00
John Birrell 4d47d82d5f More programs are now broken on alpha due to the libbind changes
that prevent the programs from being linked static (duplicated
symbols).

Other programs depend on kernel internals. These will have to wait
for a custom alpha kernel. For now, let's just make the build safe.
1998-05-15 12:33:56 +00:00
John Birrell 17ce12487f Change variable from long to time_t where they are passed by reference
to time().
1998-05-15 12:28:43 +00:00
John Birrell 4bf15af17e Remove a big hack after adding a small one to libc/gen/getcwd.c to
handle the lack of __getcwd syscall in NetBSD.
1998-05-15 12:01:06 +00:00
John Birrell efda37108b NetBSD doesn't have a __getcwd syscall, so set have__getcwd to `no'
when building libc with NetBSD syscalls.
1998-05-15 11:59:00 +00:00
John Birrell 6e19590c40 The FreeBSD lkm design is aout specific. 1998-05-15 11:57:05 +00:00
John Birrell f1f399e59d syscons is i386 specific due to machine/console.h 1998-05-15 11:55:47 +00:00
Joseph Koshy 41cbb62401 Add cross references for find(1), locate(1), whereis(1) and which(1).
Submitted by: Josh Gillam <josh@quick.net>
PR: docs/6642
1998-05-15 11:22:42 +00:00
Bruce Evans 5d9599c863 Oops, forgot references in previous commit.
Submitted by:	Brian Cully <shmit@erols.com>
PR:		6178
1998-05-15 09:34:48 +00:00
Bruce Evans 70a6e3314e Support Objective C almost as well as C++.
Notes:
- We no longer use -fgnu-runtime in bsd.lib.mk, since it is the default
  and bsd.lib.mk is the wrong place to override it.
- Gnu C doesn't have a special compiler driver for Objective C like it
  does for C++.  The defaults are suitable for Gnu C.  Use `OBJCLIBS='
  in /etc/make.conf for POC.
1998-05-15 09:30:13 +00:00
John Birrell 429f4d134c Change the name of a variable from _start to s_start. On alpha there
must be a library function called _start.
1998-05-15 09:26:28 +00:00
Joseph Koshy 93218a8ee4 Removed misleading claim that login classes are no longer implemented.
Added Xref to pw(8).
1998-05-15 09:19:03 +00:00
John Dyson 424edf1b6a Disable the auto-Write Combining setup for the pmap code. This
worked on a couple of machines of mine, but appears to cause problems
on others.
1998-05-15 07:25:25 +00:00
John Birrell d73d5c86a3 Change the order of the include paths so that the architecture specific
directory is searched before the generic one. You can guess what was
happening.. all the world's assumed to be 32-bit.
1998-05-15 06:42:37 +00:00
Philippe Charnier c9a8d1f4dd Correct use of .Nm. Add rcsid. 1998-05-15 06:30:58 +00:00
Philippe Charnier 06f628852a correct use of .Nm. Add rcsid. 1998-05-15 06:23:45 +00:00
Philippe Charnier 542ed50153 Correct use of .Nm. Typo. 1998-05-15 06:22:30 +00:00
Philippe Charnier 2a170595d1 Correct use of .Nm. Add rcsid. 1998-05-15 06:19:05 +00:00
John Birrell 63e7e54aa4 NetBSD kernels don't support TCP_NOPUSH, so on alpha don't try setting
this socket option. This is temporary code while the alpha still uses
NetBSD socket code in the kernel.
1998-05-15 03:23:28 +00:00
John Birrell cfc1614a48 int -> long changes that reduce the diffs with the NetBSD version to
work in a 64-bit environment.
1998-05-14 21:45:18 +00:00
Guido van Rooij c6c38f1d7f On request of Garrett, ad a way to specify that a service should be
reachable via T/TCP
Reviewed by:	Garrett Wollman
1998-05-14 20:26:16 +00:00
Justin T. Gibbs c3f80129dc Fix list corruption and memory leak that could occur when
releasing EISA irqs.
1998-05-14 19:47:38 +00:00
Andrey A. Chernov f46bdbccdb Regenerated syscalls list after signanosleep removing 1998-05-14 14:49:58 +00:00
Andrey A. Chernov 01929df9e0 Remove reference to signanosleep 1998-05-14 14:39:58 +00:00
KATO Takenori 73a9e38355 Sync with sys/i386conf/majors.i386 revision 1.42. 1998-05-14 12:42:11 +00:00
Peter Wemm f202e67dfe Nuke signanosleep() 1998-05-14 11:36:16 +00:00
Peter Wemm d919f8a34a nuke signanosleep(). 1998-05-14 11:33:04 +00:00
Peter Wemm 9c4aed2ed7 Nuke signanosleep(). (I've left nanosleep1() seperate to nanosleep()
as I don't want to mess with the multiple returns)
1998-05-14 11:31:08 +00:00
Peter Wemm 06b6493558 regen after signanosleep nuke 1998-05-14 11:29:06 +00:00
Peter Wemm 786cf38a29 deep-six signanosleep(). It sounded like a good idea at the time. 1998-05-14 11:28:11 +00:00
Peter Wemm 1973d51bfb Commit an old change that has been sitting around for a long while.
signanosleep() did not deal with signal masks properly.  This change was
based on a discussion with bde some time ago (at least 6 months or more).

signanosleep() should probably go away since it was never really used for
more than a few weeks and doesn't appear in released code.  It should
probably be killed before somebody uses it and it becomes a gratuitous
nonstandard feature.
1998-05-14 10:38:52 +00:00
Joseph Koshy bc53c0a6b2 Allow `w' to treat a corrupted "utmp" as a non fatal error.
PR: bin/2832
1998-05-14 10:13:24 +00:00
John Birrell ad12d72a41 Remove a bogus prototype for time() and let time.h do that.
Change pointer casts from int to long. The code that looks to index -1
of argv is still broken on alpha.
1998-05-14 10:07:29 +00:00
Paul Traina 25e363dff1 Add an example showing how to build a UFS floppy 1998-05-14 06:42:47 +00:00