From: Vsevolod Stakhov Date: Fri, 7 Apr 2023 14:59:46 +0000 (+0100) Subject: [Minor] Allow to save private key in output X-Git-Tag: 3.6~167 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=553d2c2f60bce6265868c147b59abb6fd4d65f65;p=thirdparty%2Frspamd.git [Minor] Allow to save private key in output --- diff --git a/src/lua/lua_rsa.c b/src/lua/lua_rsa.c index 85d5f87458..571f62646e 100644 --- a/src/lua/lua_rsa.c +++ b/src/lua/lua_rsa.c @@ -177,7 +177,12 @@ lua_rsa_privkey_save (lua_State *L) } if (rsa != NULL && filename != NULL) { - f = fopen (filename, "wb"); + if (strcmp (filename, "-") == 0) { + f = stdout; + } + else { + f = fopen(filename, "wb"); + } if (f == NULL) { msg_err ("cannot save privkey to file: %s, %s", filename, @@ -185,8 +190,10 @@ lua_rsa_privkey_save (lua_State *L) lua_pushboolean (L, FALSE); } else { - /* Set secure permissions for the private key file */ - chmod (filename, S_IRUSR | S_IWUSR); + if (f != stdout) { + /* Set secure permissions for the private key file */ + chmod(filename, S_IRUSR | S_IWUSR); + } if (strcmp (type, "der") == 0) { ret = i2d_RSAPrivateKey_fp (f, rsa);