@@ -57,9 +57,12 @@ object Pattern {
57
57
spec.subcategory match {
58
58
case Some (sc) =>
59
59
sc match {
60
- case Subcategory .BadDeserialization | Subcategory .BrokenAccess | Subcategory .BrokenAuth |
61
- Subcategory .Injection | Subcategory .Misconfiguration | Subcategory .NoLogging |
62
- Subcategory .SensitiveData | Subcategory .VulnerableComponent | Subcategory .XSS | Subcategory .XXE
60
+ case Subcategory .XSS | Subcategory .Input_validation | Subcategory .File_Access | Subcategory .HTTP |
61
+ Subcategory .Cookies | Subcategory .Unexpected_behaviour | Subcategory .Mass_assignment |
62
+ Subcategory .Insecure_Storage | Subcategory .Insecure_modules_libraries | Subcategory .Visibility |
63
+ Subcategory .CSRF | Subcategory .Android | Subcategory .Malicious_code | Subcategory .Cryptography |
64
+ Subcategory .Command_Injection | Subcategory .Firefox_OS | Subcategory .Auth | Subcategory .DoS |
65
+ Subcategory .SQL_Injection | Subcategory .Routes | Subcategory .Regex | Subcategory .SSL | Subcategory .Other
63
66
if category == Category .Security =>
64
67
spec
65
68
@@ -70,35 +73,40 @@ object Pattern {
70
73
}
71
74
}
72
75
73
- sealed trait Category
74
-
75
- object Category {
76
- case object Security extends Category
77
- case object CodeStyle extends Category
78
- case object ErrorProne extends Category
79
- case object Performance extends Category
80
- case object Compatibility extends Category
81
- case object UnusedCode extends Category
82
- case object Complexity extends Category
83
- case object BestPractice extends Category
84
- case object Comprehensibility extends Category
85
- case object Duplication extends Category
86
- case object Documentation extends Category
76
+ type Category = Category .Value
77
+
78
+ object Category extends Enumeration {
79
+
80
+ val Security, CodeStyle, ErrorProne, Performance, Compatibility, UnusedCode, Complexity, BestPractice ,
81
+ Comprehensibility , Duplication , Documentation = Value
87
82
}
88
83
89
- sealed trait Subcategory
90
-
91
- object Subcategory {
92
- case object Injection extends Subcategory
93
- case object BrokenAuth extends Subcategory
94
- case object SensitiveData extends Subcategory
95
- case object XXE extends Subcategory
96
- case object BrokenAccess extends Subcategory
97
- case object Misconfiguration extends Subcategory
98
- case object XSS extends Subcategory
99
- case object BadDeserialization extends Subcategory
100
- case object VulnerableComponent extends Subcategory
101
- case object NoLogging extends Subcategory
84
+ type Subcategory = Subcategory .Value
85
+
86
+ object Subcategory extends Enumeration {
87
+ val XSS = Value (" XSS" )
88
+ val Input_validation = Value (" Input validation" )
89
+ val File_Access = Value (" File Access" )
90
+ val HTTP = Value (" HTTP" )
91
+ val Cookies = Value (" Cookies" )
92
+ val Unexpected_behaviour = Value (" Unexpected behaviour" )
93
+ val Mass_assignment = Value (" Mass assignment" )
94
+ val Insecure_Storage = Value (" Insecure Storage" )
95
+ val Insecure_modules_libraries = Value (" Insecure modules/libraries" )
96
+ val Visibility = Value (" Visibility" )
97
+ val CSRF = Value (" CSRF" )
98
+ val Android = Value (" Android" )
99
+ val Malicious_code = Value (" Malicious code" )
100
+ val Cryptography = Value (" Cryptography" )
101
+ val Command_Injection = Value (" Command Injection" )
102
+ val Firefox_OS = Value (" Firefox OS" )
103
+ val Auth = Value (" Auth" )
104
+ val DoS = Value (" DoS" )
105
+ val SQL_Injection = Value (" SQL Injection" )
106
+ val Routes = Value (" Routes" )
107
+ val Regex = Value (" Regex" )
108
+ val SSL = Value (" SSL" )
109
+ val Other = Value (" Other" )
102
110
}
103
111
104
112
}
0 commit comments