version 1.1.1 of gh-pages

This commit is contained in:
Jeremy Long
2014-01-30 06:35:28 -05:00
parent 8c53925bd7
commit 9f9ed6f1da
892 changed files with 14024 additions and 8239 deletions

View File

@@ -83,7 +83,7 @@
<td class="src"><pre class="src">&nbsp;<span class="comment"> * @author Jeremy Long &lt;jeremy.long@owasp.org&gt;</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;33</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;34</td> <td class="nbHitsCovered">&nbsp;30</td> <td class="src"><pre class="src">&nbsp;<span class="keyword">public</span> <span class="keyword">class</span> FileNameAnalyzer <span class="keyword">extends</span> AbstractAnalyzer <span class="keyword">implements</span> Analyzer {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;34</td> <td class="nbHitsCovered">&nbsp;15</td> <td class="src"><pre class="src">&nbsp;<span class="keyword">public</span> <span class="keyword">class</span> FileNameAnalyzer <span class="keyword">extends</span> AbstractAnalyzer <span class="keyword">implements</span> Analyzer {</pre></td></tr>
<tr> <td class="numLine">&nbsp;35</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;36</td> <td class="nbHits">&nbsp;</td>
@@ -102,14 +102,14 @@
<td class="src"><pre class="src">&nbsp;<span class="comment"> * The phase that this analyzer is intended to run in.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;43</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;44</td> <td class="nbHitsCovered">&nbsp;2</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.INFORMATION_COLLECTION;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;44</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> AnalysisPhase ANALYSIS_PHASE = AnalysisPhase.INFORMATION_COLLECTION;</pre></td></tr>
<tr> <td class="numLine">&nbsp;45</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">/**</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;46</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> * The set of file extensions supported by this analyzer.</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;47</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;48</td> <td class="nbHitsCovered">&nbsp;2</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> Set&lt;String&gt; EXTENSIONS = <span class="keyword">null</span>;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;48</td> <td class="nbHitsCovered">&nbsp;1</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">private</span> <span class="keyword">static</span> <span class="keyword">final</span> Set&lt;String&gt; EXTENSIONS = <span class="keyword">null</span>;</pre></td></tr>
<tr> <td class="numLine">&nbsp;49</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;50</td> <td class="nbHits">&nbsp;</td>
@@ -124,7 +124,7 @@
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;55</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> Set&lt;String&gt; getSupportedExtensions() {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;56</td> <td class="nbHitsCovered">&nbsp;298</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> EXTENSIONS;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;56</td> <td class="nbHitsCovered">&nbsp;149</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> EXTENSIONS;</pre></td></tr>
<tr> <td class="numLine">&nbsp;57</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;58</td> <td class="nbHits">&nbsp;</td>
@@ -141,7 +141,7 @@
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;64</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> String getName() {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;65</td> <td class="nbHitsCovered">&nbsp;20</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> ANALYZER_NAME;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;65</td> <td class="nbHitsCovered">&nbsp;10</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> ANALYZER_NAME;</pre></td></tr>
<tr> <td class="numLine">&nbsp;66</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;67</td> <td class="nbHits">&nbsp;</td>
@@ -160,7 +160,7 @@
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;74</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> <span class="keyword">boolean</span> supportsExtension(String extension) {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;75</td> <td class="nbHitsCovered">&nbsp;20</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;75</td> <td class="nbHitsCovered">&nbsp;10</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> <span class="keyword">true</span>;</pre></td></tr>
<tr> <td class="numLine">&nbsp;76</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;77</td> <td class="nbHits">&nbsp;</td>
@@ -177,7 +177,7 @@
<td class="src"><pre class="src">&nbsp;<span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;83</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="keyword">public</span> AnalysisPhase getAnalysisPhase() {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;84</td> <td class="nbHitsCovered">&nbsp;14</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> ANALYSIS_PHASE;</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;84</td> <td class="nbHitsCovered">&nbsp;7</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">return</span> ANALYSIS_PHASE;</pre></td></tr>
<tr> <td class="numLine">&nbsp;85</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;86</td> <td class="nbHits">&nbsp;</td>
@@ -206,41 +206,41 @@
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;98</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//strip any path information that may get added by ArchiveAnalyzer, etc.</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;99</td> <td class="nbHitsCovered">&nbsp;36</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">final</span> File f = <span class="keyword">new</span> File(dependency.getFileName());</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;100</td> <td class="nbHitsCovered">&nbsp;36</td> <td class="src"><pre class="src">&nbsp; String fileName = f.getName();</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;99</td> <td class="nbHitsCovered">&nbsp;18</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">final</span> File f = <span class="keyword">new</span> File(dependency.getFileName());</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;100</td> <td class="nbHitsCovered">&nbsp;18</td> <td class="src"><pre class="src">&nbsp; String fileName = f.getName();</pre></td></tr>
<tr> <td class="numLine">&nbsp;101</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;102</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//remove file extension</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;103</td> <td class="nbHitsCovered">&nbsp;36</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">final</span> <span class="keyword">int</span> pos = fileName.lastIndexOf(<span class="string">"."</span>);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;104</td> <td class="nbHitsUncovered"><a title="Line 104: Conditional coverage 50% (1/2).">&nbsp;36</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 104: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (pos &gt; 0) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;105</td> <td class="nbHitsCovered">&nbsp;36</td> <td class="src"><pre class="src">&nbsp; fileName = fileName.substring(0, pos);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;103</td> <td class="nbHitsCovered">&nbsp;18</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">final</span> <span class="keyword">int</span> pos = fileName.lastIndexOf(<span class="string">"."</span>);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;104</td> <td class="nbHitsUncovered"><a title="Line 104: Conditional coverage 50% (1/2).">&nbsp;18</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 104: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (pos &gt; 0) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;105</td> <td class="nbHitsCovered">&nbsp;18</td> <td class="src"><pre class="src">&nbsp; fileName = fileName.substring(0, pos);</pre></td></tr>
<tr> <td class="numLine">&nbsp;106</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;107</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;108</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//add version evidence</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;109</td> <td class="nbHitsCovered">&nbsp;36</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">final</span> DependencyVersion version = DependencyVersionUtil.parseVersion(fileName);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;110</td> <td class="nbHitsCovered"><a title="Line 110: Conditional coverage 100% (2/2).">&nbsp;36</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 110: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (version != <span class="keyword">null</span>) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;109</td> <td class="nbHitsCovered">&nbsp;18</td> <td class="src"><pre class="src">&nbsp; <span class="keyword">final</span> DependencyVersion version = DependencyVersionUtil.parseVersion(fileName);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;110</td> <td class="nbHitsCovered"><a title="Line 110: Conditional coverage 100% (2/2).">&nbsp;18</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 110: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (version != <span class="keyword">null</span>) {</a></pre></td></tr>
<tr> <td class="numLine">&nbsp;111</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">// If the version number is just a number like 2 or 23, reduce the confidence</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;112</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">// a shade. This should hopefully correct for cases like log4j.jar or</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;113</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">// struts2-core.jar</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;114</td> <td class="nbHitsUncovered"><a title="Line 114: Conditional coverage 50% (2/4) [each condition: 50%, 50%].">&nbsp;20</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 114: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> <span class="keyword">if</span> (version.getVersionParts() == <span class="keyword">null</span> || version.getVersionParts().size() &lt; 2) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;114</td> <td class="nbHitsUncovered"><a title="Line 114: Conditional coverage 50% (2/4) [each condition: 50%, 50%].">&nbsp;10</a></td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp;<a title="Line 114: Conditional coverage 50% (2/4) [each condition: 50%, 50%]."> <span class="keyword">if</span> (version.getVersionParts() == <span class="keyword">null</span> || version.getVersionParts().size() &lt; 2) {</a></span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;115</td> <td class="nbHitsUncovered">&nbsp;0</td> <td class="src"><pre class="src"><span class="srcUncovered">&nbsp; dependency.getVersionEvidence().addEvidence(<span class="string">"file"</span>, <span class="string">"name"</span>,</span></pre></td></tr>
<tr> <td class="numLine">&nbsp;116</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; version.toString(), Confidence.MEDIUM);</pre></td></tr>
<tr> <td class="numLine">&nbsp;117</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; } <span class="keyword">else</span> {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;118</td> <td class="nbHitsCovered">&nbsp;20</td> <td class="src"><pre class="src">&nbsp; dependency.getVersionEvidence().addEvidence(<span class="string">"file"</span>, <span class="string">"name"</span>,</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;118</td> <td class="nbHitsCovered">&nbsp;10</td> <td class="src"><pre class="src">&nbsp; dependency.getVersionEvidence().addEvidence(<span class="string">"file"</span>, <span class="string">"name"</span>,</pre></td></tr>
<tr> <td class="numLine">&nbsp;119</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; version.toString(), Confidence.HIGHEST);</pre></td></tr>
<tr> <td class="numLine">&nbsp;120</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;121</td> <td class="nbHitsCovered">&nbsp;20</td> <td class="src"><pre class="src">&nbsp; dependency.getVersionEvidence().addEvidence(<span class="string">"file"</span>, <span class="string">"name"</span>,</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;121</td> <td class="nbHitsCovered">&nbsp;10</td> <td class="src"><pre class="src">&nbsp; dependency.getVersionEvidence().addEvidence(<span class="string">"file"</span>, <span class="string">"name"</span>,</pre></td></tr>
<tr> <td class="numLine">&nbsp;122</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; fileName, Confidence.MEDIUM);</pre></td></tr>
<tr> <td class="numLine">&nbsp;123</td> <td class="nbHits">&nbsp;</td>
@@ -249,28 +249,28 @@
<td class="src"><pre class="src">&nbsp;</pre></td></tr>
<tr> <td class="numLine">&nbsp;125</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; <span class="comment">//add as vendor and product evidence</span></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;126</td> <td class="nbHitsCovered"><a title="Line 126: Conditional coverage 100% (2/2).">&nbsp;36</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 126: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (fileName.contains(<span class="string">"-"</span>)) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;127</td> <td class="nbHitsCovered">&nbsp;20</td> <td class="src"><pre class="src">&nbsp; dependency.getProductEvidence().addEvidence(<span class="string">"file"</span>, <span class="string">"name"</span>,</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;126</td> <td class="nbHitsCovered"><a title="Line 126: Conditional coverage 100% (2/2).">&nbsp;18</a></td> <td class="src"><pre class="src">&nbsp;<a title="Line 126: Conditional coverage 100% (2/2)."> <span class="keyword">if</span> (fileName.contains(<span class="string">"-"</span>)) {</a></pre></td></tr>
<tr> <td class="numLineCover">&nbsp;127</td> <td class="nbHitsCovered">&nbsp;10</td> <td class="src"><pre class="src">&nbsp; dependency.getProductEvidence().addEvidence(<span class="string">"file"</span>, <span class="string">"name"</span>,</pre></td></tr>
<tr> <td class="numLine">&nbsp;128</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; fileName, Confidence.HIGHEST);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;129</td> <td class="nbHitsCovered">&nbsp;20</td> <td class="src"><pre class="src">&nbsp; dependency.getVendorEvidence().addEvidence(<span class="string">"file"</span>, <span class="string">"name"</span>,</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;129</td> <td class="nbHitsCovered">&nbsp;10</td> <td class="src"><pre class="src">&nbsp; dependency.getVendorEvidence().addEvidence(<span class="string">"file"</span>, <span class="string">"name"</span>,</pre></td></tr>
<tr> <td class="numLine">&nbsp;130</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; fileName, Confidence.HIGHEST);</pre></td></tr>
<tr> <td class="numLine">&nbsp;131</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; } <span class="keyword">else</span> {</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;132</td> <td class="nbHitsCovered">&nbsp;16</td> <td class="src"><pre class="src">&nbsp; dependency.getProductEvidence().addEvidence(<span class="string">"file"</span>, <span class="string">"name"</span>,</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;132</td> <td class="nbHitsCovered">&nbsp;8</td> <td class="src"><pre class="src">&nbsp; dependency.getProductEvidence().addEvidence(<span class="string">"file"</span>, <span class="string">"name"</span>,</pre></td></tr>
<tr> <td class="numLine">&nbsp;133</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; fileName, Confidence.HIGH);</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;134</td> <td class="nbHitsCovered">&nbsp;16</td> <td class="src"><pre class="src">&nbsp; dependency.getVendorEvidence().addEvidence(<span class="string">"file"</span>, <span class="string">"name"</span>,</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;134</td> <td class="nbHitsCovered">&nbsp;8</td> <td class="src"><pre class="src">&nbsp; dependency.getVendorEvidence().addEvidence(<span class="string">"file"</span>, <span class="string">"name"</span>,</pre></td></tr>
<tr> <td class="numLine">&nbsp;135</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; fileName, Confidence.HIGH);</pre></td></tr>
<tr> <td class="numLine">&nbsp;136</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;137</td> <td class="nbHitsCovered">&nbsp;36</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLineCover">&nbsp;137</td> <td class="nbHitsCovered">&nbsp;18</td> <td class="src"><pre class="src">&nbsp; }</pre></td></tr>
<tr> <td class="numLine">&nbsp;138</td> <td class="nbHits">&nbsp;</td>
<td class="src"><pre class="src">&nbsp;}</pre></td></tr>
</table>
<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 2.0.3 on 1/26/14 11:11 AM.</div>
<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 2.0.3 on 1/30/14 6:03 AM.</div>
</body>
</html>