aboutsummaryrefslogtreecommitdiffstats
path: root/g10/ringedit.c
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--g10/ringedit.c20
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;