Restrict octal perms to <= 07777. Cosmetic error message change.
No binary (build failed)
—
(log yok)
| @@ -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. */ | |
| @@ -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; | |