mirror of
https://github.com/github/codeql.git
synced 2026-04-24 08:15:14 +02:00
Removing SEH default case for function calls as the logic to handle SEH is not yet part of the IR generation to make this logic work.
This commit is contained in:
@@ -1,20 +1,5 @@
|
||||
import semmle.code.cpp.models.interfaces.Throwing
|
||||
|
||||
/**
|
||||
* The default behavior for Structured Exception Handling (SEH) is
|
||||
* any function may (conditionally) raise an exception.
|
||||
* NOTE: this can be overridden by for any specific function to make in
|
||||
* unconditional or non-throwing. IR generation will enforce
|
||||
* the most strict interpretation.
|
||||
*/
|
||||
class DefaultSehExceptionBehavior extends ThrowingFunction {
|
||||
DefaultSehExceptionBehavior() { any() }
|
||||
|
||||
override predicate raisesException(boolean unconditional) { unconditional = false }
|
||||
|
||||
override TSehException getExceptionType() { any() }
|
||||
}
|
||||
|
||||
class WindowsDriverExceptionAnnotation extends ThrowingFunction {
|
||||
WindowsDriverExceptionAnnotation() {
|
||||
this.hasGlobalName(["RaiseException", "ExRaiseAccessViolation", "ExRaiseDatatypeMisalignment"])
|
||||
|
||||
Reference in New Issue
Block a user