Commit Graph

703 Commits

Author SHA1 Message Date
Jordan K. Hubbard
4d66a82366 Perform a much needed tidying-up pass over this code. Sleep for now,
more tomorrow.
1995-05-08 10:20:56 +00:00
Jordan K. Hubbard
69bbb06233 Add the sorted command executor code. 1995-05-08 06:08:27 +00:00
Jordan K. Hubbard
7f197a5448 Ok, we should now create all filesystems, mount them and extract the
cpio floppy at this point.
1995-05-08 06:06:30 +00:00
Jordan K. Hubbard
83b74c37e4 Implement the geometry command. Clean up the help a little. 1995-05-08 01:27:07 +00:00
Jordan K. Hubbard
65a27a9ba4 Add a wizard button for Poul. 1995-05-08 00:56:28 +00:00
Jordan K. Hubbard
0881c9c4a1 Fix a bug in multi-column output. 1995-05-08 00:38:02 +00:00
Jordan K. Hubbard
27e3eb523c Another sync up for Poul. Added a lot more error checking. 1995-05-07 23:37:34 +00:00
Andrey A. Chernov
020531ce67 Add FreeBSD-specific TS_* states 1995-05-07 23:19:53 +00:00
Andrey A. Chernov
9030041959 Enable sio driver and upcoming rc driver
Add more line disciplines
1995-05-07 22:15:46 +00:00
Jordan K. Hubbard
51f0ec8415 Implement a work-around for Create_Chunk providing no pointer to the
new chunk.  The partition editor now works as well as the underlying
libdisk can support it - have at it, Poul!
1995-05-07 22:07:53 +00:00
Bruce Evans
2d732692dc Fix 3 fatal mismatches in format args involving dbtob() and 7 nonfatal
mismatches.
1995-05-07 08:13:37 +00:00
Bruce Evans
ff55774394 Cast some expressions involving dbtob() to (unsigned long) and print them
using %lu.  This became more broken when I fixed dbtob() to support byte
offsets >= 4GB.  The type had to change to [u]quad_t.  Previously the
expressions had type unsigned long and were printed using %d.  After
division by 1024, the expressions are guaranteed to fit in an unsigned
long, at least for the standard DEV_BSIZE, so edquota doesn't need to
know about quad_t's explicitly.

Fix all the other format mismatches exposed by compiling with -Wformat
(6 more quota limits of type unsigned long printed using %d and 6 time_t's
(i.e., longs) printed using %d).
1995-05-07 07:48:35 +00:00
Jordan K. Hubbard
2b0e7dfa13 Make this compile again. Poul and I need to sync up again. 1995-05-07 05:58:57 +00:00
Bruce Evans
2f27939662 Silence `make -s' (echo -> ${ECHO}). 1995-05-07 05:56:00 +00:00
Jordan K. Hubbard
133231e4aa Correct a few ordering errors in how the partitions were being displayed. 1995-05-07 03:38:03 +00:00
Jordan K. Hubbard
64330cc768 Print sizes of partitions now. 1995-05-07 02:04:29 +00:00
Jordan K. Hubbard
4c88964f89 Some fairly serious cleanup. The proper offset should now be used in
creating partitions.  Still need to get the mount points displaying carefully,
but I need to get this into my tree on time so that I can work on that.
1995-05-06 09:34:24 +00:00
Joerg Wunsch
2b33ce9350 Forcibly add -O2 to the vgaio CFLAGS, to work around a gcc bug. 1995-05-06 07:07:52 +00:00
Jordan K. Hubbard
e4d731b693 All the editors are finished. Now if I can just get a problem with libdisk
fixed, we should be able to fully set up the user's disk.  Still to come
with next commit:  filesystem setup, distribution extraction, final
configuration.
1995-05-05 23:47:47 +00:00
Jordan K. Hubbard
a2e3498a3c Everything but the partition editor is done. This commit is for MBR testing. 1995-05-04 23:36:23 +00:00
Jordan K. Hubbard
7c56cfd441 This will now write MBR entries - should be enough for testing. 1995-05-04 19:48:19 +00:00
Jordan K. Hubbard
2e363cad34 My latest round of changes - make the "slices" editor work. 1995-05-04 03:51:22 +00:00
Jordan K. Hubbard
786a5cad11 Change the perennially annoying reminder to "make depend" (which may or
may not be desired if you're just going to blow the kernel away again later)
and substitute one that tells the user where the new kernel build
directory actually IS, which can at least be argued to be useful information
in all cases.
Reviewed by:	davidg
1995-05-03 20:16:57 +00:00
Bill Paul
90b434aeb0 Cosmetic changes and paranoia checks:
ypbind.c:
Make fewer assumtions about the state of the dom_alive and dom_broadcasting
flags in roc_received().
Cosmetic changes and paranoia checks:

ypbind.c:
Make fewer assumtions about the state of the dom_alive and dom_broadcasting
flags in roc_received().

If select() fails, use syslog() to report the error rather than perror().

Check that all our malloc()s succeed. Report malloc() failure in
ypbindproc_setdom_2() to callers.

yplib.c:

Use #defined constants in ypbinderr_string() rather than hard-coded values.
1995-05-03 18:34:22 +00:00
Rodney W. Grimes
6de98b5d98 Put $Id$ on all of these.
Correct Makefile so that we build during all: and only install for
make install.

If /etc/sysconfig exists source it to get the flags for restarting
named with.  If /etc/sysconfig says no named runs, don't try to start one.

Don't attempt to kill anything if we can not find the named.pid file.

Reviewed by:	Nickolay N. Dudorov <nnd@gw.itfs.nsk.su>
1995-05-03 03:26:59 +00:00
Jordan K. Hubbard
411bac67a7 Commit my latest changes before having a nap. Still not close to done,
nor is it in sync with my working sources, but it leaves me less CVS hassles
to bring in the new files at this time.  Still no documentation to translate
quite yet, but soon.  This stuff is actually very close now.
1995-05-01 21:56:32 +00:00
Andrey A. Chernov
7439966a40 Don't accept usernames longer than 8 characters
Submitted by: Wolfram Schneider <wosch@cs.tu-berlin.de>
1995-04-30 19:20:25 +00:00
Jordan K. Hubbard
e40a316fcf o Add extra menu types (radio implemented, multiple choice shortly).
o Make the framework generally more robust.
o Figured out how to nest the menu descriptions - no more grotty initialization
  of menus.
o Fix bug with helpline and helpfile not being reset.
o Add stubs for the media selection code.

Coming next:  Fdisk and disklabel screens using Phk's new libdisk stuff.
1995-04-29 19:33:06 +00:00
Andrey A. Chernov
280bdae500 HAVE_SAVED_UIDS not depends of BSD version but depends
of _POSIX_SAVED_IDS from unistd.h, fix it.
1995-04-29 15:16:41 +00:00
Andrey A. Chernov
926f1d2e59 Close sec. hole: can exec pgm with more groups than calling user have
Include unistd.h and fix few argument old-way things
1995-04-29 13:55:34 +00:00
Andrey A. Chernov
ee9968eab5 Remove FreeBSD-specific setre*() cheat, we have working thing now 1995-04-29 13:38:14 +00:00
Andrey A. Chernov
aa4f20e4df Fix typo in HAVE_SAVED_UIDS define 1995-04-29 13:25:13 +00:00
Jordan K. Hubbard
d9a50f903f Whoops! One of my automatics was initialized to garbage. Fix it. 1995-04-28 18:24:31 +00:00
Søren Schmidt
de4c8be3eb Corrected variable names for syscons support. 1995-04-28 09:08:18 +00:00
Poul-Henning Kamp
ca927fef5b Don't dereference NULL pointers. 1995-04-28 04:58:19 +00:00
Poul-Henning Kamp
4ccbee740d Told Makefile about manpage. 1995-04-28 04:52:33 +00:00
Poul-Henning Kamp
f663de8187 Had a moment, wrote a manpage based on kprof's page. 1995-04-28 04:51:08 +00:00
Jordan K. Hubbard
2283d8e502 Use mtree -U instead of -u and put back error check. Thanks Rod! 1995-04-28 04:16:30 +00:00
Jordan K. Hubbard
d0d3dac501 This will be the module that handles all media detection. 1995-04-27 18:05:10 +00:00
Jordan K. Hubbard
ef42570d65 Latest raft of changes.
Added another couple of menu item types.

Reshuffled the menus and added a few more.  Sure wish I could figure out
how to initialize a menu with _one_ initializer rather than two! :(
1995-04-27 18:03:55 +00:00
Jordan K. Hubbard
4e278bdb76 Here is my first "framework" commit of the new sysinstall. There is a LOT
more to come in the next 24 hours, this is just the first stable result of
8 hours of hacking so far.  The specification format for menus is pretty
much hammered out and the beginnings (very humble) of the doc hierarchy
are present for an example.  It should be quite easy to add a lot more
menus quickly to this since I did go somewhat out of my way to make the
framework easy to work with.  This is NOT the glorious semi-graphical
sysinstall (or whatever its name will be) that the install-geeks are working
on, this is simply the "son of sysinstall" I've been promising to write in
the interim for 2.0.5 and 2.1R (super install doesn't come until 2.2R).
1995-04-27 12:50:35 +00:00
Jordan K. Hubbard
278ea7ecee Don't bother checking the return status of the mtree command - it returns
non-zero stats when it changes things, too.
1995-04-27 11:33:08 +00:00
Jordan K. Hubbard
9d69574dbc Close PR:
>Number:         368
>Category:       bin
>Synopsis:       Lpd doesn't log errors after failed exec
>Description:

If an exec done by lpd fails, nothing is sent to the system log
indicating what went wrong.  This is because lpd closes all of
the file descriptors before doing the exec, thus closing the syslog
file descriptor in the process.
[Fix applied]
Submitted by:	pritc003@maroon.tc.umn.edu
1995-04-27 04:56:10 +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
Jordan K. Hubbard
f465ace952 Add code for dealing with URLs. 1995-04-26 15:08:23 +00:00
Jordan K. Hubbard
a0a72d6933 Make pkg_info URL aware (and also make it use the PKG_PATH properly, like
everyone else).  Try this:
	pkg_info ftp://freebsd.org/pub/FreeBSD/packages/all/gmake-3.73.tgz
1995-04-26 15:08:02 +00:00
Jordan K. Hubbard
34f907903d Add depend on libftp since this is now in lib. 1995-04-26 15:07:14 +00:00
Jordan K. Hubbard
18a7c7704f Add a great deal more error checking to various things. 1995-04-26 15:06:58 +00:00
Jordan K. Hubbard
7113d27114 Further work on making all this more robust in the face of failure.
Also allow URL specification for a package.  This works for things the
package may depend on, too.

Allow PKG_PATH to be used anywhere a package is being searched for.
1995-04-26 15:06:26 +00:00
Jordan K. Hubbard
80206f052f Yikes! How did that typo slip past! I'd swear I compiled it. Oh well,
thanks, Satoshi!

Embarrassed by:	asami
1995-04-26 12:37:46 +00:00