[PATCH 1/2] gunzip: add support for long options
Denys Vlasenko
vda.linux at googlemail.com
Tue Oct 27 20:29:19 UTC 2015
Applied, thanks!
On Mon, Oct 26, 2015 at 10:42 PM, Aaro Koskinen <aaro.koskinen at iki.fi> wrote:
> Add support for long options.
>
> Signed-off-by: Aaro Koskinen <aaro.koskinen at iki.fi>
> ---
> archival/bbunzip.c | 20 ++++++++++++++++++++
> 1 file changed, 20 insertions(+)
>
> diff --git a/archival/bbunzip.c b/archival/bbunzip.c
> index 548882f..e10372e 100644
> --- a/archival/bbunzip.c
> +++ b/archival/bbunzip.c
> @@ -290,6 +290,13 @@ int uncompress_main(int argc UNUSED_PARAM, char **argv)
> //config: gunzip is used to decompress archives created by gzip.
> //config: You can use the `-t' option to test the integrity of
> //config: an archive, without decompressing it.
> +//config:
> +//config:config FEATURE_GUNZIP_LONG_OPTIONS
> +//config: bool "Enable long options"
> +//config: default y
> +//config: depends on GUNZIP && LONG_OPTS
> +//config: help
> +//config: Enable use of long options.
>
> //applet:IF_GUNZIP(APPLET(gunzip, BB_DIR_BIN, BB_SUID_DROP))
> //applet:IF_GUNZIP(APPLET_ODDNAME(zcat, gunzip, BB_DIR_BIN, BB_SUID_DROP, zcat))
> @@ -321,6 +328,16 @@ char* FAST_FUNC make_new_name_gunzip(char *filename, const char *expected_ext UN
> }
> return filename;
> }
> +
> +#if ENABLE_FEATURE_GUNZIP_LONG_OPTIONS
> +static const char gunzip_longopts[] ALIGN1 =
> + "stdout\0" No_argument "c"
> + "to-stdout\0" No_argument "c"
> + "force\0" No_argument "f"
> + "test\0" No_argument "t"
> + ;
> +#endif
> +
> /*
> * Linux kernel build uses gzip -d -n. We accept and ignore it.
> * Man page says:
> @@ -337,6 +354,9 @@ char* FAST_FUNC make_new_name_gunzip(char *filename, const char *expected_ext UN
> int gunzip_main(int argc, char **argv) MAIN_EXTERNALLY_VISIBLE;
> int gunzip_main(int argc UNUSED_PARAM, char **argv)
> {
> +#if ENABLE_FEATURE_GUNZIP_LONG_OPTIONS
> + applet_long_options = gunzip_longopts;
> +#endif
> getopt32(argv, "cfvqdtn");
> argv += optind;
>
> --
> 2.4.0
>
> _______________________________________________
> busybox mailing list
> busybox at busybox.net
> http://lists.busybox.net/mailman/listinfo/busybox
More information about the busybox
mailing list