mirror of
git://git.gnupg.org/gnupg.git
synced 2025-01-10 13:04:23 +01:00
* keydb.c (keydb_add_resource): Don't assume that try_make_homedir
terminates but check again for the existence of the directory and continue then. * openfile.c (copy_options_file): Print a warning if the skeleton file has active options.
This commit is contained in:
parent
041d99295a
commit
e538b99549
@ -1,3 +1,11 @@
|
||||
2003-01-02 Werner Koch <wk@gnupg.org>
|
||||
|
||||
* keydb.c (keydb_add_resource): Don't assume that try_make_homedir
|
||||
terminates but check again for the existence of the directory and
|
||||
continue then.
|
||||
* openfile.c (copy_options_file): Print a warning if the skeleton
|
||||
file has active options.
|
||||
|
||||
2002-12-27 David Shaw <dshaw@jabberwocky.com>
|
||||
|
||||
* getkey.c (merge_selfsigs_main), main.h, sig-check.c
|
||||
|
23
g10/keydb.c
23
g10/keydb.c
@ -159,14 +159,21 @@ keydb_add_resource (const char *url, int force, int secret)
|
||||
last_slash_in_filename = strrchr (filename, DIRSEP_C);
|
||||
*last_slash_in_filename = 0;
|
||||
if (access(filename, F_OK))
|
||||
{ /* on the first time we try to create the default
|
||||
homedir and in this case the process will be
|
||||
terminated, so that on the next invocation it can
|
||||
read the options file in on startup */
|
||||
try_make_homedir (filename);
|
||||
rc = G10ERR_OPEN_FILE;
|
||||
*last_slash_in_filename = DIRSEP_C;
|
||||
goto leave;
|
||||
{ /* On the first time we try to create the default
|
||||
homedir and check again. */
|
||||
static int tried;
|
||||
|
||||
if (!tried)
|
||||
{
|
||||
tried = 1;
|
||||
try_make_homedir (filename);
|
||||
}
|
||||
if (access (filename, F_OK))
|
||||
{
|
||||
rc = G10ERR_OPEN_FILE;
|
||||
*last_slash_in_filename = DIRSEP_C;
|
||||
goto leave;
|
||||
}
|
||||
}
|
||||
*last_slash_in_filename = DIRSEP_C;
|
||||
|
||||
|
@ -301,6 +301,8 @@ copy_options_file( const char *destdir )
|
||||
int linefeeds=0;
|
||||
int c;
|
||||
mode_t oldmask;
|
||||
int esc = 0;
|
||||
int any_option = 0;
|
||||
|
||||
if( opt.dry_run )
|
||||
return;
|
||||
@ -329,12 +331,27 @@ copy_options_file( const char *destdir )
|
||||
if( c == '\n' )
|
||||
linefeeds++;
|
||||
}
|
||||
else
|
||||
else {
|
||||
putc( c, dst );
|
||||
if (c== '\n')
|
||||
esc = 1;
|
||||
else if (esc == 1) {
|
||||
if (c == ' ' || c == '\t')
|
||||
;
|
||||
else if (c == '#')
|
||||
esc = 2;
|
||||
else
|
||||
any_option = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
fclose( dst );
|
||||
fclose( src );
|
||||
log_info(_("new configuration file `%s' created\n"), fname );
|
||||
if (any_option)
|
||||
log_info (_("WARNING: options in `%s'"
|
||||
" are not yet active during this run\n"),
|
||||
fname);
|
||||
m_free(fname);
|
||||
}
|
||||
|
||||
@ -371,3 +388,5 @@ try_make_homedir( const char *fname )
|
||||
/* g10_exit(1); */
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user