diff options
Diffstat (limited to 'pith')
-rw-r--r-- | pith/pine.hlp | 2 | ||||
-rw-r--r-- | pith/readfile.c | 7 | ||||
-rw-r--r-- | pith/smime.c | 18 |
3 files changed, 11 insertions, 16 deletions
diff --git a/pith/pine.hlp b/pith/pine.hlp index a4f67718..cbc12f85 100644 --- a/pith/pine.hlp +++ b/pith/pine.hlp @@ -140,7 +140,7 @@ with help text for the config screen and the composer that didn't have any reasonable place to be called from. Dummy change to get revision in pine.hlp ============= h_revision ================= -Alpine Commit 174 2016-10-05 19:05:20 +Alpine Commit 175 2016-10-08 10:00:57 ============= h_news ================= <HTML> <HEAD> diff --git a/pith/readfile.c b/pith/readfile.c index e918ec99..c4b92b9b 100644 --- a/pith/readfile.c +++ b/pith/readfile.c @@ -78,7 +78,6 @@ our_copy(char *to_file, char *from_file) { STORE_S *in_cert, *out_cert; unsigned char c; - long int size = 0; in_cert = so_get(FileStar, from_file, READ_ACCESS | READ_FROM_LOCALE); if (in_cert == NULL) @@ -93,11 +92,9 @@ our_copy(char *to_file, char *from_file) so_seek(out_cert, 0L, 0); so_truncate(out_cert, 0); - while(so_readc(&c, in_cert) > 0){ + while(so_readc(&c, in_cert) > 0) so_writec(c, out_cert); -// size++; - } -// so_truncate(out_cert, size); + so_give(&in_cert); so_give(&out_cert); diff --git a/pith/smime.c b/pith/smime.c index d219ba03..43e7375b 100644 --- a/pith/smime.c +++ b/pith/smime.c @@ -225,7 +225,7 @@ setup_pwdcert(void **pwdcert) EVP_PKEY *pkey = NULL; X509 *pcert = NULL; PERSONAL_CERT *pc, *pc2 = NULL; - static int was_here = 0, setup_certdir = 0; + static int was_here = 0; if(pwdcert == NULL || was_here == 1) return -1; @@ -262,8 +262,14 @@ setup_pwdcert(void **pwdcert) } if(ps_global->pwdcertdir == NULL){ /* save the result of pwdcertdir */ - setup_certdir = 1; ps_global->pwdcertdir = cpystr(pathdir); + /* if the user gave a pwdcertdir and there is nothing there, do not + * continue. Let the user initialize on their own this directory. + */ + if(certfile == NULL || keyfile == NULL){ + was_here = 0; + return -5; + } } if(certfile && keyfile){ @@ -278,14 +284,6 @@ setup_pwdcert(void **pwdcert) return 0; } - /* if the user gave a pwdcertdir and there is nothing there, do not - * continue. Let the user initialize on their own this directory. - */ - if(setup_certdir){ /* if we are here, pwdcertdir failed */ - was_here = 0; - return -5; - } - /* look to see if there are any certificates lying around, first * we try to load ps_global->smime to see if that has information * we can use. If we are the process filling the smime structure |