C++: Move C/C++ suites to ql repo

As the queries live here, it makes sense for the suites to be versioned
together with them. The LGTM suite has already been moved. This commit
moves the actively-maintained non-LGTM suites.
This commit is contained in:
Jonas Jensen
2018-08-14 11:41:31 +02:00
parent bbee9a860b
commit 3e1247257f
52 changed files with 633 additions and 0 deletions

View File

@@ -0,0 +1,31 @@
+ semmlecode-cpp-queries/Likely Bugs/Conversion/LossyPointerCast.ql: /Critical/Critical_Correctness/Dangerous Conversions
+ semmlecode-cpp-queries/Best Practices/Likely Errors/Slicing.ql: /Critical/Critical_Correctness/Dangerous Conversions
+ semmlecode-cpp-queries/Likely Bugs/Arithmetic/BadCheckOdd.ql: /Critical/Critical_Correctness/Dangerous Conversions
+ semmlecode-cpp-queries/Likely Bugs/Arithmetic/IntMultToLong.ql: /Critical/Critical_Correctness/Dangerous Conversions
+ semmlecode-cpp-queries/Likely Bugs/Conversion/NonzeroValueCastToPointer.ql: /Critical/Critical_Correctness/Dangerous Conversions
+ semmlecode-cpp-queries/Likely Bugs/Conversion/ImplicitDowncastFromBitfield.ql: /Critical/Critical_Correctness/Dangerous Conversions
+ semmlecode-cpp-queries/Likely Bugs/Likely Typos/AssignWhereCompareMeant.ql: /Critical/Critical_Correctness/Common Errors
+ semmlecode-cpp-queries/Likely Bugs/Likely Typos/CompareWhereAssignMeant.ql: /Critical/Critical_Correctness/Common Errors
+ semmlecode-cpp-queries/Likely Bugs/Likely Typos/ExprHasNoEffect.ql: /Critical/Critical_Correctness/Common Errors
+ semmlecode-cpp-queries/Likely Bugs/Likely Typos/ShortCircuitBitMask.ql: /Critical/Critical_Correctness/Common Errors
+ semmlecode-cpp-queries/Likely Bugs/Likely Typos/MissingEnumCaseInSwitch.ql: /Critical/Critical_Correctness/Common Errors
+ semmlecode-cpp-queries/Likely Bugs/Arithmetic/BitwiseSignCheck.ql: /Critical/Critical_Correctness/Common Errors
+ semmlecode-cpp-queries/Likely Bugs/Memory Management/SuspiciousCallToMemset.ql: /Critical/Critical_Correctness/Use of Libraries
+ semmlecode-cpp-queries/Likely Bugs/Memory Management/SuspiciousSizeof.ql: /Critical/Critical_Correctness/Use of Libraries
+ semmlecode-cpp-queries/Likely Bugs/Memory Management/UnsafeUseOfStrcat.ql: /Critical/Critical_Correctness/Use of Libraries
+ semmlecode-cpp-queries/Likely Bugs/Memory Management/SuspiciousCallToStrncat.ql: /Critical/Critical_Correctness/Use of Libraries
+ semmlecode-cpp-queries/Likely Bugs/Memory Management/StrncpyFlippedArgs.ql: /Critical/Critical_Correctness/Use of Libraries
+ semmlecode-cpp-queries/Likely Bugs/Format/WrongNumberOfFormatArguments.ql: /Critical/Critical_Correctness/Use of Libraries
+ semmlecode-cpp-queries/Likely Bugs/Format/TooManyFormatArguments.ql: /Critical/Critical_Correctness/Use of Libraries
+ semmlecode-cpp-queries/jsf/4.21 Operators/AV Rule 166.ql: /Critical/Critical_Correctness/Use of Libraries # Sizeof with side effects
+ semmlecode-cpp-queries/jsf/4.07 Header Files/AV Rule 35.ql: /Critical/Critical_Maintainability/Coupling # Missing header guard
+ semmlecode-cpp-queries/Likely Bugs/Arithmetic/ComparisonPrecedence.ql: /Critical/Critical_Readability/Expressions
+ semmlecode-cpp-queries/Likely Bugs/Arithmetic/UnsignedGEZero.ql: /Critical/Critical_Readability/Expressions
+ semmlecode-cpp-queries/Likely Bugs/Arithmetic/PointlessComparison.ql: /Critical/Critical_Readability/Expressions
+ semmlecode-cpp-queries/Likely Bugs/Arithmetic/BadAdditionOverflowCheck.ql: /Critical/Critical_Readability/Expressions
+ semmlecode-cpp-queries/Likely Bugs/Arithmetic/PointlessSelfComparison.ql: /Critical/Critical_Readability/Expressions
+ semmlecode-cpp-queries/Likely Bugs/Likely Typos/DubiousNullCheck.ql: /Critical/Critical_Readability/Control Flow
+ semmlecode-cpp-queries/jsf/4.24 Control Flow Structures/AV Rule 197.ql: /Critical/Critical_Readability/Control Flow
## FLinesOfCode.ql is used internally.
+ odasa-cpp-metrics/Files/FLinesOfCode.ql

View File

@@ -0,0 +1,38 @@
# CORRECTNESS
# Dangerous Conversions
+ semmlecode-cpp-queries/Likely Bugs/Conversion/LossyPointerCast.ql: /Correctness/Dangerous Conversions
+ semmlecode-cpp-queries/Best Practices/Likely Errors/Slicing.ql: /Correctness/Dangerous Conversions
+ semmlecode-cpp-queries/Likely Bugs/Arithmetic/BadCheckOdd.ql: /Correctness/Dangerous Conversions
+ semmlecode-cpp-queries/Likely Bugs/Arithmetic/IntMultToLong.ql: /Correctness/Dangerous Conversions
+ semmlecode-cpp-queries/Likely Bugs/Conversion/NonzeroValueCastToPointer.ql: /Correctness/Dangerous Conversions
+ semmlecode-cpp-queries/Likely Bugs/Conversion/ImplicitDowncastFromBitfield.ql: /Correctness/Dangerous Conversions
# Consistent Use
+ semmlecode-cpp-queries/Critical/ReturnValueIgnored.ql: /Correctness/Consistent Use
+ semmlecode-cpp-queries/Likely Bugs/InconsistentCheckReturnNull.ql: /Correctness/Consistent Use
+ semmlecode-cpp-queries/Likely Bugs/InconsistentCallOnResult.ql: /Correctness/Consistent Use
# Common Errors
+ semmlecode-cpp-queries/Likely Bugs/Likely Typos/AssignWhereCompareMeant.ql: /Correctness/Common Errors
+ semmlecode-cpp-queries/Likely Bugs/Likely Typos/CompareWhereAssignMeant.ql: /Correctness/Common Errors
+ semmlecode-cpp-queries/Likely Bugs/Likely Typos/ExprHasNoEffect.ql: /Correctness/Common Errors
+ semmlecode-cpp-queries/Likely Bugs/Likely Typos/ShortCircuitBitMask.ql: /Correctness/Common Errors
+ semmlecode-cpp-queries/Likely Bugs/Likely Typos/MissingEnumCaseInSwitch.ql: /Correctness/Common Errors
+ semmlecode-cpp-queries/Likely Bugs/Arithmetic/FloatComparison.ql: /Correctness/Common Errors
+ semmlecode-cpp-queries/Likely Bugs/Arithmetic/BitwiseSignCheck.ql: /Correctness/Common Errors
+ semmlecode-cpp-queries/Likely Bugs/Arithmetic/BadAdditionOverflowCheck.ql: /Correctness/Common Errors
+ semmlecode-cpp-queries/Likely Bugs/NestedLoopSameVar.ql: /Correctness/Common Errors
+ semmlecode-cpp-queries/Likely Bugs/UseInOwnInitializer.ql: /Correctness/Common Errors
+ semmlecode-cpp-queries/Critical/NewArrayDeleteMismatch.ql: /Correctness/Common Errors
+ semmlecode-cpp-queries/Critical/NewDeleteArrayMismatch.ql: /Correctness/Common Errors
+ semmlecode-cpp-queries/Critical/NewFreeMismatch.ql: /Correctness/Common Errors
# Use of Libraries
+ semmlecode-cpp-queries/Likely Bugs/Memory Management/SuspiciousCallToMemset.ql: /Correctness/Use of Libraries
+ semmlecode-cpp-queries/Likely Bugs/Memory Management/SuspiciousSizeof.ql: /Correctness/Use of Libraries
+ semmlecode-cpp-queries/Likely Bugs/Memory Management/UnsafeUseOfStrcat.ql: /Correctness/Use of Libraries
+ semmlecode-cpp-queries/Likely Bugs/Memory Management/SuspiciousCallToStrncat.ql: /Correctness/Use of Libraries
+ semmlecode-cpp-queries/Likely Bugs/Memory Management/StrncpyFlippedArgs.ql: /Correctness/Use of Libraries
+ semmlecode-cpp-queries/Likely Bugs/Format/WrongNumberOfFormatArguments.ql: /Correctness/Use of Libraries
+ semmlecode-cpp-queries/Likely Bugs/Format/TooManyFormatArguments.ql: /Correctness/Use of Libraries
+ semmlecode-cpp-queries/Likely Bugs/Format/WrongTypeFormatArguments.ql: /Correctness/Use of Libraries
+ semmlecode-cpp-queries/Likely Bugs/Format/NonConstantFormat.ql: /Correctness/Use of Libraries
+ semmlecode-cpp-queries/Likely Bugs/Format/SnprintfOverflow.ql: /Correctness/Use of Libraries
+ semmlecode-cpp-queries/jsf/4.21 Operators/AV Rule 166.ql: /Correctness/Use of Libraries # Sizeof with side effects

View File

@@ -0,0 +1,5 @@
+ odasa-cpp-metrics/Internal/CallableDisplayStrings.ql
+ odasa-cpp-metrics/Internal/CallableExtents.ql
+ odasa-cpp-metrics/Internal/CallableSourceLinks.ql
+ odasa-cpp-metrics/Internal/ReftypeDisplayStrings.ql
+ odasa-cpp-metrics/Internal/ReftypeSourceLinks.ql

View File

@@ -0,0 +1,22 @@
# MAINTAINABILITY
# Coupling
+ semmlecode-cpp-queries/jsf/4.06 Pre-Processing Directives/AV Rule 32.ql: /Maintainability/Coupling # Include header files only
+ semmlecode-cpp-queries/jsf/4.07 Header Files/AV Rule 35.ql: /Maintainability/Coupling # Missing header guard
+ semmlecode-cpp-queries/Header Cleanup/Cleanup-DuplicateIncludeGuard.ql: /Maintainability/Coupling # Duplicate header guards
+ semmlecode-cpp-queries/Architecture/FeatureEnvy.ql: /Maintainability/Coupling
+ semmlecode-cpp-queries/Architecture/InappropriateIntimacy.ql: /Maintainability/Coupling
# Size
+ semmlecode-cpp-queries/Architecture/Refactoring Opportunities/ClassesWithManyFields.ql: /Maintainability/Size
@name Structs with too many members
# Documentation
+ semmlecode-cpp-queries/Documentation/CommentedOutCode.ql: /Maintainability/Documentation
+ semmlecode-cpp-queries/Documentation/TodoComments.ql: /Maintainability/Documentation
+ semmlecode-cpp-queries/Documentation/FixmeComments.ql: /Maintainability/Documentation
+ semmlecode-cpp-queries/Documentation/UncommentedFunction.ql: /Maintainability/Documentation
+ semmlecode-cpp-queries/Documentation/DocumentApi.ql: /Maintainability/Documentation
# Declarations
+ semmlecode-cpp-queries/Best Practices/Magic Constants/MagicConstantsString.ql: /Maintainability/Declarations
+ semmlecode-cpp-queries/Best Practices/Magic Constants/MagicConstantsNumbers.ql: /Maintainability/Declarations
+ semmlecode-cpp-queries/Best Practices/SloppyGlobal.ql: /Maintainability/Declarations
# Memory management
+ semmlecode-cpp-queries/Likely Bugs/Memory Management/StackAddressEscapes.ql: /Maintainability/Memory Management

View File

@@ -0,0 +1,17 @@
+ odasa-cpp-metrics/Files/NumberOfPublicGlobals.ql: /Maintainability/Coupling
@warning-from 11
+ odasa-cpp-metrics/Files/FEfferentCoupling.ql: /Maintainability/Coupling
@warning-from 120
+ odasa-cpp-metrics/Functions/FunNumberOfParameters.ql: /Maintainability/Size
@warning-from 9
+ odasa-cpp-metrics/Functions/FunLinesOfCode.ql: /Maintainability/Size
@warning-from 250
+ odasa-cpp-metrics/Files/FLinesOfCode.ql: /Maintainability/Size
@warning-from 1500
# Complexity
+ odasa-cpp-metrics/Functions/FunNumberOfCalls.ql: /Maintainability/Complexity
@warning-from 100
+ odasa-cpp-metrics/Functions/StatementNestingDepth.ql: /Maintainability/Complexity
@recommendation-from 7
+ odasa-cpp-metrics/Functions/FunCyclomaticComplexity.ql: /Maintainability/Complexity
@recommendation-from 100

View File

@@ -0,0 +1,48 @@
# DASHBOARD METRICS
@import metrics-external
# Build
+ odasa-cpp-metrics/Files/FTimeInFrontend.ql: /Metrics/Build
# Complexity
+ odasa-cpp-metrics/Files/FCyclomaticComplexity.ql: /Metrics/Complexity
@treemap.warnOn highValues
+ odasa-cpp-metrics/Files/NumberOfParameters.ql: /Metrics/Complexity
@treemap.warnOn highValues
+ odasa-cpp-metrics/Functions/StatementNestingDepth.ql: /Metrics/Complexity
@treemap.warnOn highValues
# Coupling
+ odasa-cpp-metrics/Files/FAfferentCoupling.ql: /Metrics/Coupling
+ odasa-cpp-metrics/Files/FEfferentCoupling.ql: /Metrics/Coupling
+ semmlecode-cpp-queries/Metrics/Files/FLinesOfDuplicatedCode.ql: /Metrics/Coupling
# Documentation
+ odasa-cpp-metrics/Files/FCommentRatio.ql: /Metrics/Documentation
+ odasa-cpp-metrics/Files/FLinesOfComments.ql: /Metrics/Documentation
+ odasa-cpp-metrics/Files/FTodoComments.ql: /Metrics/Documentation
+ odasa-cpp-metrics/Functions/FunLinesOfComments.ql: /Metrics/Documentation
+ odasa-cpp-metrics/Functions/FunPercentageOfComments.ql: /Metrics/Documentation
@treemap.warnOn lowValues
+ odasa-cpp-metrics/Files/FLinesOfCommentedOutCode.ql: /Metrics/Documentation
# Globals
+ odasa-cpp-metrics/Files/NumberOfFunctions.ql: /Metrics/Globals
+ odasa-cpp-metrics/Files/NumberOfGlobals.ql: /Metrics/Globals
+ odasa-cpp-metrics/Files/NumberOfPublicFunctions.ql: /Metrics/Globals
+ odasa-cpp-metrics/Files/NumberOfPublicGlobals.ql: /Metrics/Globals
# Preprocessor
+ odasa-cpp-metrics/Files/FDirectIncludes.ql: /Metrics/Preprocessor
@treemap.warnOn highValues
+ odasa-cpp-metrics/Files/FMacroRatio.ql: /Metrics/Preprocessor
+ odasa-cpp-metrics/Files/FTransitiveIncludes.ql: /Metrics/Preprocessor
@treemap.warnOn highValues
# Size
+ odasa-cpp-metrics/Files/FLinesOfCode.ql: /Metrics/Size
+ odasa-cpp-metrics/Files/FNumberOfTests.ql: /Metrics/Size
+ odasa-cpp-metrics/Functions/FunLinesOfCode.ql: /Metrics/Size
+ odasa-cpp-metrics/Functions/FunNumberOfStatements.ql: /Metrics/Size
@treemap.warnOn highValues

View File

@@ -0,0 +1,3 @@
+ odasa-cpp-metrics/External/FileCompilationSourceLinks.ql
+ odasa-cpp-metrics/External/FileCompilationDisplayStrings.ql

View File

@@ -0,0 +1,35 @@
# READABILITY
# Expressions
+ semmlecode-cpp-queries/Likely Bugs/Arithmetic/ComparisonPrecedence.ql: /Readability/Expressions
+ semmlecode-cpp-queries/Likely Bugs/Arithmetic/UnsignedGEZero.ql: /Readability/Expressions
+ semmlecode-cpp-queries/Likely Bugs/Arithmetic/PointlessComparison.ql: /Readability/Expressions
+ semmlecode-cpp-queries/Likely Bugs/Arithmetic/PointlessSelfComparison.ql: /Readability/Expressions
+ semmlecode-cpp-queries/Likely Bugs/Arithmetic/ComparisonWithCancelingSubExpr.ql: /Readability/Expressions
# Control Flow
+ semmlecode-cpp-queries/Best Practices/Likely Errors/EmptyBlock.ql: /Readability/Control Flow
+ semmlecode-cpp-queries/Likely Bugs/Likely Typos/FutileConditional.ql: /Readability/Control Flow
+ semmlecode-cpp-queries/Likely Bugs/Likely Typos/DubiousNullCheck.ql: /Readability/Control Flow
+ semmlecode-cpp-queries/jsf/4.24 Control Flow Structures/AV Rule 197.ql: /Readability/Control Flow # Avoid floats in for loops
+ semmlecode-cpp-queries/jsf/4.24 Control Flow Structures/AV Rule 201.ql: /Readability/Control Flow # For loop variable changed in body
+ semmlecode-cpp-queries/jsf/4.24 Control Flow Structures/AV Rule 196.ql: /Readability/Control Flow # No trivial switch statements
+ semmlecode-cpp-queries/Likely Bugs/ShortLoopVarName.ql: /Readability/Control Flow
# Declarations
+ semmlecode-cpp-queries/Best Practices/Hiding/LocalVariableHidesGlobalVariable.ql: /Readability/Declarations
+ semmlecode-cpp-queries/Best Practices/Hiding/DeclarationHidesParameter.ql: /Readability/Declarations
+ semmlecode-cpp-queries/Best Practices/Hiding/DeclarationHidesVariable.ql: /Readability/Declarations
+ semmlecode-cpp-queries/jsf/4.13 Functions/AV Rule 107.ql: /Readability/Declarations # Function declared in block
+ semmlecode-cpp-queries/Critical/LargeParameter.ql: /Readability/Declarations
# Size
+ semmlecode-cpp-queries/Best Practices/SwitchLongCase.ql: /Readability/Size
+ semmlecode-cpp-queries/Best Practices/BlockWithTooManyStatements.ql: /Readability/Size
+ semmlecode-cpp-queries/Best Practices/ComplexCondition.ql: /Readability/Size
# Safe Language
+ semmlecode-cpp-queries/Likely Bugs/AmbiguouslySignedBitField.ql: /Readability/Safe Language # Ambiguously signed bit-field member
+ semmlecode-cpp-queries/jsf/4.17 Types/AV Rule 148.ql: /Readability/Safe Language # Use of integer where enum is preferred
+ semmlecode-cpp-queries/jsf/4.16 Initialization/AV Rule 145.ql: /Readability/Safe Language # Enum initialisation
+ semmlecode-cpp-queries/jsf/4.10 Classes/AV Rule 97.ql: /Readability/Safe Language # No arrays in interfaces
+ semmlecode-cpp-queries/Likely Bugs/ReturnConstType.ql: /Readability/Safe Language
+ semmlecode-cpp-queries/jsf/4.13 Functions/AV Rule 114.ql: /Readability/Safe Language
@name Missing return statement
+ semmlecode-cpp-queries/Best Practices/UseOfGoto.ql: /Readability/Safe Language

View File

@@ -0,0 +1,8 @@
# USELESS CODE
+ semmlecode-cpp-queries/Best Practices/Unused Entities/UnusedStaticFunctions.ql: /Useless Code
+ semmlecode-cpp-queries/Best Practices/Unused Entities/UnusedStaticVariables.ql: /Useless Code
+ semmlecode-cpp-queries/Best Practices/Unused Entities/UnusedLocals.ql: /Useless Code
+ semmlecode-cpp-queries/external/DuplicateFunction.ql: /Useless Code/Duplicate Code
+ semmlecode-cpp-queries/external/MostlyDuplicateFile.ql: /Useless Code/Duplicate Code
+ semmlecode-cpp-queries/external/MostlyDuplicateFunction.ql: /Useless Code/Duplicate Code
+ semmlecode-cpp-queries/external/MostlySimilarFile.ql: /Useless Code/Duplicate Code

View File

@@ -0,0 +1,9 @@
+ semmlecode-cpp-queries/Best Practices/Exceptions/AccidentalRethrow.ql: /Critical/Critical_Correctness/Exceptions
+ semmlecode-cpp-queries/Best Practices/Exceptions/CatchingByValue.ql: /Critical/Critical_Correctness/Exceptions
+ semmlecode-cpp-queries/Best Practices/Exceptions/LeakyCatch.ql: /Critical/Critical_Correctness/Exceptions
+ semmlecode-cpp-queries/Best Practices/Exceptions/ThrowingPointers.ql: /Critical/Critical_Correctness/Exceptions
+ semmlecode-cpp-queries/Likely Bugs/OO/ThrowInDestructor.ql: /Critical/Critical_Readability/Safe Language/C++
+ semmlecode-cpp-queries/jsf/4.10 Classes/AV Rule 95.ql: /Critical/Critical_Readability/JSF # Redefined default parameter
@import ../c/code-review

View File

@@ -0,0 +1,45 @@
# CORRECTNESS
# Dangerous Conversions
+ semmlecode-cpp-queries/Likely Bugs/Conversion/LossyPointerCast.ql: /Correctness/Dangerous Conversions
+ semmlecode-cpp-queries/Best Practices/Likely Errors/Slicing.ql: /Correctness/Dangerous Conversions
+ semmlecode-cpp-queries/Likely Bugs/Arithmetic/BadCheckOdd.ql: /Correctness/Dangerous Conversions
+ semmlecode-cpp-queries/Likely Bugs/Arithmetic/IntMultToLong.ql: /Correctness/Dangerous Conversions
+ semmlecode-cpp-queries/Likely Bugs/Conversion/NonzeroValueCastToPointer.ql: /Correctness/Dangerous Conversions
+ semmlecode-cpp-queries/Likely Bugs/Conversion/ImplicitDowncastFromBitfield.ql: /Correctness/Dangerous Conversions
+ semmlecode-cpp-queries/Likely Bugs/Conversion/CastArrayPointerArithmetic.ql: /Correctness/Dangerous Conversions
# Consistent Use
+ semmlecode-cpp-queries/Critical/ReturnValueIgnored.ql: /Correctness/Consistent Use
+ semmlecode-cpp-queries/Likely Bugs/InconsistentCheckReturnNull.ql: /Correctness/Consistent Use
+ semmlecode-cpp-queries/Likely Bugs/InconsistentCallOnResult.ql: /Correctness/Consistent Use
# Common Errors
+ semmlecode-cpp-queries/Likely Bugs/Likely Typos/AssignWhereCompareMeant.ql: /Correctness/Common Errors
+ semmlecode-cpp-queries/Likely Bugs/Likely Typos/CompareWhereAssignMeant.ql: /Correctness/Common Errors
+ semmlecode-cpp-queries/Likely Bugs/Likely Typos/ExprHasNoEffect.ql: /Correctness/Common Errors
+ semmlecode-cpp-queries/Likely Bugs/Likely Typos/ShortCircuitBitMask.ql: /Correctness/Common Errors
+ semmlecode-cpp-queries/Likely Bugs/Likely Typos/MissingEnumCaseInSwitch.ql: /Correctness/Common Errors
+ semmlecode-cpp-queries/Likely Bugs/Arithmetic/FloatComparison.ql: /Correctness/Common Errors
+ semmlecode-cpp-queries/Likely Bugs/Arithmetic/BitwiseSignCheck.ql: /Correctness/Common Errors
+ semmlecode-cpp-queries/Likely Bugs/Arithmetic/BadAdditionOverflowCheck.ql: /Correctness/Common Errors
+ semmlecode-cpp-queries/Likely Bugs/NestedLoopSameVar.ql: /Correctness/Common Errors
+ semmlecode-cpp-queries/Likely Bugs/UseInOwnInitializer.ql: /Correctness/Common Errors
+ semmlecode-cpp-queries/Critical/NewArrayDeleteMismatch.ql: /Correctness/Common Errors
+ semmlecode-cpp-queries/Critical/NewDeleteArrayMismatch.ql: /Correctness/Common Errors
+ semmlecode-cpp-queries/Critical/NewFreeMismatch.ql: /Correctness/Common Errors
# Exceptions
+ semmlecode-cpp-queries/Best Practices/Exceptions/AccidentalRethrow.ql: /Correctness/Exceptions
+ semmlecode-cpp-queries/Best Practices/Exceptions/CatchingByValue.ql: /Correctness/Exceptions
+ semmlecode-cpp-queries/Best Practices/Exceptions/LeakyCatch.ql: /Correctness/Exceptions
+ semmlecode-cpp-queries/Best Practices/Exceptions/ThrowingPointers.ql: /Correctness/Exceptions
# Use of Libraries
+ semmlecode-cpp-queries/Likely Bugs/Memory Management/SuspiciousCallToMemset.ql: /Correctness/Use of Libraries
+ semmlecode-cpp-queries/Likely Bugs/Memory Management/SuspiciousSizeof.ql: /Correctness/Use of Libraries
+ semmlecode-cpp-queries/Likely Bugs/Memory Management/UnsafeUseOfStrcat.ql: /Correctness/Use of Libraries
+ semmlecode-cpp-queries/Likely Bugs/Memory Management/SuspiciousCallToStrncat.ql: /Correctness/Use of Libraries
+ semmlecode-cpp-queries/Likely Bugs/Memory Management/StrncpyFlippedArgs.ql: /Correctness/Use of Libraries
+ semmlecode-cpp-queries/Likely Bugs/Memory Management/ReturnCstrOfLocalStdString.ql: /Correctness/Use of Libraries
+ semmlecode-cpp-queries/Likely Bugs/Format/WrongNumberOfFormatArguments.ql: /Correctness/Use of Libraries
+ semmlecode-cpp-queries/Likely Bugs/Format/TooManyFormatArguments.ql: /Correctness/Use of Libraries
+ semmlecode-cpp-queries/Likely Bugs/Format/WrongTypeFormatArguments.ql: /Correctness/Use of Libraries
+ semmlecode-cpp-queries/Likely Bugs/Format/NonConstantFormat.ql: /Correctness/Use of Libraries
+ semmlecode-cpp-queries/Likely Bugs/Format/SnprintfOverflow.ql: /Correctness/Use of Libraries
+ semmlecode-cpp-queries/jsf/4.21 Operators/AV Rule 166.ql: /Correctness/Use of Libraries # Sizeof with side effects

View File

@@ -0,0 +1,5 @@
+ odasa-cpp-metrics/Internal/CallableDisplayStrings.ql
+ odasa-cpp-metrics/Internal/CallableExtents.ql
+ odasa-cpp-metrics/Internal/CallableSourceLinks.ql
+ odasa-cpp-metrics/Internal/ReftypeDisplayStrings.ql
+ odasa-cpp-metrics/Internal/ReftypeSourceLinks.ql

View File

@@ -0,0 +1,20 @@
# MAINTAINABILITY
# Coupling
+ semmlecode-cpp-queries/jsf/4.06 Pre-Processing Directives/AV Rule 32.ql: /Maintainability/Coupling # Include header files only
+ semmlecode-cpp-queries/jsf/4.07 Header Files/AV Rule 35.ql: /Maintainability/Coupling # Missing header guard
+ semmlecode-cpp-queries/Header Cleanup/Cleanup-DuplicateIncludeGuard.ql: /Maintainability/Coupling # Duplicate header guards
+ semmlecode-cpp-queries/Architecture/FeatureEnvy.ql: /Maintainability/Coupling
+ semmlecode-cpp-queries/Architecture/InappropriateIntimacy.ql: /Maintainability/Coupling
+ semmlecode-cpp-queries/Architecture/Refactoring Opportunities/ClassesWithManyFields.ql: /Maintainability/Size
# Documentation
+ semmlecode-cpp-queries/Documentation/CommentedOutCode.ql: /Maintainability/Documentation
+ semmlecode-cpp-queries/Documentation/TodoComments.ql: /Maintainability/Documentation
+ semmlecode-cpp-queries/Documentation/FixmeComments.ql: /Maintainability/Documentation
+ semmlecode-cpp-queries/Documentation/UncommentedFunction.ql: /Maintainability/Documentation
+ semmlecode-cpp-queries/Documentation/DocumentApi.ql: /Maintainability/Documentation
# Declarations
+ semmlecode-cpp-queries/Best Practices/Magic Constants/MagicConstantsString.ql: /Maintainability/Declarations
+ semmlecode-cpp-queries/Best Practices/Magic Constants/MagicConstantsNumbers.ql: /Maintainability/Declarations
+ semmlecode-cpp-queries/Best Practices/SloppyGlobal.ql: /Maintainability/Declarations
# Memory management
+ semmlecode-cpp-queries/Likely Bugs/Memory Management/StackAddressEscapes.ql: /Maintainability/Memory Management

View File

@@ -0,0 +1,18 @@
+ odasa-cpp-metrics/Files/NumberOfPublicGlobals.ql: /Maintainability/Coupling
@warning-from 7
+ odasa-cpp-metrics/Files/FEfferentCoupling.ql: /Maintainability/Coupling
@warning-from 120
# Size
+ odasa-cpp-metrics/Functions/FunNumberOfParameters.ql: /Maintainability/Size
@warning-from 11
+ odasa-cpp-metrics/Functions/FunLinesOfCode.ql: /Maintainability/Size
@warning-from 200
+ odasa-cpp-metrics/Files/FLinesOfCode.ql: /Maintainability/Size
@warning-from 1000
# Complexity
+ odasa-cpp-metrics/Functions/FunNumberOfCalls.ql: /Maintainability/Complexity
@warning-from 100
+ odasa-cpp-metrics/Functions/StatementNestingDepth.ql: /Maintainability/Complexity
@recommendation-from 6
+ odasa-cpp-metrics/Functions/FunCyclomaticComplexity.ql: /Maintainability/Complexity
@recommendation-from 75

View File

@@ -0,0 +1,61 @@
# DASHBOARD METRICS
@import metrics-external
# Build
+ odasa-cpp-metrics/Files/FTimeInFrontend.ql: /Metrics/Build
# Complexity
+ odasa-cpp-metrics/Classes/CPercentageOfComplexCode.ql: /Metrics/Complexity
+ odasa-cpp-metrics/Classes/CResponse.ql : /Metrics/Complexity
+ odasa-cpp-metrics/Files/FCyclomaticComplexity.ql: /Metrics/Complexity
@treemap.warnOn highValues
+ odasa-cpp-metrics/Files/NumberOfParameters.ql: /Metrics/Complexity
@treemap.warnOn highValues
+ odasa-cpp-metrics/Functions/StatementNestingDepth.ql: /Metrics/Complexity
@treemap.warnOn highValues
# Coupling
+ odasa-cpp-metrics/Classes/CAfferentCoupling.ql: /Metrics/Coupling
+ odasa-cpp-metrics/Classes/CEfferentCoupling.ql: /Metrics/Coupling
+ odasa-cpp-metrics/Files/FAfferentCoupling.ql: /Metrics/Coupling
+ odasa-cpp-metrics/Files/FEfferentCoupling.ql: /Metrics/Coupling
+ semmlecode-cpp-queries/Metrics/Files/FLinesOfDuplicatedCode.ql: /Metrics/Coupling
# Documentation
+ odasa-cpp-metrics/Files/FCommentRatio.ql: /Metrics/Documentation
+ odasa-cpp-metrics/Files/FLinesOfComments.ql: /Metrics/Documentation
+ odasa-cpp-metrics/Files/FTodoComments.ql: /Metrics/Documentation
+ odasa-cpp-metrics/Functions/FunLinesOfComments.ql: /Metrics/Documentation
+ odasa-cpp-metrics/Functions/FunPercentageOfComments.ql: /Metrics/Documentation
@treemap.warnOn lowValues
+ odasa-cpp-metrics/Files/FLinesOfCommentedOutCode.ql: /Metrics/Documentation
# Encapsulation
+ odasa-cpp-metrics/Classes/CInheritanceDepth.ql: /Metrics/Encapsulation
+ odasa-cpp-metrics/Classes/CLackOfCohesionCK.ql: /Metrics/Encapsulation
+ odasa-cpp-metrics/Classes/CSizeOfAPI.ql: /Metrics/Encapsulation
+ odasa-cpp-metrics/Classes/CSpecialisation.ql: /Metrics/Encapsulation
# Globals
+ odasa-cpp-metrics/Files/NumberOfFunctions.ql: /Metrics/Globals
+ odasa-cpp-metrics/Files/NumberOfGlobals.ql: /Metrics/Globals
+ odasa-cpp-metrics/Files/NumberOfPublicFunctions.ql: /Metrics/Globals
+ odasa-cpp-metrics/Files/NumberOfPublicGlobals.ql: /Metrics/Globals
# Preprocessor
+ odasa-cpp-metrics/Files/FDirectIncludes.ql: /Metrics/Preprocessor
@treemap.warnOn highValues
+ odasa-cpp-metrics/Files/FMacroRatio.ql: /Metrics/Preprocessor
+ odasa-cpp-metrics/Files/FTransitiveIncludes.ql: /Metrics/Preprocessor
@treemap.warnOn highValues
# Size
+ odasa-cpp-metrics/Files/FLinesOfCode.ql: /Metrics/Size
+ odasa-cpp-metrics/Files/FNumberOfTests.ql: /Metrics/Size
+ odasa-cpp-metrics/Functions/FunLinesOfCode.ql: /Metrics/Size
+ odasa-cpp-metrics/Functions/FunNumberOfStatements.ql: /Metrics/Size
@treemap.warnOn highValues
+ odasa-cpp-metrics/Classes/CLinesOfCode.ql: /Metrics/Size
+ odasa-cpp-metrics/Classes/CNumberOfFields.ql: /Metrics/Size
+ odasa-cpp-metrics/Classes/CNumberOfFunctions.ql: /Metrics/Size

View File

@@ -0,0 +1,3 @@
+ odasa-cpp-metrics/External/FileCompilationSourceLinks.ql
+ odasa-cpp-metrics/External/FileCompilationDisplayStrings.ql

View File

@@ -0,0 +1,49 @@
# READABILITY
# Expressions
+ semmlecode-cpp-queries/Likely Bugs/Arithmetic/ComparisonPrecedence.ql: /Readability/Expressions
+ semmlecode-cpp-queries/Likely Bugs/Arithmetic/UnsignedGEZero.ql: /Readability/Expressions
+ semmlecode-cpp-queries/Likely Bugs/Arithmetic/PointlessComparison.ql: /Readability/Expressions
+ semmlecode-cpp-queries/Likely Bugs/Arithmetic/PointlessSelfComparison.ql: /Readability/Expressions
+ semmlecode-cpp-queries/Likely Bugs/Arithmetic/ComparisonWithCancelingSubExpr.ql: /Readability/Expressions
# Control Flow
+ semmlecode-cpp-queries/Best Practices/Likely Errors/EmptyBlock.ql: /Readability/Control Flow
+ semmlecode-cpp-queries/Likely Bugs/Likely Typos/FutileConditional.ql: /Readability/Control Flow
+ semmlecode-cpp-queries/Likely Bugs/Likely Typos/DubiousNullCheck.ql: /Readability/Control Flow
+ semmlecode-cpp-queries/jsf/4.24 Control Flow Structures/AV Rule 197.ql: /Readability/Control Flow # Avoid floats in for loops
+ semmlecode-cpp-queries/jsf/4.24 Control Flow Structures/AV Rule 201.ql: /Readability/Control Flow # For loop variable changed in body
+ semmlecode-cpp-queries/jsf/4.24 Control Flow Structures/AV Rule 196.ql: /Readability/Control Flow # No trivial switch statements
+ semmlecode-cpp-queries/Likely Bugs/ShortLoopVarName.ql: /Readability/Control Flow
# Declarations
+ semmlecode-cpp-queries/Best Practices/Hiding/LocalVariableHidesGlobalVariable.ql: /Readability/Declarations
+ semmlecode-cpp-queries/Best Practices/Hiding/DeclarationHidesParameter.ql: /Readability/Declarations
+ semmlecode-cpp-queries/Best Practices/Hiding/DeclarationHidesVariable.ql: /Readability/Declarations
+ semmlecode-cpp-queries/jsf/4.13 Functions/AV Rule 107.ql: /Readability/Declarations # Function declared in block
+ semmlecode-cpp-queries/Critical/LargeParameter.ql: /Readability/Declarations
# Size
+ semmlecode-cpp-queries/Best Practices/SwitchLongCase.ql: /Readability/Size
+ semmlecode-cpp-queries/Best Practices/BlockWithTooManyStatements.ql: /Readability/Size
+ semmlecode-cpp-queries/Best Practices/ComplexCondition.ql: /Readability/Size
# Safe Language
+ semmlecode-cpp-queries/Likely Bugs/AmbiguouslySignedBitField.ql: /Readability/Safe Language # Ambiguously signed bit-field member
+ semmlecode-cpp-queries/jsf/4.17 Types/AV Rule 148.ql: /Readability/Safe Language # Use of integer where enum is preferred
+ semmlecode-cpp-queries/jsf/4.16 Initialization/AV Rule 145.ql: /Readability/Safe Language # Enum initialisation
+ semmlecode-cpp-queries/jsf/4.10 Classes/AV Rule 97.ql: /Readability/Safe Language # No arrays in interfaces
+ semmlecode-cpp-queries/Likely Bugs/ReturnConstType.ql: /Readability/Safe Language
+ semmlecode-cpp-queries/Best Practices/RuleOfTwo.ql: /Readability/Safe Language/C++
+ semmlecode-cpp-queries/Likely Bugs/OO/IncorrectConstructorDelegation.ql: /Readability/Safe Language/C++
+ semmlecode-cpp-queries/Likely Bugs/OO/ThrowInDestructor.ql: /Readability/Safe Language/C++
+ semmlecode-cpp-queries/jsf/4.13 Functions/AV Rule 114.ql: /Readability/Safe Language
@name Missing return statement
+ semmlecode-cpp-queries/Best Practices/UseOfGoto.ql: /Readability/Safe Language
# Safe Language > C++
+ semmlecode-cpp-queries/jsf/4.10 Classes/AV Rule 78.ql: /Readability/Safe Language/C++ # No virtual destructor
+ semmlecode-cpp-queries/jsf/4.10 Classes/AV Rule 71.1.ql: /Readability/Safe Language/C++ # Virtual call from constructor or destructor
+ semmlecode-cpp-queries/jsf/4.10 Classes/AV Rule 77.1.ql: /Readability/Safe Language/C++ # Confusion with implicit copy constructor
+ semmlecode-cpp-queries/jsf/4.10 Classes/AV Rule 82.ql: /Readability/Safe Language/C++ # Overloaded assignment does not return 'this'
+ semmlecode-cpp-queries/Likely Bugs/ReturnConstTypeMember.ql: /Readability/Safe Language/C++
# JSF
+ semmlecode-cpp-queries/jsf/4.10 Classes/AV Rule 79.ql: /Readability/JSF # Resource not released in destructor
+ semmlecode-cpp-queries/jsf/4.10 Classes/AV Rule 88.ql: /Readability/JSF # Undisciplined multiple inheritance
+ semmlecode-cpp-queries/jsf/4.10 Classes/AV Rule 89.ql: /Readability/JSF # Inconsistent virtual inheritance
+ semmlecode-cpp-queries/jsf/4.10 Classes/AV Rule 95.ql: /Readability/JSF # Redefined default parameter

View File

@@ -0,0 +1,10 @@
# USELESS CODE
+ semmlecode-cpp-queries/Best Practices/Unused Entities/UnusedStaticFunctions.ql: /Useless Code
+ semmlecode-cpp-queries/Best Practices/Unused Entities/UnusedStaticVariables.ql: /Useless Code
+ semmlecode-cpp-queries/Best Practices/Unused Entities/UnusedLocals.ql: /Useless Code
+ semmlecode-cpp-queries/external/DuplicateFunction.ql: /Useless Code/Duplicate Code
+ semmlecode-cpp-queries/external/MostlyDuplicateClass.ql: /Useless Code/Duplicate Code
+ semmlecode-cpp-queries/external/MostlyDuplicateFile.ql: /Useless Code/Duplicate Code
+ semmlecode-cpp-queries/external/MostlyDuplicateFunction.ql: /Useless Code/Duplicate Code
+ semmlecode-cpp-queries/external/MostlySimilarFile.ql: /Useless Code/Duplicate Code

View File

@@ -0,0 +1,7 @@
@import "../../suites/c/correctness"
@import "../../suites/c/maintainability"
@import "../../suites/c/readability"
@import "../../suites/c/useless-code"
@import "../../suites/c/metrics"
@import "../../suites/c/metric-defects"

View File

@@ -0,0 +1,7 @@
@import "../../suites/cpp/correctness"
@import "../../suites/cpp/maintainability"
@import "../../suites/cpp/readability"
@import "../../suites/cpp/useless-code"
@import "../../suites/cpp/metrics"
@import "../../suites/cpp/metric-defects"

View File

@@ -0,0 +1,2 @@
@import "default"
@import "secondary"

View File

@@ -0,0 +1,3 @@
# CWE-078: Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')
+ semmlecode-cpp-queries/Security/CWE/CWE-022/TaintedPath.ql: /CWE/CWE-022
@name Uncontrolled data used in path expression (CWE-022)

View File

@@ -0,0 +1,3 @@
# CWE-078: Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection')
+ semmlecode-cpp-queries/Security/CWE/CWE-078/ExecTainted.ql: /CWE/CWE-078
@name Uncontrolled data used in OS command (CWE-078)

View File

@@ -0,0 +1,3 @@
# CWE-079: Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')
+ semmlecode-cpp-queries/Security/CWE/CWE-079/CgiXss.ql: /CWE/CWE-079
@name CGI script vulnerable to cross-site scripting (CWE-079)

View File

@@ -0,0 +1,3 @@
# CWE-089: Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')
+ semmlecode-cpp-queries/Security/CWE/CWE-089/SqlTainted.ql: /CWE/CWE-089
@name Uncontrolled data in SQL query (CWE-089)

View File

@@ -0,0 +1,3 @@
# CWE-114: Process Control
+ semmlecode-cpp-queries/Security/CWE/CWE-114/UncontrolledProcessOperation.ql: /CWE/CWE-114
@name Uncontrolled process operation (CWE-114)

View File

@@ -0,0 +1,13 @@
# CWE-119: Improper Restriction of Operations within the Bounds of a Memory Buffer
+ semmlecode-cpp-queries/Security/CWE/CWE-119/OverflowBuffer.ql: /CWE/CWE-119
@name Call to memory access function may overflow buffer (CWE-119)
+ semmlecode-cpp-queries/Critical/OverflowStatic.ql: /CWE/CWE-119
@name Static array access may cause overflow (CWE-119)
# + semmlecode-cpp-queries/Critical/OverflowDestination.ql: /CWE/CWE-119
# ^ disabled due to timeout issue
+ semmlecode-cpp-queries/Likely Bugs/Memory Management/SuspiciousCallToStrncat.ql: /CWE/CWE-119
@name Potentially unsafe call to strncat (CWE-119)
+ semmlecode-cpp-queries/Likely Bugs/Memory Management/StrncpyFlippedArgs.ql: /CWE/CWE-119
@name Possibly wrong buffer size in string copy (CWE-119)
+ semmlecode-cpp-queries/Likely Bugs/Conversion/CastArrayPointerArithmetic.ql: /CWE/CWE-119
@name Upcast array used in pointer arithmetic (CWE-119)

View File

@@ -0,0 +1,13 @@
# CWE-120: Buffer Copy without Checking Size of Input ('Classic Buffer Overflow')
+ semmlecode-cpp-queries/Security/CWE/CWE-120/UnboundedWrite.ql: /CWE/CWE-120
@name Unbounded write (CWE-120)
+ semmlecode-cpp-queries/Security/CWE/CWE-120/BadlyBoundedWrite.ql: /CWE/CWE-120
@name Badly bounded write (CWE-120)
+ semmlecode-cpp-queries/Security/CWE/CWE-120/OverrunWrite.ql: /CWE/CWE-120
@name Potentially overrunning write (CWE-120)
+ semmlecode-cpp-queries/Security/CWE/CWE-120/OverrunWriteFloat.ql: /CWE/CWE-120
@name Potentially overrunning write with float to string conversion (CWE-120)
+ semmlecode-cpp-queries/Best Practices/Likely Errors/OffsetUseBeforeRangeCheck.ql: /CWE/CWE-120
@name Array offset used before range check (CWE-120)
+ semmlecode-cpp-queries/Likely Bugs/Memory Management/UnsafeUseOfStrcat.ql: /CWE/CWE-120
@name Potentially unsafe use of strcat (CWE-120)

View File

@@ -0,0 +1,3 @@
# CWE-121: Stack-based Buffer Overflow
+ semmlecode-cpp-queries/Security/CWE/CWE-121/UnterminatedVarargsCall.ql: /CWE/CWE-121
@name Unterminated variadic call (CWE-121)

View File

@@ -0,0 +1,3 @@
# CWE-129: Stack-based Buffer Overflow
+ semmlecode-cpp-queries/Security/CWE/CWE-129/ImproperArrayIndexValidation.ql: /CWE/CWE-129
@name Unclear validation of array index (CWE-129)

View File

@@ -0,0 +1,7 @@
# CWE-131: Incorrect Calculation of Buffer Size
+ semmlecode-cpp-queries/Security/CWE/CWE-131/NoSpaceForZeroTerminator.ql: /CWE/CWE-131
@name No space for zero terminator (CWE-131)
+ semmlecode-cpp-queries/Critical/SizeCheck.ql: /CWE/CWE-131
@name Not enough memory allocated for pointer type (CWE-131)
+ semmlecode-cpp-queries/Critical/SizeCheck2.ql: /CWE/CWE-131
@name Not enough memory allocated for array of pointer type (CWE-131)

View File

@@ -0,0 +1,13 @@
# CWE-134: Uncontrolled Format String
+ semmlecode-cpp-queries/Likely Bugs/Format/NonConstantFormat.ql: /CWE/CWE-134
@name Non-constant format string (CWE-134)
# This one runs out of memory. See ODASA-608.
#+ semmlecode-cpp-queries/PointsTo/TaintedFormatStrings.ql: /CWE/CWE-134
+ semmlecode-cpp-queries/Likely Bugs/Format/WrongNumberOfFormatArguments.ql: /CWE/CWE-134
@name Wrong number of arguments to formatting function (CWE-134)
+ semmlecode-cpp-queries/Likely Bugs/Format/WrongTypeFormatArguments.ql: /CWE/CWE-134
@name Wrong type of arguments to formatting function (CWE-134)
+ semmlecode-cpp-queries/Security/CWE/CWE-134/UncontrolledFormatString.ql: /CWE/CWE-134
@name Uncontrolled format string (CWE-134)
+ semmlecode-cpp-queries/Security/CWE/CWE-134/UncontrolledFormatStringThroughGlobalVar.ql: /CWE/CWE-134
@name Uncontrolled format string (through global variable) (CWE-134)

View File

@@ -0,0 +1,5 @@
# CWE-170: Improper Null Termination
+ semmlecode-cpp-queries/Likely Bugs/Memory Management/ImproperNullTermination.ql: /CWE/CWE-170
@name Potential improper null termination (CWE-170)
+ semmlecode-cpp-queries/Security/CWE/CWE-170/ImproperNullTerminationTainted.ql: /CWE/CWE-170
@name User-controlled data may not be null terminated (CWE-170)

View File

@@ -0,0 +1,13 @@
# CWE-190: Integer Overflow or Wraparound
+ semmlecode-cpp-queries/Security/CWE/CWE-190/ArithmeticTainted.ql: /CWE/CWE-190
@name User-controlled data in arithmetic expression (CWE-190)
+ semmlecode-cpp-queries/Security/CWE/CWE-190/ArithmeticUncontrolled.ql: /CWE/CWE-190
@name Uncontrolled data in arithmetic expression (CWE-190)
+ semmlecode-cpp-queries/Security/CWE/CWE-190/ArithmeticWithExtremeValues.ql: /CWE/CWE-190
@name Use of extreme values in arithmetic expression (CWE-190)
+ semmlecode-cpp-queries/Security/CWE/CWE-190/TaintedAllocationSize.ql: /CWE/CWE-190
@name Overflow in uncontrolled allocation size (CWE-190)
+ semmlecode-cpp-queries/Security/CWE/CWE-190/IntegerOverflowTainted.ql: /CWE/CWE-190
@name Potential integer arithmetic overflow (CWE-190)
+ semmlecode-cpp-queries/Security/CWE/CWE-190/ComparisonWithWiderType.ql: /CWE/CWE-190
@name Comparison of wide type with narrow type in loop condition (CWE-190)

View File

@@ -0,0 +1,3 @@
# CWE-242: Use of Inherently Dangerous Function
+ semmlecode-cpp-queries/Likely Bugs/Memory Management/PotentialBufferOverflow.ql: /CWE/CWE-242
@name Use of inherently dangerous function (CWE-242)

View File

@@ -0,0 +1,3 @@
# CWE-290: Authentication Bypass by Spoofing
+ semmlecode-cpp-queries/Security/CWE/CWE-290/AuthenticationBypass.ql: /CWE/CWE-290
@name Authentication bypass by spoofing (CWE-290)

View File

@@ -0,0 +1,9 @@
# CWE-311 Missing Encryption of Sensitive Data
+ semmlecode-cpp-queries/Security/CWE/CWE-311/CleartextBufferWrite.ql: /CWE/CWE-311
@name Cleartext storage of sensitive information in buffer (CWE-311)
+ semmlecode-cpp-queries/Security/CWE/CWE-311/CleartextFileWrite.ql: /CWE/CWE-311
@name Cleartext storage of sensitive information in file (CWE-311)
+ semmlecode-cpp-queries/Security/CWE/CWE-313/CleartextSqliteDatabase.ql: /CWE/CWE-311
@name Cleartext storage of sensitive information in an SQLite database (CWE-311)

View File

@@ -0,0 +1,5 @@
# CWE-327: Use of a Broken or Risky Cryptographic Algorithm
+ semmlecode-cpp-queries/Security/CWE/CWE-327/BrokenCryptoAlgorithm.ql: /CWE/CWE-327
@name Use of a broken or risky cryptographic algorithm (CWE-327)
+ semmlecode-cpp-queries/Security/CWE/CWE-327/OpenSslHeartbleed.ql: /CWE/CWE-327
@name Use of a version of OpenSSL with Heartbleed (CWE-327)

View File

@@ -0,0 +1,3 @@
# CWE-367: Time-of-check Time-of-use (TOCTOU) Race Condition
+ semmlecode-cpp-queries/Security/CWE/CWE-367/TOCTOUFilesystemRace.ql: /CWE/CWE-367
@name Time-of-check time-of-use filesystem race condition (CWE-367)

View File

@@ -0,0 +1,3 @@
# CWE-416: Use After Free
+ semmlecode-cpp-queries/Critical/UseAfterFree.ql: /CWE/CWE-416
@name Potential use after free (CWE-416)

View File

@@ -0,0 +1,3 @@
# CWE-457: Use of Uninitialized Variable
+ semmlecode-cpp-queries/Likely Bugs/Memory Management/UninitializedLocal.ql: /CWE/CWE-457
@name Potentially uninitialized local variable (CWE-457)

View File

@@ -0,0 +1,9 @@
# CWE-468: Incorrect pointer scaling
+ semmlecode-cpp-queries/Security/CWE/CWE-468/IncorrectPointerScaling.ql: /CWE/CWE-468
@name Suspicious pointer scaling (CWE-468)
+ semmlecode-cpp-queries/Security/CWE/CWE-468/IncorrectPointerScalingChar.ql: /CWE/CWE-468
@name Suspicious pointer scaling to char (CWE-468)
+ semmlecode-cpp-queries/Security/CWE/CWE-468/IncorrectPointerScalingVoid.ql: /CWE/CWE-468
@name Suspicious pointer scaling to void (CWE-468)
+ semmlecode-cpp-queries/Security/CWE/CWE-468/SuspiciousAddWithSizeof.ql: /CWE/CWE-468
@name Suspicious add with sizeof (CWE-468)

View File

@@ -0,0 +1,3 @@
# CWE-497 Exposure of System Data to an Unauthorized Control Sphere
+ semmlecode-cpp-queries/Security/CWE/CWE-497/ExposedSystemData.ql: /CWE/CWE-497
@name Exposure of system data to an unauthorized control sphere (CWE-497)

View File

@@ -0,0 +1,5 @@
# CWE-676: Use of Potentially Dangerous Function
+ semmlecode-cpp-queries/Security/CWE/CWE-676/DangerousUseOfCin.ql: /CWE/CWE-676
@name Dangerous use of 'cin' (CWE-676)
+ semmlecode-cpp-queries/Security/CWE/CWE-676/PotentiallyDangerousFunction.ql: /CWE/CWE-676
@name Use of potentially dangerous function (CWE-676)

View File

@@ -0,0 +1,3 @@
# CWE-732: Incorrect Permission Assignment for Critical Resource
+ semmlecode-cpp-queries/Security/CWE/CWE-732/DoNotCreateWorldWritable.ql: /CWE/CWE-732
@name File created without restricting permissions (CWE-732)

View File

@@ -0,0 +1,7 @@
# CWE-764: Multiple Locks of a CriticalResource
+ semmlecode-cpp-queries/Security/CWE/CWE-764/UnreleasedLock.ql: /CWE/CWE-764
@name Lock may not be released (CWE-764)
+ semmlecode-cpp-queries/Security/CWE/CWE-764/TwiceLocked.ql: /CWE/CWE-764
@name Mutex locked twice (CWE-764)
+ semmlecode-cpp-queries/Security/CWE/CWE-764/LockOrderCycle.ql: /CWE/CWE-764
@name Cyclic lock order dependency (CWE-764)

View File

@@ -0,0 +1,3 @@
# CWE-772: Missing Release of Resource after Effective Lifetime
+ semmlecode-cpp-queries/Critical/NewFreeMismatch.ql: /CWE/CWE-772
@name Mismatching new/free or malloc/delete (CWE-772)

View File

@@ -0,0 +1,9 @@
# CWE-772: Missing Release of Resource after Effective Lifetime
+ semmlecode-cpp-queries/Critical/FileMayNotBeClosed.ql: /CWE/CWE-772
@name Open file may not be closed (CWE-772)
+ semmlecode-cpp-queries/Critical/FileNeverClosed.ql: /CWE/CWE-772
@name Open file is not closed (CWE-772)
+ semmlecode-cpp-queries/Critical/MemoryMayNotBeFreed.ql: /CWE/CWE-772
@name Memory may not be freed (CWE-772)
+ semmlecode-cpp-queries/Critical/MemoryNeverFreed.ql: /CWE/CWE-772
@name Memory is never freed (CWE-772)

View File

@@ -0,0 +1,3 @@
# CWE-807: Reliance on Untrusted Inputs in a Security Decision
+ semmlecode-cpp-queries/Security/CWE/CWE-807/TaintedCondition.ql: /CWE/CWE-807
@name Untrusted input for a condition (CWE-807)

View File

@@ -0,0 +1,3 @@
# CWE-835: Infinite loop with unsatisfiable exit condition
+ semmlecode-cpp-queries/Security/CWE/CWE-835/InfiniteLoopWithUnsatisfiableExitCondition.ql: /CWE/CWE-835
@name Infinite loop with unsatisfiable exit condition (CWE-835)

View File

@@ -0,0 +1,28 @@
# All C++ security queries
@import "cwe-022"
@import "cwe-078"
@import "cwe-079"
@import "cwe-089"
@import "cwe-114"
@import "cwe-119"
@import "cwe-120"
@import "cwe-121"
@import "cwe-129"
@import "cwe-131"
@import "cwe-134"
@import "cwe-170"
@import "cwe-190"
@import "cwe-242"
@import "cwe-290"
@import "cwe-311"
@import "cwe-327"
@import "cwe-367"
@import "cwe-416"
@import "cwe-457"
@import "cwe-468"
@import "cwe-676"
@import "cwe-732"
@import "cwe-764"
@import "cwe-772"
@import "cwe-807"
@import "cwe-835"

View File

@@ -0,0 +1,3 @@
# Not in the default suite due to using expensive points-to analysis
@import "cwe-497-expensive"
@import "cwe-772-expensive"