PowerBuilder
PowerBuilder Code Rules
Category | Severity | Name | Description |
---|---|---|---|
|
|
|
AES encryption algorithm should be used with secured mode |
|
|
|
All branches in a conditional structure should not have exactly the same implementation |
|
|
|
Boolean checks should not be inverted |
|
|
|
Boolean literals should not be redundant |
|
|
|
CASE expressions should end with ELSE clauses |
|
|
|
CASE should be used for sequences of simple tests |
|
|
|
CASE structures should not have too many WHEN clauses |
|
|
|
Collapsible if statements should be merged |
|
|
|
Comments should not be located at the end of lines of code |
|
|
|
Console logging should not be used |
|
|
|
CoSetProxyBlanket and CoInitializeSecurity should not be used |
|
|
|
Cryptographic keys should be robust |
|
|
|
Database queries should not be vulnerable to injection attacks |
|
|
|
DES Crypting should not be used |
|
|
|
Encryption algorithms should be used with secure mode and padding scheme |
|
|
|
EXIT should not be used in loops |
|
|
|
Fields should not have public accessibility |
|
|
|
Files should not have too many lines of code |
|
|
|
FOR loop end conditions should not be hard - coded |
|
|
|
Function and Event parameters should comply with a naming convention |
|
|
|
Function OR Event name should comply with a naming convention |
|
|
|
Functions Or Events should not have too many parameters |
|
|
|
Functions should end with RETURN statements |
|
|
|
Generic exceptions should not be ignored |
|
|
|
GOTO should not be used to jump backwards |
|
|
|
GOTO should not be used within loops |
|
|
|
GOTO statements should not be used |
|
|
|
Hard coded IP address should not be used |
|
|
|
Hard coded UserId / Password for database connection should not be used |
|
|
|
I/O function calls should not be vulnerable to path injection attacks |
|
|
|
IF ... ELSEIF constructs should end with ELSE clauses |
|
|
|
IF statement conditions should not evaluate unconditionally to TRUE or to FALSE |
|
|
|
IF statements should not be nested too deeply |
|
|
|
Jump statements should not be followed by dead code |
|
|
|
Jump statements should not be redundant |
|
|
|
Lines should not be too long |
|
|
|
Lines should not end with trailing whitespaces |
|
|
|
Loops with at most one iteration should be refactored |
|
|
|
Mutable fields should not be public static |
|
|
|
Newline and control characters should not be used in string literals |
|
|
|
OS commands should not be vulnerable to injection attacks |
|
|
|
Redundant pairs of parentheses should be removed |
|
|
|
Regular expressions should not be vulnerable to Denial of Service attacks |
|
|
|
Related IF/ELSIF statements and WHEN clauses in a CASE should not have the same condition |
|
|
|
Return of boolean expressions should not be wrapped into an if-then-else statement |
|
|
|
SHA-1 and Message-Digest hash algorithms should not be used in secure contexts |
|
|
|
Soap and INET should not be used |
|
|
|
Statements should be on separate lines |
|
|
|
String literals should not be duplicated |
|
|
|
Track uses of FIXME tags |
|
|
|
Track uses of TODO tags |
|
|
|
Two branches in a conditional structure should not have exactly the same implementation |
|
|
|
Unused event and function parameters should be removed |
|
|
|
Unused global variables/constants should be removed |
|
|
|
Unused labels should be removed |
|
|
|
Unused local variables should be removed |
|
|
|
Variables should comply with a naming convention |
|
|
|
Variables should not be self-assigned |
|
|
|
WHEN clauses should not have too many lines |