rnbd_sess_dev_alloc
API Overview
rnbd_sess_dev_alloc is an API in Linux kernel. This rule belongs to the return value check type. This rule is generated using APISpecGen.
Rule Description
tip
rnbd_sess_dev_alloc returns error pointer on failure, use IS_ERR to check the return value
info
- Tags: return value check
 - Parameter Index: N/A
 - CWE Type: CWE-253
 
Rule Code
import cpp
import semmle.code.cpp.controlflow.SSA
class EVPFunctionCall extends FunctionCall {
  EVPFunctionCall() {
    this.getTarget().hasName("rnbd_sess_dev_alloc")
  }
}
predicate isErrCheckFunction(Function f) {
  f.hasName("IS_ERR") 
}
from EVPFunctionCall call, ValueAccess ret
where
  ret = call.getAnAccess() and
  not exists(FunctionCall check |
    isErrCheckFunction(check.getTarget()) and
    check.getArgument(0).getAChild*() = ret
  )
select call, "The return value of rnbd_sess_dev_alloc is not checked with IS_ERR."