[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[openssl-gost] [gost-engine/engine] 5dc8f9: gost_ec_keyx: Check CTX data before it's really used



  Branch: refs/heads/master
  Home:   https://github.com/gost-engine/engine
  Commit: 5dc8f91c186d88a74493c229c7afbf3eb40599a8
      https://github.com/gost-engine/engine/commit/5dc8f91c186d88a74493c229c7afbf3eb40599a8
  Author: Vitaly Chikunov <vt@altlinux.org>
  Date:   2022-01-09 (Sun, 09 Jan 2022)

  Changed paths:
    M gost_ec_keyx.c

  Log Message:
  -----------
  gost_ec_keyx: Check CTX data before it's really used

This should fix Coverity warning:

  *** CID 345243:  Null pointer dereferences  (REVERSE_INULL)
  /gost_ec_keyx.c: 681 in pkey_gost2018_decrypt()
  675        o  Q_eph is on the same curve as server public key;
  676
  677        o  Q_eph is not equal to zero point;
  678
  679        o  q * Q_eph is not equal to zero point.
  680     */
  >>>     CID 345243:  Null pointer dereferences  (REVERSE_INULL)
  >>>     Null-checking "data" suggests that it may be null, but it has already been dereferenced on all paths leading to the check.
  681         if (eph_key == NULL || priv == NULL || data == NULL) {
  682            GOSTerr(GOST_F_PKEY_GOST2018_DECRYPT,
  683                    GOST_R_ERROR_COMPUTING_EXPORT_KEYS);
  684            ret = 0;
  685            goto err;
  686         }

Signed-off-by: Vitaly Chikunov <vt@altlinux.org>
Issue: #380


  Commit: eea1e27c2b49d7604df939aeefaa7f45a5519fc8
      https://github.com/gost-engine/engine/commit/eea1e27c2b49d7604df939aeefaa7f45a5519fc8
  Author: Vitaly Chikunov <vt@altlinux.org>
  Date:   2022-01-09 (Sun, 09 Jan 2022)

  Changed paths:
    M gost_prov.c

  Log Message:
  -----------
  gost_prov: Avoid access to unallocated memory

This should fix Coverity warning:

  *** CID 345245:    (UNINIT)
  /gost_prov.c: 71 in provider_ctx_new()
  65             && populate_gost_engine(ctx->e)) {
  66             ctx->core_handle = core;
  67
  68             /* Ugly hack */
  69             err_handle = ctx->proverr_handle;
  70         } else {
  >>>     CID 345245:    (UNINIT)
  >>>     Using uninitialized value "ctx->e" when calling "provider_ctx_free".
  71             provider_ctx_free(ctx);
  72             ctx = NULL;
  73         }
  74         return ctx;
  75     }

Signed-off-by: Vitaly Chikunov <vt@altlinux.org>
Issue: #380


Compare: https://github.com/gost-engine/engine/compare/d47bcf34df61...eea1e27c2b49