-/* $NetBSD: mille.c,v 1.5 1997/05/23 23:09:38 jtc Exp $ */
+/* $NetBSD: mille.c,v 1.16 2008/08/08 16:10:47 drochner Exp $ */
/*
* Copyright (c) 1982, 1993
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
- * 3. All advertising materials mentioning features or use of this software
- * must display the following acknowledgement:
- * This product includes software developed by the University of
- * California, Berkeley and its contributors.
- * 4. Neither the name of the University nor the names of its contributors
+ * 3. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* SUCH DAMAGE.
*/
+#include <sys/cdefs.h>
#ifndef lint
-static char copyright[] =
-"@(#) Copyright (c) 1982, 1993\n\
- The Regents of the University of California. All rights reserved.\n";
+__COPYRIGHT("@(#) Copyright (c) 1982, 1993\
+ The Regents of the University of California. All rights reserved.");
#endif /* not lint */
#ifndef lint
#if 0
static char sccsid[] = "@(#)mille.c 8.1 (Berkeley) 5/31/93";
#else
-static char rcsid[] = "$NetBSD: mille.c,v 1.5 1997/05/23 23:09:38 jtc Exp $";
+__RCSID("$NetBSD: mille.c,v 1.16 2008/08/08 16:10:47 drochner Exp $");
#endif
#endif /* not lint */
# include "mille.h"
# include <signal.h>
-# ifdef attron
-# include <term.h>
-# endif attron
/*
* @(#)mille.c 1.3 (Berkeley) 5/10/83
*/
-void rub();
-
+int
main(ac, av)
-register int ac;
-register char *av[];
+ int ac;
+ char *av[];
{
- register bool restore;
+ bool restore;
- /* run as the user */
- setuid(getuid());
+ /* Revoke setgid privileges */
+ setgid(getgid());
if (strcmp(av[0], "a.out") == 0) {
outf = fopen("q", "w");
break;
default:
printf("usage: milles [ restore_file ]\n");
- exit(-1);
+ exit(1);
/* NOTREACHED */
}
Play = PLAYER;
- initscr();
+ if (!initscr())
+ errx(0, "couldn't initialize screen");
delwin(stdscr);
stdscr = Board = newwin(BOARD_Y, BOARD_X, 0, 0);
Score = newwin(SCORE_Y, SCORE_X, 0, 40);
# else
srandom(0);
# endif
- crmode();
+ cbreak();
noecho();
signal(SIGINT, rub);
for (;;) {
* quit.
*/
void
-rub() {
-
+rub(dummy)
+ int dummy __unused;
+{
(void)signal(SIGINT, SIG_IGN);
if (getyn(REALLYPROMPT))
die(0);
/*
* Time to go beddy-by
*/
+void
die(code)
-int code; {
+ int code;
+{
(void)signal(SIGINT, SIG_IGN);
if (outf)