summaryrefslogtreecommitdiffhomepage
path: root/archival
diff options
context:
space:
mode:
author"Vladimir N. Oleynik" <dzo@simtreas.ru>2005-09-05 14:46:07 +0000
committer"Vladimir N. Oleynik" <dzo@simtreas.ru>2005-09-05 14:46:07 +0000
commit27421a1878847389391c1a43420baaccf57057a7 (patch)
tree73e57d430a5828d242b78deb0a591a99f0df44a9 /archival
parentbef14d7a878049a01f1fb9b412611a2d64c2b154 (diff)
1) bb_opt_complementaly -> bb_opt_complementally
2) better support long options 3) new flag '!' for bb_opt_complementally: produce bb_show_usage() if BB_GETOPT_ERROR internally
Diffstat (limited to 'archival')
-rw-r--r--archival/ar.c4
-rw-r--r--archival/dpkg_deb.c4
-rw-r--r--archival/tar.c6
3 files changed, 5 insertions, 9 deletions
diff --git a/archival/ar.c b/archival/ar.c
index 8326aa6de..21096d712 100644
--- a/archival/ar.c
+++ b/archival/ar.c
@@ -67,10 +67,10 @@ extern int ar_main(int argc, char **argv)
archive_handle = init_handle();
- bb_opt_complementaly = "p~tx:t~px:x~pt";
+ bb_opt_complementally = "!p~tx:t~px:x~pt";
opt = bb_getopt_ulflags(argc, argv, "ptxovcr");
- if ((opt & BB_GETOPT_ERROR) || (opt == 0) || (optind == argc)) {
+ if ((opt == 0) || (optind == argc)) {
bb_show_usage();
}
diff --git a/archival/dpkg_deb.c b/archival/dpkg_deb.c
index b95ec2d6e..6c665e57a 100644
--- a/archival/dpkg_deb.c
+++ b/archival/dpkg_deb.c
@@ -56,7 +56,7 @@ extern int dpkg_deb_main(int argc, char **argv)
control_tar_llist = llist_add_to(control_tar_llist, "control.tar.bz2");
#endif
- bb_opt_complementaly = "c~efXx:e~cfXx:f~ceXx:X~cefx:x~cefX";
+ bb_opt_complementally = "!c~efXx:e~cfXx:f~ceXx:X~cefx:x~cefX";
opt = bb_getopt_ulflags(argc, argv, "cefXx");
if (opt & DPKG_DEB_OPT_CONTENTS) {
@@ -88,7 +88,7 @@ extern int dpkg_deb_main(int argc, char **argv)
argcount = 2;
}
- if ((optind + argcount != argc) || (opt & BB_GETOPT_ERROR)) {
+ if ((optind + argcount) != argc) {
bb_show_usage();
}
diff --git a/archival/tar.c b/archival/tar.c
index 585f0629f..a2623863d 100644
--- a/archival/tar.c
+++ b/archival/tar.c
@@ -706,7 +706,7 @@ int tar_main(int argc, char **argv)
tar_handle = init_handle();
tar_handle->flags = ARCHIVE_CREATE_LEADING_DIRS | ARCHIVE_PRESERVE_DATE | ARCHIVE_EXTRACT_UNCONDITIONAL;
- bb_opt_complementaly = "c~tx:t~cx:x~ct:X*:T*";
+ bb_opt_complementally = "!c~tx:t~cx:x~ct:X*:T*";
#ifdef CONFIG_FEATURE_TAR_LONG_OPTIONS
bb_applet_long_options = tar_long_options;
#endif
@@ -720,10 +720,6 @@ int tar_main(int argc, char **argv)
#endif
);
- /* Check one and only one context option was given */
- if(opt & BB_GETOPT_ERROR) {
- bb_show_usage();
- }
#ifdef CONFIG_FEATURE_TAR_CREATE
ctx_flag = opt & (CTX_CREATE | CTX_TEST | CTX_EXTRACT);
#else