Hello,

in openssl 0.9.3a the option handling in gendsa.c is incorrect. The
options -des, -3des and -idea are always rejected because the code to
check them was inserted a bit too late (after line 114).

I suggest to insert this code part after line 108. My solution looks like
this:

     96         for (;;)
     97                 {
     98                 if (argc <= 0) break;
     99                 if (strcmp(*argv,"-out") == 0)
    100                         {
    101                         if (--argc < 1) goto bad;
    102                         outfile= *(++argv);
    103                         }
    104                 else if (strcmp(*argv,"-rand") == 0)
    105                         {
    106                         if (--argc < 1) goto bad;
    107                         inrand= *(++argv);
    108                         }
    109 #ifndef NO_DES
    110                 else if (strcmp(*argv,"-des") == 0)
    111                         enc=EVP_des_cbc();
    112                 else if (strcmp(*argv,"-des3") == 0)
    113                         enc=EVP_des_ede3_cbc();
    114 #endif
    115 #ifndef NO_IDEA
    116                 else if (strcmp(*argv,"-idea") == 0)
    117                         enc=EVP_idea_cbc();
    118 #endif
    119                 else if (strcmp(*argv,"-") == 0)
    120                         goto bad;
    121                 else if (dsaparams == NULL)
    122                         {
    123                         dsaparams= *argv;
    124                         }
    125                 else
    126                         goto bad;
    127                 argv++;
    128                 argc--;
    129                 }


Cheers,
Holger
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [EMAIL PROTECTED]
Automated List Manager                           [EMAIL PROTECTED]

Reply via email to