diff options
| author | Enji Cooper <ngie@FreeBSD.org> | 2025-03-06 17:49:50 +0000 | 
|---|---|---|
| committer | Enji Cooper <ngie@FreeBSD.org> | 2025-03-06 17:49:50 +0000 | 
| commit | 1c34280346af8284acdc0eae39496811d37df25d (patch) | |
| tree | dbe4218057c550b3be955f331fc1198c6cab5f3f /apps/smime.c | |
| parent | 108164cf95d9594884c2dcccba2691335e6f221b (diff) | |
Diffstat (limited to 'apps/smime.c')
| -rw-r--r-- | apps/smime.c | 20 | 
1 files changed, 13 insertions, 7 deletions
diff --git a/apps/smime.c b/apps/smime.c index 651294e46daa..790a8d06ad0c 100644 --- a/apps/smime.c +++ b/apps/smime.c @@ -1,5 +1,5 @@  /* - * Copyright 1999-2024 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1999-2025 The OpenSSL Project Authors. All Rights Reserved.   *   * Licensed under the Apache License 2.0 (the "License").  You may not use   * this file except in compliance with the License.  You can obtain a copy @@ -279,13 +279,15 @@ int smime_main(int argc, char **argv)                  if (sksigners == NULL                      && (sksigners = sk_OPENSSL_STRING_new_null()) == NULL)                      goto end; -                sk_OPENSSL_STRING_push(sksigners, signerfile); +                if (sk_OPENSSL_STRING_push(sksigners, signerfile) <= 0) +                    goto end;                  if (keyfile == NULL)                      keyfile = signerfile;                  if (skkeys == NULL                      && (skkeys = sk_OPENSSL_STRING_new_null()) == NULL)                      goto end; -                sk_OPENSSL_STRING_push(skkeys, keyfile); +                if (sk_OPENSSL_STRING_push(skkeys, keyfile) <= 0) +                    goto end;                  keyfile = NULL;              }              signerfile = opt_arg(); @@ -310,12 +312,14 @@ int smime_main(int argc, char **argv)                  if (sksigners == NULL                      && (sksigners = sk_OPENSSL_STRING_new_null()) == NULL)                      goto end; -                sk_OPENSSL_STRING_push(sksigners, signerfile); +                if (sk_OPENSSL_STRING_push(sksigners, signerfile) <= 0) +                    goto end;                  signerfile = NULL;                  if (skkeys == NULL                      && (skkeys = sk_OPENSSL_STRING_new_null()) == NULL)                      goto end; -                sk_OPENSSL_STRING_push(skkeys, keyfile); +                if (sk_OPENSSL_STRING_push(skkeys, keyfile) <= 0) +                    goto end;              }              keyfile = opt_arg();              break; @@ -390,12 +394,14 @@ int smime_main(int argc, char **argv)              if (sksigners == NULL                  && (sksigners = sk_OPENSSL_STRING_new_null()) == NULL)                  goto end; -            sk_OPENSSL_STRING_push(sksigners, signerfile); +            if (sk_OPENSSL_STRING_push(sksigners, signerfile) <= 0) +                goto end;              if (!skkeys && (skkeys = sk_OPENSSL_STRING_new_null()) == NULL)                  goto end;              if (!keyfile)                  keyfile = signerfile; -            sk_OPENSSL_STRING_push(skkeys, keyfile); +            if (sk_OPENSSL_STRING_push(skkeys, keyfile) <= 0) +                goto end;          }          if (sksigners == NULL) {              BIO_printf(bio_err, "No signer certificate specified\n");  | 
