On Sat, Apr 23, 2022 at 01:45:12PM +0900, Kinichiro Inoguchi wrote:

> I would like to do some clean up for openssl(1) pkcs12.
> This diff changes pointer value checking to explicit comparison with NULL,
> and no functional changes here.
> This works fine for me on my local pc.
> 
> ok?

ok.

Two comments for a next diff below.

> 
> Index: pkcs12.c
> ===================================================================
> RCS file: /cvs/src/usr.bin/openssl/pkcs12.c,v
> retrieving revision 1.18
> diff -u -p -u -p -r1.18 pkcs12.c
> --- pkcs12.c  28 Mar 2022 11:02:49 -0000      1.18
> +++ pkcs12.c  23 Apr 2022 04:08:55 -0000
> @@ -556,7 +556,7 @@ pkcs12_main(int argc, char **argv)
>               goto end;
>       }
>  
> -     if (pkcs12_config.passarg) {
> +     if (pkcs12_config.passarg != NULL) {
>               if (pkcs12_config.export_cert)
>                       pkcs12_config.passargout = pkcs12_config.passarg;
>               else
> @@ -567,13 +567,13 @@ pkcs12_main(int argc, char **argv)
>               BIO_printf(bio_err, "Error getting passwords\n");
>               goto end;
>       }
> -     if (!cpass) {
> +     if (cpass == NULL) {
>               if (pkcs12_config.export_cert)
>                       cpass = passout;
>               else
>                       cpass = passin;
>       }
> -     if (cpass) {
> +     if (cpass != NULL) {
>               mpass = cpass;
>               pkcs12_config.noprompt = 1;
>       } else {
> @@ -581,22 +581,22 @@ pkcs12_main(int argc, char **argv)
>               mpass = macpass;
>       }
>  
> -     if (!pkcs12_config.infile)
> +     if (pkcs12_config.infile == NULL)
>               in = BIO_new_fp(stdin, BIO_NOCLOSE);
>       else
>               in = BIO_new_file(pkcs12_config.infile, "rb");
> -     if (!in) {
> +     if (in == NULL) {
>               BIO_printf(bio_err, "Error opening input file %s\n",
>                   pkcs12_config.infile ? pkcs12_config.infile : "<stdin>");
>               perror(pkcs12_config.infile);
>               goto end;
>       }
>  
> -     if (!pkcs12_config.outfile) {
> +     if (pkcs12_config.outfile == NULL) {
>               out = BIO_new_fp(stdout, BIO_NOCLOSE);
>       } else
>               out = BIO_new_file(pkcs12_config.outfile, "wb");
> -     if (!out) {
> +     if (out == NULL) {
>               BIO_printf(bio_err, "Error opening output file %s\n",
>                   pkcs12_config.outfile ? pkcs12_config.outfile : "<stdout>");
>               perror(pkcs12_config.outfile);
> @@ -637,10 +637,10 @@ pkcs12_main(int argc, char **argv)
>               if (!(pkcs12_config.options & NOCERTS)) {
>                       certs = load_certs(bio_err, pkcs12_config.infile,
>                           FORMAT_PEM, NULL, "certificates");
> -                     if (!certs)
> +                     if (certs == NULL)
>                               goto export_end;
>  
> -                     if (key) {
> +                     if (key != NULL) {
>                               /* Look for matching private key */
>                               for (i = 0; i < sk_X509_num(certs); i++) {
>                                       x = sk_X509_value(certs, i);
> @@ -654,7 +654,7 @@ pkcs12_main(int argc, char **argv)
>                                               break;
>                                       }
>                               }
> -                             if (!ucert) {
> +                             if (ucert == NULL) {
>                                       BIO_printf(bio_err,
>                                           "No certificate matches private 
> key\n");
>                                       goto export_end;
> @@ -663,11 +663,11 @@ pkcs12_main(int argc, char **argv)
>               }
>  
>               /* Add any more certificates asked for */
> -             if (pkcs12_config.certfile) {
> +             if (pkcs12_config.certfile != NULL) {
>                       STACK_OF(X509) *morecerts = NULL;
> -                     if (!(morecerts = load_certs(bio_err,
> +                     if ((morecerts = load_certs(bio_err,
>                           pkcs12_config.certfile, FORMAT_PEM, NULL,
> -                         "certificates from certfile")))
> +                         "certificates from certfile")) == NULL)
>                               goto export_end;
>                       while (sk_X509_num(morecerts) > 0)
>                               sk_X509_push(certs, sk_X509_shift(morecerts));
> @@ -680,7 +680,7 @@ pkcs12_main(int argc, char **argv)
>                       int vret;
>                       STACK_OF(X509) *chain2;
>                       X509_STORE *store = X509_STORE_new();
> -                     if (!store) {
> +                     if (store == NULL) {
>                               BIO_printf(bio_err,
>                                   "Memory allocation error\n");
>                               goto export_end;
> @@ -720,12 +720,12 @@ pkcs12_main(int argc, char **argv)
>                       X509_alias_set1(sk_X509_value(certs, i), catmp, -1);
>               }
>  
> -             if (pkcs12_config.csp_name && key)
> +             if (pkcs12_config.csp_name != NULL && key != NULL)
>                       EVP_PKEY_add1_attr_by_NID(key, NID_ms_csp_name,
>                           MBSTRING_ASC,
>                           (unsigned char *) pkcs12_config.csp_name, -1);
>  
> -             if (pkcs12_config.add_lmk && key)
> +             if (pkcs12_config.add_lmk && key != NULL)
>                       EVP_PKEY_add1_attr_by_NID(key, NID_LocalKeySet, 0, NULL,
>                           -1);
>  
> @@ -743,13 +743,13 @@ pkcs12_main(int argc, char **argv)
>                   certs, pkcs12_config.key_pbe, pkcs12_config.cert_pbe,
>                   pkcs12_config.iter, -1, pkcs12_config.keytype);
>  
> -             if (!p12) {
> +             if (p12 == NULL) {
>                       ERR_print_errors(bio_err);
>                       goto export_end;
>               }
> -             if (pkcs12_config.macalg) {
> +             if (pkcs12_config.macalg != NULL) {
>                       macmd = EVP_get_digestbyname(pkcs12_config.macalg);
> -                     if (!macmd) {
> +                     if (macmd == NULL) {
>                               BIO_printf(bio_err,
>                                   "Unknown digest algorithm %s\n",
>                                   pkcs12_config.macalg);
> @@ -771,7 +771,7 @@ pkcs12_main(int argc, char **argv)
>               goto end;
>  
>       }
> -     if (!(p12 = d2i_PKCS12_bio(in, NULL))) {
> +     if ((p12 = d2i_PKCS12_bio(in, NULL)) == NULL) {
>               ERR_print_errors(bio_err);
>               goto end;
>       }
> @@ -784,7 +784,7 @@ pkcs12_main(int argc, char **argv)
>       if (!pkcs12_config.twopass)
>               strlcpy(macpass, pass, sizeof macpass);
>  
> -     if ((pkcs12_config.options & INFO) && p12->mac)
> +     if ((pkcs12_config.options & INFO) && p12->mac != NULL)

I would also compare the first argument against 0:

        if ((pkcs12_config.options & INFO) != 0 && p12->mac != NULL)

>               BIO_printf(bio_err, "MAC Iteration %ld\n",
>                   p12->mac->iter ? ASN1_INTEGER_get(p12->mac->iter) : 1);
>       if (pkcs12_config.macver) {
> @@ -829,7 +829,7 @@ dump_certs_keys_p12(BIO *out, PKCS12 *p1
>       int ret = 0;
>       PKCS7 *p7;
>  
> -     if (!(asafes = PKCS12_unpack_authsafes(p12)))
> +     if ((asafes = PKCS12_unpack_authsafes(p12)) == NULL)
>               return 0;
>       for (i = 0; i < sk_PKCS7_num(asafes); i++) {
>               p7 = sk_PKCS7_value(asafes, i);
> @@ -847,7 +847,7 @@ dump_certs_keys_p12(BIO *out, PKCS12 *p1
>                       bags = PKCS12_unpack_p7encdata(p7, pass, passlen);
>               } else
>                       continue;
> -             if (!bags)
> +             if (bags == NULL)
>                       goto err;
>               if (!dump_certs_pkeys_bags(out, bags, pass, passlen,
>                       options, pempass)) {
> @@ -915,9 +915,9 @@ dump_certs_pkeys_bag(BIO *out, PKCS12_SA
>               if (options & NOKEYS)
>                       return 1;
>               print_attribs(out, bag->attrib, "Bag Attributes");
> -             if (!(p8 = PKCS12_decrypt_skey(bag, pass, passlen)))
> +             if ((p8 = PKCS12_decrypt_skey(bag, pass, passlen)) == NULL)
>                       return 0;
> -             if (!(pkey = EVP_PKCS82PKEY(p8))) {
> +             if ((pkey = EVP_PKCS82PKEY(p8)) == NULL) {
>                       PKCS8_PRIV_KEY_INFO_free(p8);
>                       return 0;
>               }
> @@ -933,7 +933,7 @@ dump_certs_pkeys_bag(BIO *out, PKCS12_SA
>                       BIO_printf(bio_err, "Certificate bag\n");
>               if (options & NOCERTS)
>                       return 1;
> -             if (PKCS12_get_attr(bag, NID_localKeyID)) {
> +             if (PKCS12_get_attr(bag, NID_localKeyID) != NULL) {
>                       if (options & CACERTS)
>                               return 1;
>               } else if (options & CLCERTS)
> @@ -941,7 +941,7 @@ dump_certs_pkeys_bag(BIO *out, PKCS12_SA
>               print_attribs(out, bag->attrib, "Bag Attributes");
>               if (OBJ_obj2nid(bag->value.bag->type) != NID_x509Certificate)
>                       return 1;
> -             if (!(x509 = PKCS12_certbag2x509(bag)))
> +             if ((x509 = PKCS12_certbag2x509(bag)) == NULL)
>                       return 0;
>               dump_cert_text(out, x509);
>               PEM_write_bio_X509(out, x509);
> @@ -999,7 +999,7 @@ alg_print(BIO *x, const X509_ALGOR *alg)
>  
>       p = alg->parameter->value.sequence->data;
>       pbe = d2i_PBEPARAM(NULL, &p, alg->parameter->value.sequence->length);
> -     if (!pbe)
> +     if (pbe == NULL)
>               return 1;
>       BIO_printf(bio_err, "%s, Iteration %ld\n",
>           OBJ_nid2ln(OBJ_obj2nid(alg->algorithm)),
> @@ -1050,7 +1050,7 @@ print_attribs(BIO *out, const STACK_OF(X
>       ASN1_TYPE *av;
>       int i, j, attr_nid;
>  
> -     if (!attrlst) {
> +     if (attrlst == NULL) {
>               BIO_printf(out, "%s: <No Attributes>\n", name);
>               return 1;
>       }
> @@ -1095,7 +1095,7 @@ hex_prin(BIO *out, unsigned char *buf, i
>  static int
>  set_pbe(BIO *err, int *ppbe, const char *str)
>  {
> -     if (!str)
> +     if (str == NULL)
>               return 0;
>       if (!strcmp(str, "NONE")) {

        if (strcmp(str, "NONE") != 0) {

>               *ppbe = -1;
> 

Reply via email to