Merge March 2020 changes into NetHack 3.7

This commit is contained in:
nhmall
2020-03-06 10:59:50 -05:00
12 changed files with 86 additions and 44 deletions

2
Files
View File

@@ -136,7 +136,7 @@ vault.c version.c vision.c weapon.c were.c wield.c
windows.c wizard.c worm.c worn.c write.c zap.c windows.c wizard.c worm.c worn.c write.c zap.c
sys/amiga: sys/amiga:
(files for Amiga versions - untested for 3.6.5) (files for Amiga versions - untested for 3.6.6)
Build.ami Install.ami Makefile.agc Makefile.ami NetHack.cnf Build.ami Install.ami Makefile.agc Makefile.ami NetHack.cnf
amidos.c amidos.p amifont.uu amifont8.uu amigst.c amidos.c amidos.p amifont.uu amifont8.uu amigst.c
amii.hlp amimenu.c amirip.c amistack.c amitty.c amii.hlp amimenu.c amirip.c amistack.c amitty.c

4
README
View File

@@ -60,7 +60,7 @@ considered spoilers:
their individual fields and save those fields instead of the entire their individual fields and save those fields instead of the entire
struct struct
- savefile: use little-endian format for fields where that makes a difference - savefile: use little-endian format for fields where that makes a difference
- - - - - - - - - - - - - - - - - - - - - -
Please read items (1), (2) and (3) BEFORE doing anything with your new code. Please read items (1), (2) and (3) BEFORE doing anything with your new code.
@@ -213,6 +213,6 @@ In our own patches, we will assume that your code is synchronized with ours.
-- Good luck, and happy Hacking -- -- Good luck, and happy Hacking --
# $NHDT-Date: 1572309271 2019/10/29 00:34:31 $ $NHDT-Branch: NetHack-3.6 $:$NHDT-Revision: 1.57 $ # $NHDT-Date: 1583508658 2020/03/06 15:30:58 $ $NHDT-Branch: NetHack-3.6-Mar2020 $:$NHDT-Revision: 1.80 $
# Copyright (c) 2012 by Michael Allison # Copyright (c) 2012 by Michael Allison
# NetHack may be freely redistributed. See license for details. # NetHack may be freely redistributed. See license for details.

View File

@@ -229,6 +229,9 @@ fix and a few bug fixes.
NetHack 3.6.5 was released on January 27, 2020 containing some security fixes NetHack 3.6.5 was released on January 27, 2020 containing some security fixes
and a small number of bug fixes. and a small number of bug fixes.
NetHack 3.6.6 was released on March 8, 2020 containing a security fix and
some bug fixes.
The official NetHack web site is maintained by Ken Lorber at The official NetHack web site is maintained by Ken Lorber at
http://www.nethack.org/. http://www.nethack.org/.

View File

@@ -1,4 +1,4 @@
.\" $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.372 $ $NHDT-Date: 1581817474 2020/02/16 01:44:34 $ .\" $NHDT-Branch: NetHack-3.7-Mar2020 $:$NHDT-Revision: 1.347 $ $NHDT-Date: 1583508684 2020/03/06 15:31:24 $
.\" .\"
.\" This is an excerpt from the 'roff' man page from the 'groff' package. .\" This is an excerpt from the 'roff' man page from the 'groff' package.
.\" Guidebook.mn currently does *not* fully adhere to these guidelines. .\" Guidebook.mn currently does *not* fully adhere to these guidelines.
@@ -35,7 +35,7 @@
.ds vr "NetHack 3.7 .ds vr "NetHack 3.7
.ds f0 "\*(vr .ds f0 "\*(vr
.ds f1 .ds f1
.ds f2 "February 17, 2020 .ds f2 "March 8, 2020
. .
.\" A note on some special characters: .\" A note on some special characters:
.\" \(lq = left double quote .\" \(lq = left double quote
@@ -5578,6 +5578,9 @@ and a few bug fixes.
NetHack 3.6.5 was released on January 27, 2020 containing some security fixes NetHack 3.6.5 was released on January 27, 2020 containing some security fixes
and a small number of bug fixes. and a small number of bug fixes.
.pg .pg
NetHack 3.6.6 was released on March 8, 2020 containing a security fix and
some bug fixes.
.pg
The official NetHack web site is maintained by \fBKen Lorber\fP The official NetHack web site is maintained by \fBKen Lorber\fP
at at
.UR https://www.nethack.org/ . .UR https://www.nethack.org/ .

View File

@@ -45,7 +45,7 @@
%.au %.au
\author{Original version - Eric S. Raymond\\ \author{Original version - Eric S. Raymond\\
(Edited and expanded for 3.7 by Mike Stephenson and others)} (Edited and expanded for 3.7 by Mike Stephenson and others)}
\date{February 17, 2020} \date{March 8, 2020}
\maketitle \maketitle
@@ -6158,6 +6158,11 @@ a few bug fixes.
NetHack 3.6.5 was released on January 27, 2020 containing some security fixes NetHack 3.6.5 was released on January 27, 2020 containing some security fixes
and a small number of bug fixes. and a small number of bug fixes.
%.pg
\medskip
NetHack 3.6.6 was released on March 8, 2020 containing a security fix and
some bug fixes.
%.pg %.pg
\medskip \medskip
\nd The official {\it NetHack\/} web site is maintained by {\it Ken Lorber} at \nd The official {\it NetHack\/} web site is maintained by {\it Ken Lorber} at

View File

@@ -15,7 +15,7 @@
Original version - Eric S. Raymond Original version - Eric S. Raymond
(Edited and expanded for 3.7 by Mike Stephenson and others) (Edited and expanded for 3.7 by Mike Stephenson and others)
February 17, 2020 March 4, 2020
@@ -6390,6 +6390,9 @@
NetHack 3.6.5 was released on January 27, 2020 containing NetHack 3.6.5 was released on January 27, 2020 containing
some security fixes and a small number of bug fixes. some security fixes and a small number of bug fixes.
NetHack 3.6.6 was released in March 2020 containing a secu-
rity fix.
The official NetHack web site is maintained by Ken Lorber at The official NetHack web site is maintained by Ken Lorber at
https://www.nethack.org/. https://www.nethack.org/.
@@ -6409,19 +6412,19 @@
12.1. SPECIAL THANKS 12.1. SPECIAL THANKS
On behalf of the NetHack community, thank you very much once On behalf of the NetHack community, thank you very much once
again to M. Drew Streib and Pasi Kallinen for providing a public again to M. Drew Streib and Pasi Kallinen for providing a public
NetHack server at nethack.alt.org. Thanks to Keith Simpson and NetHack server at nethack.alt.org. Thanks to Keith Simpson and
Andy Thomson for hardfought.org. Thanks to all those unnamed dun- Andy Thomson for hardfought.org. Thanks to all those unnamed dun-
geoneers who invest their time and effort into annual NetHack geoneers who invest their time and effort into annual NetHack
tournaments such as Junethack, The November NetHack Tournament tournaments such as Junethack, The November NetHack Tournament
and in days past, devnull.net (gone for now, but not forgotten). and in days past, devnull.net (gone for now, but not forgotten).
- - - - - - - - - - - - - - - - - - - -
From time to time, some depraved individual out there in From time to time, some depraved individual out there in
netland sends a particularly intriguing modification to help out netland sends a particularly intriguing modification to help out
with the game. The NetHack Development Team sometimes makes note with the game. The NetHack Development Team sometimes makes note
of the names of the worst of these miscreants in this, the list of the names of the worst of these miscreants in this, the list
of Dungeoneers: of Dungeoneers:
Adam Aronow J. Ali Harlow Mikko Juola Adam Aronow J. Ali Harlow Mikko Juola
Alex Kompel Janet Walz Nathan Eady Alex Kompel Janet Walz Nathan Eady
@@ -6479,7 +6482,7 @@
Irina Rempt-Drijfhout Mike Passaretti Irina Rempt-Drijfhout Mike Passaretti
Izchak Miller Mike Stephenson Izchak Miller Mike Stephenson
Brand and product names are trademarks or registered trade- Brand and product names are trademarks or registered trade-
marks of their respective holders. marks of their respective holders.
@@ -6489,7 +6492,7 @@
NetHack 3.6 March 4, 2020
@@ -6530,5 +6533,3 @@
NetHack 3.7 February 17, 2020 NetHack 3.7 February 17, 2020

View File

@@ -18,8 +18,8 @@ fix potential buffer overflow in choose_windows()
use vsnprintf instead of vsprintf in pline.c where possible use vsnprintf instead of vsprintf in pline.c where possible
Fixes to Post-3.6.4 Problems that Were Exposed Via git Repository Fixes to 3.6.5 Post-release Problems
------------------------------------------------------------------ ------------------------------------
Platform- and/or Interface-Specific Fixes or Features Platform- and/or Interface-Specific Fixes or Features

24
doc/fixes36.6 Normal file
View File

@@ -0,0 +1,24 @@
$NHDT-Branch: NetHack-3.6-Mar2020 $:$NHDT-Revision: 1.1 $ $NHDT-Date: 1583445339 2020/03/05 21:55:39 $
fixes36.6 contains a terse summary of changes made to 3.6.5 in order to
produce 3.6.6 as well as any post-release fixes in binaries.
General Fixes and Modified Features
-----------------------------------
invalid status highlight color could be maliciously used to corrupt memory
formatting corpse names used internal buffers differently from formatting
other objects and could potentially clobber memory
avoid divide by 0 crash if 'bogusmon' (file of bogus monster types) is empty
avoid #wizrumorcheck crash if either 'rumors.tru' or 'rumors.fal' or both
were empty when makedefs built 'rumors'
Platform- and/or Interface-Specific Fixes or Features
-----------------------------------------------------
General New Features
--------------------
none

View File

@@ -44,6 +44,15 @@
/****************************************************************************/ /****************************************************************************/
/* Version 3.6.x */ /* Version 3.6.x */
/* Patch 6, March 8, 2020
* invalid status highlight color could be maliciously used to corrupt memory
* formatting corpse names used internal buffers differently from formatting
* other objects and could potentially clobber memory
* avoid divide by 0 crash if 'bogusmon' (file of bogus monster types) is empty
* avoid #wizrumorcheck crash if either 'rumors.tru' or 'rumors.fal' or both
* were empty when makedefs built 'rumors'
*/
/* Patch 5, January 27, 2020 /* Patch 5, January 27, 2020
* *
* fix accessing mons[-1] when trying to gate in a non-valid demon * fix accessing mons[-1] when trying to gate in a non-valid demon

View File

@@ -1,4 +1,4 @@
/* NetHack 3.6 rumors.c $NHDT-Date: 1582364450 2020/02/22 09:40:50 $ $NHDT-Branch: NetHack-3.7 $:$NHDT-Revision: 1.51 $ */ /* NetHack 3.7 rumors.c $NHDT-Date: 1583445339 2020/03/05 21:55:39 $ $NHDT-Branch: NetHack-3.6-Mar2020 $:$NHDT-Revision: 1.38 $ */
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */ /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
/*-Copyright (c) Robert Patrick Rankin, 2012. */ /*-Copyright (c) Robert Patrick Rankin, 2012. */
/* NetHack may be freely redistributed. See license for details. */ /* NetHack may be freely redistributed. See license for details. */
@@ -147,9 +147,10 @@ boolean exclude_cookie;
couldnt_open_file(RUMORFILE); couldnt_open_file(RUMORFILE);
g.true_rumor_size = -1; /* don't try to open it again */ g.true_rumor_size = -1; /* don't try to open it again */
} }
/* this is safe either way, so do it always since we can't get the definition
* out of makedefs.c /* this is safe either way, so do it always since we can't get the
*/ * definition out of makedefs.c
*/
#define PAD_RUMORS_TO #define PAD_RUMORS_TO
#ifdef PAD_RUMORS_TO #ifdef PAD_RUMORS_TO
/* remove padding */ /* remove padding */
@@ -176,10 +177,8 @@ rumor_check()
char *endp, line[BUFSZ], xbuf[BUFSZ], rumor_buf[BUFSZ]; char *endp, line[BUFSZ], xbuf[BUFSZ], rumor_buf[BUFSZ];
if (g.true_rumor_size < 0L) { /* we couldn't open RUMORFILE */ if (g.true_rumor_size < 0L) { /* we couldn't open RUMORFILE */
no_rumors: no_rumors:
pline("rumors not accessible."); pline("rumors not accessible.");
if (rumors)
(void) dlb_fclose(rumors);
return; return;
} }
@@ -192,28 +191,26 @@ rumor_check()
if (g.true_rumor_size == 0L) { /* if this is 1st outrumor() */ if (g.true_rumor_size == 0L) { /* if this is 1st outrumor() */
init_rumors(rumors); init_rumors(rumors);
if (g.true_rumor_size < 0L) if (g.true_rumor_size < 0L)
rumors = (dlb *) 0; /* init_rumors() closes it upon failure */
goto no_rumors; /* init failed */ goto no_rumors; /* init failed */
}
} }
tmpwin = create_nhwindow(NHW_TEXT); tmpwin = create_nhwindow(NHW_TEXT);
/* /*
* reveal the values. * reveal the values.
*/ */
Sprintf(rumor_buf,
Sprintf( "T start=%06ld (%06lx), end=%06ld (%06lx), size=%06ld (%06lx)",
rumor_buf, (long) g.true_rumor_start, g.true_rumor_start,
"T start=%06ld (%06lx), end=%06ld (%06lx), size=%06ld (%06lx)", g.true_rumor_end, (unsigned long) g.true_rumor_end,
(long) g.true_rumor_start, g.true_rumor_start, g.true_rumor_end, g.true_rumor_size,(unsigned long) g.true_rumor_size);
(unsigned long) g.true_rumor_end, g.true_rumor_size,
(unsigned long) g.true_rumor_size);
putstr(tmpwin, 0, rumor_buf); putstr(tmpwin, 0, rumor_buf);
Sprintf(rumor_buf,
Sprintf( "F start=%06ld (%06lx), end=%06ld (%06lx), size=%06ld (%06lx)",
rumor_buf, (long) g.false_rumor_start, g.false_rumor_start,
"F start=%06ld (%06lx), end=%06ld (%06lx), size=%06ld (%06lx)", g.false_rumor_end,(unsigned long) g.false_rumor_end,
(long) g.false_rumor_start, g.false_rumor_start, g.false_rumor_end, g.false_rumor_size,(unsigned long) g.false_rumor_size);
(unsigned long) g.false_rumor_end, g.false_rumor_size,
(unsigned long) g.false_rumor_size);
putstr(tmpwin, 0, rumor_buf); putstr(tmpwin, 0, rumor_buf);
/* /*

View File

@@ -1,2 +1,2 @@
*.p NHSUBST *.p NHSUBST
* NH_filestag=(file%s_for_Amiga_versions_-_untested_for_3.6.5) * NH_filestag=(file%s_for_Amiga_versions_-_untested_for_3.6.6)

View File

@@ -26,8 +26,8 @@ home directory you might perform these steps.
If you have old record and logfile entries from a previous NetHack version, If you have old record and logfile entries from a previous NetHack version,
you might want to save copies before they get overwritten by the new empty you might want to save copies before they get overwritten by the new empty
files; old saved games and bones files from 3.6.0 through to 3.6.4 should files; old saved games and bones files from 3.6.0 through to 3.6.5 should
work with 3.6.5 but even older saved games and bones files from 3.4.3 will work with 3.6.6 but even older saved games and bones files from 3.4.3 will
not. If you are installing from the RPM, there is no need to save the old not. If you are installing from the RPM, there is no need to save the old
record and logfile; they are automatically preserved. record and logfile; they are automatically preserved.