mirror of
https://github.com/ysoftdevs/DependencyCheck.git
synced 2026-04-30 04:04:30 +02:00
version 1.3.3 of the site documentation
This commit is contained in:
@@ -12,7 +12,7 @@
|
||||
<div class="separator"> </div>
|
||||
<table class="report">
|
||||
<thead><tr> <td class="heading">Classes in this File</td> <td class="heading"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">Line Coverage</a></td> <td class="heading"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">Branch Coverage</a></td> <td class="heading"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">Complexity</a></td></tr></thead>
|
||||
<tr><td><a href="org.owasp.dependencycheck.analyzer.CPEAnalyzer.html">CPEAnalyzer</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">78%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:78px"><span class="text">178/227</span></div></div></td></tr></table></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">70%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:70px"><span class="text">93/132</span></div></div></td></tr></table></td><td class="value"><span class="hidden">4.571428571428571;</span>4.571</td></tr>
|
||||
<tr><td><a href="org.owasp.dependencycheck.analyzer.CPEAnalyzer.html">CPEAnalyzer</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">80%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:80px"><span class="text">182/227</span></div></div></td></tr></table></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">73%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:73px"><span class="text">97/132</span></div></div></td></tr></table></td><td class="value"><span class="hidden">4.571428571428571;</span>4.571</td></tr>
|
||||
<tr><td><a href="org.owasp.dependencycheck.analyzer.CPEAnalyzer.html">CPEAnalyzer$IdentifierConfidence</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">100%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:100px"><span class="text">4/4</span></div></div></td></tr></table></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">N/A</a></td><td class="percentgraph"><div class="percentgraph"><div class="na" style="width:100px"><span class="text"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">N/A</a></span></div></div></td></tr></table></td><td class="value"><span class="hidden">4.571428571428571;</span>4.571</td></tr>
|
||||
<tr><td><a href="org.owasp.dependencycheck.analyzer.CPEAnalyzer.html">CPEAnalyzer$IdentifierMatch</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">38%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:38px"><span class="text">15/39</span></div></div></td></tr></table></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">16%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:16px"><span class="text">4/24</span></div></div></td></tr></table></td><td class="value"><span class="hidden">4.571428571428571;</span>4.571</td></tr>
|
||||
|
||||
@@ -376,15 +376,15 @@
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 198</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src"> <span class="keyword">boolean</span> identifierAdded = <span class="keyword">false</span>;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 199</td> <td class="nbHitsCovered"><a title="Line 199: Conditional coverage 100% (2/2)."> 6</a></td> <td class="src"><pre class="src"> <a title="Line 199: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (IndexEntry e : entries) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 200</td> <td class="nbHitsCovered"> 23</td> <td class="src"><pre class="src"> LOGGER.debug(<span class="string">"Verifying entry: {}"</span>, e);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 201</td> <td class="nbHitsCovered"><a title="Line 201: Conditional coverage 100% (2/2)."> 23</a></td> <td class="src"><pre class="src"> <a title="Line 201: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (verifyEntry(e, dependency)) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 202</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> <span class="keyword">final</span> String vendor = e.getVendor();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 203</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> <span class="keyword">final</span> String product = e.getProduct();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 204</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> LOGGER.debug(<span class="string">"identified vendor/product: {}/{}"</span>, vendor, product);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 205</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> identifierAdded |= determineIdentifiers(dependency, vendor, product, confidence);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 200</td> <td class="nbHitsCovered"> 43</td> <td class="src"><pre class="src"> LOGGER.debug(<span class="string">"Verifying entry: {}"</span>, e);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 201</td> <td class="nbHitsCovered"><a title="Line 201: Conditional coverage 100% (2/2)."> 43</a></td> <td class="src"><pre class="src"> <a title="Line 201: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (verifyEntry(e, dependency)) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 202</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> <span class="keyword">final</span> String vendor = e.getVendor();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 203</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> <span class="keyword">final</span> String product = e.getProduct();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 204</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> LOGGER.debug(<span class="string">"identified vendor/product: {}/{}"</span>, vendor, product);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 205</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> identifierAdded |= determineIdentifiers(dependency, vendor, product, confidence);</pre></td></tr>
|
||||
<tr> <td class="numLine"> 206</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 207</td> <td class="nbHitsCovered"> 23</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 207</td> <td class="nbHitsCovered"> 43</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 208</td> <td class="nbHitsCovered"><a title="Line 208: Conditional coverage 100% (2/2)."> 6</a></td> <td class="src"><pre class="src"> <a title="Line 208: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (identifierAdded) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 209</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src"> <span class="keyword">break</span>;</pre></td></tr>
|
||||
<tr> <td class="numLine"> 210</td> <td class="nbHits"> </td>
|
||||
@@ -496,13 +496,13 @@
|
||||
<tr> <td class="numLineCover"> 272</td> <td class="nbHitsCovered"> 6</td> <td class="src"><pre class="src"> <span class="keyword">final</span> TopDocs docs = cpe.search(searchString, MAX_QUERY_RESULTS);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 273</td> <td class="nbHitsCovered"><a title="Line 273: Conditional coverage 100% (2/2)."> 156</a></td> <td class="src"><pre class="src"> <a title="Line 273: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (ScoreDoc d : docs.scoreDocs) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 274</td> <td class="nbHitsCovered"><a title="Line 274: Conditional coverage 100% (2/2)."> 150</a></td> <td class="src"><pre class="src"> <a title="Line 274: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (d.score >= 0.08) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 275</td> <td class="nbHitsCovered"> 23</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Document doc = cpe.getDocument(d.doc);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 276</td> <td class="nbHitsCovered"> 23</td> <td class="src"><pre class="src"> <span class="keyword">final</span> IndexEntry entry = <span class="keyword">new</span> IndexEntry();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 277</td> <td class="nbHitsCovered"> 23</td> <td class="src"><pre class="src"> entry.setVendor(doc.get(Fields.VENDOR));</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 278</td> <td class="nbHitsCovered"> 23</td> <td class="src"><pre class="src"> entry.setProduct(doc.get(Fields.PRODUCT));</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 279</td> <td class="nbHitsCovered"> 23</td> <td class="src"><pre class="src"> entry.setSearchScore(d.score);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 280</td> <td class="nbHitsUncovered"><a title="Line 280: Conditional coverage 50% (1/2)."> 23</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 280: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!ret.contains(entry)) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 281</td> <td class="nbHitsCovered"> 23</td> <td class="src"><pre class="src"> ret.add(entry);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 275</td> <td class="nbHitsCovered"> 43</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Document doc = cpe.getDocument(d.doc);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 276</td> <td class="nbHitsCovered"> 43</td> <td class="src"><pre class="src"> <span class="keyword">final</span> IndexEntry entry = <span class="keyword">new</span> IndexEntry();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 277</td> <td class="nbHitsCovered"> 43</td> <td class="src"><pre class="src"> entry.setVendor(doc.get(Fields.VENDOR));</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 278</td> <td class="nbHitsCovered"> 43</td> <td class="src"><pre class="src"> entry.setProduct(doc.get(Fields.PRODUCT));</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 279</td> <td class="nbHitsCovered"> 43</td> <td class="src"><pre class="src"> entry.setSearchScore(d.score);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 280</td> <td class="nbHitsUncovered"><a title="Line 280: Conditional coverage 50% (1/2)."> 43</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 280: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (!ret.contains(entry)) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 281</td> <td class="nbHitsCovered"> 43</td> <td class="src"><pre class="src"> ret.add(entry);</pre></td></tr>
|
||||
<tr> <td class="numLine"> 282</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 283</td> <td class="nbHits"> </td>
|
||||
@@ -717,22 +717,22 @@
|
||||
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 414</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="keyword">private</span> <span class="keyword">boolean</span> verifyEntry(<span class="keyword">final</span> IndexEntry entry, <span class="keyword">final</span> Dependency dependency) {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 415</td> <td class="nbHitsCovered"> 23</td> <td class="src"><pre class="src"> <span class="keyword">boolean</span> isValid = <span class="keyword">false</span>;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 415</td> <td class="nbHitsCovered"> 43</td> <td class="src"><pre class="src"> <span class="keyword">boolean</span> isValid = <span class="keyword">false</span>;</pre></td></tr>
|
||||
<tr> <td class="numLine"> 416</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLine"> 417</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">//TODO - does this nullify some of the fuzzy matching that happens in the lucene search?</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 418</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">// for instance CPE some-component and in the evidence we have SomeComponent.</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 419</td> <td class="nbHitsUncovered"><a title="Line 419: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 23</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 419: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> <span class="keyword">if</span> (collectionContainsString(dependency.getProductEvidence(), entry.getProduct())</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 419</td> <td class="nbHitsCovered"><a title="Line 419: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 43</a></td> <td class="src"><pre class="src"> <a title="Line 419: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (collectionContainsString(dependency.getProductEvidence(), entry.getProduct())</a></pre></td></tr>
|
||||
<tr> <td class="numLine"> 420</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> && collectionContainsString(dependency.getVendorEvidence(), entry.getVendor())) {</pre></td></tr>
|
||||
<tr> <td class="numLine"> 421</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">//&& collectionContainsVersion(dependency.getVersionEvidence(), entry.getVersion())</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 422</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> isValid = <span class="keyword">true</span>;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 422</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> isValid = <span class="keyword">true</span>;</pre></td></tr>
|
||||
<tr> <td class="numLine"> 423</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 424</td> <td class="nbHitsCovered"> 23</td> <td class="src"><pre class="src"> <span class="keyword">return</span> isValid;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 424</td> <td class="nbHitsCovered"> 43</td> <td class="src"><pre class="src"> <span class="keyword">return</span> isValid;</pre></td></tr>
|
||||
<tr> <td class="numLine"> 425</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 426</td> <td class="nbHits"> </td>
|
||||
@@ -755,14 +755,14 @@
|
||||
<td class="src"><pre class="src"> <span class="keyword">private</span> <span class="keyword">boolean</span> collectionContainsString(EvidenceCollection ec, String text) {</pre></td></tr>
|
||||
<tr> <td class="numLine"> 435</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">//TODO - likely need to change the split... not sure if this will work for CPE with special chars</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 436</td> <td class="nbHitsUncovered"><a title="Line 436: Conditional coverage 50% (1/2)."> 25</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 436: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (text == <span class="keyword">null</span>) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 436</td> <td class="nbHitsUncovered"><a title="Line 436: Conditional coverage 50% (1/2)."> 47</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 436: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (text == <span class="keyword">null</span>) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 437</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 438</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 439</td> <td class="nbHitsCovered"> 25</td> <td class="src"><pre class="src"> <span class="keyword">final</span> String[] words = text.split(<span class="string">"[\\s_-]"</span>);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 440</td> <td class="nbHitsCovered"> 25</td> <td class="src"><pre class="src"> <span class="keyword">final</span> List<String> list = <span class="keyword">new</span> ArrayList<String>();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 441</td> <td class="nbHitsCovered"> 25</td> <td class="src"><pre class="src"> String tempWord = <span class="keyword">null</span>;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 442</td> <td class="nbHitsCovered"><a title="Line 442: Conditional coverage 100% (2/2)."> 83</a></td> <td class="src"><pre class="src"> <a title="Line 442: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (String word : words) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 439</td> <td class="nbHitsCovered"> 47</td> <td class="src"><pre class="src"> <span class="keyword">final</span> String[] words = text.split(<span class="string">"[\\s_-]"</span>);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 440</td> <td class="nbHitsCovered"> 47</td> <td class="src"><pre class="src"> <span class="keyword">final</span> List<String> list = <span class="keyword">new</span> ArrayList<String>();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 441</td> <td class="nbHitsCovered"> 47</td> <td class="src"><pre class="src"> String tempWord = <span class="keyword">null</span>;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 442</td> <td class="nbHitsCovered"><a title="Line 442: Conditional coverage 100% (2/2)."> 170</a></td> <td class="src"><pre class="src"> <a title="Line 442: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (String word : words) {</a></pre></td></tr>
|
||||
<tr> <td class="numLine"> 443</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">/*</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 444</td> <td class="nbHits"> </td>
|
||||
@@ -771,19 +771,19 @@
|
||||
<td class="src"><pre class="src"> <span class="comment"> so { "m", "core", "sample" } -> { "mcore", "sample" }</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 446</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 447</td> <td class="nbHitsCovered"><a title="Line 447: Conditional coverage 100% (2/2)."> 58</a></td> <td class="src"><pre class="src"> <a title="Line 447: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (tempWord != <span class="keyword">null</span>) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 448</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> list.add(tempWord + word);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 449</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> tempWord = <span class="keyword">null</span>;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 450</td> <td class="nbHitsCovered"><a title="Line 450: Conditional coverage 100% (2/2)."> 56</a></td> <td class="src"><pre class="src"> <a title="Line 450: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (word.length() <= 2) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 451</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> tempWord = word;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 447</td> <td class="nbHitsCovered"><a title="Line 447: Conditional coverage 100% (2/2)."> 123</a></td> <td class="src"><pre class="src"> <a title="Line 447: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (tempWord != <span class="keyword">null</span>) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 448</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src"> list.add(tempWord + word);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 449</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src"> tempWord = <span class="keyword">null</span>;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 450</td> <td class="nbHitsCovered"><a title="Line 450: Conditional coverage 100% (2/2)."> 118</a></td> <td class="src"><pre class="src"> <a title="Line 450: Conditional coverage 100% (2/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (word.length() <= 2) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 451</td> <td class="nbHitsCovered"> 5</td> <td class="src"><pre class="src"> tempWord = word;</pre></td></tr>
|
||||
<tr> <td class="numLine"> 452</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> } <span class="keyword">else</span> {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 453</td> <td class="nbHitsCovered"> 54</td> <td class="src"><pre class="src"> list.add(word);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 453</td> <td class="nbHitsCovered"> 113</td> <td class="src"><pre class="src"> list.add(word);</pre></td></tr>
|
||||
<tr> <td class="numLine"> 454</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 455</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 456</td> <td class="nbHitsUncovered"><a title="Line 456: Conditional coverage 50% (1/2)."> 25</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 456: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (tempWord != <span class="keyword">null</span>) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 456</td> <td class="nbHitsUncovered"><a title="Line 456: Conditional coverage 50% (1/2)."> 47</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 456: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (tempWord != <span class="keyword">null</span>) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 457</td> <td class="nbHitsUncovered"><a title="Line 457: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 457: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (!list.isEmpty()) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 458</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">final</span> String tmp = list.get(list.size() - 1) + tempWord;</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 459</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> list.add(tmp);</span></pre></td></tr>
|
||||
@@ -793,15 +793,15 @@
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 463</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 464</td> <td class="nbHitsUncovered"><a title="Line 464: Conditional coverage 50% (1/2)."> 25</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 464: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (list.isEmpty()) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 464</td> <td class="nbHitsUncovered"><a title="Line 464: Conditional coverage 50% (1/2)."> 47</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 464: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (list.isEmpty()) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 465</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">return</span> <span class="keyword">false</span>;</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 466</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 467</td> <td class="nbHitsCovered"> 25</td> <td class="src"><pre class="src"> <span class="keyword">boolean</span> contains = <span class="keyword">true</span>;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 468</td> <td class="nbHitsCovered"><a title="Line 468: Conditional coverage 100% (2/2)."> 25</a></td> <td class="src"><pre class="src"> <a title="Line 468: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (String word : list) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 469</td> <td class="nbHitsCovered"> 56</td> <td class="src"><pre class="src"> contains &= ec.containsUsedString(word);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 470</td> <td class="nbHitsCovered"> 56</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 471</td> <td class="nbHitsCovered"> 25</td> <td class="src"><pre class="src"> <span class="keyword">return</span> contains;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 467</td> <td class="nbHitsCovered"> 47</td> <td class="src"><pre class="src"> <span class="keyword">boolean</span> contains = <span class="keyword">true</span>;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 468</td> <td class="nbHitsCovered"><a title="Line 468: Conditional coverage 100% (2/2)."> 47</a></td> <td class="src"><pre class="src"> <a title="Line 468: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (String word : list) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 469</td> <td class="nbHitsCovered"> 118</td> <td class="src"><pre class="src"> contains &= ec.containsUsedString(word);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 470</td> <td class="nbHitsCovered"> 118</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 471</td> <td class="nbHitsCovered"> 47</td> <td class="src"><pre class="src"> <span class="keyword">return</span> contains;</pre></td></tr>
|
||||
<tr> <td class="numLine"> 472</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 473</td> <td class="nbHits"> </td>
|
||||
@@ -865,35 +865,35 @@
|
||||
<td class="src"><pre class="src"> <span class="keyword">protected</span> <span class="keyword">boolean</span> determineIdentifiers(Dependency dependency, String vendor, String product,</pre></td></tr>
|
||||
<tr> <td class="numLine"> 507</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> Confidence currentConfidence) <span class="keyword">throws</span> UnsupportedEncodingException {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 508</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Set<VulnerableSoftware> cpes = cve.getCPEs(vendor, product);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 509</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> DependencyVersion bestGuess = <span class="keyword">new</span> DependencyVersion(<span class="string">"-"</span>);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 510</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> Confidence bestGuessConf = <span class="keyword">null</span>;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 511</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> <span class="keyword">boolean</span> hasBroadMatch = <span class="keyword">false</span>;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 512</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> <span class="keyword">final</span> List<IdentifierMatch> collected = <span class="keyword">new</span> ArrayList<IdentifierMatch>();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 513</td> <td class="nbHitsCovered"><a title="Line 513: Conditional coverage 100% (2/2)."> 10</a></td> <td class="src"><pre class="src"> <a title="Line 513: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Confidence conf : Confidence.values()) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 508</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Set<VulnerableSoftware> cpes = cve.getCPEs(vendor, product);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 509</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> DependencyVersion bestGuess = <span class="keyword">new</span> DependencyVersion(<span class="string">"-"</span>);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 510</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> Confidence bestGuessConf = <span class="keyword">null</span>;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 511</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> <span class="keyword">boolean</span> hasBroadMatch = <span class="keyword">false</span>;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 512</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> <span class="keyword">final</span> List<IdentifierMatch> collected = <span class="keyword">new</span> ArrayList<IdentifierMatch>();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 513</td> <td class="nbHitsCovered"><a title="Line 513: Conditional coverage 100% (2/2)."> 15</a></td> <td class="src"><pre class="src"> <a title="Line 513: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Confidence conf : Confidence.values()) {</a></pre></td></tr>
|
||||
<tr> <td class="numLine"> 514</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">// if (conf.compareTo(currentConfidence) > 0) {</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 515</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">// break;</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 516</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">// }</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 517</td> <td class="nbHitsCovered"><a title="Line 517: Conditional coverage 100% (2/2)."> 8</a></td> <td class="src"><pre class="src"> <a title="Line 517: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Evidence evidence : dependency.getVersionEvidence().iterator(conf)) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 518</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src"> <span class="keyword">final</span> DependencyVersion evVer = DependencyVersionUtil.parseVersion(evidence.getValue());</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 519</td> <td class="nbHitsUncovered"><a title="Line 519: Conditional coverage 50% (1/2)."> 8</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 519: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (evVer == <span class="keyword">null</span>) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 517</td> <td class="nbHitsCovered"><a title="Line 517: Conditional coverage 100% (2/2)."> 12</a></td> <td class="src"><pre class="src"> <a title="Line 517: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (Evidence evidence : dependency.getVersionEvidence().iterator(conf)) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 518</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src"> <span class="keyword">final</span> DependencyVersion evVer = DependencyVersionUtil.parseVersion(evidence.getValue());</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 519</td> <td class="nbHitsUncovered"><a title="Line 519: Conditional coverage 50% (1/2)."> 12</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 519: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (evVer == <span class="keyword">null</span>) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 520</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">continue</span>;</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 521</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 522</td> <td class="nbHitsCovered"><a title="Line 522: Conditional coverage 100% (2/2)."> 8</a></td> <td class="src"><pre class="src"> <a title="Line 522: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (VulnerableSoftware vs : cpes) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 522</td> <td class="nbHitsCovered"><a title="Line 522: Conditional coverage 100% (2/2)."> 12</a></td> <td class="src"><pre class="src"> <a title="Line 522: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (VulnerableSoftware vs : cpes) {</a></pre></td></tr>
|
||||
<tr> <td class="numLine"> 523</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> DependencyVersion dbVer;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 524</td> <td class="nbHitsUncovered"><a title="Line 524: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 312</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 524: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> <span class="keyword">if</span> (vs.getUpdate() != <span class="keyword">null</span> && !vs.getUpdate().isEmpty()) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 524</td> <td class="nbHitsUncovered"><a title="Line 524: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 436</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 524: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> <span class="keyword">if</span> (vs.getUpdate() != <span class="keyword">null</span> && !vs.getUpdate().isEmpty()) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 525</td> <td class="nbHitsCovered"> 128</td> <td class="src"><pre class="src"> dbVer = DependencyVersionUtil.parseVersion(vs.getVersion() + <span class="string">'.'</span> + vs.getUpdate());</pre></td></tr>
|
||||
<tr> <td class="numLine"> 526</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> } <span class="keyword">else</span> {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 527</td> <td class="nbHitsCovered"> 184</td> <td class="src"><pre class="src"> dbVer = DependencyVersionUtil.parseVersion(vs.getVersion());</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 527</td> <td class="nbHitsCovered"> 308</td> <td class="src"><pre class="src"> dbVer = DependencyVersionUtil.parseVersion(vs.getVersion());</pre></td></tr>
|
||||
<tr> <td class="numLine"> 528</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 529</td> <td class="nbHitsUncovered"><a title="Line 529: Conditional coverage 50% (1/2)."> 312</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 529: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (dbVer == <span class="keyword">null</span>) { <span class="comment">//special case, no version specified - everything is vulnerable</span></a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 529</td> <td class="nbHitsUncovered"><a title="Line 529: Conditional coverage 50% (1/2)."> 436</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 529: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (dbVer == <span class="keyword">null</span>) { <span class="comment">//special case, no version specified - everything is vulnerable</span></a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 530</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> hasBroadMatch = <span class="keyword">true</span>;</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 531</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">final</span> String url = String.format(NVD_SEARCH_URL, URLEncoder.encode(vs.getName(), <span class="string">"UTF-8"</span>));</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 532</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">final</span> IdentifierMatch match = <span class="keyword">new</span> IdentifierMatch(<span class="string">"cpe"</span>, vs.getName(), url, IdentifierConfidence.BROAD_MATCH, conf);</span></pre></td></tr>
|
||||
@@ -905,7 +905,7 @@
|
||||
<tr> <td class="numLineCover"> 538</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src"> } <span class="keyword">else</span> {</pre></td></tr>
|
||||
<tr> <td class="numLine"> 539</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">//TODO the following isn't quite right is it? need to think about this guessing game a bit more.</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 540</td> <td class="nbHitsCovered"><a title="Line 540: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 304</a></td> <td class="src"><pre class="src"> <a title="Line 540: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (evVer.getVersionParts().size() <= dbVer.getVersionParts().size()</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 540</td> <td class="nbHitsCovered"><a title="Line 540: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 428</a></td> <td class="src"><pre class="src"> <a title="Line 540: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (evVer.getVersionParts().size() <= dbVer.getVersionParts().size()</a></pre></td></tr>
|
||||
<tr> <td class="numLine"> 541</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> && evVer.matchesAtLeastThreeLevels(dbVer)) {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 542</td> <td class="nbHitsUncovered"><a title="Line 542: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 64</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 542: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> <span class="keyword">if</span> (bestGuessConf == <span class="keyword">null</span> || bestGuessConf.compareTo(conf) > 0) {</a></span></pre></td></tr>
|
||||
@@ -920,55 +920,55 @@
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 549</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 550</td> <td class="nbHitsCovered"> 312</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 551</td> <td class="nbHitsUncovered"><a title="Line 551: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> 8</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 551: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> <span class="keyword">if</span> (bestGuessConf == <span class="keyword">null</span> || bestGuessConf.compareTo(conf) > 0) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 552</td> <td class="nbHitsUncovered"><a title="Line 552: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 552: Conditional coverage 0% (0/2)."> <span class="keyword">if</span> (bestGuess.getVersionParts().size() < evVer.getVersionParts().size()) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 553</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> bestGuess = evVer;</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 554</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> bestGuessConf = conf;</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 550</td> <td class="nbHitsCovered"> 436</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 551</td> <td class="nbHitsUncovered"><a title="Line 551: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> 12</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 551: Conditional coverage 75% (3/4) [each condition: 100%, 50%]."> <span class="keyword">if</span> (bestGuessConf == <span class="keyword">null</span> || bestGuessConf.compareTo(conf) > 0) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 552</td> <td class="nbHitsUncovered"><a title="Line 552: Conditional coverage 50% (1/2)."> 1</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 552: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (bestGuess.getVersionParts().size() < evVer.getVersionParts().size()) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 553</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src"> bestGuess = evVer;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 554</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src"> bestGuessConf = conf;</pre></td></tr>
|
||||
<tr> <td class="numLine"> 555</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 556</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 557</td> <td class="nbHitsCovered"> 8</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 557</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 558</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 559</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> <span class="keyword">final</span> String cpeName = String.format(<span class="string">"cpe:/a:%s:%s:%s"</span>, vendor, product, bestGuess.toString());</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 560</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> String url = <span class="keyword">null</span>;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 561</td> <td class="nbHitsUncovered"><a title="Line 561: Conditional coverage 50% (1/2)."> 2</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 561: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (hasBroadMatch) { <span class="comment">//if we have a broad match we can add the URL to the best guess.</span></a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 559</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> <span class="keyword">final</span> String cpeName = String.format(<span class="string">"cpe:/a:%s:%s:%s"</span>, vendor, product, bestGuess.toString());</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 560</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> String url = <span class="keyword">null</span>;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 561</td> <td class="nbHitsUncovered"><a title="Line 561: Conditional coverage 50% (1/2)."> 3</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 561: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (hasBroadMatch) { <span class="comment">//if we have a broad match we can add the URL to the best guess.</span></a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 562</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">final</span> String cpeUrlName = String.format(<span class="string">"cpe:/a:%s:%s"</span>, vendor, product);</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 563</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> url = String.format(NVD_SEARCH_URL, URLEncoder.encode(cpeUrlName, <span class="string">"UTF-8"</span>));</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 564</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 565</td> <td class="nbHitsUncovered"><a title="Line 565: Conditional coverage 50% (1/2)."> 2</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 565: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (bestGuessConf == <span class="keyword">null</span>) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 565</td> <td class="nbHitsUncovered"><a title="Line 565: Conditional coverage 50% (1/2)."> 3</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 565: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (bestGuessConf == <span class="keyword">null</span>) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 566</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> bestGuessConf = Confidence.LOW;</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 567</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 568</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> <span class="keyword">final</span> IdentifierMatch match = <span class="keyword">new</span> IdentifierMatch(<span class="string">"cpe"</span>, cpeName, url, IdentifierConfidence.BEST_GUESS, bestGuessConf);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 569</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> collected.add(match);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 568</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> <span class="keyword">final</span> IdentifierMatch match = <span class="keyword">new</span> IdentifierMatch(<span class="string">"cpe"</span>, cpeName, url, IdentifierConfidence.BEST_GUESS, bestGuessConf);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 569</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> collected.add(match);</pre></td></tr>
|
||||
<tr> <td class="numLine"> 570</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> </pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 571</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> Collections.sort(collected);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 572</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> <span class="keyword">final</span> IdentifierConfidence bestIdentifierQuality = collected.get(0).getConfidence();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 573</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Confidence bestEvidenceQuality = collected.get(0).getEvidenceConfidence();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 574</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> <span class="keyword">boolean</span> identifierAdded = <span class="keyword">false</span>;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 575</td> <td class="nbHitsCovered"><a title="Line 575: Conditional coverage 100% (2/2)."> 2</a></td> <td class="src"><pre class="src"> <a title="Line 575: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (IdentifierMatch m : collected) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 576</td> <td class="nbHitsCovered"><a title="Line 576: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 10</a></td> <td class="src"><pre class="src"> <a title="Line 576: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (bestIdentifierQuality.equals(m.getConfidence())</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 571</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> Collections.sort(collected);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 572</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> <span class="keyword">final</span> IdentifierConfidence bestIdentifierQuality = collected.get(0).getConfidence();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 573</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Confidence bestEvidenceQuality = collected.get(0).getEvidenceConfidence();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 574</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> <span class="keyword">boolean</span> identifierAdded = <span class="keyword">false</span>;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 575</td> <td class="nbHitsCovered"><a title="Line 575: Conditional coverage 100% (2/2)."> 3</a></td> <td class="src"><pre class="src"> <a title="Line 575: Conditional coverage 100% (2/2)."> <span class="keyword">for</span> (IdentifierMatch m : collected) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 576</td> <td class="nbHitsCovered"><a title="Line 576: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> 11</a></td> <td class="src"><pre class="src"> <a title="Line 576: Conditional coverage 100% (4/4) [each condition: 100%, 100%]."> <span class="keyword">if</span> (bestIdentifierQuality.equals(m.getConfidence())</a></pre></td></tr>
|
||||
<tr> <td class="numLine"> 577</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> && bestEvidenceQuality.equals(m.getEvidenceConfidence())) {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 578</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Identifier i = m.getIdentifier();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 579</td> <td class="nbHitsUncovered"><a title="Line 579: Conditional coverage 50% (1/2)."> 2</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 579: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (bestIdentifierQuality == IdentifierConfidence.BEST_GUESS) {</a></span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 580</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> i.setConfidence(Confidence.LOW);</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 578</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> <span class="keyword">final</span> Identifier i = m.getIdentifier();</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 579</td> <td class="nbHitsCovered"><a title="Line 579: Conditional coverage 100% (2/2)."> 3</a></td> <td class="src"><pre class="src"> <a title="Line 579: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (bestIdentifierQuality == IdentifierConfidence.BEST_GUESS) {</a></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 580</td> <td class="nbHitsCovered"> 1</td> <td class="src"><pre class="src"> i.setConfidence(Confidence.LOW);</pre></td></tr>
|
||||
<tr> <td class="numLine"> 581</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> } <span class="keyword">else</span> {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 582</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> i.setConfidence(bestEvidenceQuality);</pre></td></tr>
|
||||
<tr> <td class="numLine"> 583</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 584</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> dependency.addIdentifier(i);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 585</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> identifierAdded = <span class="keyword">true</span>;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 584</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> dependency.addIdentifier(i);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 585</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> identifierAdded = <span class="keyword">true</span>;</pre></td></tr>
|
||||
<tr> <td class="numLine"> 586</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 587</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 588</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> <span class="keyword">return</span> identifierAdded;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 587</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 588</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> <span class="keyword">return</span> identifierAdded;</pre></td></tr>
|
||||
<tr> <td class="numLine"> 589</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 590</td> <td class="nbHits"> </td>
|
||||
@@ -1036,11 +1036,11 @@
|
||||
<td class="src"><pre class="src"> <span class="comment"> * @param evidenceConfidence the confidence of the evidence used to find the identifier</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 624</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 625</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src"> IdentifierMatch(String type, String value, String url, IdentifierConfidence identifierConfidence, Confidence evidenceConfidence) {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 626</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src"> <span class="keyword">this</span>.identifier = <span class="keyword">new</span> Identifier(type, value, url);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 627</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src"> <span class="keyword">this</span>.confidence = identifierConfidence;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 628</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src"> <span class="keyword">this</span>.evidenceConfidence = evidenceConfidence;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 629</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 625</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src"> IdentifierMatch(String type, String value, String url, IdentifierConfidence identifierConfidence, Confidence evidenceConfidence) {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 626</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src"> <span class="keyword">this</span>.identifier = <span class="keyword">new</span> Identifier(type, value, url);</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 627</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src"> <span class="keyword">this</span>.confidence = identifierConfidence;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 628</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src"> <span class="keyword">this</span>.evidenceConfidence = evidenceConfidence;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 629</td> <td class="nbHitsCovered"> 11</td> <td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 630</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="comment">//<editor-fold defaultstate="collapsed" desc="Property implementations: evidenceConfidence, confidence, identifier"></span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 631</td> <td class="nbHits"> </td>
|
||||
@@ -1065,7 +1065,7 @@
|
||||
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 641</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="keyword">public</span> Confidence getEvidenceConfidence() {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 642</td> <td class="nbHitsCovered"> 10</td> <td class="src"><pre class="src"> <span class="keyword">return</span> evidenceConfidence;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 642</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src"> <span class="keyword">return</span> evidenceConfidence;</pre></td></tr>
|
||||
<tr> <td class="numLine"> 643</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 644</td> <td class="nbHits"> </td>
|
||||
@@ -1106,7 +1106,7 @@
|
||||
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 663</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="keyword">public</span> IdentifierConfidence getConfidence() {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 664</td> <td class="nbHitsCovered"> 12</td> <td class="src"><pre class="src"> <span class="keyword">return</span> confidence;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 664</td> <td class="nbHitsCovered"> 14</td> <td class="src"><pre class="src"> <span class="keyword">return</span> confidence;</pre></td></tr>
|
||||
<tr> <td class="numLine"> 665</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 666</td> <td class="nbHits"> </td>
|
||||
@@ -1147,7 +1147,7 @@
|
||||
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
|
||||
<tr> <td class="numLine"> 685</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> <span class="keyword">public</span> Identifier getIdentifier() {</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 686</td> <td class="nbHitsCovered"> 2</td> <td class="src"><pre class="src"> <span class="keyword">return</span> identifier;</pre></td></tr>
|
||||
<tr> <td class="numLineCover"> 686</td> <td class="nbHitsCovered"> 3</td> <td class="src"><pre class="src"> <span class="keyword">return</span> identifier;</pre></td></tr>
|
||||
<tr> <td class="numLine"> 687</td> <td class="nbHits"> </td>
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
<tr> <td class="numLine"> 688</td> <td class="nbHits"> </td>
|
||||
@@ -1294,6 +1294,6 @@
|
||||
<td class="src"><pre class="src"> }</pre></td></tr>
|
||||
</table>
|
||||
|
||||
<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 2.1.1 on 11/29/15 7:26 AM.</div>
|
||||
<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 2.1.1 on 12/10/15 7:51 PM.</div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
Reference in New Issue
Block a user