Mercurial > hg > early-roguelike
view rogue4/findpw.c @ 75:19903deed392
arogue5: fix the crash when checking prices in shops.
A buffer called curpurch, which stores a description of an item in a
trading post which the player might be interested in, was only 15
bytes. It was overflowing into oldrp, a room pointer, leading to
segfaults. The size of curpurch has been increased to LINELEN*2,
which matches the size of prbuf, which is returned by inv_name and
then strcpy()'d to curpurch. As long as nothing overflows prbuf it
should be safe now.
NOTE that this breaks savefile compatibility.
author | John "Elwin" Edwards <elwin@sdf.org> |
---|---|
date | Wed, 05 Sep 2012 10:14:34 -0700 |
parents | 9535a08ddc39 |
children |
line wrap: on
line source
/* * print out an encrypted password on the standard output * * @(#)findpw.c 1.1 (Berkeley) 12/20/81 * * Rogue: Exploring the Dungeons of Doom * Copyright (C) 1980, 1981, 1982 Michael Toy, Ken Arnold and Glenn Wichman * All rights reserved. * * See the file LICENSE.TXT for full copyright and licensing information. */ #include <stdio.h> main() { char buf[80]; fprintf(stderr, "Password: "); fgets(buf, 80, stdin); buf[strlen(buf) - 1] = '\0'; printf("%s\n", xcrypt(buf, "mT")); }