Commit Graph

667 Commits

Author SHA1 Message Date
simonb e42b2048d4 Convert to something resembling KNF. 1999-08-21 10:40:03 +00:00
simonb e28c422151 Instead of writing out a structure that contains pointers as the header
of the card decks file, just write out the number of cards for each
deck.  Also use "off_t" for offsets into the file (that are stored after
the number of cards) instead of "long".
/usr/share/games/cards.pck is now MI.
1999-08-21 09:23:44 +00:00
simonb 87500c939d Use new endian-specific conversion macros - 64-bit off_t's are now
the stored the same regardess of the byte order of the generating
host.

Note in the strfile(8) man page that all fields are big-endian, not
in network byte order.
1999-08-21 07:02:46 +00:00
simonb ba77c9abaf Don't chown installed files or directories if UNPRIVILEGED is defined.
"make build" should now work as a non-root user (tested on Alpha).
mtree spits out lots of warnings during "make distrib-dirs", but
these are non-fatal.
1999-08-21 06:30:11 +00:00
simonb b729f2c755 Use ${INSTPRIV} with ${INSTALL}. 1999-08-21 06:27:29 +00:00
hubertf 96651fe764 Make phrase to enter password again clearer 1999-08-18 01:39:16 +00:00
enami d8ad2663a8 In name section, use .Dq macro rather than writing double quote directly. 1999-08-17 03:36:35 +00:00
simonb 299578ebd5 Spell "privilege" correctly (correct spelling from Jonathan Stone). 1999-08-16 02:59:22 +00:00
tron 7cef41650e Adapt to change of "termcap.h". 1999-08-14 16:38:45 +00:00
tron b3cf7d7788 Adapt to change in "termcap.h". 1999-08-14 16:36:42 +00:00
tron 679f4a54e3 Adapt to change of "termcap.h". 1999-08-14 16:29:22 +00:00
sommerfeld 7e9fe5fb1e Fix the part of pr8201 which is IMHO a bug: the error message now goes
to stderr.

The existing error message ("I don't know what xxx means") is
unchanged, as it is stylisticly in keeping with the light-hearted
nature of the program, and is also more likely to be accurate than the
"no such acronym" error message proposed in 8201.
1999-08-13 03:02:06 +00:00
hubertf ead3c28a8d Leave ^Z-handling to the system (curses? no idea, at least it works :-),
and don't wait for two seconds when game is over.
1999-08-10 21:52:43 +00:00
hubertf 2e41cf04d2 Print score after endwin() so it isn't deleted immediately afterward. 1999-08-08 03:08:08 +00:00
simonb 32a44f6987 Revert inclusion of <string.h> now that curses has been fixed. 1999-08-08 02:06:01 +00:00
thorpej a451d97336 Fortunes from those Unamerican Activities bumper stickers you see on
mountain bikes owned by Gen-X'ers.
1999-08-04 22:45:09 +00:00
thorpej 810b5148c4 Need <strings.h>. 1999-08-04 18:38:12 +00:00
hubertf a71d955669 This patch converts worms(6) to use curses, thereby
simplifying the code and improving its portability.  It also adds a
delay option from OpenBSD, to allow reasonable speed display on fast
terminals, adds use of const, and fixes signal handling and use of
errx() where appropriate.

Patch supplied in PR 6661 by Joseph Myers <jsm28@cam.ac.uk>.
1999-07-30 02:23:27 +00:00
hubertf 1543eff804 This patch converts rain(6) to use curses, thereby
significantly simplifying the code and improving its portability.  It
also adds a delay option from OpenBSD to make the display go at a
useful speed on fast terminals, and fixes signal handling to make it
reliable.

Patch supplied by Joseph Myers <jsm28@cam.ac.uk> in PR 6659.
1999-07-30 02:14:56 +00:00
hubertf ef49c17e92 This patch fixes adventure(6) to use `extern' on declarations of
objects in its header file, and to add corresponding definitions to
init.c accordingly.  (See the C standard - relying on linker commons
where there are multiple uninitialised declarations of an object in
the program traditionally works on Unix, but is not standard C.)

The patch also removes a bit-rotten code fragment under #ifdef
OLDSTUFF.

Patch submitted in PR 8105 by Joseph Myers <jsm28@cam.ac.uk>
1999-07-28 23:23:39 +00:00
hubertf c26f3e09fd This is a trivial fix to backgammon(6): '\a' is cleaner than '\007'.
Submitted in PR 8104 by Joseph Myers <jsm28@cam.ac.uk>
1999-07-28 23:15:51 +00:00
hubertf 18ee317315 This patch makes worm(6) keep the cursor on the head of the worm.
Submitted by Joseph Myers <jsm28@cam.ac.uk> in PR 8103.
1999-07-28 23:09:45 +00:00
hubertf 303b1c7490 This patch adds references to the main punched card, paper tape and
Morse code standards to the bcd(6) manpage (which also serves as the
manpages ppt(6) and morse(6)).

(The only one of these standards I have read is the ECMA-10 paper tape
standard, which is also probably the least readily available, since
ECMA don't supply copies of obsolete standards, though they will
supply printed copies of any or all of their current standards at no
charge.)

Patch submitted in PR 8102 by Joseph Myers <jsm28@cam.ac.uk>
1999-07-28 23:01:59 +00:00
hubertf 062503c344 This patch makes bcd(6) use `const' where appropriate, and use
unsigned char rather than char for values that end up passed to
isascii() and also used as array indices.

Patch submitted by Joseph Myers <jsm28@cam.ac.uk> in PR 8093.
1999-07-28 02:12:33 +00:00
hubertf d29d591c01 This patch fixes a remaining relic of the backgammon(6) "execute
saved game to continue playing" problem described in bin/6077.

Patch contributed by Joseph Myers <jsm28@cam.ac.uk> in PR 8092.
1999-07-28 02:07:39 +00:00
hubertf d8b3f85961 In atc(6), the function getAChar() has BSD and SYSV variants to deal
with variations in EINTR behaviour, but the optimisation of using the
BSD version where the SYSV version isn't needed is insignificant.
This patch therefore simplifies the code by making there be just one
version, a more paranoid (about EOF when errno is already EINTR)
version of the SYSV code.  Since the BSD/SYSV defines are mainly used
to control whether BSD timers are used, this helps where BSD timers
but SYSV EINTR handling are wanted.

Patch supplied in PR 8091 by Joseph Myers <jsm28@cam.ac.uk>
1999-07-28 02:01:30 +00:00
hubertf 6c243d931c This patch improves the handling of save files in battlestar(6), by
allowing the user to choose the name of the save file and specify it
on the command line when restoring.  It also eliminates a buffer
overrun in determining the path to the save file, and any particular
arbitrary limit on the name length.  In the name of a tidier home
directory, the default name is changed from "Bstar" to ".Bstar".

Patch supplied in PR 8085 by Joseph Myers <jsm28@cam.ac.uk>
Minor modification (s/startup/filename/ in initialize()) by me.
1999-07-28 01:45:41 +00:00
drochner b0c1735026 make sure only whole words are matched, use [:space:] RE to avoid embedded
<TAB>s
1999-07-27 15:41:27 +00:00
hubertf 6ec2bcb1c2 Remove empty functin check_adir() and references to it. 1999-07-26 21:14:21 +00:00
hubertf 83d9f5b7e0 This patch adds to backgammon(6) a couple of noreturn attributes
missed in bin/6144.

Patch submitted in PR 8082 by Joseph Myers <jsm28@cam.ac.uk>
1999-07-26 20:56:03 +00:00
hubertf b8d8fccc22 This patch makes backgammon(6) check that, if you use the -s option to
recover a saved game, then you specify a file name.

Patch submitted in PR 8081 by Joseph Myers <jsm28@cam.ac.uk>
1999-07-26 20:50:44 +00:00
hubertf 79705e8498 This adds a check for memory allocation failure to one place in
backgammon(6).  The use of write(2) for the message may seem odd, but
is used in another place in this game.  (Actually, a lot of
backgammon(6) could do with being substantially cleaned up.)

Patch submitted in PR 8080 by Joseph Myers <jsm28@cam.ac.uk>
1999-07-26 18:39:06 +00:00
briggs b0412de83c Check whatis(1) if we don't find an acronym matching the argument 1999-07-25 20:29:04 +00:00
thorpej 2464b36e0a We're in section 6. 1999-07-25 20:02:48 +00:00
hubertf 03fc787fb7 This patch marks unused parameters in atc(6) as such.
Patch submitted in PR 8058 by Joseph Myers <jsm28@cam.ac.uk>
1999-07-25 00:24:38 +00:00
hubertf 420d34ff13 Hardcore const poisoning
Patch submitted by Joseph Myers <jsm28@cam.ac.uk> in PR 8057
1999-07-25 00:06:13 +00:00
hubertf 5cfc1e8dc6 This patch makes atc(6) check for memory allocation failure.
Patch submitted by Joseph Myers <jsm28@cam.ac.uk> in PR 8056,
with small enhancement to make clearer when loser() is called
with NULL.
1999-07-24 23:58:15 +00:00
mjl c5a4ae7a2a Use getopt instead of home grown command line parsing.
Patch from Joseph Myers <jsm28@cam.ac.uk> in PR/8062.
1999-07-24 15:50:44 +00:00
lukem fb5a2a2eb1 remove sh warning when invoked with no args 1999-07-22 10:08:17 +00:00
mrg 7199fd8f7b add wtf 1999-07-22 01:05:20 +00:00
mrg 3fd868859a Allen Briggs' wtf(6) to grovel the acronyms database. 1999-07-22 01:03:20 +00:00
hubertf b7e11e5c37 const poisoning
Patch submitted in PR 8039 by Joseph Myers <jsm28@cam.ac.uk>
1999-07-21 13:19:10 +00:00
hubertf 6cc6041b97 When atc(6) parses its game definition files, the check for `width'
being defined more than once incorrectly checks for `height' having
been previously defined instead.

Patch submitted in PR 8038 by Joseph Myers <jsm28@cam.ac.uk>
1999-07-21 13:10:47 +00:00
hubertf e1c8885621 Drop setgid privs early, via OpenBSD
Reported in PR 5970 by Joseph Myers <jsm@octomino.demon.co.uk>
1999-07-21 04:04:21 +00:00
hubertf 7287839679 Drop setgid privs early. Via OpenBSD, reported in PR 5970 by
Joseph Myers <jsm28@cam.ac.uk>
1999-07-21 04:02:29 +00:00
hubertf 22c39e3b98 Drop setgid privs early; via OpenBSD reported in PR 5970 by
Joseph Myers <jsm28@cam.ac.uk>
1999-07-21 03:59:41 +00:00
hubertf 054e79fedd Drop setgid privileges early. Derived from OpenBSD and sent in as PR 5970
by Joseph Myers <jsm28@cam.ac.uk>.
1999-07-21 03:56:53 +00:00
hubertf 146de2e635 Back out last due to think o on my side: we don't start banner through
dm(6), so there's no setgid privileges to discard. Pointed out by
Joseph S. Myers <jsm28@cam.ac.uk>
1999-07-19 19:07:17 +00:00
hubertf ccb3350fe4 Drop setgid privs passed from dm(6).
Patch submitted in PR 5945 by Joseph S. Myers <jsm28@cam.ac.uk>
1999-07-19 00:42:59 +00:00
hubertf 3521abbb40 As in previously sent patches: backgammon(6) does not need setgid
games privileges from dm, so should revoke them on startup.

Patch submitteed in PR 8024 bye Joseph Myers <jsm28@cam.ac.uk>
1999-07-19 00:33:58 +00:00
hubertf aac1ec24ab Adventure(6) should check for errors (e.g. disk full or quota
exceeded) when writing out saved games. Do so!

Patch supplied by Joseph Myers <jsm28@cam.ac.uk> in PR 8016
1999-07-17 20:02:48 +00:00
hubertf d5f85ed9c9 The patch below improves the security of the game atc(6), by having it
open the score file at the start and then drop all setgid privileges
while keeping a (close-on-exec) file descriptor open to it.  In order
to allow this the static data files have to be made world readable.
In addition a potential buffer overrun with corrupted score files is
avoided by more careful use of scanf (note that SCORE_SCANF_FMT is
defined alongside the definition of the relevant structure).

Submitted in PR 8015 by Joseph Myers <jsm28@cam.ac.uk>
1999-07-17 19:57:03 +00:00
hubertf fbaff02b26 Add two .Els that nroff was complaining to miss. 1999-07-17 19:48:40 +00:00
hubertf dceb24647b This patch (a) makes arithmetic(6) revoke any setgid privileges it got
from dm; (b) marks an unused parameter as such.

Submitted in PR 8014 by Joseph Myers <jsm28@cam.ac.uk>
1999-07-17 19:11:30 +00:00
hubertf adf74b1e92 This patch cleans up the handling of the variable `saved' in
adventure(6).  The handling of this variable is somewhat confusing,
since it is used for two different purposes (controlling the time
required before a saved game can be restored, and controlling various
aspects of dwarf behaviour); in fact, it is also declared twice in
hdr.h.  Except possibly when saving a game fails, these uses can never
interfere; when used for controlling dwarf behaviour, we always have
saved == -1.  This can be better understood with reference to the
original PDP-10 FORTRAN source (URL in patch, since hdr.h references
the comments of the FORTRAN as still relevant to this version) of
which the C version is a direct translation: the wrong value for
`saved' meant that someone was cheating and had bypassed normal
initialisation.  Saving was done by halting and telling the user to
save their core image, so the question of carrying on after saving
failed to open the output file did not arise.

This patch separates the uses of `saved' into uses of two separate
variables.

Closes PR 8005 by Joseph Myers <jsm28@cam.ac.uk>
1999-07-16 01:38:20 +00:00
hubertf 24d3aaa397 Const poisoning.
Patch submitted in PR 7993 by Joseph Myers <jsm28@cam.ac.uk>
1999-07-14 22:52:07 +00:00
hubertf 4502aed41f This patch fixes a -Wcast-qual warning in wump(6).
Submitted in 7994 by Joseph Myers <jsm28@cam.ac.uk>
1999-07-14 22:49:27 +00:00
hubertf 9c8243f4e2 Fix scoring, submitted in PR 7992 by Joseph Myers <jsm28@cam.ac.uk> 1999-07-14 22:46:21 +00:00
hubertf 12a0758a42 From PR 7987 by Joseph Myers <jsm28@cam.ac.uk>:
More battlestar(6) spelling and punctuation fixes for battlestar(6).
These ones come from OpenBSD.
1999-07-14 17:42:13 +00:00
hubertf 148eb780dc This patch makes fish(6) honour PAGER for viewing the instructions.
The detailed behaviour follows POSIX.2.  A similar patch for wump(6)
which was accepted is in bin/6699.  Fish does not need any setgid
privileges it gets from dm, so this patch also moves the gid resetting
earlier.

Reported in PR 7986 by Joseph Myers <jsm28@cam.ac.uk>
1999-07-14 17:30:21 +00:00
hubertf c1f52f97cd From PR 7988 by Joseph Myers <jsm28@cam.ac.uk>: use the symbolic
name SEEK_SET for values which end up as the third argument of
fseek(), rather than a hard-coded 0.
1999-07-14 17:23:53 +00:00
hubertf 76139748e2 From PR 7985 by Joseph Myers <jsm28@cam.ac.uk>:
games/adventure/setup.c fails to check for errors when writing its
output.  This means that, if the disk fills up at this point during a
build, it would nevertheless fail to return an error status.
1999-07-14 17:21:03 +00:00
sommerfeld 3365b567da man page rewritten into -mandoc by dholland@eecs.harvard.edu; from PR7861 1999-06-27 04:35:42 +00:00
christos 605ec8abd1 Fixi uninit vars warnings. 1999-05-16 00:15:46 +00:00
christos 4cb49d76cc Add missing prototypes 1999-05-16 00:03:35 +00:00
christos 18dfb39e84 Add -A for automatic playing mode.
Make the score file MI
1999-05-15 23:56:35 +00:00
kristerw 8e5038f0a3 Fix Y2K buffer overflow (from OpenBSD). 1999-04-25 19:08:34 +00:00
kristerw a9a6e776fa Buffer overflow fix (from OpenBSD) 1999-04-24 22:09:06 +00:00
simonb a2ed16d0dd initscr() returns a pointer, compare return value with NULL and not
an int.
Compatible with other versions of curses.
1999-04-18 03:30:12 +00:00
simonb 4e92840504 Don't frob the interals of a WINDOW*, use the mvinch() macro. 1999-04-18 03:29:01 +00:00
cgd b22750720f change:
.Sh "SEE ALSO"
to:
	.Sh SEE ALSO
The doc macros check for the latter (actually just for 'SEE' as the first
argument to .Sh) to set the section header SEE ALSO flag, which modifies
some behaviour (e.g. references done with .Rs/.Re).
1999-04-06 04:54:19 +00:00
abs 190c71aa67 s/SETUIDGAME/SETGIDGAME/ - catch up with the rest of the world. 1999-04-05 08:04:48 +00:00
mrg 4924ddc041 defined(attron) does not mean there is a <term.h> 1999-03-29 05:12:39 +00:00
hubertf dab3a74af9 Fix object recognition, per PR 6048 by Joseph S. Myers <jsm28@cam.ac.uk>. 1999-03-25 16:46:08 +00:00
garbled d1407362ba More and more .Os cleanups. .Os is defined in the tmac.doc-common file,
so we shouldn't override it with versions in the manpages.  Many more to
come.
1999-03-22 18:43:46 +00:00
abs 0a265153fb Newline and usage cosmetics from Soren S. Jorvang <soren@t.dk> PR7205 1999-03-22 06:12:23 +00:00
lukem 7e1c62baf8 set MKLINT=no. noted by NAKAJIMA Yoshihiro <nakayosh@kcn.ne.jp> 1999-03-13 23:17:46 +00:00
erh 55f3a4b91b Fix .Bl/.El imbalance. 1999-03-10 09:29:08 +00:00
lukem 868ca23db4 remove NOPROG (nothing uses it). however, set MKOBJ=no if appropriate 1999-02-13 23:53:56 +00:00
lukem dcab0210a0 convert from NOxxx= to MKxxx=no.
include <bsd.own.mk> if testing a MKxxx variable.
1999-02-13 02:54:17 +00:00
simonb 6372fa90cc Remove unneeded "mips compiler bug" workaround from original code imported
in 1994.
1999-02-11 02:34:24 +00:00
hubertf b0ed16a714 tgetent() handles const correctly in current 1999-02-10 17:08:06 +00:00
hubertf 752e969da2 Add __attribute__() to a variable. From PR 6557, after discussion with
Joseph S. Myers <jsm28@cam.ac.uk>
1999-02-10 12:38:54 +00:00
hubertf 92932dfcc8 The patch below makes the game backgammon(6) use `const' where
appropriate.  It also removes some obsolete, unused code to check the
number of users on the system (obsoleted by dm); removes a prototype
for an unused function that was removed earlier; and removes a control
character from one message that was I think intended to clear the
screen on some particular terminal (though I can't find the comment to
that effect in any of the BSD source trees I have handy) but no longer
serves any useful purpose.

From PR 6580 by Joseph Myers <jsm28@cam.ac.uk>.

Also contains two more patches, one in teachgammon/tutor.h (by Joseph)
and one in common_source/fancy.c (by me).
1999-02-10 12:29:47 +00:00
hubertf ce3b092b6d Only invoke pager given in $PAGER if output goes to a tty, feed pager
via stdin, per PR 6699 by Joseph Myers <jsm28@cam.ac.uk>
1999-02-10 01:44:34 +00:00
hubertf bd8be7848a Const poisoning, per PR 6660 by Joseph Myers <jsm28@cam.ac.uk> 1999-02-10 01:36:50 +00:00
hubertf 24f809b060 The game sail(6) has a function Write() which is used both with
integer arguments and with string arguments (cast to long, and in one
place to int).  The patch here cleans this up, making it into two
separate functions; this allows for the game to be made const-correct
in future and improves portability.

The patch also contains two other fragments: a change to use the
symbolic constant SEEK_END with fseek(), and a change to use snprintf
in one place to avoid a buffer overrun.

Via PR 6569 by Joseph Myers <jsm28@cam.ac.uk>.
1999-02-10 00:45:45 +00:00
hubertf c7bcded63e The patch below does some minor cleanup of adventure(6): an additional
use of const I missed in bin/6041; avoiding a signed/unsigned warning;
marking an unused parameter as such; revoking setgid privileges
(including the saved gid) rather than setuid ones; includes and
function prototypes in setup.c; the string passed to err() should not
end with a `.'.  Together with the patch sent concerning adventure's
EOF handling, this synchronises adventure(6) in NetBSD with the Linux
port of the NetBSD games.

Via PR 6557 by Joseph Myers <jsm28@cam.ac.uk>
1999-02-10 00:29:21 +00:00
hubertf 08ab0f321a The game adventure(6) handles EOF on standard input rather
ungracefully.  The patch, derived from OpenBSD, improves this
handling.

Sent in in PR 6556 by Joseph Myers <jsm28@cam.ac.uk>.
1999-02-10 00:11:28 +00:00
hubertf 6cfbee5947 only show preview if the -p option is given 1999-01-03 17:13:51 +00:00
hubertf 13aa60478d document morse's decode option -d 1999-01-03 17:12:28 +00:00
hubertf f42c52bee6 Add previewing of next shape. Old (previous) behaviour can be
restored by compiling with NO_PREVIEW defined.
1999-01-03 02:00:17 +00:00
tron 1c7a4fb141 Remove obsolete header file. Fixes PR bin/6700 by Joseph S. Myers. 1999-01-02 15:47:55 +00:00
dbj 16a09f01ca tweaks to pass DESTDIR to subprograms when it is defined in /etc/mk.conf
but is not in the environment.
1998-12-06 09:06:45 +00:00
pk f16cf517fe typo. 1998-12-05 21:09:23 +00:00
jwise ca027085f0 Fix spelling of `Churchill' in 3 places 1998-11-20 03:35:31 +00:00
hubertf d5f8b67ebe Add support for decoding of morse code. 1998-11-18 14:22:32 +00:00
hubertf 51755c03b2 fix usage 1998-11-18 09:06:26 +00:00
hubertf a9d35e8322 constify, per PR 6150 by Joseph Myers <jsm28@cam.ac.uk> 1998-11-10 13:43:30 +00:00
hubertf 6d265b3268 constify, per PR 6148 1998-11-10 13:01:31 +00:00