GitHub
CERT Secure Coding

SonarQube

This page was automatically generated and should not be edited.

The information on this page was provided by outside contributors and has not been verified by SEI CERT.

The table below can be re-ordered, by clicking column headers.

Tool Version: 9.9

CheckerGuideline
AssignmentInSubExpressionCheckEXP51-J. Do not perform assignments in conditional expressions
EmptyStatementUsageCheckMSC51-J. Do not place a semicolon immediately following an if, for, or while condition
HiddenFieldCheckDCL51-J. Do not shadow or obscure identifiers in subscopes
S106ERR02-J. Prevent exceptions while logging data
S112ERR07-J. Do not throw RuntimeException, Exception, or Throwable
S00121EXP52-J. Use braces for the body of an if, for, or while statement
S128MSC52-J. Finish every set of statements associated with a case label with a break statement
S818DCL50-J. Use visually distinct identifiers
S864EXP53-J. Use parentheses for precedence of operation
S881EXP05-J. Do not follow a write by a subsequent write or read of the same object within an expression
S899EXP00-J. Do not ignore values returned by methods
S899FIO02-J. Detect and handle file-related errors
S1111MET12-J. Do not use finalizers
S1113MET12-J. Do not use finalizers
S1114MET12-J. Do not use finalizers
S1143ERR04-J. Do not complete abruptly from a finally block
S1147ERR09-J. Do not allow untrusted code to terminate the JVM
S1163ERR05-J. Do not let checked exceptions escape from a finally block
S1166ERR00-J. Do not suppress or ignore checked exceptions
S1168MET55-J. Return an empty array or collection instead of a null value for methods that return an array or collection
S1174MET12-J. Do not use finalizers
S1181ERR08-J. Do not catch NullPointerException or any of its ancestors
S1182MET53-J. Ensure that the clone() method calls super.clone()
S1193ERR51-J. Prefer user-defined exceptions over more general exception types
S1206MET09-J. Classes that define an equals() method must also define a hashCode() method
S1217THI00-J. Do not invoke Thread.run()
S1313MSC03-J. Never hard code sensitive information
S1314DCL50-J. Use visually distinct identifiers
S1444OBJ10-J. Do not use public static nonfinal fields
S1449STR02-J. Specify an appropriate locale when comparing locale-dependent data
S1659DCL52-J. Do not declare more than one variable per declaration
S1696ERR08-J. Do not catch NullPointerException or any of its ancestors
S1698EXP03-J. Do not use the equality operators when comparing values of boxed primitives
S1698EXP50-J. Do not confuse abstract object equality with reference equality
S1699MET05-J. Ensure that constructors do not call overridable methods
S1854MSC56-J. Detect and remove superfluous code and values
S1860LCK01-J. Do not synchronize on objects that may be reused
S1872OBJ09-J. Compare classes and not class names
S1874MET02-J. Do not use deprecated or obsolete classes or methods
S1943STR04-J. Use compatible character encodings when communicating string data between JVMs
S1943STR50-J. Use the appropriate method for counting characters in a string
S1989ERR01-J. Do not allow exceptions to expose sensitive information
S2057SER00-J. Enable serialization compatibility during class evolution
S2059SER05-J. Do not serialize instances of inner classes
S2061SER01-J. Do not deviate from the proper signatures of serialization methods
S2066SER05-J. Do not serialize instances of inner classes
S2068MSC03-J. Never hard code sensitive information
S2076IDS07-J. Sanitize untrusted data passed to the Runtime.exec() method
S2077IDS00-J. Prevent SQL injection
S2078IDS54-J. Prevent LDAP injection
S2093ERR54-J. Use a try-with-resources statement to safely handle closeable resources
S2095FIO04-J. Release resources when they are no longer needed
S2111NUM10-J. Do not construct BigDecimal objects from floating-point literals
S2151MET12-J. Do not use finalizers
S2159EXP02-J. Do not use the Object.equals() method to compare two arrays
S2162MET08-J. Preserve the equality contract when overriding the equals() method
S2168LCK10-J. Use a correct form of the double-checked locking idiom
S2175EXP04-J. Do not pass arguments to certain Java Collections Framework methods that are a different type than the collection parameter type
S2184NUM50-J. Convert integers to floating point for floating-point operations
S2189MSC01-J. Do not use an empty infinite loop
S2197NUM51-J. Do not assume that the remainder operator always returns a nonnegative result for integral operands
S2201EXP00-J. Do not ignore values returned by methods
S2225EXP01-J. Do not use a null in a case where an object is required
S2245MSC02-J. Generate strong random numbers
S2251MSC54-J. Avoid inadvertent wrapping of loop counters
S2259EXP01-J. Do not use a null in a case where an object is required
S2274THI03-J. Always invoke wait() and await() methods inside a loop
S2276LCK09-J. Do not perform operations that can block while holding a lock
S2278MSC61-J. Do not use insecure or weak cryptographic algorithms
S2384OBJ05-J. Do not return references to private mutable class members
S2384OBJ06-J. Defensively copy mutable inputs and mutable internal components
S2384OBJ13-J. Ensure that references to mutable objects are not exposed
S2386OBJ01-J. Limit accessibility of fields
S2386OBJ13-J. Ensure that references to mutable objects are not exposed
S2390DCL00-J. Prevent class initialization cycles
S2442LCK03-J. Do not synchronize on the intrinsic locks of high-level concurrency objects
S2445LCK00-J. Use private final lock objects to synchronize classes that may interact with untrusted code
S2446THI02-J. Notify all waiting threads rather than a single thread
S2447EXP01-J. Do not use a null in a case where an object is required
S2631IDS08-J. Sanitize untrusted data included in a regular expression
S2637EXP01-J. Do not use a null in a case where an object is required
S2653ENV06-J. Production code must not contain debugging entry points
S2674FIO10-J. Ensure the array is filled when using read() to fill an array
S2681EXP52-J. Use braces for the body of an if, for, or while statement
S2693TSM02-J. Do not use background threads during class initialization
S2755IDS17-J. Prevent XML External Entity Attacks
S2886VNA01-J. Ensure visibility of shared references to immutable objects
S3011SEC05-J. Do not use reflection to increase accessibility of classes, methods, or fields
S3014THI01-J. Do not invoke ThreadGroup methods
S3034NUM52-J. Be aware of numeric promotion behavior
S3067LCK02-J. Do not synchronize on the class object returned by getClass()
S3346EXP06-J. Expressions used in assertions must not produce side effects
S3518NUM02-J. Ensure that division and remainder operations do not result in divide-by-zero errors
S3649IDS00-J. Prevent SQL injection
S4435IDS17-J. Prevent XML External Entity Attacks
S5042IDS04-J. Safely extract files from ZipInputStream