[openssl] master update

Dr. Paul Dale pauli at openssl.org
Wed May 1 06:06:22 UTC 2019


The branch master has been updated
       via  c43fa566ea3918ec3b468d214fd9eb80d79e0d0d (commit)
      from  39147079fc41b1af9a4e2974e89de20668e02aea (commit)


- Log -----------------------------------------------------------------
commit c43fa566ea3918ec3b468d214fd9eb80d79e0d0d
Author: Philip Prindeville <philipp at redfish-solutions.com>
Date:   Wed Aug 8 11:51:23 2018 -0600

    genrsa: introduce -verbose option to enable output
    
    Other commands like 'req' support -verbose, so why not genrsa?
    
    Signed-off-by: Philip Prindeville <philipp at redfish-solutions.com>
    
    Reviewed-by: Richard Levitte <levitte at openssl.org>
    Reviewed-by: Paul Dale <paul.dale at oracle.com>
    (Merged from https://github.com/openssl/openssl/pull/6897)

-----------------------------------------------------------------------

Summary of changes:
 apps/genrsa.c       | 18 ++++++++++++++----
 doc/man1/genrsa.pod |  5 +++++
 2 files changed, 19 insertions(+), 4 deletions(-)

diff --git a/apps/genrsa.c b/apps/genrsa.c
index 6477bcd..ebf9c55 100644
--- a/apps/genrsa.c
+++ b/apps/genrsa.c
@@ -30,12 +30,14 @@ NON_EMPTY_TRANSLATION_UNIT
 # define DEFBITS 2048
 # define DEFPRIMES 2
 
+static int verbose = 0;
+
 static int genrsa_cb(int p, int n, BN_GENCB *cb);
 
 typedef enum OPTION_choice {
     OPT_ERR = -1, OPT_EOF = 0, OPT_HELP,
     OPT_3, OPT_F4, OPT_ENGINE,
-    OPT_OUT, OPT_PASSOUT, OPT_CIPHER, OPT_PRIMES,
+    OPT_OUT, OPT_PASSOUT, OPT_CIPHER, OPT_PRIMES, OPT_VERBOSE,
     OPT_R_ENUM
 } OPTION_CHOICE;
 
@@ -52,6 +54,7 @@ const OPTIONS genrsa_options[] = {
     {"engine", OPT_ENGINE, 's', "Use engine, possibly a hardware device"},
 # endif
     {"primes", OPT_PRIMES, 'p', "Specify number of primes"},
+    {"verbose", OPT_VERBOSE, '-', "Verbose output"},
     {NULL}
 };
 
@@ -115,6 +118,9 @@ opthelp:
             if (!opt_int(opt_arg(), &primes))
                 goto end;
             break;
+        case OPT_VERBOSE:
+            verbose = 1;
+            break;
         }
     }
     argc = opt_num_rest();
@@ -143,8 +149,9 @@ opthelp:
     if (out == NULL)
         goto end;
 
-    BIO_printf(bio_err, "Generating RSA private key, %d bit long modulus (%d primes)\n",
-               num, primes);
+    if (verbose)
+        BIO_printf(bio_err, "Generating RSA private key, %d bit long modulus (%d primes)\n",
+                   num, primes);
     rsa = eng ? RSA_new_method(eng) : RSA_new();
     if (rsa == NULL)
         goto end;
@@ -156,7 +163,7 @@ opthelp:
     RSA_get0_key(rsa, NULL, &e, NULL);
     hexe = BN_bn2hex(e);
     dece = BN_bn2dec(e);
-    if (hexe && dece) {
+    if (hexe && dece && verbose) {
         BIO_printf(bio_err, "e is %s (0x%s)\n", dece, hexe);
     }
     OPENSSL_free(hexe);
@@ -186,6 +193,9 @@ static int genrsa_cb(int p, int n, BN_GENCB *cb)
 {
     char c = '*';
 
+    if (!verbose)
+        return 1;
+
     if (p == 0)
         c = '.';
     if (p == 1)
diff --git a/doc/man1/genrsa.pod b/doc/man1/genrsa.pod
index 36cc7d8..f8cbb17 100644
--- a/doc/man1/genrsa.pod
+++ b/doc/man1/genrsa.pod
@@ -29,6 +29,7 @@ B<openssl> B<genrsa>
 [B<-writerand file>]
 [B<-engine id>]
 [B<-primes num>]
+[B<-verbose>]
 [B<numbits>]
 
 =head1 DESCRIPTION
@@ -91,6 +92,10 @@ parameter must be a positive integer that is greater than 1 and less than 16.
 If B<num> is greater than 2, then the generated key is called a 'multi-prime'
 RSA key, which is defined in RFC 8017.
 
+=item B<-verbose>
+
+Print extra details about the operations being performed.
+
 =item B<numbits>
 
 The size of the private key to generate in bits. This must be the last option


More information about the openssl-commits mailing list