]> granicus.if.org Git - python/commitdiff
include <string.h> to get prototype for strcmp
authorJeremy Hylton <jeremy@alum.mit.edu>
Thu, 10 Sep 1998 18:10:59 +0000 (18:10 +0000)
committerJeremy Hylton <jeremy@alum.mit.edu>
Thu, 10 Sep 1998 18:10:59 +0000 (18:10 +0000)
change error messages to be a little more straightforward

change definition of FULL_PATH so that an error is raised if the
setuid wrapper is used un-edited

Misc/setuid-prog.c

index b49438a1c6705f80fe70fb10d97a94d73291bbbf..ddc2f64076633d501aea5fb8b230267972c36a9b 100644 (file)
 #include <stdio.h>
 #include <sys/types.h>
 #include <sys/stat.h>
+#include <string.h>
 
 /* CONFIGURATION SECTION */
 
 #ifndef FULL_PATH      /* so that this can be specified from the Makefile */
-#define FULL_PATH      "/full/path/of/script"
+/* Uncomment out the following line:
+#define FULL_PATH      "/full/path/of/script" 
+* Then comment out the #error line. */
+#error "Must define SCRIPTPATH in the Makefile"
 #endif
 #ifndef UMASK
 #define UMASK          077
@@ -133,9 +137,8 @@ main(int argc, char **argv)
        if (FULL_PATH[0] != '/') {
                fprintf(stderr, "%s: %s is not a full path name\n", argv[0],
                        FULL_PATH);
-               fprintf(stderr, "Tell this program's maintainer that s\\he ");
-               fprintf(stderr, "fouled up some simple rules\n");
-               fprintf(stderr, "pretty badly.\n");
+               fprintf(stderr, "You can only use this wrapper if you\n");
+               fprintf(stderr, "compile it with an absolute path.\n");
                exit(1);
        }
 
@@ -151,9 +154,8 @@ main(int argc, char **argv)
        if (statb.st_uid != 0 && statb.st_uid != euid) {
                fprintf(stderr, "%s: %s has the wrong owner\n", argv[0],
                        FULL_PATH);
-               fprintf(stderr, "Tell this program's maintainer that the ");
-               fprintf(stderr, "script should be owned by him/herself or the\n");
-               fprintf(stderr, "superuser.\n");
+               fprintf(stderr, "The script should be owned by root,\n");
+               fprintf(stderr, "and shouldn't be writeable by anyone.\n");
                exit(1);
        }