File tree Expand file tree Collapse file tree 1 file changed +14
-0
lines changed
cpp/ql/src/experimental/Security/CWE/CWE-193 Expand file tree Collapse file tree 1 file changed +14
-0
lines changed Original file line number Diff line number Diff line change @@ -183,6 +183,20 @@ module ArrayAddressToDerefConfig implements DataFlow::StateConfigSig {
183183 pointerArithOverflow ( pai , _)
184184 )
185185 }
186+
187+ predicate observeDiffInformedIncrementalMode ( ) { any ( ) }
188+
189+ Location getASelectedSourceLocation ( DataFlow:: Node source ) {
190+ exists ( Variable v | result = v .getLocation ( ) | isSourceImpl ( source , v ) )
191+ }
192+
193+ Location getASelectedSinkLocation ( DataFlow:: Node sink ) {
194+ exists ( PointerArithmeticInstruction pai , Instruction deref |
195+ result = [ pai , deref ] .getLocation ( ) and
196+ isInvalidPointerDerefSink2 ( sink , deref , _) and
197+ isSink ( sink , ArrayAddressToDerefConfig:: TOverflowArithmetic ( pai ) )
198+ )
199+ }
186200}
187201
188202module ArrayAddressToDerefFlow = DataFlow:: GlobalWithState< ArrayAddressToDerefConfig > ;
You can’t perform that action at this time.
0 commit comments