跳到主要内容

EVP_PKEY_get_default_digest_nid

API 概述

EVP_PKEY_get_default_digest_nidopenssl 中的一个API。该规属于return value check 类型。该规则是使用 AURC 生成的。

规则描述

提示

EVP_PKEY_get_default_digest_name() and EVP_PKEY_get_default_digest_nid() both return 1 if the message digest is advisory (that is other digests can be used) and 2 if it is mandatory (other digests can not be used). They return 0 or a negative value for failure. In particular a return value of -2 indicates the operation is not supported by the public key algorithm.

信息

标签:return value check

参数下标:N/A

CWE类别:CWE-253

规则代码

import cpp

class OpenSSLFunctionCall extends FunctionCall {
OpenSSLFunctionCall() {
this.getTarget().hasName("EVP_PKEY_get_default_digest_nid")
}
}

from OpenSSLFunctionCall call, UnaryOperation uop
where
uop.getOperator() = "!" and
uop.getOperand() = call.getAnAccess()
select uop, "This negation checks the return value of EVP_PKEY_get_default_digest_nid."