Commit Graph

491 Commits

Author SHA1 Message Date
Jordan K. Hubbard
790bacaa95 Remove piano. 1995-04-28 17:38:54 +00:00
Jordan K. Hubbard
f8c191bd8e Add piano. 1995-04-28 09:30:54 +00:00
Andrey A. Chernov
b5c3f5e746 Remove setre* hacks, we have working thing now 1995-04-27 19:27:42 +00:00
John Fieber
7203d1e933 Silence -Wall. 1995-04-27 18:18:58 +00:00
John Fieber
bc8b14f125 Added sgmls 1995-04-27 18:03:29 +00:00
John Fieber
61614fe0ad The sgmls SGML parser. Support for our hypertext documents.
Reviewed by:	Paul Richards, Garrett Wollman
1995-04-27 16:03:47 +00:00
Bill Paul
456ebbf8f5 ypbind.c: Major overhaul.
- Moved to a more client-driven model. We aggressively attempt to keep
the default domain bound (as before) but we give up on non-default
domains if we lose contact with a server and fail to get a response
after one round of broadcasting. This helps drastically reduce the
amount of network bandwitdh that ypbind consumes: if a client references
the secondary domain at some later point, this will prod ypbind into
establishing a new binding anyway, so continuously broadcasting without
need is pointless.

Note that we still actively seek out a binding for our default domain
even if no client program has queried us yet. I'm not exactly sure if
this matches SunOS's behavior or not, but I decided to do it this way
since we can get into all sorts of trouble if our default domain comes
unbound. Even so, we're still much quieter than we used to be.

- Removed a bunch of no-longer pertinent comments and a couple of
chunks of #ifdef 0'ed code that no longer fit in to the new layout.

- Theo deRaadt must have become frustrated with the callback mechanism
in clnt_broadcast(), because he shamelessly stole the clnt_broadcast()
code right out of the RPC library and hacked it up to suit his needs.
(Comments and all! :)

I can understand why: clnt_broadcast() blocks while awaiting replies.
Changing this behavior requires surgery. However, you can work around
this: fork the broadcast into a child process and relay the results
back to the parent via a pipe. (Careful obervation has shown that the
SunOS ypbind forks children for broadcasting too, though I can only
guess what sort of interprocess communication it uses. pipe() seems to
do the job well enough.)

This may seem like the long way around, but it's not really that
hard to implement, and I'd prefer to use documented RPC library functions
wherever possible. We're careful to limit the number of simultaneous
broadcasters to avoid swamping the system (the current limit is 5).
Each clnt_broadcast() call only sends out a small number of packets
at increasing intervals. We're also careful not to spawn more than one
bradcaster for a given domain.

- Used clntudp_bufcreate() and clnt_call() to implement a ping()
function for directly querying a particular server so that we can
check if it's still alive. This lets me completely remove the old
bradcasting code and use actual RPC library calls instead, at the
cost of more than a few handfulls of torn-out hair. (Make no mistake
folks: I *HATE* RPC.) Currently, the ping interval is one minute.

- Fixed another potential 'nfds too big for select()' bug: use
_rpc_dtablesize() instead of getdtablesize().

- Quieted gcc -Wall a bit.

- Probably a bunch of other stuff that I've forgotten.

ypbind.8:

- Updated man page to reflect modifications.

ypwhich.c:

- Small mind-o fix from last time: decode error results from
ypbind correctly (*groan*)

yplib.c:

- same as above

- Change behavior of _yp_dobind() a little: if we get back a 'Domain
not bound' error for a given domain, retry a few times before giving
up and passing the error back to the caller. We have to sleep for a
few seconds between tries since the 'Domain not bound' error comes
back immediately (by repeatedly looping, we end up pounding on ypbind).
We retry at most 20 times at 5 second intervals. This gives us a full
minute to get a response. This seems to deviate a bit from SunOS
behavior -- it appears to wait forever -- but I don't like the idea
of perpetually hanging inside a library call.

Note that this should fix the problems some people have with bindings
not being established fast enough at boot time; sometimes amd is started
in /etc/rc after ypbind has run but before it gets a binding set up. The
automounter gets annoyed at this and tends to exit. By pausing ther YP
calls until a binding is ready, we avoid this situation.

- Another _yp_dobind() change: if we determine that our binding files
are unlocked or nonexistent, jump directly to code that pokes ypbind
into restablishing the binding. Again, if it fails, we'll time out
eventually and return.
1995-04-26 19:03:16 +00:00
Poul-Henning Kamp
3319f5a48f Do kernels up to 2Mb. 1995-04-25 05:27:04 +00:00
Nate Williams
0e42d6bd35 This got ignored as a shared object during the import. Add it back as
it's necessary for the doc process.
1995-04-22 06:07:48 +00:00
Bill Paul
8a5bd1a2a3 Make Rod Grimes's life a little simpler: replace all exit(1)'s with
seperate exit values depending on the error. (The error values are
#defined and commented near the top of the file for clarity). This
is to help write a small bit of shell script for /etc/rc that calls
ypwhich a few times after ypbind is invoked to make sure we're
actually bound to a server before proceeding (if we aren't, the
automounter can fail if it's using NIS maps).
1995-04-22 00:23:59 +00:00
Bill Paul
644161688b small NIS binding fixes:
ypbind.c: if a client program asks ypbind for the name of the server
for a particular domain, and there isn't a binding for that domain
available yet, ypbind needs to supply a status value along with its
failure message. Set yprespbody.ypbind_error before returning from
a ypbindproc_domain request.

yplib.c: properly handle the error status messages ypbind now has the
ability to send us. Add a ypbinderr_string() function to decode the
error values.

ypwhich.c: handle ypbind errors correctly: yperr_string() can't handle
ypbind_status messages -- use ypbinderr_string instead.
1995-04-21 18:04:36 +00:00
Poul-Henning Kamp
f6e018497f Use port 21 as default if getservbyname fails to find it for us. This let
us remove some crud from the install-procedure.
1995-04-20 05:38:58 +00:00
Bill Paul
de2a1afc47 Undo the stupidity I inflicted on these files and replace it with
some (hopefully) less offensive stupidity:

If we detect that a user has loaded a module that fails to initialize
itself correctly, panic. There really isn't a safe way to recover from
something like this; we can't know that the module is bad until after
the entry point is called, by which time it's too late to do anything
about it.
1995-04-20 05:08:53 +00:00
Joerg Wunsch
77023b92da Make mt(1) orthogonal: now that we print the densities as strings
instead of hex, make it accept density names for input, too.
1995-04-18 22:27:43 +00:00
Bill Paul
b877a2160b Small fixups to use LM_UNKNOWN type, also fix slight formatting
offset problem in banner printf().
1995-04-18 02:19:17 +00:00
Joerg Wunsch
1146dede84 Round #1 of my st(1) -> mt(1) merge. All the commands should be
covered now, and i've attempted to give textual representations
instead of magic numbers.

The st(4) driver still misses some pieces; i'm going to implement the
EOM functionality RSN.

Any takers for the MTCOMP command?  Seems to have never been implemented.
1995-04-17 21:55:11 +00:00
Rodney W. Grimes
144b71fe74 Missing ${DESTDIR} on chflags commands added. 1995-04-17 19:15:38 +00:00
Andrey A. Chernov
cac6992aca 1) kill temp diver upon exit
2) add logical ops, fix ! precedence, implement unary +, fix exp
Obtained from: NetBSD
1995-04-16 23:31:35 +00:00
Rodney W. Grimes
a164d484cd Fix spelling error that keeps this from compiling with KERBEROS & SKEY
defined.

Submitted by:	Mark Murray <mark@grondar.za>
1995-04-16 20:00:21 +00:00
Andrey A. Chernov
d65a0f6ebd Merge. 1995-04-16 14:26:18 +00:00
Andrey A. Chernov
deb4005ffb This commit was generated by cvs2svn to compensate for changes in r7889,
which included commits to RCS files with non-trunk default branches.
1995-04-16 14:13:48 +00:00
Andrey A. Chernov
6e4ab1ef34 Upgrade. 1995-04-16 14:13:48 +00:00
Bruce Evans
678308e07a Don't crash when there are too many items to fit on one screen. 1995-04-15 23:10:59 +00:00
Andrey A. Chernov
9cb939b4b4 Fight over non-working setruid 1995-04-15 22:08:10 +00:00
Poul-Henning Kamp
3e4ece9108 Added kzip in i386 section 1995-04-15 08:19:16 +00:00
Poul-Henning Kamp
2c3b2c6c13 This program to compress a kernel with. You loose all the symbols, so
usability is limited.  Very useful on fixit floppies &c.

Obtained from:	Linux via 386BSD
1995-04-15 08:18:20 +00:00
David Greenman
29e1dc7556 Install with default BINOWN (as it once used to be). 1995-04-15 03:31:19 +00:00
David Greenman
567f2ec907 Install setgid kmem rather than setuid root. The problem with procfs that
was breaking this before has been fixed.
1995-04-15 03:25:52 +00:00
Garrett Wollman
606eff77a1 Add `-s' flag to permit selection of devices in accordance with their
state (after all, who wants to be offered a menu of devices which
weren't found?).
1995-04-14 18:33:44 +00:00
Andrey A. Chernov
a702c7b87b Add missing -lmytinfo, hits when compiled -static
Add DPADD
1995-04-14 16:13:28 +00:00
Andrey A. Chernov
e323ad35f3 Move digits before letters 1995-04-14 15:56:32 +00:00
Garrett Wollman
c4374cae95 Add devmenu(1). 1995-04-13 21:11:53 +00:00
Garrett Wollman
f34bdd9a32 Another sample devconf application. This one's a menu of devices; read the
man page.
1995-04-13 21:11:01 +00:00
Garrett Wollman
ed8be72c29 Disallow Kerberos when S/Key is required. Fixes PR #339.
Submitted by: Paul Traina <pst@Shockwave.com>
1995-04-13 15:20:35 +00:00
Andrey A. Chernov
b89321a57d Upgrade. 1995-04-12 02:42:39 +00:00
Andrey A. Chernov
7970bd101c Fix output field range
Submitted by: edward@edcom.com
1995-04-11 18:50:51 +00:00
David Greenman
d2bccb9fbe Added #include <sys/queue.h> 1995-04-10 00:38:15 +00:00
David Greenman
affcfa1401 Updated for 4.4BSD queue macros. (Oops, I forgot to commit this last night;
sorry Jordan).
1995-04-09 15:21:08 +00:00
David Greenman
a9d6f1a78d That's what I get for doing things in a hurry...applied up-to-date patch
to this file rather than old one (before I renamed the structure element).
1995-04-09 15:12:21 +00:00
David Greenman
fe9cff485b Oops, remove some chaff from previous commit. 1995-04-09 05:34:54 +00:00
David Greenman
7452c2a5ef Updated netstat to grok 4.4 QUEUE macros now being used to like the PCBs
together.
1995-04-09 05:33:17 +00:00
Andrey A. Chernov
d71c8ca1ab Remove unneded substitutes 1995-04-08 21:51:26 +00:00
Andrey A. Chernov
56694345a1 Update controls & remains 1995-04-08 17:34:15 +00:00
Andrey A. Chernov
1aefeada69 Remove digrams to not confuse sorting 1995-04-08 17:08:45 +00:00
Jordan K. Hubbard
d31b19afb1 The negative expire times shown by netstat are confusing and ugly.
Destination      Gateway            Flags     Refs     Use     Netif Expire
199.182.75.128   link#1             UC          0        0       ed0 -842660
Submitted by:	John Capo <jc@irbs.com>
1995-04-06 06:09:44 +00:00
Jordan K. Hubbard
ce0436e7a6 It has always bugged me that ps and w did not display su with tcsh
properly.  I know, tcsh is not a "Real Shell".

jc       p2 :0.0             Tue04PM     - -u (tcsh)
                                           ^^^
7173 p2  S+     0:01.33 -u (tcsh)
			^^^

Submitted by:	John Capo <jc@irbs.com>
1995-04-06 06:06:47 +00:00
Joerg Wunsch
fe89da38f6 Sed dumps core when linked with some coalescing malloc because it
doesn't initialize malloced structure.

Submitted by:	vode@hut.fi
1995-04-05 22:55:27 +00:00
Nate Williams
13eb8ded47 This is the 90's, ask the user for a Subject by default when sending mail. 1995-04-03 05:40:54 +00:00
Bruce Evans
73d1243fe5 Include <stdlib.h> so that malloc() is declared. 1995-04-02 19:01:07 +00:00
Andrey A. Chernov
d8e3948cc1 Finally restore my original MAIL fix after all junk patches. 1995-04-02 00:16:09 +00:00