diff options
Diffstat (limited to '')
-rw-r--r-- | g10/ringedit.c | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/g10/ringedit.c b/g10/ringedit.c index b61aa9b94..30e30cefe 100644 --- a/g10/ringedit.c +++ b/g10/ringedit.c @@ -318,8 +318,19 @@ add_keyblock_resource( const char *url, int force, int secret ) rc = G10ERR_OPEN_FILE; goto leave; } - else + else { + #ifndef HAVE_DOSISH_SYSTEM + if( secret ) { + if( chmod( filename, S_IRUSR | S_IWUSR ) ) { + log_error("%s: chmod failed: %s\n", + filename, strerror(errno) ); + rc = G10ERR_WRITE_FILE; + goto leave; + } + } + #endif log_info(_("%s: keyring created\n"), filename ); + } } #if HAVE_DOSISH_SYSTEM || 1 iobuf_close( iobuf ); @@ -350,6 +361,13 @@ add_keyblock_resource( const char *url, int force, int secret ) goto leave; } + #ifndef HAVE_DOSISH_SYSTEM + #if 0 /* fixme: check directory permissions and print a warning */ + if( secret ) { + } + #endif + #endif + /* fixme: avoid duplicate resources */ resource_table[i].used = 1; resource_table[i].secret = !!secret; |