proper gid revoke
authorderaadt <deraadt@openbsd.org>
Sun, 22 Dec 1996 20:00:41 +0000 (20:00 +0000)
committerderaadt <deraadt@openbsd.org>
Sun, 22 Dec 1996 20:00:41 +0000 (20:00 +0000)
33 files changed:
games/Makefile.inc
games/atc/main.c
games/backgammon/backgammon/main.c
games/backgammon/teachgammon/teach.c
games/banner/banner.c
games/bcd/bcd.c
games/bs/bs.c
games/caesar/caesar.c
games/canfield/canfield/canfield.c
games/canfield/cfscores/cfscores.c
games/factor/factor.c
games/gomoku/main.c
games/grdc/grdc.c
games/hack/hack.main.c
games/hack/hack.pager.c
games/hangman/main.c
games/mille/mille.c
games/monop/initdeck.c
games/morse/morse.c
games/number/number.c
games/pig/pig.c
games/pom/pom.c
games/ppt/ppt.c
games/primes/primes.c
games/quiz/quiz.c
games/rain/rain.c
games/random/random.c
games/robots/main.c
games/snake/snake/snake.c
games/snake/snscore/snscore.c
games/worm/worm.c
games/worms/worms.c
games/wump/wump.c

index 5598792..6726456 100644 (file)
@@ -4,7 +4,7 @@
 BINGRP?=       games
 .if defined(HIDEGAME)
 BINDIR?=       /usr/games/hide
-BINMODE?=      2550
+BINMODE?=      550
 .else
 BINDIR?=       /usr/games
 .endif
index 4ba2d0f..cd502e2 100644 (file)
@@ -77,6 +77,8 @@ main(ac, av)
        extern char             *default_game(), *okay_game();
        extern void             log_score(), quit(), update();
 
+       /* revoke privs */
+       setegid(getgid());
        setgid(getgid());
 
        start_time = seed = time(0);
index 7077e28..d3bc422 100644 (file)
@@ -109,6 +109,8 @@ char        **argv;
        register char   c;              /* non-descript character storage */
        long    t;                      /* time for random num generator */
 
+       /* revoke privs */
+       setegid(getgid());
        setgid(getgid());
 
        /* initialization */
index 72b9901..c026dd6 100644 (file)
@@ -84,6 +84,8 @@ char  **argv;
 {
        register int    i;
 
+       /* revoke privs */
+       setegid(getgid());
        setgid(getgid());
 
        signal (2,getout);
index cd46e29..910a51c 100644 (file)
@@ -1036,6 +1036,8 @@ main(argc, argv)
 { 
        int ch;
 
+       /* revoke */
+       setegid(getgid());
        setgid(getgid());
 
        while ((ch = getopt(argc, argv, "w:td")) != EOF)
index ba6f11b..869467f 100644 (file)
@@ -134,6 +134,8 @@ main(argc, argv)
         * but this seems kind of silly.  So this one doesn't.
         */
 
+       /* revoke privs */
+       setegid(getgid());
        setgid(getgid());
 
        if (argc > 1) {
index 75ab721..bf2cf8a 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: bs.c,v 1.2 1996/12/19 22:21:13 deraadt Exp $  */
+/*     $OpenBSD: bs.c,v 1.3 1996/12/22 20:01:00 deraadt Exp $  */
 /*
  * bs.c - original author: Bruce Holloway
  *             salvo option by: Chuck A DeGaul
@@ -1203,6 +1203,8 @@ main(argc, argv)
 int argc;
 char *argv[];
 {
+    /* revoke privs */
+    setegid(getgid());
     setgid(getgid());
 
     do_options(argc, argv);
index dd9a0f2..604883f 100644 (file)
@@ -85,6 +85,8 @@ main(argc, argv)
        int obs[26], try, winner;
        char *malloc(), *strerror();
 
+       /* revoke privs */
+       setegid(getgid());
        setgid(getgid());
 
        if (argc > 1)
index 9028522..a10317a 100644 (file)
@@ -1699,7 +1699,11 @@ main(argc, argv)
        raw();
        noecho();
        initall();
-       setgid(getgid());               /* revoke */
+
+       /* revoke privs */
+       setegid(getgid());
+       setgid(getgid());
+
        instruct();
        makeboard();
        for (;;) {
index 520c401..4f97326 100644 (file)
@@ -80,7 +80,11 @@ main(argc, argv)
                perror(_PATH_SCORE);
                exit(2);
        }
-       setgid(getgid());               /* revoke */
+
+       /* revoke privs */
+       setegid(getgid());
+       setgid(getgid());
+
        setpwent();
        if (argc == 1) {
                uid = getuid();
index 0f56322..ba31462 100644 (file)
@@ -99,6 +99,8 @@ main(argc, argv)
        int ch;
        char *p, buf[100];              /* > max number of digits. */
 
+       /* revoke privs */
+       setegid(getgid());
        setgid(getgid());
 
        while ((ch = getopt(argc, argv, "")) != EOF)
index 9b5bd08..4440593 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: main.c,v 1.4 1996/12/21 21:17:51 tholo Exp $  */
+/*     $OpenBSD: main.c,v 1.5 1996/12/22 20:01:16 deraadt Exp $        */
 /*
  * Copyright (c) 1994
  *     The Regents of the University of California.  All rights reserved.
@@ -89,6 +89,8 @@ main(argc, argv)
                "%3d        %-6s"
        };
 
+       /* revoke privs */
+       setegid(getgid());
        setgid(getgid());
 
        prog = strrchr(argv[0], '/');
index a1d98d4..b368641 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: grdc.c,v 1.2 1996/12/19 22:21:30 deraadt Exp $        */
+/*     $OpenBSD: grdc.c,v 1.3 1996/12/22 20:01:17 deraadt Exp $        */
 /*
  * Grand digital clock for curses compatible terminals
  * Usage: grdc [-s] [n]   -- run for n seconds (default infinity)
@@ -57,6 +57,8 @@ int n = 0;
 
        initscr();
 
+       /* revoke privs */
+       setegid(getgid());
        setgid(getgid());
 
        signal(SIGINT,sighndl);
index 2a663a5..5850193 100644 (file)
@@ -468,8 +468,9 @@ boolean wr;
               && strcmp(dir, HACKDIR)          /* and not the default? */
 #endif
                ) {
-               (void) setuid(getuid());                /* Ron Wessels */
-               (void) setgid(getgid());
+               /* revoke */
+               setegid(getgid());
+               setgid(getgid());
        }
 #endif
 
index 0e3d681..7bbffd8 100644 (file)
@@ -384,8 +384,9 @@ child(wt) {
        f = fork();
        if(f == 0){             /* child */
                settty((char *) 0);             /* also calls end_screen() */
-               (void) setuid(getuid());
-               (void) setgid(getgid());
+               /* revoke */
+               setegid(getgid());
+               setgid(getgid());
 #ifdef CHDIR
                (void) chdir(getenv("HOME"));
 #endif CHDIR
index 3ab3677..72bf7e4 100644 (file)
@@ -56,6 +56,8 @@ main()
 {
        void die();
 
+       /* revoke */
+       setegid(getgid());
        setgid(getgid());
 
        initscr();
index c5632a2..b8c15c5 100644 (file)
@@ -65,7 +65,9 @@ register char *av[]; {
 
        register bool   restore;
 
-       setgid(getgid());       /* run as the user */
+       /* revoke */
+       setegid(getgid());
+       setgid(getgid());
 
        if (strcmp(av[0], "a.out") == 0) {
                outf = fopen("q", "w");
index 6c60bf7..d783364 100644 (file)
@@ -82,6 +82,8 @@ int   ac;
 char   *av[]; {
        int n;
 
+       /* revoke */
+       setegid(getgid());
        setgid(getgid());
 
        getargs(ac, av);
index af5b456..8e36af8 100644 (file)
@@ -103,6 +103,8 @@ main(argc, argv)
        register int ch;
        register char *p;
 
+       /* revoke */
+       setegid(getgid());
        setgid(getgid());
 
        while ((ch = getopt(argc, argv, "s")) != EOF)
index dafbe8f..860e23a 100644 (file)
@@ -96,6 +96,8 @@ main(argc, argv)
        int ch, first;
        char line[256];
 
+       /* revoke */
+       setegid(getgid());
        setgid(getgid());
 
        lflag = 0;
index 0cffcd3..27215f0 100644 (file)
@@ -66,6 +66,8 @@ main(argc, argv)
        int ch;
        char buf[1024];
 
+       /* revoke */
+       setegid(getgid());
        setgid(getgid());
 
        while ((ch = getopt(argc, argv, "")) != EOF)
index 9e78e40..02a0462 100644 (file)
@@ -86,6 +86,8 @@ main()
        double days, today, tomorrow;
        int cnt;
 
+       /* revoke */
+       setegid(getgid());
        setgid(getgid());
 
        if (gettimeofday(&tp,&tzp)) {
index 3bb88b9..7a8db30 100644 (file)
@@ -58,6 +58,8 @@ main(argc, argv)
        register int c;
        register char *p;
 
+       /* revoke */
+       setegid(getgid());
        setgid(getgid());
 
        (void) puts("___________");
index 09fa701..18d673c 100644 (file)
@@ -120,6 +120,8 @@ main(argc, argv)
        int ch;
        char *p;
 
+       /* revoke */
+       setegid(getgid());
        setgid(getgid());
 
        while ((ch = getopt(argc, argv, "")) != EOF)
index 4aa34a2..dba39fd 100644 (file)
@@ -84,6 +84,8 @@ main(argc, argv)
        register int ch;
        char *indexfile;
 
+       /* revoke */
+       setegid(getgid());
        setgid(getgid());
 
        indexfile = _PATH_QUIZIDX;
index 340ed05..b8e2d03 100644 (file)
@@ -81,6 +81,8 @@ main(argc, argv)
        struct winsize ws;
 #endif
 
+       /* revoke */
+       setegid(getgid());
        setgid(getgid());
 
        if (!(term = getenv("TERM"))) {
index 5849588..4f8b258 100644 (file)
@@ -73,6 +73,8 @@ main(argc, argv)
        int ch, random_exit, selected, unbuffer_output;
        char *ep;
 
+       /* revoke */
+       setegid(getgid());
        setgid(getgid());
 
        random_exit = unbuffer_output = 0;
index 47a113a..c55725b 100644 (file)
@@ -62,6 +62,10 @@ char **av;
        extern int      Max_per_uid;
        void quit();
 
+       /* revoke */
+       setegid(getgid());
+       setgid(getgid());
+
        show_only = FALSE;
        if (ac > 1) {
                bad_arg = FALSE;
@@ -70,8 +74,6 @@ char  **av;
                                if (isdigit(av[0][0]))
                                        Max_per_uid = atoi(av[0]);
                                else {
-                                       setuid(getuid());
-                                       setgid(getgid());
                                        Scorefile = av[0];
 # ifdef        FANCY
                                        sp = rindex(Scorefile, '/');
index a09e900..bb0a1fa 100644 (file)
@@ -114,6 +114,9 @@ char **argv;
 
        rawscores = open(_PATH_RAWSCORES, O_RDWR|O_CREAT, 0644);
        logfile = fopen(_PATH_LOGFILE, "a");
+
+       /* revoke privs */
+       setegid(getgid());
        setgid(getgid());
 
        (void)time(&tv);
index a6a2e6d..83e0861 100644 (file)
@@ -75,11 +75,16 @@ main()
        struct  passwd  *p;
 
        fd = fopen(recfile, "r");
-       setgid(getgid());
+
        if (fd == NULL) {
                perror(recfile);
                exit(1);
        }
+
+       /* revoke privs */
+       setegid(getgid());
+       setgid(getgid());
+
        printf("Snake players scores to date\n");
        fread(&whoallbest, sizeof(short), 1, fd);
        fread(&allbest, sizeof(short), 1, fd);
index 495ed3c..2359434 100644 (file)
@@ -89,6 +89,8 @@ main(argc, argv)
 {
        char ch;
 
+       /* revoke */
+       setegid(getgid());
        setgid(getgid());
 
        if (argc == 2)
index 62d7ea9..4e42f1c 100644 (file)
@@ -211,6 +211,8 @@ main(argc, argv)
        struct winsize ws;
 #endif
 
+       /* revoke */
+       setegid(getgid());
        setgid(getgid());
 
        length = 16;
index ceff053..73eb8f7 100644 (file)
@@ -118,6 +118,8 @@ main(argc, argv)
        extern char *optarg;
        int c;
 
+       /* revoke */
+       setegid(getgid());
        setgid(getgid());
 
 #ifdef DEBUG