Restrict octal perms to <= 07777. Cosmetic error message change.
authorManuel Novoa III <mjn3@codepoet.org>
Wed, 19 Mar 2003 18:09:03 +0000 (18:09 -0000)
committerManuel Novoa III <mjn3@codepoet.org>
Wed, 19 Mar 2003 18:09:03 +0000 (18:09 -0000)
coreutils/chmod.c
libbb/parse_mode.c

index 28c98552a33091f690ff505b320a6017a809abb0..a9758d58be78d917f771074fa40f54654a7f3c69 100644 (file)
@@ -38,7 +38,7 @@
 static int fileAction(const char *fileName, struct stat *statbuf, void* junk)
 {
        if (!bb_parse_mode((char *)junk, &(statbuf->st_mode)))
-               bb_error_msg_and_die( "unknown mode: %s", (char *)junk);
+               bb_error_msg_and_die( "invalid mode: %s", (char *)junk);
        if (chmod(fileName, statbuf->st_mode) == 0)
                return (TRUE);
        bb_perror_msg("%s", fileName);  /* Avoid multibyte problems. */
index 49573dfbb8ef31526a100af51ec724501b864d75..7132c76ef9ba44ae186b2f4b3c7f0071664bd435 100644 (file)
@@ -65,7 +65,7 @@ extern int bb_parse_mode(const char *s, mode_t *current_mode)
                char *e;
 
                tmp = strtol(s, &e, 8);
-               if (*e || (tmp > 0xffffU)) { /* Check range and trailing chars. */
+               if (*e || (tmp > 07777U)) { /* Check range and trailing chars. */
                        return 0;
                }
                *current_mode = tmp;