diff --git a/analyzer/tests/functional/cmdline/test_cmdline.py b/analyzer/tests/functional/cmdline/test_cmdline.py index 5c52f1108a..4225f4d5d3 100644 --- a/analyzer/tests/functional/cmdline/test_cmdline.py +++ b/analyzer/tests/functional/cmdline/test_cmdline.py @@ -154,21 +154,21 @@ def test_checkers_guideline(self): """ Listing checkers by guideline. """ checkers_cmd = [env.codechecker_cmd(), 'checkers', - '--guideline', 'sei-cert'] + '--guideline', 'sei-cert-cpp'] _, out, _ = run_cmd(checkers_cmd) self.assertIn('cert-dcl58-cpp', out) self.assertNotIn('android', out) checkers_cmd = [env.codechecker_cmd(), 'checkers', - '--guideline', 'sei-cert:mem35-c'] + '--guideline', 'sei-cert-c:mem35-c'] _, out, _ = run_cmd(checkers_cmd) self.assertIn('MallocSizeof', out) self.assertNotIn('CastToStruct', out) checkers_cmd = [env.codechecker_cmd(), 'checkers', - '--guideline', 'sei-cert:mem35-c', '-o', 'json', + '--guideline', 'sei-cert-c:mem35-c', '-o', 'json', '--details'] _, out, _ = run_cmd(checkers_cmd) out = json.loads(out) diff --git a/config/guidelines/sei-cert.yaml b/config/guidelines/sei-cert-c.yaml similarity index 57% rename from config/guidelines/sei-cert.yaml rename to config/guidelines/sei-cert-c.yaml index 0d8cd31f5d..fe1c6c3399 100644 --- a/config/guidelines/sei-cert.yaml +++ b/config/guidelines/sei-cert-c.yaml @@ -1,172 +1,6 @@ -guideline: sei-cert -guideline_title: SEI CERT Coding Standard +guideline: sei-cert-c +guideline_title: SEI CERT Coding Standard (C) rules: -- rule_id: con50-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CON50-CPP.+Do+not+destroy+a+mutex+while+it+is+locked -- rule_id: con51-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CON51-CPP.+Ensure+actively+held+locks+are+released+on+exceptional+conditions -- rule_id: con52-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CON52-CPP.+Prevent+data+races+when+accessing+bit-fields+from+multiple+threads -- rule_id: con53-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CON53-CPP.+Avoid+deadlock+by+locking+in+a+predefined+order -- rule_id: con54-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CON54-CPP.+Wrap+functions+that+can+spuriously+wake+up+in+a+loop -- rule_id: con55-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CON55-CPP.+Preserve+thread+safety+and+liveness+when+using+condition+variables -- rule_id: con56-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CON56-CPP.+Do+not+speculatively+lock+a+non-recursive+mutex+that+is+already+owned+by+the+calling+thread -- rule_id: ctr50-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR50-CPP.+Guarantee+that+container+indices+and+iterators+are+within+the+valid+range -- rule_id: ctr51-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR51-CPP.+Use+valid+references%2C+pointers%2C+and+iterators+to+reference+elements+of+a+container -- rule_id: ctr52-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR52-CPP.+Guarantee+that+library+functions+do+not+overflow -- rule_id: ctr53-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR53-CPP.+Use+valid+iterator+ranges -- rule_id: ctr54-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR54-CPP.+Do+not+subtract+iterators+that+do+not+refer+to+the+same+container -- rule_id: ctr55-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR55-CPP.+Do+not+use+an+additive+operator+on+an+iterator+if+the+result+would+overflow -- rule_id: ctr56-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR56-CPP.+Do+not+use+pointer+arithmetic+on+polymorphic+objects -- rule_id: ctr57-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR57-CPP.+Provide+a+valid+ordering+predicate -- rule_id: ctr58-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR58-CPP.+Predicate+function+objects+should+not+be+mutable -- rule_id: dcl50-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL50-CPP.+Do+not+define+a+C-style+variadic+function -- rule_id: dcl51-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL51-CPP.+Do+not+declare+or+define+a+reserved+identifier -- rule_id: dcl52-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL52-CPP.+Never+qualify+a+reference+type+with+const+or+volatile -- rule_id: dcl53-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL53-CPP.+Do+not+write+syntactically+ambiguous+declarations -- rule_id: dcl54-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL54-CPP.+Overload+allocation+and+deallocation+functions+as+a+pair+in+the+same+scope -- rule_id: dcl55-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL55-CPP.+Avoid+information+leakage+when+passing+a+class+object+across+a+trust+boundary -- rule_id: dcl56-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL56-CPP.+Avoid+cycles+during+initialization+of+static+objects -- rule_id: dcl57-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL57-CPP.+Do+not+let+exceptions+escape+from+destructors+or+deallocation+functions -- rule_id: dcl58-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL58-CPP.+Do+not+modify+the+standard+namespaces -- rule_id: dcl59-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL59-CPP.+Do+not+define+an+unnamed+namespace+in+a+header+file -- rule_id: dcl60-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL60-CPP.+Obey+the+one-definition+rule -- rule_id: err50-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR50-CPP.+Do+not+abruptly+terminate+the+program -- rule_id: err51-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR51-CPP.+Handle+all+exceptions -- rule_id: err52-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?pageId=88046492 -- rule_id: err53-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR53-CPP.+Do+not+reference+base+classes+or+class+data+members+in+a+constructor+or+destructor+function-try-block+handler -- rule_id: err54-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR54-CPP.+Catch+handlers+should+order+their+parameter+types+from+most+derived+to+least+derived -- rule_id: err55-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR55-CPP.+Honor+exception+specifications -- rule_id: err56-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR56-CPP.+Guarantee+exception+safety -- rule_id: err57-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR57-CPP.+Do+not+leak+resources+when+handling+exceptions -- rule_id: err58-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR58-CPP.+Handle+all+exceptions+thrown+before+main%28%29+begins+executing -- rule_id: err59-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR59-CPP.+Do+not+throw+an+exception+across+execution+boundaries -- rule_id: err60-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR60-CPP.+Exception+objects+must+be+nothrow+copy+constructible -- rule_id: err61-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR61-CPP.+Catch+exceptions+by+lvalue+reference -- rule_id: err62-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR62-CPP.+Detect+errors+when+converting+a+string+to+a+number -- rule_id: exp50-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP50-CPP.+Do+not+depend+on+the+order+of+evaluation+for+side+effects -- rule_id: exp51-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP51-CPP.+Do+not+delete+an+array+through+a+pointer+of+the+incorrect+type -- rule_id: exp52-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP52-CPP.+Do+not+rely+on+side+effects+in+unevaluated+operands -- rule_id: exp53-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP53-CPP.+Do+not+read+uninitialized+memory -- rule_id: exp54-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP54-CPP.+Do+not+access+an+object+outside+of+its+lifetime -- rule_id: exp55-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP55-CPP.+Do+not+access+a+cv-qualified+object+through+a+cv-unqualified+type -- rule_id: exp56-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP56-CPP.+Do+not+call+a+function+with+a+mismatched+language+linkage -- rule_id: exp57-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP57-CPP.+Do+not+cast+or+delete+pointers+to+incomplete+classes -- rule_id: exp58-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP58-CPP.+Pass+an+object+of+the+correct+type+to+va_start -- rule_id: exp59-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP59-CPP.+Use+offsetof%28%29+on+valid+types+and+members -- rule_id: exp60-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP60-CPP.+Do+not+pass+a+nonstandard-layout+type+object+across+execution+boundaries -- rule_id: exp61-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP61-CPP.+A+lambda+object+must+not+outlive+any+of+its+reference+captured+objects -- rule_id: exp62-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP62-CPP.+Do+not+access+the+bits+of+an+object+representation+that+are+not+part+of+the+object%27s+value+representation -- rule_id: exp63-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP63-CPP.+Do+not+rely+on+the+value+of+a+moved-from+object -- rule_id: fio50-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/FIO50-CPP.+Do+not+alternately+input+and+output+from+a+file+stream+without+an+intervening+positioning+call -- rule_id: fio51-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/FIO51-CPP.+Close+files+when+they+are+no+longer+needed -- rule_id: int50-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/INT50-CPP.+Do+not+cast+to+an+out-of-range+enumeration+value -- rule_id: mem50-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM50-CPP.+Do+not+access+freed+memory -- rule_id: mem51-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM51-CPP.+Properly+deallocate+dynamically+allocated+resources -- rule_id: mem52-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM52-CPP.+Detect+and+handle+memory+allocation+errors -- rule_id: mem53-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM53-CPP.+Explicitly+construct+and+destruct+objects+when+manually+managing+object+lifetime -- rule_id: mem54-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM54-CPP.+Provide+placement+new+with+properly+aligned+pointers+to+sufficient+storage+capacity -- rule_id: mem55-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM55-CPP.+Honor+replacement+dynamic+storage+management+requirements -- rule_id: mem56-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM56-CPP.+Do+not+store+an+already-owned+pointer+value+in+an+unrelated+smart+pointer -- rule_id: mem57-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM57-CPP.+Avoid+using+default+operator+new+for+over-aligned+types -- rule_id: msc50-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MSC50-CPP.+Do+not+use+std%3A%3Arand%28%29+for+generating+pseudorandom+numbers -- rule_id: msc51-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MSC51-CPP.+Ensure+your+random+number+generator+is+properly+seeded -- rule_id: msc52-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MSC52-CPP.+Value-returning+functions+must+return+a+value+from+all+exit+paths -- rule_id: msc53-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?pageId=88046346 -- rule_id: msc54-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MSC54-CPP.+A+signal+handler+must+be+a+plain+old+function -- rule_id: oop50-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP50-CPP.+Do+not+invoke+virtual+functions+from+constructors+or+destructors -- rule_id: oop51-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP51-CPP.+Do+not+slice+derived+objects -- rule_id: oop52-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP52-CPP.+Do+not+delete+a+polymorphic+object+without+a+virtual+destructor -- rule_id: oop53-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP53-CPP.+Write+constructor+member+initializers+in+the+canonical+order -- rule_id: oop54-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP54-CPP.+Gracefully+handle+self-copy+assignment -- rule_id: oop55-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP55-CPP.+Do+not+use+pointer-to-member+operators+to+access+nonexistent+members -- rule_id: oop56-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP56-CPP.+Honor+replacement+handler+requirements -- rule_id: oop57-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP57-CPP.+Prefer+special+member+functions+and+overloaded+operators+to+C+Standard+Library+functions -- rule_id: oop58-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP58-CPP.+Copy+operations+must+not+mutate+the+source+object -- rule_id: str50-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/STR50-CPP.+Guarantee+that+storage+for+strings+has+sufficient+space+for+character+data+and+the+null+terminator -- rule_id: str51-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/STR51-CPP.+Do+not+attempt+to+create+a+std%3A%3Astring+from+a+null+pointer -- rule_id: str52-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/STR52-CPP.+Use+valid+references%2C+pointers%2C+and+iterators+to+reference+elements+of+a+basic_string -- rule_id: str53-cpp - rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/STR53-CPP.+Range+check+element+access - rule_id: arr30-c rule_url: https://wiki.sei.cmu.edu/confluence/display/c/ARR30-C.+Do+not+form+or+use+out-of-bounds+pointers+or+array+subscripts - rule_id: arr32-c diff --git a/config/guidelines/sei-cert-cpp.yaml b/config/guidelines/sei-cert-cpp.yaml new file mode 100644 index 0000000000..cd5b6cd7ef --- /dev/null +++ b/config/guidelines/sei-cert-cpp.yaml @@ -0,0 +1,169 @@ +guideline: sei-cert-cpp +guideline_title: SEI CERT Coding Standard (C++) +rules: +- rule_id: con50-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CON50-CPP.+Do+not+destroy+a+mutex+while+it+is+locked +- rule_id: con51-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CON51-CPP.+Ensure+actively+held+locks+are+released+on+exceptional+conditions +- rule_id: con52-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CON52-CPP.+Prevent+data+races+when+accessing+bit-fields+from+multiple+threads +- rule_id: con53-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CON53-CPP.+Avoid+deadlock+by+locking+in+a+predefined+order +- rule_id: con54-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CON54-CPP.+Wrap+functions+that+can+spuriously+wake+up+in+a+loop +- rule_id: con55-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CON55-CPP.+Preserve+thread+safety+and+liveness+when+using+condition+variables +- rule_id: con56-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CON56-CPP.+Do+not+speculatively+lock+a+non-recursive+mutex+that+is+already+owned+by+the+calling+thread +- rule_id: ctr50-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR50-CPP.+Guarantee+that+container+indices+and+iterators+are+within+the+valid+range +- rule_id: ctr51-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR51-CPP.+Use+valid+references%2C+pointers%2C+and+iterators+to+reference+elements+of+a+container +- rule_id: ctr52-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR52-CPP.+Guarantee+that+library+functions+do+not+overflow +- rule_id: ctr53-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR53-CPP.+Use+valid+iterator+ranges +- rule_id: ctr54-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR54-CPP.+Do+not+subtract+iterators+that+do+not+refer+to+the+same+container +- rule_id: ctr55-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR55-CPP.+Do+not+use+an+additive+operator+on+an+iterator+if+the+result+would+overflow +- rule_id: ctr56-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR56-CPP.+Do+not+use+pointer+arithmetic+on+polymorphic+objects +- rule_id: ctr57-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR57-CPP.+Provide+a+valid+ordering+predicate +- rule_id: ctr58-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR58-CPP.+Predicate+function+objects+should+not+be+mutable +- rule_id: dcl50-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL50-CPP.+Do+not+define+a+C-style+variadic+function +- rule_id: dcl51-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL51-CPP.+Do+not+declare+or+define+a+reserved+identifier +- rule_id: dcl52-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL52-CPP.+Never+qualify+a+reference+type+with+const+or+volatile +- rule_id: dcl53-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL53-CPP.+Do+not+write+syntactically+ambiguous+declarations +- rule_id: dcl54-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL54-CPP.+Overload+allocation+and+deallocation+functions+as+a+pair+in+the+same+scope +- rule_id: dcl55-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL55-CPP.+Avoid+information+leakage+when+passing+a+class+object+across+a+trust+boundary +- rule_id: dcl56-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL56-CPP.+Avoid+cycles+during+initialization+of+static+objects +- rule_id: dcl57-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL57-CPP.+Do+not+let+exceptions+escape+from+destructors+or+deallocation+functions +- rule_id: dcl58-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL58-CPP.+Do+not+modify+the+standard+namespaces +- rule_id: dcl59-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL59-CPP.+Do+not+define+an+unnamed+namespace+in+a+header+file +- rule_id: dcl60-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL60-CPP.+Obey+the+one-definition+rule +- rule_id: err50-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR50-CPP.+Do+not+abruptly+terminate+the+program +- rule_id: err51-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR51-CPP.+Handle+all+exceptions +- rule_id: err52-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?pageId=88046492 +- rule_id: err53-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR53-CPP.+Do+not+reference+base+classes+or+class+data+members+in+a+constructor+or+destructor+function-try-block+handler +- rule_id: err54-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR54-CPP.+Catch+handlers+should+order+their+parameter+types+from+most+derived+to+least+derived +- rule_id: err55-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR55-CPP.+Honor+exception+specifications +- rule_id: err56-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR56-CPP.+Guarantee+exception+safety +- rule_id: err57-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR57-CPP.+Do+not+leak+resources+when+handling+exceptions +- rule_id: err58-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR58-CPP.+Handle+all+exceptions+thrown+before+main%28%29+begins+executing +- rule_id: err59-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR59-CPP.+Do+not+throw+an+exception+across+execution+boundaries +- rule_id: err60-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR60-CPP.+Exception+objects+must+be+nothrow+copy+constructible +- rule_id: err61-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR61-CPP.+Catch+exceptions+by+lvalue+reference +- rule_id: err62-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR62-CPP.+Detect+errors+when+converting+a+string+to+a+number +- rule_id: exp50-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP50-CPP.+Do+not+depend+on+the+order+of+evaluation+for+side+effects +- rule_id: exp51-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP51-CPP.+Do+not+delete+an+array+through+a+pointer+of+the+incorrect+type +- rule_id: exp52-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP52-CPP.+Do+not+rely+on+side+effects+in+unevaluated+operands +- rule_id: exp53-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP53-CPP.+Do+not+read+uninitialized+memory +- rule_id: exp54-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP54-CPP.+Do+not+access+an+object+outside+of+its+lifetime +- rule_id: exp55-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP55-CPP.+Do+not+access+a+cv-qualified+object+through+a+cv-unqualified+type +- rule_id: exp56-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP56-CPP.+Do+not+call+a+function+with+a+mismatched+language+linkage +- rule_id: exp57-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP57-CPP.+Do+not+cast+or+delete+pointers+to+incomplete+classes +- rule_id: exp58-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP58-CPP.+Pass+an+object+of+the+correct+type+to+va_start +- rule_id: exp59-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP59-CPP.+Use+offsetof%28%29+on+valid+types+and+members +- rule_id: exp60-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP60-CPP.+Do+not+pass+a+nonstandard-layout+type+object+across+execution+boundaries +- rule_id: exp61-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP61-CPP.+A+lambda+object+must+not+outlive+any+of+its+reference+captured+objects +- rule_id: exp62-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP62-CPP.+Do+not+access+the+bits+of+an+object+representation+that+are+not+part+of+the+object%27s+value+representation +- rule_id: exp63-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP63-CPP.+Do+not+rely+on+the+value+of+a+moved-from+object +- rule_id: fio50-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/FIO50-CPP.+Do+not+alternately+input+and+output+from+a+file+stream+without+an+intervening+positioning+call +- rule_id: fio51-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/FIO51-CPP.+Close+files+when+they+are+no+longer+needed +- rule_id: int50-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/INT50-CPP.+Do+not+cast+to+an+out-of-range+enumeration+value +- rule_id: mem50-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM50-CPP.+Do+not+access+freed+memory +- rule_id: mem51-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM51-CPP.+Properly+deallocate+dynamically+allocated+resources +- rule_id: mem52-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM52-CPP.+Detect+and+handle+memory+allocation+errors +- rule_id: mem53-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM53-CPP.+Explicitly+construct+and+destruct+objects+when+manually+managing+object+lifetime +- rule_id: mem54-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM54-CPP.+Provide+placement+new+with+properly+aligned+pointers+to+sufficient+storage+capacity +- rule_id: mem55-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM55-CPP.+Honor+replacement+dynamic+storage+management+requirements +- rule_id: mem56-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM56-CPP.+Do+not+store+an+already-owned+pointer+value+in+an+unrelated+smart+pointer +- rule_id: mem57-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM57-CPP.+Avoid+using+default+operator+new+for+over-aligned+types +- rule_id: msc50-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MSC50-CPP.+Do+not+use+std%3A%3Arand%28%29+for+generating+pseudorandom+numbers +- rule_id: msc51-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MSC51-CPP.+Ensure+your+random+number+generator+is+properly+seeded +- rule_id: msc52-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MSC52-CPP.+Value-returning+functions+must+return+a+value+from+all+exit+paths +- rule_id: msc53-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?pageId=88046346 +- rule_id: msc54-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MSC54-CPP.+A+signal+handler+must+be+a+plain+old+function +- rule_id: oop50-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP50-CPP.+Do+not+invoke+virtual+functions+from+constructors+or+destructors +- rule_id: oop51-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP51-CPP.+Do+not+slice+derived+objects +- rule_id: oop52-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP52-CPP.+Do+not+delete+a+polymorphic+object+without+a+virtual+destructor +- rule_id: oop53-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP53-CPP.+Write+constructor+member+initializers+in+the+canonical+order +- rule_id: oop54-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP54-CPP.+Gracefully+handle+self-copy+assignment +- rule_id: oop55-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP55-CPP.+Do+not+use+pointer-to-member+operators+to+access+nonexistent+members +- rule_id: oop56-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP56-CPP.+Honor+replacement+handler+requirements +- rule_id: oop57-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP57-CPP.+Prefer+special+member+functions+and+overloaded+operators+to+C+Standard+Library+functions +- rule_id: oop58-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP58-CPP.+Copy+operations+must+not+mutate+the+source+object +- rule_id: str50-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/STR50-CPP.+Guarantee+that+storage+for+strings+has+sufficient+space+for+character+data+and+the+null+terminator +- rule_id: str51-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/STR51-CPP.+Do+not+attempt+to+create+a+std%3A%3Astring+from+a+null+pointer +- rule_id: str52-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/STR52-CPP.+Use+valid+references%2C+pointers%2C+and+iterators+to+reference+elements+of+a+basic_string +- rule_id: str53-cpp + rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/STR53-CPP.+Range+check+element+access \ No newline at end of file diff --git a/config/labels/analyzers/clang-tidy.json b/config/labels/analyzers/clang-tidy.json index 877e2020e0..ee1a6dacec 100644 --- a/config/labels/analyzers/clang-tidy.json +++ b/config/labels/analyzers/clang-tidy.json @@ -176,12 +176,12 @@ ], "bugprone-assert-side-effect": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/assert-side-effect.html", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:pre31-c", + "sei-cert-c:pre31-c", "severity:MEDIUM" ], "bugprone-assignment-in-if-condition": [ @@ -191,12 +191,12 @@ ], "bugprone-bad-signal-to-kill-thread": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/bad-signal-to-kill-thread.html", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:pos44-c", + "sei-cert-c:pos44-c", "severity:MEDIUM" ], "bugprone-bitwise-pointer-cast": [ @@ -278,13 +278,13 @@ ], "bugprone-exception-escape": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/exception-escape.html", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:dcl57-cpp", - "sei-cert:err55-cpp", - "sei-cert:msc53-cpp", + "sei-cert-cpp:dcl57-cpp", + "sei-cert-cpp:err55-cpp", + "sei-cert-cpp:msc53-cpp", "severity:MEDIUM" ], "bugprone-fold-init-type": [ @@ -365,20 +365,20 @@ ], "bugprone-macro-parentheses": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/macro-parentheses.html", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:extreme", "profile:security", - "sei-cert:pre02-c", + "sei-cert-c:pre02-c", "severity:MEDIUM" ], "bugprone-macro-repeated-side-effects": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/macro-repeated-side-effects.html", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:pre31-c", + "sei-cert-c:pre31-c", "severity:MEDIUM" ], "bugprone-misplaced-operator-in-strlen-in-alloc": [ @@ -418,16 +418,16 @@ ], "bugprone-multiple-new-in-one-expression": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/multiple-new-in-one-expression.html", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:err51-cpp", - "sei-cert:exp50-cpp", - "sei-cert:mem31-cpp", - "sei-cert:mem51-cpp", - "sei-cert:mem52-cpp", + "sei-cert-cpp:err51-cpp", + "sei-cert-cpp:exp50-cpp", + "sei-cert-cpp:mem31-cpp", + "sei-cert-cpp:mem51-cpp", + "sei-cert-cpp:mem52-cpp", "severity:HIGH" ], "bugprone-multiple-statement-macro": [ @@ -438,14 +438,14 @@ ], "bugprone-narrowing-conversions": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/narrowing-conversions.html", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:exp45-c", - "sei-cert:fio34-c", - "sei-cert:flp34-c", - "sei-cert:flp36-c", + "sei-cert-c:exp45-c", + "sei-cert-c:fio34-c", + "sei-cert-c:flp34-c", + "sei-cert-c:flp36-c", "severity:MEDIUM" ], "bugprone-no-escape": [ @@ -488,10 +488,10 @@ ], "bugprone-pointer-arithmetic-on-polymorphic-object": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/pointer-arithmetic-on-polymorphic-object.html", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:extreme", "profile:security", - "sei-cert:ctr56-cpp", + "sei-cert-cpp:ctr56-cpp", "severity:HIGH" ], "bugprone-posix-return": [ @@ -508,11 +508,12 @@ ], "bugprone-reserved-identifier": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/reserved-identifier.html", - "guideline:sei-cert", + "guideline:sei-cert-c", + "guideline:sei-cert-cpp", "profile:extreme", "profile:security", - "sei-cert:dcl37-c", - "sei-cert:dcl51-cpp", + "sei-cert-c:dcl37-c", + "sei-cert-cpp:dcl51-cpp", "severity:LOW" ], "bugprone-return-const-ref-from-parameter": [ @@ -523,33 +524,34 @@ ], "bugprone-shared-ptr-array-mismatch": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/shared-ptr-array-mismatch.html", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:mem51-cpp", + "sei-cert-cpp:mem51-cpp", "severity:HIGH" ], "bugprone-signal-handler": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/signal-handler.html", - "guideline:sei-cert", + "guideline:sei-cert-c", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:msc54-cpp", - "sei-cert:sig30-c", + "sei-cert-cpp:msc54-cpp", + "sei-cert-c:sig30-c", "severity:MEDIUM" ], "bugprone-signed-char-misuse": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/signed-char-misuse.html", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:str34-c", + "sei-cert-c:str34-c", "severity:MEDIUM" ], "bugprone-sizeof-container": [ @@ -561,22 +563,23 @@ ], "bugprone-sizeof-expression": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/sizeof-expression.html", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:mem35-c", + "sei-cert-c:mem35-c", "severity:HIGH" ], "bugprone-spuriously-wake-up-functions": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/spuriously-wake-up-functions.html", - "guideline:sei-cert", + "guideline:sei-cert-c", + "guideline:sei-cert-cpp", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:con36-c", - "sei-cert:con54-cpp", + "sei-cert-c:con36-c", + "sei-cert-cpp:con54-cpp", "severity:MEDIUM" ], "bugprone-standalone-empty": [ @@ -628,23 +631,23 @@ ], "bugprone-suspicious-memory-comparison": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/suspicious-memory-comparison.html", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:exp42-c", - "sei-cert:flp37-c", + "sei-cert-c:exp42-c", + "sei-cert-c:flp37-c", "severity:MEDIUM" ], "bugprone-suspicious-memset-usage": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/suspicious-memset-usage.html", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:int31-c", + "sei-cert-c:int31-c", "severity:HIGH" ], "bugprone-suspicious-missing-comma": [ @@ -656,12 +659,12 @@ ], "bugprone-suspicious-realloc-usage": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/suspicious-realloc-usage.html", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:err33-c", + "sei-cert-c:err33-c", "severity:HIGH" ], "bugprone-suspicious-semicolon": [ @@ -733,13 +736,13 @@ ], "bugprone-undefined-memory-manipulation": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/undefined-memory-manipulation.html", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:exp62-cpp", - "sei-cert:oop57-cpp", + "sei-cert-cpp:exp62-cpp", + "sei-cert-cpp:oop57-cpp", "severity:MEDIUM" ], "bugprone-undelegated-constructor": [ @@ -751,42 +754,42 @@ ], "bugprone-unhandled-exception-at-new": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/unhandled-exception-at-new.html", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:err51-cpp", - "sei-cert:mem52-cpp", + "sei-cert-cpp:err51-cpp", + "sei-cert-cpp:mem52-cpp", "severity:MEDIUM" ], "bugprone-unhandled-self-assignment": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/unhandled-self-assignment.html", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:oop54-cpp", + "sei-cert-cpp:oop54-cpp", "severity:MEDIUM" ], "bugprone-unique-ptr-array-mismatch": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/unique-ptr-array-mismatch.html", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:mem51-cpp", + "sei-cert-cpp:mem51-cpp", "severity:MEDIUM" ], "bugprone-unsafe-functions": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/unsafe-functions.html", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:msc24-c", - "sei-cert:msc33-c", + "sei-cert-c:msc24-c", + "sei-cert-c:msc33-c", "severity:LOW" ], "bugprone-unused-local-non-trivial-variable": [ @@ -804,22 +807,22 @@ ], "bugprone-unused-return-value": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/unused-return-value.html", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:err33-c", + "sei-cert-c:err33-c", "severity:MEDIUM" ], "bugprone-use-after-move": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/use-after-move.html", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:exp63-cpp", + "sei-cert-cpp:exp63-cpp", "severity:HIGH" ], "bugprone-virtual-near-miss": [ @@ -847,29 +850,29 @@ ], "cert-dcl03-c": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/dcl03-c.html", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:dcl03-c", + "sei-cert-c:dcl03-c", "severity:MEDIUM" ], "cert-dcl16-c": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/dcl16-c.html", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:dcl16-c", + "sei-cert-c:dcl16-c", "severity:STYLE" ], "cert-dcl21-cpp": [ "doc_url:https://releases.llvm.org/18.1.1/tools/clang/tools/extra/docs/clang-tidy/checks/cert/dcl21-cpp.html", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:dcl21-cpp", + "sei-cert-cpp:dcl21-cpp", "severity:LOW" ], "cert-dcl37-c": [ @@ -878,11 +881,11 @@ ], "cert-dcl50-cpp": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/dcl50-cpp.html", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:dcl50-cpp", + "sei-cert-cpp:dcl50-cpp", "severity:LOW" ], "cert-dcl51-cpp": [ @@ -895,12 +898,12 @@ ], "cert-dcl58-cpp": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/dcl58-cpp.html", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:dcl58-cpp", + "sei-cert-cpp:dcl58-cpp", "severity:HIGH" ], "cert-dcl59-cpp": [ @@ -909,11 +912,11 @@ ], "cert-env33-c": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/env33-c.html", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:env33-c", + "sei-cert-c:env33-c", "severity:MEDIUM" ], "cert-err09-cpp": [ @@ -922,48 +925,48 @@ ], "cert-err33-c": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/err33-c.html", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:err33-c", + "sei-cert-c:err33-c", "severity:MEDIUM" ], "cert-err34-c": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/err34-c.html", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:err34-c", + "sei-cert-c:err34-c", "severity:LOW" ], "cert-err52-cpp": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/err52-cpp.html", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:err52-cpp", + "sei-cert-cpp:err52-cpp", "severity:LOW" ], "cert-err58-cpp": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/err58-cpp.html", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:err58-cpp", + "sei-cert-cpp:err58-cpp", "severity:LOW" ], "cert-err60-cpp": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/err60-cpp.html", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:err60-cpp", + "sei-cert-cpp:err60-cpp", "severity:MEDIUM" ], "cert-err61-cpp": [ @@ -980,12 +983,12 @@ ], "cert-flp30-c": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/flp30-c.html", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:flp30-c", + "sei-cert-c:flp30-c", "severity:HIGH" ], "cert-flp37-c": [ @@ -998,12 +1001,12 @@ ], "cert-mem57-cpp": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/mem57-cpp.html", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:mem57-cpp", + "sei-cert-cpp:mem57-cpp", "severity:MEDIUM" ], "cert-msc24-c": [ @@ -1024,22 +1027,24 @@ ], "cert-msc50-cpp": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/msc50-cpp.html", - "guideline:sei-cert", + "guideline:sei-cert-c", + "guideline:sei-cert-cpp", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:msc30-c", - "sei-cert:msc50-cpp", + "sei-cert-c:msc30-c", + "sei-cert-cpp:msc50-cpp", "severity:LOW" ], "cert-msc51-cpp": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/msc51-cpp.html", - "guideline:sei-cert", + "guideline:sei-cert-c", + "guideline:sei-cert-cpp", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:msc32-c", - "sei-cert:msc51-cpp", + "sei-cert-c:msc32-c", + "sei-cert-cpp:msc51-cpp", "severity:MEDIUM" ], "cert-msc54-cpp": [ @@ -1048,12 +1053,12 @@ ], "cert-oop11-cpp": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/oop11-cpp.html", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:oop11-cpp", + "sei-cert-cpp:oop11-cpp", "severity:MEDIUM" ], "cert-oop54-cpp": [ @@ -1062,21 +1067,21 @@ ], "cert-oop57-cpp": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/oop57-cpp.html", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:oop57-cpp", + "sei-cert-cpp:oop57-cpp", "severity:HIGH" ], "cert-oop58-cpp": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/oop58-cpp.html", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:oop58-cpp", + "sei-cert-cpp:oop58-cpp", "severity:MEDIUM" ], "cert-pos44-c": [ @@ -1257,12 +1262,12 @@ ], "clang-diagnostic-array-bounds-pointer-arithmetic": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#warray-bounds-pointer-arithmetic", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:arr39-c", + "sei-cert-c:arr39-c", "severity:MEDIUM" ], "clang-diagnostic-array-parameter": [ @@ -1844,13 +1849,13 @@ ], "clang-diagnostic-conditional-uninitialized": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wconditional-uninitialized", - "guideline:sei-cert", + "guideline:sei-cert-c", "label-tool-skip:severity", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:exp33-c", + "sei-cert-c:exp33-c", "severity:HIGH" ], "clang-diagnostic-config-macros": [ @@ -1935,10 +1940,10 @@ ], "clang-diagnostic-dangling": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wdangling", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "label-tool-skip:severity", "profile:security", - "sei-cert:mem50-cpp", + "sei-cert-cpp:mem50-cpp", "severity:HIGH" ], "clang-diagnostic-dangling-else": [ @@ -1994,43 +1999,43 @@ ], "clang-diagnostic-delete-abstract-non-virtual-dtor": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wdelete-abstract-non-virtual-dtor", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:oop52-cpp", + "sei-cert-cpp:oop52-cpp", "severity:MEDIUM" ], "clang-diagnostic-delete-incomplete": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wdelete-incomplete", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:exp57-cpp", + "sei-cert-cpp:exp57-cpp", "severity:MEDIUM" ], "clang-diagnostic-delete-non-abstract-non-virtual-dtor": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wdelete-non-abstract-non-virtual-dtor", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "label-tool-skip:severity", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:oop52-cpp", + "sei-cert-cpp:oop52-cpp", "severity:MEDIUM" ], "clang-diagnostic-delete-non-virtual-dtor": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wdelete-non-virtual-dtor", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:oop52-cpp", + "sei-cert-cpp:oop52-cpp", "severity:MEDIUM" ], "clang-diagnostic-delimited-escape-sequence-extension": [ @@ -2256,12 +2261,12 @@ ], "clang-diagnostic-double-promotion": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wdouble-promotion", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:flp34-c", + "sei-cert-c:flp34-c", "severity:MEDIUM" ], "clang-diagnostic-dtor-name": [ @@ -2298,10 +2303,10 @@ ], "clang-diagnostic-dynamic-class-memaccess": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wdynamic-class-memaccess", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:security", - "sei-cert:exp62-cpp", - "sei-cert:oop57-cpp", + "sei-cert-cpp:exp62-cpp", + "sei-cert-cpp:oop57-cpp", "severity:MEDIUM" ], "clang-diagnostic-dynamic-exception-spec": [ @@ -2326,12 +2331,12 @@ ], "clang-diagnostic-embedded-directive": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wembedded-directive", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:pre32-c", + "sei-cert-c:pre32-c", "severity:MEDIUM" ], "clang-diagnostic-empty-body": [ @@ -2401,13 +2406,13 @@ ], "clang-diagnostic-exceptions": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wexceptions", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:err53-cpp", - "sei-cert:err54-cpp", + "sei-cert-cpp:err53-cpp", + "sei-cert-cpp:err54-cpp", "severity:MEDIUM" ], "clang-diagnostic-excess-initializers": [ @@ -2507,13 +2512,13 @@ ], "clang-diagnostic-float-conversion": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wfloat-conversion", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:flp32-c", - "sei-cert:flp34-c", + "sei-cert-c:flp32-c", + "sei-cert-c:flp34-c", "severity:MEDIUM" ], "clang-diagnostic-float-equal": [ @@ -2537,13 +2542,13 @@ ], "clang-diagnostic-format": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wformat", - "guideline:sei-cert", + "guideline:sei-cert-c", "label-tool-skip:severity", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:fio47-c", + "sei-cert-c:fio47-c", "severity:MEDIUM" ], "clang-diagnostic-format-extra-args": [ @@ -2573,29 +2578,29 @@ ], "clang-diagnostic-format-nonliteral": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wformat-nonliteral", - "guideline:sei-cert", + "guideline:sei-cert-c", "label-tool-skip:severity", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:fio30-c", + "sei-cert-c:fio30-c", "severity:MEDIUM" ], "clang-diagnostic-format-overflow": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wformat-overflow", - "guideline:sei-cert", + "guideline:sei-cert-c", "label-tool-skip:severity", "profile:security", - "sei-cert:mem35-c", + "sei-cert-c:mem35-c", "severity:HIGH" ], "clang-diagnostic-format-overflow-non-kprintf": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wformat-overflow-non-kprintf", - "guideline:sei-cert", + "guideline:sei-cert-c", "label-tool-skip:severity", "profile:security", - "sei-cert:mem35-c", + "sei-cert-c:mem35-c", "severity:HIGH" ], "clang-diagnostic-format-pedantic": [ @@ -2604,12 +2609,12 @@ ], "clang-diagnostic-format-security": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wformat-security", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:fio30-c", + "sei-cert-c:fio30-c", "severity:MEDIUM" ], "clang-diagnostic-format-signedness": [ @@ -2928,12 +2933,12 @@ ], "clang-diagnostic-implicit": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wimplicit", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:dcl31-c", + "sei-cert-c:dcl31-c", "severity:MEDIUM" ], "clang-diagnostic-implicit-atomic-properties": [ @@ -2970,30 +2975,30 @@ ], "clang-diagnostic-implicit-function-declaration": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wimplicit-function-declaration", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:dcl31-c", + "sei-cert-c:dcl31-c", "severity:HIGH" ], "clang-diagnostic-implicit-int": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wimplicit-int", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:dcl31-c", + "sei-cert-c:dcl31-c", "severity:HIGH" ], "clang-diagnostic-implicit-int-conversion": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wimplicit-int-conversion", - "guideline:sei-cert", + "guideline:sei-cert-c", "label-tool-skip:severity", "profile:security", - "sei-cert:int36-c", + "sei-cert-c:int36-c", "severity:MEDIUM" ], "clang-diagnostic-implicit-int-float-conversion": [ @@ -3042,10 +3047,10 @@ ], "clang-diagnostic-incompatible-function-pointer-types-strict": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wincompatible-function-pointer-types-strict", - "guideline:sei-cert", + "guideline:sei-cert-c", "label-tool-skip:severity", "profile:security", - "sei-cert:exp37-c", + "sei-cert-c:exp37-c", "severity:MEDIUM" ], "clang-diagnostic-incompatible-library-redeclaration": [ @@ -3062,22 +3067,22 @@ ], "clang-diagnostic-incompatible-pointer-types": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wincompatible-pointer-types", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:exp32-c", + "sei-cert-c:exp32-c", "severity:MEDIUM" ], "clang-diagnostic-incompatible-pointer-types-discards-qualifiers": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wincompatible-pointer-types-discards-qualifiers", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:exp32-c", + "sei-cert-c:exp32-c", "severity:MEDIUM" ], "clang-diagnostic-incompatible-property-type": [ @@ -3130,12 +3135,12 @@ ], "clang-diagnostic-infinite-recursion": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#winfinite-recursion", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:dcl56-cpp", + "sei-cert-cpp:dcl56-cpp", "severity:MEDIUM" ], "clang-diagnostic-init-self": [ @@ -3179,10 +3184,10 @@ ], "clang-diagnostic-int-conversion": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wint-conversion", - "guideline:sei-cert", + "guideline:sei-cert-c", "label-tool-skip:severity", "profile:security", - "sei-cert:int36-c", + "sei-cert-c:int36-c", "severity:HIGH" ], "clang-diagnostic-int-conversions": [ @@ -3242,9 +3247,9 @@ ], "clang-diagnostic-invalid-noreturn": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#winvalid-noreturn", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:security", - "sei-cert:msc53-cpp", + "sei-cert-cpp:msc53-cpp", "severity:MEDIUM" ], "clang-diagnostic-invalid-offsetof": [ @@ -3554,10 +3559,10 @@ ], "clang-diagnostic-mismatched-new-delete": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wmismatched-new-delete", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "label-tool-skip:severity", "profile:security", - "sei-cert:mem51-cpp", + "sei-cert-cpp:mem51-cpp", "severity:HIGH" ], "clang-diagnostic-mismatched-parameter-types": [ @@ -3795,12 +3800,12 @@ ], "clang-diagnostic-non-virtual-dtor": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wnon-virtual-dtor", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:oop52-cpp", + "sei-cert-cpp:oop52-cpp", "severity:MEDIUM" ], "clang-diagnostic-nonnull": [ @@ -4151,10 +4156,10 @@ ], "clang-diagnostic-over-aligned": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wover-aligned", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "label-tool-skip:severity", "profile:security", - "sei-cert:mem57-cpp", + "sei-cert-cpp:mem57-cpp", "severity:MEDIUM" ], "clang-diagnostic-overflow": [ @@ -4217,13 +4222,13 @@ ], "clang-diagnostic-parentheses": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wparentheses", - "guideline:sei-cert", + "guideline:sei-cert-c", "label-tool-skip:severity", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:exp45-c", + "sei-cert-c:exp45-c", "severity:MEDIUM" ], "clang-diagnostic-parentheses-equality": [ @@ -4306,10 +4311,10 @@ ], "clang-diagnostic-pointer-to-int-cast": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wpointer-to-int-cast", - "guideline:sei-cert", + "guideline:sei-cert-c", "label-tool-skip:severity", "profile:security", - "sei-cert:int36-c", + "sei-cert-c:int36-c", "severity:MEDIUM" ], "clang-diagnostic-pointer-type-mismatch": [ @@ -4581,12 +4586,12 @@ ], "clang-diagnostic-reorder-ctor": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wreorder-ctor", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:oop53-cpp", + "sei-cert-cpp:oop53-cpp", "severity:MEDIUM" ], "clang-diagnostic-reorder-init-list": [ @@ -4606,33 +4611,35 @@ ], "clang-diagnostic-reserved-identifier": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wreserved-identifier", - "guideline:sei-cert", + "guideline:sei-cert-c", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:dcl37-c", - "sei-cert:dcl51-cpp", + "sei-cert-c:dcl37-c", + "sei-cert-cpp:dcl51-cpp", "severity:MEDIUM" ], "clang-diagnostic-reserved-macro-identifier": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wreserved-macro-identifier", - "guideline:sei-cert", + "guideline:sei-cert-c", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:dcl37-c", - "sei-cert:dcl51-cpp", + "sei-cert-c:dcl37-c", + "sei-cert-cpp:dcl51-cpp", "severity:MEDIUM" ], "clang-diagnostic-reserved-module-identifier": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wreserved-module-identifier", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:dcl51-cpp", + "sei-cert-cpp:dcl51-cpp", "severity:MEDIUM" ], "clang-diagnostic-reserved-user-defined-literal": [ @@ -4657,14 +4664,15 @@ ], "clang-diagnostic-return-stack-address": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wreturn-stack-address", - "guideline:sei-cert", + "guideline:sei-cert-c", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:dcl30-c", - "sei-cert:exp54-cpp", - "sei-cert:exp61-cpp", + "sei-cert-c:dcl30-c", + "sei-cert-cpp:exp54-cpp", + "sei-cert-cpp:exp61-cpp", "severity:MEDIUM" ], "clang-diagnostic-return-std-move": [ @@ -4676,14 +4684,15 @@ ], "clang-diagnostic-return-type": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wreturn-type", - "guideline:sei-cert", + "guideline:sei-cert-c", + "guideline:sei-cert-cpp", "label-tool-skip:severity", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:msc37-c", - "sei-cert:msc52-cpp", + "sei-cert-c:msc37-c", + "sei-cert-cpp:msc52-cpp", "severity:MEDIUM" ], "clang-diagnostic-return-type-c-linkage": [ @@ -4745,13 +4754,13 @@ ], "clang-diagnostic-self-assign-overloaded": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wself-assign-overloaded", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "label-tool-skip:severity", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:oop54-cpp", + "sei-cert-cpp:oop54-cpp", "severity:MEDIUM" ], "clang-diagnostic-self-move": [ @@ -4906,14 +4915,14 @@ ], "clang-diagnostic-sometimes-uninitialized": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wsometimes-uninitialized", - "guideline:sei-cert", + "guideline:sei-cert-c", "label-tool-skip:severity", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:dcl41-c", - "sei-cert:exp33-c", + "sei-cert-c:dcl41-c", + "sei-cert-c:exp33-c", "severity:MEDIUM" ], "clang-diagnostic-source-mgr": [ @@ -4950,12 +4959,12 @@ ], "clang-diagnostic-static-in-inline": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wstatic-in-inline", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:msc40-c", + "sei-cert-c:msc40-c", "severity:MEDIUM" ], "clang-diagnostic-static-inline-explicit-instantiation": [ @@ -5366,12 +5375,12 @@ ], "clang-diagnostic-unevaluated-expression": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wunevaluated-expression", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:exp44-cpp", + "sei-cert-cpp:exp44-cpp", "severity:MEDIUM" ], "clang-diagnostic-unguarded-availability": [ @@ -5400,24 +5409,24 @@ ], "clang-diagnostic-uninitialized": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wuninitialized", - "guideline:sei-cert", + "guideline:sei-cert-c", "label-tool-skip:severity", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:exp33-c", + "sei-cert-c:exp33-c", "severity:HIGH" ], "clang-diagnostic-uninitialized-const-reference": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wuninitialized-const-reference", - "guideline:sei-cert", + "guideline:sei-cert-c", "label-tool-skip:severity", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:exp33-c", + "sei-cert-c:exp33-c", "severity:MEDIUM" ], "clang-diagnostic-unknown-argument": [ @@ -5516,12 +5525,12 @@ ], "clang-diagnostic-unsequenced": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wunsequenced", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:exp30-cpp", + "sei-cert-cpp:exp30-cpp", "severity:MEDIUM" ], "clang-diagnostic-unsupported-abi": [ @@ -5719,12 +5728,12 @@ ], "clang-diagnostic-user-defined-literals": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wuser-defined-literals", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:dcl51-cpp", + "sei-cert-cpp:dcl51-cpp", "severity:MEDIUM" ], "clang-diagnostic-user-defined-warnings": [ @@ -5736,11 +5745,12 @@ ], "clang-diagnostic-varargs": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wvarargs", - "guideline:sei-cert", + "guideline:sei-cert-c", + "guideline:sei-cert-cpp", "label-tool-skip:severity", "profile:security", - "sei-cert:exp47-c", - "sei-cert:exp58-cpp", + "sei-cert-c:exp47-c", + "sei-cert-cpp:exp58-cpp", "severity:MEDIUM" ], "clang-diagnostic-variadic-macros": [ @@ -5761,12 +5771,12 @@ ], "clang-diagnostic-vexing-parse": [ "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wvexing-parse", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:dcl53-cpp", + "sei-cert-cpp:dcl53-cpp", "severity:MEDIUM" ], "clang-diagnostic-visibility": [ @@ -5842,19 +5852,19 @@ ], "concurrency-mt-unsafe": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/concurrency/mt-unsafe.html", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:security", - "sei-cert:con33-c", + "sei-cert-c:con33-c", "severity:MEDIUM" ], "concurrency-thread-canceltype-asynchronous": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/concurrency/thread-canceltype-asynchronous.html", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:pos47-c", + "sei-cert-c:pos47-c", "severity:MEDIUM" ], "cppcoreguidelines-avoid-c-arrays": [ @@ -6000,11 +6010,11 @@ ], "cppcoreguidelines-pro-type-const-cast": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/pro-type-const-cast.html", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:exp55-cpp", + "sei-cert-cpp:exp55-cpp", "severity:LOW" ], "cppcoreguidelines-pro-type-cstyle-cast": [ @@ -6046,11 +6056,11 @@ ], "cppcoreguidelines-slicing": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/slicing.html", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:oop51-cpp", + "sei-cert-cpp:oop51-cpp", "severity:LOW" ], "cppcoreguidelines-special-member-functions": [ @@ -6109,12 +6119,12 @@ ], "google-build-namespaces": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/google/build-namespaces.html", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:dcl59-cpp", + "sei-cert-cpp:dcl59-cpp", "severity:MEDIUM" ], "google-build-using-namespace": [ @@ -6412,12 +6422,12 @@ ], "misc-assert-side-effect": [ "doc_url:https://releases.llvm.org/6.0.1/tools/clang/tools/extra/docs/clang-tidy/checks/misc-assert-side-effect.html", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:pre31-c", + "sei-cert-c:pre31-c", "severity:MEDIUM" ], "misc-bool-pointer-implicit-conversion": [ @@ -6591,20 +6601,20 @@ ], "misc-new-delete-overloads": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/misc/new-delete-overloads.html", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:dcl54-cpp", + "sei-cert-cpp:dcl54-cpp", "severity:MEDIUM" ], "misc-no-recursion": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/misc/no-recursion.html", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:extreme", "profile:security", - "sei-cert:dcl56-cpp", + "sei-cert-cpp:dcl56-cpp", "severity:LOW" ], "misc-noexcept-move-constructor": [ @@ -6614,12 +6624,12 @@ ], "misc-non-copyable-objects": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/misc/non-copyable-objects.html", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:fio38-c", + "sei-cert-c:fio38-c", "severity:HIGH" ], "misc-non-private-member-variables-in-classes": [ @@ -6643,12 +6653,12 @@ ], "misc-sizeof-expression": [ "doc_url:https://releases.llvm.org/6.0.1/tools/clang/tools/extra/docs/clang-tidy/checks/misc-sizeof-expression.html", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:arr39-c", + "sei-cert-c:arr39-c", "severity:HIGH" ], "misc-static-assert": [ @@ -6719,13 +6729,13 @@ ], "misc-throw-by-value-catch-by-reference": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/misc/throw-by-value-catch-by-reference.html", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:err09-cpp", - "sei-cert:err61-cpp", + "sei-cert-cpp:err09-cpp", + "sei-cert-cpp:err61-cpp", "severity:HIGH" ], "misc-unconventional-assign-operator": [ @@ -6773,12 +6783,12 @@ ], "misc-use-after-move": [ "doc_url:https://releases.llvm.org/6.0.1/tools/clang/tools/extra/docs/clang-tidy/checks/misc-use-after-move.html", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:exp63-cpp", + "sei-cert-cpp:exp63-cpp", "severity:HIGH" ], "misc-use-anonymous-namespace": [ @@ -7269,11 +7279,11 @@ ], "readability-enum-initial-value": [ "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/enum-initial-value.html", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:int09-c", + "sei-cert-c:int09-c", "severity:LOW" ], "readability-function-cognitive-complexity": [ diff --git a/config/labels/analyzers/clangsa.json b/config/labels/analyzers/clangsa.json index 0741636245..99a7d67bc3 100644 --- a/config/labels/analyzers/clangsa.json +++ b/config/labels/analyzers/clangsa.json @@ -322,30 +322,31 @@ ], "core.BitwiseShift": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#core-bitwiseshift-c-c", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:int32-c", - "sei-cert:int34-c", + "sei-cert-c:int32-c", + "sei-cert-c:int34-c", "severity:HIGH" ], "core.CallAndMessage": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#core-callandmessage-c-c-objc", - "guideline:sei-cert", + "guideline:sei-cert-c", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:dcl41-c", - "sei-cert:exp30-c", - "sei-cert:exp33-c", - "sei-cert:exp34-c", - "sei-cert:exp39-c", - "sei-cert:exp50-cpp", - "sei-cert:exp53-cpp", - "sei-cert:exp54-cpp", + "sei-cert-c:dcl41-c", + "sei-cert-c:exp30-c", + "sei-cert-c:exp33-c", + "sei-cert-c:exp34-c", + "sei-cert-c:exp39-c", + "sei-cert-cpp:exp50-cpp", + "sei-cert-cpp:exp53-cpp", + "sei-cert-cpp:exp54-cpp", "severity:HIGH" ], "core.CallAndMessageModeling": [ @@ -355,12 +356,12 @@ ], "core.DivideZero": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#core-dividezero-c-c-objc", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:int33-c", + "sei-cert-c:int33-c", "severity:HIGH" ], "core.DynamicTypePropagation": [ @@ -371,12 +372,12 @@ ], "core.NonNullParamChecker": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#core-nonnullparamchecker-c-c-objc", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:exp34-c", + "sei-cert-c:exp34-c", "severity:HIGH" ], "core.NonnilStringConstants": [ @@ -386,55 +387,58 @@ ], "core.NullDereference": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#core-nulldereference-c-c-objc", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:exp34-c", + "sei-cert-c:exp34-c", "severity:HIGH" ], "core.StackAddrEscapeBase": [ - "guideline:sei-cert", + "guideline:sei-cert-c", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:dcl30-c", - "sei-cert:exp54-cpp", - "sei-cert:exp61-cpp" + "sei-cert-c:dcl30-c", + "sei-cert-cpp:exp54-cpp", + "sei-cert-cpp:exp61-cpp" ], "core.StackAddressEscape": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#core-stackaddressescape-c", - "guideline:sei-cert", + "guideline:sei-cert-c", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:dcl30-c", - "sei-cert:exp54-cpp", - "sei-cert:exp61-cpp", + "sei-cert-c:dcl30-c", + "sei-cert-cpp:exp54-cpp", + "sei-cert-cpp:exp61-cpp", "severity:HIGH" ], "core.UndefinedBinaryOperatorResult": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#core-undefinedbinaryoperatorresult-c", - "guideline:sei-cert", + "guideline:sei-cert-c", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:exp33-c", - "sei-cert:exp50-cpp", + "sei-cert-c:exp33-c", + "sei-cert-cpp:exp50-cpp", "severity:HIGH" ], "core.VLASize": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#core-vlasize-c", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:arr32-c", + "sei-cert-c:arr32-c", "severity:HIGH" ], "core.builtin.BuiltinFunctions": [ @@ -451,125 +455,125 @@ ], "core.uninitialized.ArraySubscript": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#core-uninitialized-arraysubscript-c", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:exp33-c", + "sei-cert-c:exp33-c", "severity:HIGH" ], "core.uninitialized.Assign": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#core-uninitialized-assign-c", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:exp33-c", + "sei-cert-c:exp33-c", "severity:HIGH" ], "core.uninitialized.Branch": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#core-uninitialized-branch-c", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:exp33-c", + "sei-cert-c:exp33-c", "severity:HIGH" ], "core.uninitialized.CapturedBlockVariable": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#core-uninitialized-capturedblockvariable-c", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:exp33-c", + "sei-cert-c:exp33-c", "severity:HIGH" ], "core.uninitialized.NewArraySize": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#core-uninitialized-newarraysize-c", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:exp33-c", + "sei-cert-c:exp33-c", "severity:HIGH" ], "core.uninitialized.UndefReturn": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#core-uninitialized-undefreturn-c", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:oop53-cpp", + "sei-cert-cpp:oop53-cpp", "severity:HIGH" ], "cplusplus.ArrayDelete": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#cplusplus-arraydelete-c", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:exp51-cpp", + "sei-cert-cpp:exp51-cpp", "severity:HIGH" ], "cplusplus.InnerPointer": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#cplusplus-innerpointer-c", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:mem50-cpp", - "sei-cert:str52-cpp", + "sei-cert-cpp:mem50-cpp", + "sei-cert-cpp:str52-cpp", "severity:HIGH" ], "cplusplus.Move": [ - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:exp63-cpp", + "sei-cert-cpp:exp63-cpp", "severity:HIGH" ], "cplusplus.NewDelete": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#cplusplus-newdelete-c", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:exp54-cpp", - "sei-cert:mem50-cpp", - "sei-cert:mem51-cpp", - "sei-cert:oop54-cpp", + "sei-cert-cpp:exp54-cpp", + "sei-cert-cpp:mem50-cpp", + "sei-cert-cpp:mem51-cpp", + "sei-cert-cpp:oop54-cpp", "severity:HIGH" ], "cplusplus.NewDeleteLeaks": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#cplusplus-newdeleteleaks-c", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:mem51-cpp", + "sei-cert-cpp:mem51-cpp", "severity:HIGH" ], "cplusplus.PlacementNew": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#cplusplus-placementnew-c", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:mem54-cpp", + "sei-cert-cpp:mem54-cpp", "severity:HIGH" ], "cplusplus.PureVirtualCall": [ @@ -580,12 +584,12 @@ ], "cplusplus.SelfAssignment": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#cplusplus-selfassignment-c", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:oop54-cpp", + "sei-cert-cpp:oop54-cpp", "severity:MEDIUM" ], "cplusplus.SmartPtrModeling": [ @@ -595,12 +599,12 @@ ], "cplusplus.StringChecker": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#cplusplus-stringchecker-c", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:str51-cpp", + "sei-cert-cpp:str51-cpp", "severity:HIGH" ], "cplusplus.VirtualCallModeling": [ @@ -610,12 +614,12 @@ ], "deadcode.DeadStores": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#deadcode-deadstores-c", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:msc12-c", + "sei-cert-c:msc12-c", "severity:LOW" ], "debug.AnalysisOrder": [ @@ -709,11 +713,11 @@ ], "optin.core.EnumCastOutOfRange": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#optin-core-enumcastoutofrange-c-c", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:mem54-cpp", + "sei-cert-cpp:mem54-cpp", "severity:MEDIUM" ], "optin.cplusplus.UninitializedObject": [ @@ -725,12 +729,12 @@ ], "optin.cplusplus.VirtualCall": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#optin-cplusplus-virtualcall-c", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:oop50-cpp", + "sei-cert-cpp:oop50-cpp", "severity:MEDIUM" ], "optin.mpi.MPI-Checker": [ @@ -761,13 +765,13 @@ ], "optin.portability.UnixAPI": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#optin-portability-unixapi", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:portability", "profile:security", "profile:sensitive", - "sei-cert:mem30-c", + "sei-cert-c:mem30-c", "severity:MEDIUM" ], "optin.taint.GenericTaint": [ @@ -881,12 +885,12 @@ ], "security.FloatLoopCounter": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#security-floatloopcounter-c", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:flp30-c", + "sei-cert-c:flp30-c", "severity:MEDIUM" ], "security.MmapWriteExec": [ @@ -899,43 +903,43 @@ ], "security.PointerSub": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#security-pointersub-c", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:arr36-c", + "sei-cert-c:arr36-c", "severity:HIGH" ], "security.PutenvStackArray": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#security-putenvstackarray-c", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:pos34-c", + "sei-cert-c:pos34-c", "severity:HIGH" ], "security.SetgidSetuidOrder": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#security-setgidsetuidorder-c", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:pos36-c", + "sei-cert-c:pos36-c", "severity:MEDIUM" ], "security.cert.env.InvalidPtr": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#security-cert-env-invalidptr", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:env31-c", - "sei-cert:env34-c", + "sei-cert-c:env31-c", + "sei-cert-c:env34-c", "severity:MEDIUM" ], "security.insecureAPI.DeprecatedOrUnsafeBufferHandling": [ @@ -980,12 +984,12 @@ ], "security.insecureAPI.gets": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#security-insecureapi-gets-c", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:str31-c", + "sei-cert-c:str31-c", "severity:MEDIUM" ], "security.insecureAPI.mkstemp": [ @@ -1011,30 +1015,30 @@ ], "security.insecureAPI.strcpy": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#security-insecureapi-strcpy-c", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:extreme", "profile:security", - "sei-cert:str31-c", + "sei-cert-c:str31-c", "severity:MEDIUM" ], "security.insecureAPI.vfork": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#security-insecureapi-vfork-c", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:pos33-c", + "sei-cert-c:pos33-c", "severity:MEDIUM" ], "unix.API": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#unix-api-c", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:exp37-c", + "sei-cert-c:exp37-c", "severity:MEDIUM" ], "unix.Chroot": [ @@ -1050,87 +1054,87 @@ ], "unix.Errno": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#unix-errno-c", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:err30-c", + "sei-cert-c:err30-c", "severity:HIGH" ], "unix.Malloc": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#unix-malloc-c", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:mem30-c", - "sei-cert:mem31-c", - "sei-cert:mem34-c", - "sei-cert:mem35-c", - "sei-cert:mem36-c", + "sei-cert-c:mem30-c", + "sei-cert-c:mem31-c", + "sei-cert-c:mem34-c", + "sei-cert-c:mem35-c", + "sei-cert-c:mem36-c", "severity:MEDIUM" ], "unix.MallocSizeof": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#unix-mallocsizeof-c", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:mem35-c", + "sei-cert-c:mem35-c", "severity:MEDIUM" ], "unix.MismatchedDeallocator": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#unix-mismatcheddeallocator-c-c", - "guideline:sei-cert", + "guideline:sei-cert-cpp", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:mem51-cpp", + "sei-cert-cpp:mem51-cpp", "severity:MEDIUM" ], "unix.StdCLibraryFunctions": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#unix-stdclibraryfunctions-c", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:arr38-c", - "sei-cert:err33-c", - "sei-cert:pos52-c", + "sei-cert-c:arr38-c", + "sei-cert-c:err33-c", + "sei-cert-c:pos52-c", "severity:HIGH" ], "unix.Stream": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#unix-stream-c", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:fio42-c", + "sei-cert-c:fio42-c", "severity:MEDIUM" ], "unix.Vfork": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#unix-vfork-c", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:pos33-c", + "sei-cert-c:pos33-c", "severity:MEDIUM" ], "unix.cstring.BadSizeArg": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#unix-cstring-badsizearg-c", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:str31-c", + "sei-cert-c:str31-c", "severity:MEDIUM" ], "unix.cstring.CStringModeling": [ @@ -1140,12 +1144,12 @@ ], "unix.cstring.NullArg": [ "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#unix-cstring-nullarg-c", - "guideline:sei-cert", + "guideline:sei-cert-c", "profile:default", "profile:extreme", "profile:security", "profile:sensitive", - "sei-cert:exp34-c", + "sei-cert-c:exp34-c", "severity:HIGH" ], "valist.CopyToSelf": [ diff --git a/config/labels/descriptions.json b/config/labels/descriptions.json index 5b62fbf509..b3f6b3a471 100644 --- a/config/labels/descriptions.json +++ b/config/labels/descriptions.json @@ -15,7 +15,8 @@ "UNSPECIFIED": "Checker severity is not specified for a checker." }, "guideline": { - "sei-cert": "https://wiki.sei.cmu.edu/confluence/display/seccode", + "sei-cert-c": "https://wiki.sei.cmu.edu/confluence/display/c/SEI+CERT+C+Coding+Standard", + "sei-cert-cpp": "https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?pageId=88046682", "misra-c": "https://www.misra.org.uk/" } } \ No newline at end of file diff --git a/web/server/vue-cli/src/components/Statistics/Guideline/GuidelineStatistics.vue b/web/server/vue-cli/src/components/Statistics/Guideline/GuidelineStatistics.vue index 11bdd5d1ff..25e06afb0f 100644 --- a/web/server/vue-cli/src/components/Statistics/Guideline/GuidelineStatistics.vue +++ b/web/server/vue-cli/src/components/Statistics/Guideline/GuidelineStatistics.vue @@ -46,7 +46,7 @@ icon="mdi-information" class="mt-2" > - In this statistics only the "Run / Tag Filter" + In this statistics only the "Run / Tag Filter" and the "Unique reports" are effective. @@ -54,7 +54,7 @@ - The guideline statistics is not available + The guideline statistics is not available for run.runName); }, - selectedGuidelines() { - return this.selectedGuidelineNames.map(guidelineName => new Guideline({ - guidelineName: guidelineName.id + selectedGuidelines() { + return this.selectedGuidelineIndexes.map(idx => new Guideline({ + guidelineName: this.guidelineOptions[idx].id })); } }, @@ -231,7 +237,7 @@ export default { outstanding: stat[checkerId].outstanding.toNumber(), }; }) - : (rule.checkers.length ? + : (rule.checkers.length ? rule.checkers.map(checker => { return { name: checker.checkerName, @@ -307,7 +313,7 @@ export default { async getRunData() { const limit = MAX_QUERY_SIZE; let offset = 0; - + const filter = new RunFilter({ ids: this.runIds }); @@ -334,7 +340,7 @@ export default { }); runs.push(...limitedRuns); } - + return runs; }, @@ -379,7 +385,7 @@ export default { return null; } }))).filter(element => element !== null); - + this.runs = runs; this.loading = false; }, diff --git a/web/server/vue-cli/src/views/NewFeatures.vue b/web/server/vue-cli/src/views/NewFeatures.vue index b53e6b4580..7b10bedcdc 100644 --- a/web/server/vue-cli/src/views/NewFeatures.vue +++ b/web/server/vue-cli/src/views/NewFeatures.vue @@ -1326,7 +1326,7 @@ analyzer: -