summaryrefslogtreecommitdiff
path: root/pith/smkeys.c
diff options
context:
space:
mode:
Diffstat (limited to 'pith/smkeys.c')
-rw-r--r--pith/smkeys.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/pith/smkeys.c b/pith/smkeys.c
index 7e992a53..d84aa222 100644
--- a/pith/smkeys.c
+++ b/pith/smkeys.c
@@ -755,11 +755,17 @@ save_cert_for(char *email, X509 *cert, WhichCerts ctype)
err++;
if(!err && ret_dir){
- if(strlen(path) + strlen(tempfile) - strlen(ret_dir) + 1 < sizeof(path))
- snprintf(fpath, sizeof(fpath), "%s%c%s",
+ if(IS_REMOTE(upath)){
+ strncpy(fpath, rd->lf, sizeof(fpath));
+ fpath[sizeof(fpath)-1] = '\0';
+ }
+ else{
+ if(strlen(path) + strlen(tempfile) - strlen(ret_dir) + 1 < sizeof(path))
+ snprintf(fpath, sizeof(fpath), "%s%c%s",
path, tempfile[strlen(ret_dir)], tempfile + strlen(ret_dir) + 1);
- else
- err++;
+ else
+ err++;
+ }
}
else err++;