Home | History | Annotate | only in /src/games/larn
History log of /src/games/larn
RevisionDateAuthorComments
 1.2 23-Mar-1995  cgd merge with Lite, new RCS id conventions, etc.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.2 23-Mar-1995  cgd merge with Lite, new RCS id conventions, etc.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.21 16-Aug-2011  christos eliminate/document non-literal format strings
 1.20 03-Feb-2010  roy Userland now builds and uses terminfo instead of termcap.

OK: core@, jdc@
 1.19 19-Feb-2008  dholland Split some code from moreobj.c into action.c, as per larn 12.2.
 1.18 28-Jan-2008  dholland Larn now builds with WARNS=4.
 1.17 11-May-2006  mrg branches: 1.17.10;
sprinkle some -fno-strict-aliasing and -Wno-pointer-sign with GCC4.
 1.16 13-Feb-1999  lukem convert from NOxxx= to MKxxx=no.
include <bsd.own.mk> if testing a MKxxx variable.
 1.15 29-Sep-1998  lukem don't install in /usr/share if NOSHARE is defined
 1.14 20-Nov-1997  mrg install games that need it setgid.
 1.13 22-Oct-1997  lukem use CPPFLAGS instead of CFLAGS
 1.12 18-Oct-1997  christos branches: 1.12.2;
Tons of changes; re-indent, use termios, fix warnings, add prototypes...
Games is almost clean; only hack is left...
 1.11 12-Oct-1997  lukem enable WARNS?=1 by default, & temporarily disable for the few unclean programs
 1.10 24-Mar-1997  christos - Makefile cleanups
 1.9 18-Oct-1996  thorpej Use ${INSTALL}.
 1.8 22-Apr-1995  cgd clean up handling of fortunes a bit.
 1.7 23-Mar-1995  cgd merge with Lite, new RCS id conventions, etc.
 1.6 22-Dec-1994  cgd specify man pages the new way.
 1.5 23-May-1994  cgd need -lcompat
 1.4 01-Aug-1993  mycroft Add RCS identifiers.
 1.3 09-Apr-1993  cgd make sure directory to install stuff exists before installing
 1.2 23-Mar-1993  cgd got rid of unnecessary -lcompat and associated dependency
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 21-Mar-1995  cgd from Lite
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.12.2.2 20-Nov-1997  mrg pull up from trunk:
- install games files with the correct permissions.
- install games that need it setgid.
 1.12.2.1 08-Nov-1997  lukem sync with trunk (approved by thorpej)
 1.17.10.1 23-Mar-2008  matt sync with HEAD
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.2 23-Mar-1995  cgd merge with Lite, new RCS id conventions, etc.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.2 02-May-2021  rillig games: remove trailing whitespace in *.c and *.h
 1.1 19-Feb-2008  dholland branches: 1.1.4;
Split some code from moreobj.c into action.c, as per larn 12.2.
 1.1.4.2 23-Mar-2008  matt sync with HEAD
 1.1.4.1 19-Feb-2008  matt file action.c was added on branch matt-armv6 on 2008-03-23 00:25:43 +0000
 1.11 29-Aug-2011  joerg Use __dead
 1.10 12-Aug-2009  dholland sprinkle static
 1.9 03-Feb-2008  dholland Use mkstemp to make the temporary files used when you win.
 1.8 28-Jan-2008  dholland Larn now builds with WARNS=4.
 1.7 07-Aug-2003  agc branches: 1.7.6; 1.7.10; 1.7.14; 1.7.16; 1.7.18; 1.7.22; 1.7.26;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22269, verified by myself.
 1.6 05-Feb-2001  christos - rename getchar to lgetchar to avoid conflicts with the stdio getchar
- fix redundant decls and nested externs
- use snprintf instead of sprintf
 1.5 18-Oct-1997  christos Tons of changes; re-indent, use termios, fix warnings, add prototypes...
Games is almost clean; only hack is left...
 1.4 22-May-1996  mrg move the ) to after the 3rd arg to open. weeeeee!
 1.3 23-Mar-1995  cgd branches: 1.3.6;
merge with Lite, new RCS id conventions, etc.
 1.2 02-Aug-1993  mycroft Add RCS identifiers, remove some completely useless RCS logs and patchkit
headers, and a few other insignificant changes.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 21-Mar-1995  cgd from Lite
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.3.6.1 27-May-1996  mrg merge in security fixes from trunk.
 1.7.26.1 03-Feb-2008  riz Pull up following revision(s) (requested by dholland in ticket #1067):
games/larn/scores.c: revision 1.16
games/larn/header.h: revision 1.18
games/larn/bill.c: revision 1.9
games/larn/main.c: revision 1.21
Since games are (now) setgid, not setuid, it is no longer necessary to
manipulate the effective uid, only the effective gid.
Use mkstemp to make the temporary files used when you win.
 1.7.22.1 23-Mar-2008  matt sync with HEAD
 1.7.18.1 03-Jun-2008  skrll Sync with netbsd-4.
 1.7.16.1 03-Feb-2008  riz Pull up following revision(s) (requested by dholland in ticket #1067):
games/larn/scores.c: revision 1.16
games/larn/header.h: revision 1.18
games/larn/bill.c: revision 1.9
games/larn/main.c: revision 1.21
Since games are (now) setgid, not setuid, it is no longer necessary to
manipulate the effective uid, only the effective gid.
Use mkstemp to make the temporary files used when you win.
 1.7.14.1 03-Feb-2008  riz Pull up following revision(s) (requested by dholland in ticket #1899):
games/larn/scores.c: revision 1.16
games/larn/header.h: revision 1.18
games/larn/bill.c: revision 1.9
games/larn/main.c: revision 1.21
Since games are (now) setgid, not setuid, it is no longer necessary to
manipulate the effective uid, only the effective gid.
Use mkstemp to make the temporary files used when you win.
 1.7.10.1 03-Feb-2008  riz Pull up following revision(s) (requested by dholland in ticket #1899):
games/larn/scores.c: revision 1.16
games/larn/header.h: revision 1.18
games/larn/bill.c: revision 1.9
games/larn/main.c: revision 1.21
Since games are (now) setgid, not setuid, it is no longer necessary to
manipulate the effective uid, only the effective gid.
Use mkstemp to make the temporary files used when you win.
 1.7.6.1 03-Feb-2008  riz Pull up following revision(s) (requested by dholland in ticket #1899):
games/larn/scores.c: revision 1.16
games/larn/header.h: revision 1.18
games/larn/bill.c: revision 1.9
games/larn/main.c: revision 1.21
Since games are (now) setgid, not setuid, it is no longer necessary to
manipulate the effective uid, only the effective gid.
Use mkstemp to make the temporary files used when you win.
 1.6 28-Jan-2008  dholland Larn now builds with WARNS=4.
 1.5 18-Oct-1997  christos branches: 1.5.36;
Tons of changes; re-indent, use termios, fix warnings, add prototypes...
Games is almost clean; only hack is left...
 1.4 22-Apr-1995  cgd clean up handling of fortunes a bit.
 1.3 23-Mar-1995  cgd merge with Lite, new RCS id conventions, etc.
 1.2 02-Aug-1993  mycroft Add RCS identifiers, remove some completely useless RCS logs and patchkit
headers, and a few other insignificant changes.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.5.36.1 23-Mar-2008  matt sync with HEAD
 1.12 19-Jun-2012  dholland WARNS=5
 1.11 03-Feb-2008  dholland branches: 1.11.26;
Some assorted minor cleanups, from larn 12.2.
 1.10 03-Feb-2008  dholland Make a bunch of functions static. Merged from larn 12.2.
 1.9 28-Jan-2008  dholland Larn now builds with WARNS=4.
 1.8 25-Feb-2005  simonb branches: 1.8.16;
Remove a incorrect semicolon at the end of an if().
Magic levels now appear after extensive play testing!
 1.7 27-Jan-2004  jsm Remove uses of __P.
 1.6 18-Oct-1997  christos Tons of changes; re-indent, use termios, fix warnings, add prototypes...
Games is almost clean; only hack is left...
 1.5 13-Jul-1997  christos gtime -> gltime to avoid conflict in time.h
 1.4 29-Mar-1997  thorpej Make these compile on the PowerPC (an unsigned char system).
 1.3 23-Mar-1995  cgd merge with Lite, new RCS id conventions, etc.
 1.2 02-Aug-1993  mycroft Add RCS identifiers, remove some completely useless RCS logs and patchkit
headers, and a few other insignificant changes.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.8.16.1 23-Mar-2008  matt sync with HEAD
 1.11.26.1 30-Oct-2012  yamt sync with head
 1.13 03-Feb-2008  dholland Larn does not need its own private versions of functions from <ctype.h>.
Also, remove the function gettokstr(), which is not used. From larn 12.2.
 1.12 28-Jan-2008  dholland Larn now builds with WARNS=4.
 1.11 22-Apr-2007  mouse branches: 1.11.4;
Per PR 36185, OKed by martin@
 1.10 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22269, verified by myself.
 1.9 25-Oct-1997  thorpej Fix time_t vs. long botch.
 1.8 18-Oct-1997  christos branches: 1.8.2;
Tons of changes; re-indent, use termios, fix warnings, add prototypes...
Games is almost clean; only hack is left...
 1.7 13-Jul-1997  christos gtime -> gltime to avoid conflict in time.h
 1.6 29-Mar-1997  thorpej Make these compile on the PowerPC (an unsigned char system).
 1.5 23-Mar-1995  cgd merge with Lite, new RCS id conventions, etc.
 1.4 23-Oct-1994  mycroft Fix typo in the name of the important potion.
 1.3 01-Aug-1993  mycroft Add RCS identifiers.
 1.2 20-Apr-1993  mycroft Don't modify string constants.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.8.2.1 25-Oct-1997  thorpej Pull up from trunk: Fix time_t vs. long botch.
 1.11.4.1 23-Mar-2008  matt sync with HEAD
 1.13 19-Jun-2012  dholland WARNS=5
 1.12 03-Feb-2008  dholland branches: 1.12.26;
Make a bunch of functions static. Merged from larn 12.2.
 1.11 28-Jan-2008  dholland Larn now builds with WARNS=4.
 1.10 11-May-2006  mrg branches: 1.10.10;
lrint() -> larn_lrint().
 1.9 03-Jul-2000  matt More include additions for exit, abs, strcmp, etc.
 1.8 18-Oct-1997  christos Tons of changes; re-indent, use termios, fix warnings, add prototypes...
Games is almost clean; only hack is left...
 1.7 13-Jul-1997  christos gtime -> gltime to avoid conflict in time.h
 1.6 24-Apr-1995  cgd Various changes to make games compile w/o warnings on the alpha:
Include appropriate includes, delete bogus function declarations,
change sizes of variables and casts.
 1.5 23-Mar-1995  cgd merge with Lite, new RCS id conventions, etc.
 1.4 21-Oct-1994  mycroft Fix various problems with the potion/scroll name hiding mechanism.
 1.3 02-Aug-1993  mycroft Add RCS identifiers, remove some completely useless RCS logs and patchkit
headers, and a few other insignificant changes.
 1.2 20-Apr-1993  mycroft Don't modify string constants.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.10.10.1 23-Mar-2008  matt sync with HEAD
 1.12.26.1 30-Oct-2012  yamt sync with head
 1.10 19-Jun-2012  dholland WARNS=5
 1.9 12-Aug-2009  dholland branches: 1.9.6;
sprinkle static
 1.8 03-Feb-2008  dholland Make a bunch of functions static. Merged from larn 12.2.
 1.7 28-Jan-2008  dholland Larn now builds with WARNS=4.
 1.6 28-Jan-2008  dholland Add gcc printf format checking, and fix the abundant problems this revealed.
(It appears that someone sometime thought that you use %d to print a long.)
 1.5 27-Jan-2004  jsm branches: 1.5.22;
Remove uses of __P.
 1.4 18-Oct-1997  christos Tons of changes; re-indent, use termios, fix warnings, add prototypes...
Games is almost clean; only hack is left...
 1.3 23-Mar-1995  cgd merge with Lite, new RCS id conventions, etc.
 1.2 02-Aug-1993  mycroft Add RCS identifiers, remove some completely useless RCS logs and patchkit
headers, and a few other insignificant changes.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.5.22.1 23-Mar-2008  matt sync with HEAD
 1.9.6.1 30-Oct-2012  yamt sync with head
 1.16 29-Aug-2011  joerg Use __dead
 1.15 26-Aug-2011  dholland Use __dead and __printflike instead of __attribute__.
 1.14 21-Oct-2009  snj Remove 3rd and 4th clauses in christos' license. OK christos.
 1.13 12-Aug-2009  dholland sprinkle static
 1.12 19-Feb-2008  dholland Split some code from moreobj.c into action.c, as per larn 12.2.
 1.11 04-Feb-2008  dholland More assorted cleanup merged from larn 12.2.
 1.10 03-Feb-2008  dholland Once upon a time, larn 12.0 had functions named getchar() and putchar()
that conflicted with libc. We changed them to lgetchar() and xputchar()
respectively; larn 12.2 changed them to ttgetch() and ttputch(). After
reflecting on this for a while I've decided to adopt the larn 12.2
names; not so much for compatibility but for consistency going forward.
So, massrename them. Also make ttputch() static.
 1.9 03-Feb-2008  dholland Larn does not need its own private versions of functions from <ctype.h>.
Also, remove the function gettokstr(), which is not used. From larn 12.2.
 1.8 03-Feb-2008  dholland Make a bunch of functions static. Merged from larn 12.2.
 1.7 28-Jan-2008  dholland Larn now builds with WARNS=4.
 1.6 28-Jan-2008  dholland Add gcc printf format checking, and fix the abundant problems this revealed.
(It appears that someone sometime thought that you use %d to print a long.)
 1.5 11-May-2006  mrg branches: 1.5.10;
lrint() -> larn_lrint().
 1.4 27-Jan-2004  jsm Remove uses of __P.
 1.3 05-Feb-2001  christos - rename getchar to lgetchar to avoid conflicts with the stdio getchar
- fix redundant decls and nested externs
- use snprintf instead of sprintf
 1.2 04-Oct-1999  lukem update after change to return value of tputs() third argument
 1.1 18-Oct-1997  christos branches: 1.1.6;
Tons of changes; re-indent, use termios, fix warnings, add prototypes...
Games is almost clean; only hack is left...
 1.1.6.1 27-Dec-1999  wrstuden Pull up to last week's -current.
 1.5.10.1 23-Mar-2008  matt sync with HEAD
 1.7 12-Aug-2009  dholland sprinkle static
 1.6 28-Jan-2008  dholland Larn now builds with WARNS=4.
 1.5 07-Aug-2003  agc branches: 1.5.22;
Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22269, verified by myself.
 1.4 18-Oct-1997  christos Tons of changes; re-indent, use termios, fix warnings, add prototypes...
Games is almost clean; only hack is left...
 1.3 23-Mar-1995  cgd merge with Lite, new RCS id conventions, etc.
 1.2 02-Aug-1993  mycroft Add RCS identifiers, remove some completely useless RCS logs and patchkit
headers, and a few other insignificant changes.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 21-Mar-1995  cgd from Lite
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.5.22.1 23-Mar-2008  matt sync with HEAD
 1.15 02-May-2021  rillig games: remove trailing whitespace in *.c and *.h
 1.14 19-Jun-2012  dholland WARNS=5
 1.13 18-Feb-2012  matt Fix conflicting variable definitions
 1.12 04-Feb-2008  dholland branches: 1.12.26;
More assorted cleanup merged from larn 12.2.
 1.11 03-Feb-2008  dholland Once upon a time, larn 12.0 had functions named getchar() and putchar()
that conflicted with libc. We changed them to lgetchar() and xputchar()
respectively; larn 12.2 changed them to ttgetch() and ttputch(). After
reflecting on this for a while I've decided to adopt the larn 12.2
names; not so much for compatibility but for consistency going forward.
So, massrename them. Also make ttputch() static.
 1.10 03-Feb-2008  dholland Larn does not need its own private versions of functions from <ctype.h>.
Also, remove the function gettokstr(), which is not used. From larn 12.2.
 1.9 28-Jan-2008  dholland Larn now builds with WARNS=4.
 1.8 28-Jan-2008  dholland Add gcc printf format checking, and fix the abundant problems this revealed.
(It appears that someone sometime thought that you use %d to print a long.)
 1.7 05-Feb-2001  christos branches: 1.7.24;
- rename getchar to lgetchar to avoid conflicts with the stdio getchar
- fix redundant decls and nested externs
- use snprintf instead of sprintf
 1.6 18-Oct-1997  christos Tons of changes; re-indent, use termios, fix warnings, add prototypes...
Games is almost clean; only hack is left...
 1.5 29-Mar-1997  thorpej Make these compile on the PowerPC (an unsigned char system).
 1.4 24-Apr-1995  cgd Various changes to make games compile w/o warnings on the alpha:
Include appropriate includes, delete bogus function declarations,
change sizes of variables and casts.
 1.3 23-Mar-1995  cgd merge with Lite, new RCS id conventions, etc.
 1.2 02-Aug-1993  mycroft Add RCS identifiers, remove some completely useless RCS logs and patchkit
headers, and a few other insignificant changes.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.7.24.1 23-Mar-2008  matt sync with HEAD
 1.12.26.2 30-Oct-2012  yamt sync with head
 1.12.26.1 17-Apr-2012  yamt sync with head
 1.22 29-Aug-2008  gmcgarry Both legs of the conditional operator must return the same type.
 1.21 03-Feb-2008  dholland branches: 1.21.6;
Larn does not need its own private versions of functions from <ctype.h>.
Also, remove the function gettokstr(), which is not used. From larn 12.2.
 1.20 03-Feb-2008  dholland A long time ago, larn had code to prohibit playing it during work hours.
Most of this code was removed ages ago, probably when dm(6) was invented;
long before -r1.1 in the NetBSD tree in any event.

Now remove the last fragment of it.

Also nuke the file of US holidays 1987-1993 that we've been carrying
around for no reason.
 1.19 03-Feb-2008  dholland Some assorted minor cleanups, from larn 12.2.
 1.18 03-Feb-2008  dholland Since games are (now) setgid, not setuid, it is no longer necessary to
manipulate the effective uid, only the effective gid.
 1.17 28-Jan-2008  dholland Larn now builds with WARNS=4.
 1.16 24-Nov-2006  wiz branches: 1.16.2; 1.16.4; 1.16.8; 1.16.12;
s/existance/existence/, from Zafer.
 1.15 03-Feb-2005  perry branches: 1.15.2; 1.15.4; 1.15.8;
A preprocessor macro named "srand" was defined which seeded the random
number generator.

Unfortunately, it conflicted with a function of the same defined in
stdlib.h. This was masked by the __P hack, which is now being purged.

I've renamed "srand" to "seedrand" to eliminate the conflict.
 1.14 21-Oct-2003  agc Don't redefine NULL
 1.13 05-Feb-2001  christos - rename getchar to lgetchar to avoid conflicts with the stdio getchar
- fix redundant decls and nested externs
- use snprintf instead of sprintf
 1.12 25-Oct-1997  thorpej Fix time_t vs. long botch.
 1.11 18-Oct-1997  christos branches: 1.11.2;
Tons of changes; re-indent, use termios, fix warnings, add prototypes...
Games is almost clean; only hack is left...
 1.10 13-Jul-1997  christos gtime -> gltime to avoid conflict in time.h
 1.9 29-Mar-1997  thorpej Make these compile on the PowerPC (an unsigned char system).
 1.8 22-May-1996  mrg oops, we do need privs. do the right seteuid() thing.
 1.7 24-Apr-1995  cgd branches: 1.7.6;
Various changes to make games compile w/o warnings on the alpha:
Include appropriate includes, delete bogus function declarations,
change sizes of variables and casts.
 1.6 22-Apr-1995  cgd clean up handling of fortunes a bit.
 1.5 23-Mar-1995  cgd merge with Lite, new RCS id conventions, etc.
 1.4 21-Oct-1994  mycroft Fix various problems with the potion/scroll name hiding mechanism.
 1.3 02-Aug-1993  mycroft Add RCS identifiers, remove some completely useless RCS logs and patchkit
headers, and a few other insignificant changes.
 1.2 20-Apr-1993  mycroft Don't modify string constants.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 21-Mar-1995  cgd from Lite
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.7.6.1 27-May-1996  mrg merge in security fixes from trunk.
 1.11.2.1 25-Oct-1997  thorpej Pull up from trunk: Fix time_t vs. long botch.
 1.15.8.1 03-Feb-2008  riz Pull up following revision(s) (requested by dholland in ticket #1899):
games/larn/scores.c: revision 1.16
games/larn/header.h: revision 1.18
games/larn/bill.c: revision 1.9
games/larn/main.c: revision 1.21
Since games are (now) setgid, not setuid, it is no longer necessary to
manipulate the effective uid, only the effective gid.
Use mkstemp to make the temporary files used when you win.
 1.15.4.1 03-Feb-2008  riz Pull up following revision(s) (requested by dholland in ticket #1899):
games/larn/scores.c: revision 1.16
games/larn/header.h: revision 1.18
games/larn/bill.c: revision 1.9
games/larn/main.c: revision 1.21
Since games are (now) setgid, not setuid, it is no longer necessary to
manipulate the effective uid, only the effective gid.
Use mkstemp to make the temporary files used when you win.
 1.15.2.1 03-Feb-2008  riz Pull up following revision(s) (requested by dholland in ticket #1899):
games/larn/scores.c: revision 1.16
games/larn/header.h: revision 1.18
games/larn/bill.c: revision 1.9
games/larn/main.c: revision 1.21
Since games are (now) setgid, not setuid, it is no longer necessary to
manipulate the effective uid, only the effective gid.
Use mkstemp to make the temporary files used when you win.
 1.16.12.1 03-Feb-2008  riz Pull up following revision(s) (requested by dholland in ticket #1067):
games/larn/scores.c: revision 1.16
games/larn/header.h: revision 1.18
games/larn/bill.c: revision 1.9
games/larn/main.c: revision 1.21
Since games are (now) setgid, not setuid, it is no longer necessary to
manipulate the effective uid, only the effective gid.
Use mkstemp to make the temporary files used when you win.
 1.16.8.1 23-Mar-2008  matt sync with HEAD
 1.16.4.1 03-Jun-2008  skrll Sync with netbsd-4.
 1.16.2.1 03-Feb-2008  riz Pull up following revision(s) (requested by dholland in ticket #1067):
games/larn/scores.c: revision 1.16
games/larn/header.h: revision 1.18
games/larn/bill.c: revision 1.9
games/larn/main.c: revision 1.21
Since games are (now) setgid, not setuid, it is no longer necessary to
manipulate the effective uid, only the effective gid.
Use mkstemp to make the temporary files used when you win.
 1.21.6.1 18-Sep-2008  wrstuden Sync with wrstuden-revivesa-base-2.
 1.9 19-Jun-2012  dholland WARNS=5
 1.8 12-Aug-2009  dholland branches: 1.8.6;
sprinkle static
 1.7 03-Feb-2008  dholland Once upon a time, larn 12.0 had functions named getchar() and putchar()
that conflicted with libc. We changed them to lgetchar() and xputchar()
respectively; larn 12.2 changed them to ttgetch() and ttputch(). After
reflecting on this for a while I've decided to adopt the larn 12.2
names; not so much for compatibility but for consistency going forward.
So, massrename them. Also make ttputch() static.
 1.6 03-Feb-2008  dholland Make a bunch of functions static. Merged from larn 12.2.
 1.5 05-Feb-2001  christos branches: 1.5.24;
- rename getchar to lgetchar to avoid conflicts with the stdio getchar
- fix redundant decls and nested externs
- use snprintf instead of sprintf
 1.4 18-Oct-1997  christos Tons of changes; re-indent, use termios, fix warnings, add prototypes...
Games is almost clean; only hack is left...
 1.3 23-Mar-1995  cgd merge with Lite, new RCS id conventions, etc.
 1.2 02-Aug-1993  mycroft Add RCS identifiers, remove some completely useless RCS logs and patchkit
headers, and a few other insignificant changes.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.5.24.1 23-Mar-2008  matt sync with HEAD
 1.8.6.1 30-Oct-2012  yamt sync with head
 1.2 03-Feb-2008  dholland A long time ago, larn had code to prohibit playing it during work hours.
Most of this code was removed ages ago, probably when dm(6) was invented;
long before -r1.1 in the NetBSD tree in any event.

Now remove the last fragment of it.

Also nuke the file of US holidays 1987-1993 that we've been carrying
around for no reason.
 1.1 21-Mar-1995  cgd branches: 1.1.1;
Initial revision
 1.1.1.1 21-Mar-1995  cgd branches: 1.1.1.1.40;
from Lite
 1.1.1.1.40.1 23-Mar-2008  matt sync with HEAD
 1.31 26-Mar-2024  andvar Fix header comment to align text using 8 space tabs.
 1.30 23-Mar-2024  andvar Attempt to fix descriptions of the routines in the initial comment block.

Something likely went wrong with copying the original text, causing
missing letters, broken indentation and formatting.
 1.29 02-May-2021  rillig games: remove trailing whitespace in *.c and *.h
 1.28 10-Jan-2017  christos need time.h for time(), got side-loaded before from <fcntl.h> via <sys/stat.h>
 1.27 19-Jun-2012  dholland branches: 1.27.14;
WARNS=5
 1.26 03-Oct-2011  roy branches: 1.26.2;
Use tiparm instead of vtparm.
 1.25 03-Feb-2010  roy Userland now builds and uses terminfo instead of termcap.

OK: core@, jdc@
 1.24 12-Aug-2009  dholland sprinkle static
 1.23 03-Feb-2008  dholland Once upon a time, larn 12.0 had functions named getchar() and putchar()
that conflicted with libc. We changed them to lgetchar() and xputchar()
respectively; larn 12.2 changed them to ttgetch() and ttputch(). After
reflecting on this for a while I've decided to adopt the larn 12.2
names; not so much for compatibility but for consistency going forward.
So, massrename them. Also make ttputch() static.
 1.22 03-Feb-2008  dholland Larn does not need its own private versions of functions from <ctype.h>.
Also, remove the function gettokstr(), which is not used. From larn 12.2.
 1.21 03-Feb-2008  dholland Make a bunch of functions static. Merged from larn 12.2.
 1.20 28-Jan-2008  dholland Call srandom() as well as initializing the private random generator
(which is crappy and should be removed, but that's for another day...)
This way e.g. fortune cookies no longer appear always in the same order.
 1.19 28-Jan-2008  dholland Larn now builds with WARNS=4.
 1.18 28-Jan-2008  dholland Apparently the reason the printf arguments were all wrong is that larn
had its own private and not-quite-standard implementation of printf.
Remove it surgically with a chainsaw.
 1.17 22-Apr-2007  mouse branches: 1.17.4;
Per PR 36185, OKed by martin@
 1.16 11-May-2006  mrg lrint() -> larn_lrint().
 1.15 03-Feb-2005  perry A preprocessor macro named "srand" was defined which seeded the random
number generator.

Unfortunately, it conflicted with a function of the same defined in
stdlib.h. This was masked by the __P hack, which is now being purged.

I've renamed "srand" to "seedrand" to eliminate the conflict.
 1.14 26-May-2002  wiz __STDC__ is always defined on NetBSD.
 1.13 02-Nov-2001  christos Update to the new t_agetstr() API.
 1.12 24-Sep-2001  wiz va_{start,end} audit:
Make sure that each va_start has one and only one matching va_end,
especially in error cases.
If the va_list is used multiple times, do multiple va_starts/va_ends.
If a function gets va_list as argument, don't let it use va_end (since
it's the callers responsibility).

Improved by comments from enami and christos -- thanks!

Heimdal/krb4/KAME changes already fed back, rest to follow.

Inspired by, but not not based on, OpenBSD.
 1.11 05-Feb-2001  christos - rename getchar to lgetchar to avoid conflicts with the stdio getchar
- fix redundant decls and nested externs
- use snprintf instead of sprintf
 1.10 24-May-2000  blymn Fix coredump on start.
 1.9 22-May-2000  blymn Converted games to use the new termcap interface.
 1.8 04-Oct-1999  lukem update after change to return value of tputs() third argument
 1.7 18-Oct-1997  christos branches: 1.7.6;
Tons of changes; re-indent, use termios, fix warnings, add prototypes...
Games is almost clean; only hack is left...
 1.6 17-May-1997  pk NULL => 0 (Arne Juul; PR#3629)
 1.5 15-Aug-1996  mrg print more informative error message. from kstailey (PR#2699)
 1.4 24-Apr-1995  cgd Various changes to make games compile w/o warnings on the alpha:
Include appropriate includes, delete bogus function declarations,
change sizes of variables and casts.
 1.3 23-Mar-1995  cgd merge with Lite, new RCS id conventions, etc.
 1.2 02-Aug-1993  mycroft Add RCS identifiers, remove some completely useless RCS logs and patchkit
headers, and a few other insignificant changes.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.7.6.1 27-Dec-1999  wrstuden Pull up to last week's -current.
 1.17.4.1 23-Mar-2008  matt sync with HEAD
 1.26.2.1 30-Oct-2012  yamt sync with head
 1.27.14.1 20-Mar-2017  pgoyette Sync with HEAD
 1.14 24-Apr-2010  dholland Document the options that actually exist, instead of some other
completely unrelated set. Bump date. (first time since 1993!)
 1.13 11-Mar-2009  joerg Fix list markup. Use .Ic for key as suggested by wiz.
 1.12 15-Sep-2005  wiz branches: 1.12.28;
Use standard AUTHORS section header. From YOMURA Masanori in private mail
Sort sections if necessary. Use more/better markup.
 1.11 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22269, verified by myself.
 1.10 01-Jul-2003  wiz Sy Aq -> Aq Sy so both work.
 1.9 25-Feb-2003  wiz .Nm does not need a dummy argument ("") before punctuation or
for correct formatting of the SYNOPSIS any longer.
 1.8 26-Sep-2002  wiz Lots of minor fixes resulting from reading these man pages in detail.
 1.7 26-Sep-2002  wiz New sentences begin on new lines.
Patch from Richard Elz, slightly improved by yours truly.
 1.6 08-Feb-2002  ross Generate <>& symbolically. I'm avoiding .../dist/... directories for now.
 1.5 07-Nov-2000  lukem remove unnecessary command name after .Nm
 1.4 10-Mar-1999  erh Fix .Bl/.El imbalance.
 1.3 23-Mar-1995  cgd merge with Lite, new RCS id conventions, etc.
 1.2 01-Aug-1993  mycroft Add RCS indentifiers.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 21-Mar-1995  cgd from Lite
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.12.28.1 13-May-2009  jym Sync with HEAD.

Third (and last) commit. See http://mail-index.netbsd.org/source-changes/2009/05/13/msg221222.html
 1.27 02-May-2021  rillig games: remove trailing whitespace in *.c and *.h
 1.26 03-Feb-2019  mrg - add or adjust /* FALLTHROUGH */ where appropriate
- add __unreachable() after functions that can return but won't in
this case, and thus can't be marked __dead easily
 1.25 19-Jun-2012  dholland branches: 1.25.32;
WARNS=5
 1.24 12-Aug-2009  dholland branches: 1.24.6;
sprinkle static
 1.23 03-Feb-2008  dholland Once upon a time, larn 12.0 had functions named getchar() and putchar()
that conflicted with libc. We changed them to lgetchar() and xputchar()
respectively; larn 12.2 changed them to ttgetch() and ttputch(). After
reflecting on this for a while I've decided to adopt the larn 12.2
names; not so much for compatibility but for consistency going forward.
So, massrename them. Also make ttputch() static.
 1.22 03-Feb-2008  dholland Make a bunch of functions static. Merged from larn 12.2.
 1.21 03-Feb-2008  dholland Since games are (now) setgid, not setuid, it is no longer necessary to
manipulate the effective uid, only the effective gid.
 1.20 28-Jan-2008  dholland Larn now builds with WARNS=4.
 1.19 28-Jan-2008  dholland Add gcc printf format checking, and fix the abundant problems this revealed.
(It appears that someone sometime thought that you use %d to print a long.)
 1.18 22-Apr-2007  mouse branches: 1.18.4;
Per PR 36185, OKed by martin@
 1.17 24-Apr-2006  snj branches: 1.17.4; 1.17.6; 1.17.8;
It's "its."
 1.16 05-Feb-2001  christos branches: 1.16.8; 1.16.12; 1.16.14;
- rename getchar to lgetchar to avoid conflicts with the stdio getchar
- fix redundant decls and nested externs
- use snprintf instead of sprintf
 1.15 22-May-2000  blymn Converted games to use the new termcap interface.
 1.14 30-Aug-1998  veego Add braces to make the new egcs happy.
 1.13 27-Jul-1998  mycroft const poisoning.
 1.12 12-Feb-1998  mikel fix typo; ryker@openbsd.org
 1.11 18-Oct-1997  christos Tons of changes; re-indent, use termios, fix warnings, add prototypes...
Games is almost clean; only hack is left...
 1.10 13-Jul-1997  christos gtime -> gltime to avoid conflict in time.h
 1.9 22-May-1996  mrg oops, we do need privs. do the right seteuid() thing.
 1.8 21-May-1996  mrg give up "games" if we have it. larn does not need it.
 1.7 24-Apr-1995  cgd branches: 1.7.6;
Various changes to make games compile w/o warnings on the alpha:
Include appropriate includes, delete bogus function declarations,
change sizes of variables and casts.
 1.6 22-Apr-1995  cgd clean up handling of fortunes a bit.
 1.5 23-Mar-1995  cgd merge with Lite, new RCS id conventions, etc.
 1.4 21-Oct-1994  mycroft Fix various problems with the potion/scroll name hiding mechanism.
 1.3 02-Aug-1993  mycroft Add RCS identifiers, remove some completely useless RCS logs and patchkit
headers, and a few other insignificant changes.
 1.2 20-Apr-1993  mycroft Don't modify string constants.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.7.6.1 27-May-1996  mrg merge in security fixes from trunk.
 1.16.14.1 03-Feb-2008  riz Pull up following revision(s) (requested by dholland in ticket #1899):
games/larn/scores.c: revision 1.16
games/larn/header.h: revision 1.18
games/larn/bill.c: revision 1.9
games/larn/main.c: revision 1.21
Since games are (now) setgid, not setuid, it is no longer necessary to
manipulate the effective uid, only the effective gid.
Use mkstemp to make the temporary files used when you win.
 1.16.12.1 03-Feb-2008  riz Pull up following revision(s) (requested by dholland in ticket #1899):
games/larn/scores.c: revision 1.16
games/larn/header.h: revision 1.18
games/larn/bill.c: revision 1.9
games/larn/main.c: revision 1.21
Since games are (now) setgid, not setuid, it is no longer necessary to
manipulate the effective uid, only the effective gid.
Use mkstemp to make the temporary files used when you win.
 1.16.8.1 03-Feb-2008  riz Pull up following revision(s) (requested by dholland in ticket #1899):
games/larn/scores.c: revision 1.16
games/larn/header.h: revision 1.18
games/larn/bill.c: revision 1.9
games/larn/main.c: revision 1.21
Since games are (now) setgid, not setuid, it is no longer necessary to
manipulate the effective uid, only the effective gid.
Use mkstemp to make the temporary files used when you win.
 1.17.8.1 03-Feb-2008  riz Pull up following revision(s) (requested by dholland in ticket #1067):
games/larn/scores.c: revision 1.16
games/larn/header.h: revision 1.18
games/larn/bill.c: revision 1.9
games/larn/main.c: revision 1.21
Since games are (now) setgid, not setuid, it is no longer necessary to
manipulate the effective uid, only the effective gid.
Use mkstemp to make the temporary files used when you win.
 1.17.6.1 03-Jun-2008  skrll Sync with netbsd-4.
 1.17.4.1 03-Feb-2008  riz Pull up following revision(s) (requested by dholland in ticket #1067):
games/larn/scores.c: revision 1.16
games/larn/header.h: revision 1.18
games/larn/bill.c: revision 1.9
games/larn/main.c: revision 1.21
Since games are (now) setgid, not setuid, it is no longer necessary to
manipulate the effective uid, only the effective gid.
Use mkstemp to make the temporary files used when you win.
 1.18.4.1 23-Mar-2008  matt sync with HEAD
 1.24.6.1 30-Oct-2012  yamt sync with head
 1.25.32.1 10-Jun-2019  christos Sync with HEAD
 1.20 02-May-2021  rillig games: remove trailing whitespace in *.c and *.h
 1.19 03-Feb-2019  mrg - add or adjust /* FALLTHROUGH */ where appropriate
- add __unreachable() after functions that can return but won't in
this case, and thus can't be marked __dead easily
 1.18 19-Jun-2012  dholland branches: 1.18.32;
WARNS=5
 1.17 12-Aug-2009  dholland branches: 1.17.6;
sprinkle static
 1.16 03-Feb-2008  dholland Once upon a time, larn 12.0 had functions named getchar() and putchar()
that conflicted with libc. We changed them to lgetchar() and xputchar()
respectively; larn 12.2 changed them to ttgetch() and ttputch(). After
reflecting on this for a while I've decided to adopt the larn 12.2
names; not so much for compatibility but for consistency going forward.
So, massrename them. Also make ttputch() static.
 1.15 03-Feb-2008  dholland Larn does not need its own private versions of functions from <ctype.h>.
Also, remove the function gettokstr(), which is not used. From larn 12.2.
 1.14 03-Feb-2008  dholland Make a bunch of functions static. Merged from larn 12.2.
 1.13 28-Jan-2008  dholland Larn now builds with WARNS=4.
 1.12 28-Jan-2008  dholland Add gcc printf format checking, and fix the abundant problems this revealed.
(It appears that someone sometime thought that you use %d to print a long.)
 1.11 22-Apr-2007  mouse branches: 1.11.4;
Per PR 36185, OKed by martin@
 1.10 19-Mar-2006  christos Coverity CID 2073: Fix memory leak.
 1.9 19-Mar-2006  christos Coverity CID 999: Prevent NULL deref.
 1.8 27-Jan-2004  jsm Remove uses of __P.
 1.7 05-Feb-2001  christos - rename getchar to lgetchar to avoid conflicts with the stdio getchar
- fix redundant decls and nested externs
- use snprintf instead of sprintf
 1.6 30-Aug-1998  veego Add braces to make the new egcs happy.
 1.5 18-Oct-1997  christos Tons of changes; re-indent, use termios, fix warnings, add prototypes...
Games is almost clean; only hack is left...
 1.4 24-Apr-1995  cgd Various changes to make games compile w/o warnings on the alpha:
Include appropriate includes, delete bogus function declarations,
change sizes of variables and casts.
 1.3 23-Mar-1995  cgd merge with Lite, new RCS id conventions, etc.
 1.2 02-Aug-1993  mycroft Add RCS identifiers, remove some completely useless RCS logs and patchkit
headers, and a few other insignificant changes.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.11.4.1 23-Mar-2008  matt sync with HEAD
 1.17.6.1 30-Oct-2012  yamt sync with head
 1.18.32.1 10-Jun-2019  christos Sync with HEAD
 1.13 02-May-2021  rillig games: remove trailing whitespace in *.c and *.h
 1.12 19-Jun-2012  dholland WARNS=5
 1.11 19-Feb-2008  dholland branches: 1.11.26;
Split some code from moreobj.c into action.c, as per larn 12.2.
 1.10 04-Feb-2008  dholland More assorted cleanup merged from larn 12.2.
 1.9 03-Feb-2008  dholland Once upon a time, larn 12.0 had functions named getchar() and putchar()
that conflicted with libc. We changed them to lgetchar() and xputchar()
respectively; larn 12.2 changed them to ttgetch() and ttputch(). After
reflecting on this for a while I've decided to adopt the larn 12.2
names; not so much for compatibility but for consistency going forward.
So, massrename them. Also make ttputch() static.
 1.8 28-Jan-2008  dholland Larn now builds with WARNS=4.
 1.7 28-Jan-2008  dholland Add gcc printf format checking, and fix the abundant problems this revealed.
(It appears that someone sometime thought that you use %d to print a long.)
 1.6 27-Jan-2004  jsm branches: 1.6.22;
Remove uses of __P.
 1.5 05-Feb-2001  christos - rename getchar to lgetchar to avoid conflicts with the stdio getchar
- fix redundant decls and nested externs
- use snprintf instead of sprintf
 1.4 18-Oct-1997  christos Tons of changes; re-indent, use termios, fix warnings, add prototypes...
Games is almost clean; only hack is left...
 1.3 23-Mar-1995  cgd merge with Lite, new RCS id conventions, etc.
 1.2 02-Aug-1993  mycroft Add RCS identifiers, remove some completely useless RCS logs and patchkit
headers, and a few other insignificant changes.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.6.22.1 23-Mar-2008  matt sync with HEAD
 1.11.26.1 30-Oct-2012  yamt sync with head
 1.10 03-Feb-2019  mrg - add or adjust /* FALLTHROUGH */ where appropriate
- add __unreachable() after functions that can return but won't in
this case, and thus can't be marked __dead easily
 1.9 19-Jun-2012  dholland branches: 1.9.32;
WARNS=5
 1.8 16-Aug-2011  christos branches: 1.8.2;
eliminate/document non-literal format strings
 1.7 12-Aug-2009  dholland sprinkle static
 1.6 28-Jan-2008  dholland Larn now builds with WARNS=4.
 1.5 18-Oct-1997  christos branches: 1.5.36;
Tons of changes; re-indent, use termios, fix warnings, add prototypes...
Games is almost clean; only hack is left...
 1.4 13-Jul-1997  christos gtime -> gltime to avoid conflict in time.h
 1.3 23-Mar-1995  cgd merge with Lite, new RCS id conventions, etc.
 1.2 02-Aug-1993  mycroft Add RCS identifiers, remove some completely useless RCS logs and patchkit
headers, and a few other insignificant changes.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.5.36.1 23-Mar-2008  matt sync with HEAD
 1.8.2.1 30-Oct-2012  yamt sync with head
 1.9.32.1 10-Jun-2019  christos Sync with HEAD
 1.6 19-Jun-2012  dholland WARNS=5
 1.5 18-Oct-1997  christos branches: 1.5.68;
Tons of changes; re-indent, use termios, fix warnings, add prototypes...
Games is almost clean; only hack is left...
 1.4 27-Apr-1995  mycroft Use usleep().
 1.3 23-Mar-1995  cgd merge with Lite, new RCS id conventions, etc.
 1.2 02-Aug-1993  mycroft Add RCS identifiers, remove some completely useless RCS logs and patchkit
headers, and a few other insignificant changes.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.5.68.1 30-Oct-2012  yamt sync with head
 1.17 03-Feb-2019  mrg - add or adjust /* FALLTHROUGH */ where appropriate
- add __unreachable() after functions that can return but won't in
this case, and thus can't be marked __dead easily
 1.16 19-Jun-2012  dholland branches: 1.16.32;
WARNS=5
 1.15 12-Aug-2009  dholland branches: 1.15.6;
sprinkle static
 1.14 04-Feb-2008  dholland More assorted cleanup merged from larn 12.2.
 1.13 03-Feb-2008  dholland Once upon a time, larn 12.0 had functions named getchar() and putchar()
that conflicted with libc. We changed them to lgetchar() and xputchar()
respectively; larn 12.2 changed them to ttgetch() and ttputch(). After
reflecting on this for a while I've decided to adopt the larn 12.2
names; not so much for compatibility but for consistency going forward.
So, massrename them. Also make ttputch() static.
 1.12 28-Jan-2008  dholland Larn now builds with WARNS=4.
 1.11 28-Jan-2008  dholland Add gcc printf format checking, and fix the abundant problems this revealed.
(It appears that someone sometime thought that you use %d to print a long.)
 1.10 05-Feb-2001  christos branches: 1.10.24;
- rename getchar to lgetchar to avoid conflicts with the stdio getchar
- fix redundant decls and nested externs
- use snprintf instead of sprintf
 1.9 30-Aug-1998  veego Add braces to make the new egcs happy.
 1.8 18-Oct-1997  christos Tons of changes; re-indent, use termios, fix warnings, add prototypes...
Games is almost clean; only hack is left...
 1.7 13-Jul-1997  christos gtime -> gltime to avoid conflict in time.h
 1.6 22-Apr-1995  cgd clean up handling of fortunes a bit.
 1.5 23-Mar-1995  cgd merge with Lite, new RCS id conventions, etc.
 1.4 21-Oct-1994  mycroft Fix various problems with the potion/scroll name hiding mechanism.
 1.3 02-Aug-1993  mycroft Add RCS identifiers, remove some completely useless RCS logs and patchkit
headers, and a few other insignificant changes.
 1.2 20-Apr-1993  mycroft Don't modify string constants.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.10.24.1 23-Mar-2008  matt sync with HEAD
 1.15.6.1 30-Oct-2012  yamt sync with head
 1.16.32.1 10-Jun-2019  christos Sync with HEAD
 1.8 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22269, verified by myself.
 1.7 18-Oct-1997  christos Tons of changes; re-indent, use termios, fix warnings, add prototypes...
Games is almost clean; only hack is left...
 1.6 07-Jan-1997  tls Sync to 4.4BSD-Lite2
 1.5 22-Apr-1995  cgd clean up handling of fortunes a bit.
 1.4 23-Mar-1995  cgd merge with Lite, new RCS id conventions, etc.
 1.3 18-Sep-1994  mycroft Move the playerids file to /var/games, as suggest by Rafal Boni.
 1.2 01-Aug-1993  mycroft Add RCS identifiers.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.2 28-Dec-1996  tls Import from 4.4BSD-Lite2
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.6 19-Jun-2012  dholland WARNS=5
 1.5 18-Oct-1997  christos branches: 1.5.68;
Tons of changes; re-indent, use termios, fix warnings, add prototypes...
Games is almost clean; only hack is left...
 1.4 13-Jul-1997  christos gtime -> gltime to avoid conflict in time.h
 1.3 23-Mar-1995  cgd merge with Lite, new RCS id conventions, etc.
 1.2 02-Aug-1993  mycroft Add RCS identifiers, remove some completely useless RCS logs and patchkit
headers, and a few other insignificant changes.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.5.68.1 30-Oct-2012  yamt sync with head
 1.7 19-Jun-2012  dholland WARNS=5
 1.6 03-Feb-2008  dholland branches: 1.6.26;
Some assorted minor cleanups, from larn 12.2.
 1.5 28-Jan-2008  dholland Larn now builds with WARNS=4.
 1.4 18-Oct-1997  christos branches: 1.4.36;
Tons of changes; re-indent, use termios, fix warnings, add prototypes...
Games is almost clean; only hack is left...
 1.3 23-Mar-1995  cgd merge with Lite, new RCS id conventions, etc.
 1.2 02-Aug-1993  mycroft Add RCS identifiers, remove some completely useless RCS logs and patchkit
headers, and a few other insignificant changes.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.4.36.1 23-Mar-2008  matt sync with HEAD
 1.6.26.1 30-Oct-2012  yamt sync with head
 1.22 02-May-2021  rillig games: remove trailing whitespace in *.c and *.h
 1.21 19-Jun-2012  dholland WARNS=5
 1.20 24-Apr-2010  dholland branches: 1.20.6;
Handle the "diedtime" field of the player log (which is not the high
scores file, the append-only log of all games) as int32_t instead of
time_t. Log files from before the 64-bit time_t change can now be read
again; however, log files from the last year of -current are hosed.
All none of you who play larn, take note...
 1.19 02-Apr-2010  christos ctime can return NULL.
 1.18 12-Aug-2009  dholland sprinkle static
 1.17 03-Feb-2008  dholland Don't create files mode 666 in /var. (The code in question is not enabled
by default, though.)
 1.16 03-Feb-2008  dholland Since games are (now) setgid, not setuid, it is no longer necessary to
manipulate the effective uid, only the effective gid.
 1.15 28-Jan-2008  dholland Larn now builds with WARNS=4.
 1.14 28-Jan-2008  dholland Add gcc printf format checking, and fix the abundant problems this revealed.
(It appears that someone sometime thought that you use %d to print a long.)
 1.13 22-Apr-2007  mouse branches: 1.13.4;
Per PR 36185, OKed by martin@
 1.12 13-Feb-2004  wiz branches: 1.12.6; 1.12.10; 1.12.14; 1.12.16; 1.12.18; 1.12.20;
Uppercase CPU, plural is CPUs.
 1.11 05-Feb-2001  christos - rename getchar to lgetchar to avoid conflicts with the stdio getchar
- fix redundant decls and nested externs
- use snprintf instead of sprintf
 1.10 18-Oct-1997  christos Tons of changes; re-indent, use termios, fix warnings, add prototypes...
Games is almost clean; only hack is left...
 1.9 13-Jul-1997  christos gtime -> gltime to avoid conflict in time.h
 1.8 09-Oct-1996  jtc merge in 1.2 branch
 1.7 15-Aug-1996  mrg call seteuid() before append/create. from kstailey (PR#2699)
 1.6 22-May-1996  mrg oops, we do need privs. do the right seteuid() thing.
 1.5 24-Apr-1995  cgd branches: 1.5.6;
Various changes to make games compile w/o warnings on the alpha:
Include appropriate includes, delete bogus function declarations,
change sizes of variables and casts.
 1.4 23-Mar-1995  cgd merge with Lite, new RCS id conventions, etc.
 1.3 02-Aug-1993  mycroft Add RCS identifiers, remove some completely useless RCS logs and patchkit
headers, and a few other insignificant changes.
 1.2 20-Apr-1993  mycroft Don't modify string constants.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.5.6.2 26-Jan-1997  rat Pullup 1.6 -> 1.7. Call seteuid() before append/create.
From kstailey (PR#2699)
 1.5.6.1 27-May-1996  mrg merge in security fixes from trunk.
 1.12.20.1 03-Feb-2008  riz Pull up following revision(s) (requested by dholland in ticket #1067):
games/larn/scores.c: revision 1.16
games/larn/header.h: revision 1.18
games/larn/bill.c: revision 1.9
games/larn/main.c: revision 1.21
Since games are (now) setgid, not setuid, it is no longer necessary to
manipulate the effective uid, only the effective gid.
Use mkstemp to make the temporary files used when you win.
 1.12.18.1 03-Jun-2008  skrll Sync with netbsd-4.
 1.12.16.1 03-Feb-2008  riz Pull up following revision(s) (requested by dholland in ticket #1067):
games/larn/scores.c: revision 1.16
games/larn/header.h: revision 1.18
games/larn/bill.c: revision 1.9
games/larn/main.c: revision 1.21
Since games are (now) setgid, not setuid, it is no longer necessary to
manipulate the effective uid, only the effective gid.
Use mkstemp to make the temporary files used when you win.
 1.12.14.1 03-Feb-2008  riz Pull up following revision(s) (requested by dholland in ticket #1899):
games/larn/scores.c: revision 1.16
games/larn/header.h: revision 1.18
games/larn/bill.c: revision 1.9
games/larn/main.c: revision 1.21
Since games are (now) setgid, not setuid, it is no longer necessary to
manipulate the effective uid, only the effective gid.
Use mkstemp to make the temporary files used when you win.
 1.12.10.1 03-Feb-2008  riz Pull up following revision(s) (requested by dholland in ticket #1899):
games/larn/scores.c: revision 1.16
games/larn/header.h: revision 1.18
games/larn/bill.c: revision 1.9
games/larn/main.c: revision 1.21
Since games are (now) setgid, not setuid, it is no longer necessary to
manipulate the effective uid, only the effective gid.
Use mkstemp to make the temporary files used when you win.
 1.12.6.1 03-Feb-2008  riz Pull up following revision(s) (requested by dholland in ticket #1899):
games/larn/scores.c: revision 1.16
games/larn/header.h: revision 1.18
games/larn/bill.c: revision 1.9
games/larn/main.c: revision 1.21
Since games are (now) setgid, not setuid, it is no longer necessary to
manipulate the effective uid, only the effective gid.
Use mkstemp to make the temporary files used when you win.
 1.13.4.1 23-Mar-2008  matt sync with HEAD
 1.20.6.1 30-Oct-2012  yamt sync with head
 1.9 19-Jun-2012  dholland WARNS=5
 1.8 27-Jan-2004  jsm branches: 1.8.54;
Remove uses of __P.
 1.7 05-Feb-2001  christos - rename getchar to lgetchar to avoid conflicts with the stdio getchar
- fix redundant decls and nested externs
- use snprintf instead of sprintf
 1.6 18-Oct-1997  christos Tons of changes; re-indent, use termios, fix warnings, add prototypes...
Games is almost clean; only hack is left...
 1.5 21-Dec-1995  mycroft Clean this up a bit.
 1.4 24-Apr-1995  cgd Various changes to make games compile w/o warnings on the alpha:
Include appropriate includes, delete bogus function declarations,
change sizes of variables and casts.
 1.3 23-Mar-1995  cgd merge with Lite, new RCS id conventions, etc.
 1.2 02-Aug-1993  mycroft Add RCS identifiers, remove some completely useless RCS logs and patchkit
headers, and a few other insignificant changes.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.8.54.1 30-Oct-2012  yamt sync with head
 1.17 02-May-2021  rillig games: remove trailing whitespace in *.c and *.h
 1.16 19-Jun-2012  dholland WARNS=5
 1.15 12-Aug-2009  dholland branches: 1.15.6;
sprinkle static
 1.14 03-Feb-2008  dholland Once upon a time, larn 12.0 had functions named getchar() and putchar()
that conflicted with libc. We changed them to lgetchar() and xputchar()
respectively; larn 12.2 changed them to ttgetch() and ttputch(). After
reflecting on this for a while I've decided to adopt the larn 12.2
names; not so much for compatibility but for consistency going forward.
So, massrename them. Also make ttputch() static.
 1.13 03-Feb-2008  dholland Some assorted minor cleanups, from larn 12.2.
 1.12 28-Jan-2008  dholland Larn now builds with WARNS=4.
 1.11 28-Jan-2008  dholland Add gcc printf format checking, and fix the abundant problems this revealed.
(It appears that someone sometime thought that you use %d to print a long.)
 1.10 27-Jan-2004  jsm branches: 1.10.22;
Remove uses of __P.
 1.9 07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22269, verified by myself.
 1.8 05-Feb-2001  christos - rename getchar to lgetchar to avoid conflicts with the stdio getchar
- fix redundant decls and nested externs
- use snprintf instead of sprintf
 1.7 30-Aug-1998  veego Add braces to make the new egcs happy.
 1.6 18-Oct-1997  christos Tons of changes; re-indent, use termios, fix warnings, add prototypes...
Games is almost clean; only hack is left...
 1.5 13-Jul-1997  christos gtime -> gltime to avoid conflict in time.h
 1.4 23-Mar-1995  cgd merge with Lite, new RCS id conventions, etc.
 1.3 21-Oct-1994  mycroft Fix various problems with the potion/scroll name hiding mechanism.
 1.2 01-Aug-1993  mycroft Add RCS identifiers.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.10.22.1 23-Mar-2008  matt sync with HEAD
 1.15.6.1 30-Oct-2012  yamt sync with head
 1.11 19-Jun-2012  dholland WARNS=5
 1.10 04-Feb-2008  dholland branches: 1.10.26;
More assorted cleanup merged from larn 12.2.
 1.9 03-Feb-2008  dholland Larn does not need its own private versions of functions from <ctype.h>.
Also, remove the function gettokstr(), which is not used. From larn 12.2.
 1.8 03-Feb-2008  dholland A long time ago, larn had code to prohibit playing it during work hours.
Most of this code was removed ages ago, probably when dm(6) was invented;
long before -r1.1 in the NetBSD tree in any event.

Now remove the last fragment of it.

Also nuke the file of US holidays 1987-1993 that we've been carrying
around for no reason.
 1.7 28-Jan-2008  dholland Larn now builds with WARNS=4.
 1.6 11-May-2006  mrg branches: 1.6.10;
end the argument list to exec*(3) with a NULL instead of a bare '0', as
the latter isn't a pointer context in these varargs functions.
 1.5 18-Oct-1997  christos Tons of changes; re-indent, use termios, fix warnings, add prototypes...
Games is almost clean; only hack is left...
 1.4 24-Apr-1995  cgd Various changes to make games compile w/o warnings on the alpha:
Include appropriate includes, delete bogus function declarations,
change sizes of variables and casts.
 1.3 23-Mar-1995  cgd merge with Lite, new RCS id conventions, etc.
 1.2 02-Aug-1993  mycroft Add RCS identifiers, remove some completely useless RCS logs and patchkit
headers, and a few other insignificant changes.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.6.10.1 23-Mar-2008  matt sync with HEAD
 1.10.26.1 30-Oct-2012  yamt sync with head
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources
 1.2 22-Apr-1995  cgd clean up handling of fortunes a bit.
 1.1 21-Mar-1993  cgd branches: 1.1.1;
Initial revision
 1.1.1.1 21-Mar-1993  cgd initial import of 386bsd-0.1 sources

RSS XML Feed