aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--coreutils/install.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/coreutils/install.c b/coreutils/install.c
index 3128c5bd9..84e60f934 100644
--- a/coreutils/install.c
+++ b/coreutils/install.c
@@ -54,8 +54,14 @@ extern int install_main(int argc, char **argv)
int i;
/* -c exists for backwards compatability, its needed */
+ bb_opt_complementaly = "s~d:d~s";
flags = bb_getopt_ulflags(argc, argv, "cdpsg:m:o:", &gid_str, &mode_str, &uid_str); /* 'a' must be 2nd */
+ /* Check valid options were given */
+ if(flags & 0x80000000UL) {
+ bb_show_usage();
+ }
+
/* preserve access and modification time, this is GNU behaviour, BSD only preserves modification time */
if (flags & INSTALL_OPT_PRESERVE_TIME) {
copy_flags |= FILEUTILS_PRESERVE_STATUS;