From: Ivo Timmermans Date: Thu, 30 Nov 2000 22:33:16 +0000 (+0000) Subject: Better error checking when reading the RSA private key. X-Git-Tag: import-tinc-1.1~785^2~645 X-Git-Url: https://git.meshlink.io/?a=commitdiff_plain;h=2293304748f7e4e9a18ee848b8264bdecebae37f;p=meshlink Better error checking when reading the RSA private key. --- diff --git a/src/net.c b/src/net.c index 3dd99742..538584dd 100644 --- a/src/net.c +++ b/src/net.c @@ -17,7 +17,7 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id: net.c,v 1.35.4.83 2000/11/30 20:08:41 zarq Exp $ + $Id: net.c,v 1.35.4.84 2000/11/30 22:33:16 zarq Exp $ */ #include "config.h" @@ -698,11 +698,13 @@ int read_rsa_private_key(RSA **key, const char *file) if((fp = fopen(file, "r")) == NULL) { - syslog(LOG_ERR, _("Error reading file `%s': %m"), + syslog(LOG_ERR, _("Error reading RSA key file `%s': %m"), file); return -1; } - PEM_read_RSAPrivateKey(fp, key, NULL, NULL); + if(PEM_read_RSAPrivateKey(fp, key, NULL, NULL) == NULL) + return -1; + return 0; } int read_rsa_keys(void) @@ -716,7 +718,14 @@ int read_rsa_keys(void) } myself->rsa_key = RSA_new(); - return read_rsa_private_key(&(myself->rsa_key), cfg->data.ptr); + + if(read_rsa_private_key(&(myself->rsa_key), cfg->data.ptr) < 0) + { + syslog(LOG_ERR, _("Reading RSA private key file `%s' failed: %m"), + cfg->data.ptr); + return -1; + } + return 0; } /*