mirror of
git://git.gnupg.org/gnupg.git
synced 2025-04-17 15:44:34 +02:00
gpgtar: Make option -C work for archive creation.
* tools/gpgtar-create.c (gpgtar_create): Switch to the -C directory. -- The -C option is pretty useful given that pattern are always relative to the current directory. In contrast to GNU tar, the switching is done only once. Signed-off-by: Werner Koch <wk@gnupg.org> (cherry picked from commit b3a7a5140784b5a015107b5c5c73b15ae44e71dc)
This commit is contained in:
parent
2e4151a341
commit
5d73c231e4
@ -2014,10 +2014,11 @@ Do not actually output the extracted files.
|
|||||||
@item --directory @var{dir}
|
@item --directory @var{dir}
|
||||||
@itemx -C @var{dir}
|
@itemx -C @var{dir}
|
||||||
@opindex directory
|
@opindex directory
|
||||||
Extract the files into the directory @var{dir}. The
|
Extract the files into the directory @var{dir}. The default is to
|
||||||
default is to take the directory name from
|
take the directory name from the input filename. If no input filename
|
||||||
the input filename. If no input filename is known a directory named
|
is known a directory named @file{GPGARCH} is used. For tarball
|
||||||
@file{GPGARCH} is used.
|
creation, switch to directory @var{dir} before performing any
|
||||||
|
operations.
|
||||||
|
|
||||||
@item --files-from @var{file}
|
@item --files-from @var{file}
|
||||||
@itemx -T @var{file}
|
@itemx -T @var{file}
|
||||||
|
@ -762,6 +762,14 @@ gpgtar_create (char **inpattern, int encrypt, int sign)
|
|||||||
memset (scanctrl, 0, sizeof *scanctrl);
|
memset (scanctrl, 0, sizeof *scanctrl);
|
||||||
scanctrl->flist_tail = &scanctrl->flist;
|
scanctrl->flist_tail = &scanctrl->flist;
|
||||||
|
|
||||||
|
if (opt.directory && gnupg_chdir (opt.directory))
|
||||||
|
{
|
||||||
|
err = gpg_error_from_syserror ();
|
||||||
|
log_error ("chdir to '%s' failed: %s\n",
|
||||||
|
opt.directory, gpg_strerror (err));
|
||||||
|
return err;
|
||||||
|
}
|
||||||
|
|
||||||
while (!eof_seen)
|
while (!eof_seen)
|
||||||
{
|
{
|
||||||
char *pat, *p;
|
char *pat, *p;
|
||||||
|
@ -112,7 +112,7 @@ static ARGPARSE_OPTS opts[] = {
|
|||||||
ARGPARSE_group (302, N_("@\nTar options:\n ")),
|
ARGPARSE_group (302, N_("@\nTar options:\n ")),
|
||||||
|
|
||||||
ARGPARSE_s_s (oDirectory, "directory",
|
ARGPARSE_s_s (oDirectory, "directory",
|
||||||
N_("|DIRECTORY|extract files into DIRECTORY")),
|
N_("|DIRECTORY|change to DIRECTORY first")),
|
||||||
ARGPARSE_s_s (oFilesFrom, "files-from",
|
ARGPARSE_s_s (oFilesFrom, "files-from",
|
||||||
N_("|FILE|get names to create from FILE")),
|
N_("|FILE|get names to create from FILE")),
|
||||||
ARGPARSE_s_n (oNull, "null", N_("-T reads null-terminated names")),
|
ARGPARSE_s_n (oNull, "null", N_("-T reads null-terminated names")),
|
||||||
|
Loading…
x
Reference in New Issue
Block a user