GitHub
CERT Secure Coding

Klocwork

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: 2025.2

CheckerGuideline
CMP.CLASSOBJ09-J. Compare classes and not class names
CMP.OBJEXP03-J. Do not use the equality operators when comparing values of boxed primitives
EHC.EQMET09-J. Classes that define an equals() method must also define a hashCode() method
EHC.HASHMET09-J. Classes that define an equals() method must also define a hashCode() method
EXC.BROADTHROWSERR07-J. Do not throw RuntimeException, Exception, or Throwable
FIN.EMPTYMET12-J. Do not use finalizers
FIN.NOSUPERMET12-J. Do not use finalizers
JAVA.ASSERT.ARGMET01-J. Never use assertions to validate method arguments
JAVA.BIGDEC.FLOATNUM10-J. Do not construct BigDecimal objects from floating-point literals
JAVA.COMPARE.NANNUM07-J. Do not attempt comparisons with NaN
JAVA.CTOR.EXCEPTOBJ11-J. Be wary of letting constructors throw exceptions
JAVA.DEBUG.ENTRYENV06-J. Production code must not contain debugging entry points
JAVA.FINAL.STATIC.VAROBJ11-J. Be wary of letting constructors throw exceptions
JAVA.INF.LOOP.EMPTYMSC01-J. Do not use an empty infinite loop
JAVA.LOOP.CTR.FLOATNUM09-J. Do not use floating-point variables as loop counters
JAVA.NATIVE.PUBLICJNI00-J. Define wrappers around native methods
JAVA.SERIALIZE.INNERSER05-J. Do not serialize instances of inner classes
JAVA.SV.XML.INVALIDIDS16-J. Prevent XML Injection
JAVA.THREADGROUPTHI01-J. Do not invoke ThreadGroup methods
JAVA.WAIT.IN.LOOPTHI03-J. Always invoke wait() and await() methods inside a loop
JD.CATCHERR08-J. Do not catch NullPointerException or any of its ancestors
JD.EQ.ARREXP02-J. Do not use the Object.equals() method to compare two arrays
JD.FINRETERR04-J. Do not complete abruptly from a finally block
JD.LOCK.NOTIFYLCK09-J. Do not perform operations that can block while holding a lock
JD.LOCK.SLEEPLCK09-J. Do not perform operations that can block while holding a lock
JD.LOCK.WAITLCK09-J. Do not perform operations that can block while holding a lock
JD.SYNC.DCLLCK10-J. Use a correct form of the double-checked locking idiom
JD.THREAD.RUNTHI00-J. Do not invoke Thread.run()
JD.UMC.FINALIZEMET12-J. Do not use finalizers
JD.UMC.RUNFINMET12-J. Do not use finalizers
JD.UNCAUGHTERR05-J. Do not let checked exceptions escape from a finally block
JD.UNMODDCL02-J. Do not modify the collection's elements during an enhanced for statement
NPE.CONDEXP01-J. Do not use a null in a case where an object is required
NPE.CONSTEXP01-J. Do not use a null in a case where an object is required
NPE.RETEXP01-J. Do not use a null in a case where an object is required
NPE.RET.UTILEXP01-J. Do not use a null in a case where an object is required
NPE.STATEXP01-J. Do not use a null in a case where an object is required
REDUN.EQNULLEXP01-J. Do not use a null in a case where an object is required
RI.IGNOREDCALLEXP00-J. Do not ignore values returned by methods
RR.IGNOREDEXP00-J. Do not ignore values returned by methods
SV.DATA.DBIDS00-J. Prevent SQL injection
SV.EXECIDS06-J. Exclude unsanitized user input from format strings
SV.EXECIDS07-J. Sanitize untrusted data passed to the Runtime.exec() method
SV.EXEC.DIRIDS06-J. Exclude unsanitized user input from format strings
SV.EXEC.DIRIDS07-J. Sanitize untrusted data passed to the Runtime.exec() method
SV.EXEC.ENVIDS06-J. Exclude unsanitized user input from format strings
SV.EXEC.ENVIDS07-J. Sanitize untrusted data passed to the Runtime.exec() method
SV.EXEC.LOCALIDS06-J. Exclude unsanitized user input from format strings
SV.EXEC.LOCALIDS07-J. Sanitize untrusted data passed to the Runtime.exec() method
SV.EXEC.PATHIDS06-J. Exclude unsanitized user input from format strings
SV.EXEC.PATHIDS07-J. Sanitize untrusted data passed to the Runtime.exec() method
SV.EXPOSE.FIELDOBJ01-J. Limit accessibility of fields
SV.EXPOSE.FIELDOBJ10-J. Do not use public static nonfinal fields
SV.EXPOSE.FINMET12-J. Do not use finalizers
SV.EXPOSE.IFIELDOBJ01-J. Limit accessibility of fields
SV.EXPOSE.MUTABLEFIELDOBJ01-J. Limit accessibility of fields
SV.EXPOSE.RETOBJ04-J. Provide mutable classes with copy functionality to safely allow passing instances to untrusted code
SV.EXPOSE.RETOBJ05-J. Do not return references to private mutable class members
SV.EXPOSE.STOREOBJ04-J. Provide mutable classes with copy functionality to safely allow passing instances to untrusted code
SV.EXPOSE.STOREOBJ05-J. Do not return references to private mutable class members
SV.HTTP_SPLITERR03-J. Restore prior object state on method failure
SV.IL.DEVERR01-J. Do not allow exceptions to expose sensitive information
SV.INT_OVFNUM00-J. Detect or prevent integer overflow
SV.SHARED.VARVNA00-J. Ensure visibility when accessing shared primitive variables
SV.SHARED.VARVNA01-J. Ensure visibility of shared references to immutable objects
SV.SHARED.VARVNA02-J. Ensure that compound operations on shared variables are atomic
SV.SHARED.VARLCK05-J. Synchronize access to static fields that can be modified by untrusted code
SV.SQLIDS00-J. Prevent SQL injection
SV.SQL.DBSOURCEIDS00-J. Prevent SQL injection
SV.SSRF.URIERR03-J. Restore prior object state on method failure
SV.STRUTS.PRIVATEOBJ01-J. Limit accessibility of fields
SV.STRUTS.STATICOBJ01-J. Limit accessibility of fields
SV.STRUTS.STATICOBJ10-J. Do not use public static nonfinal fields
SV.TAINTIDS01-J. Normalize strings before validating them
SV.TAINT_NATIVEIDS01-J. Normalize strings before validating them
SV.UMC.EXITERR09-J. Do not allow untrusted code to terminate the JVM
SV.XSS.DBIDS01-J. Normalize strings before validating them
SV.XSS.REFIDS01-J. Normalize strings before validating them
SV.XXE.DBFIDS17-J. Prevent XML External Entity Attacks
SV.XXE.SFIDS17-J. Prevent XML External Entity Attacks
SV.XXE.SPFIDS17-J. Prevent XML External Entity Attacks
SV.XXE.TFIDS17-J. Prevent XML External Entity Attacks
SV.XXE.XIFIDS17-J. Prevent XML External Entity Attacks
SV.XXE.XRFIDS17-J. Prevent XML External Entity Attacks
SVLOG_FORGINGIDS03-J. Do not log unsanitized user input
UMC.EXITERR09-J. Do not allow untrusted code to terminate the JVM