Skip to content

Commit b4fe8b3

Browse files
authored
Merge pull request diffblue#547 from diffblue/add_XXE_models_library
SEC-633: Added XXE models library.
2 parents b5763c7 + aa68725 commit b4fe8b3

File tree

6 files changed

+2068
-0
lines changed

6 files changed

+2068
-0
lines changed
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
target
Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
2+
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
3+
<modelVersion>4.0.0</modelVersion>
4+
5+
<groupId>javax.xml.stream</groupId>
6+
<artifactId>XXE</artifactId>
7+
<version>1.0</version>
8+
<packaging>jar</packaging>
9+
10+
<properties>
11+
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
12+
</properties>
13+
14+
<name>CProver JDK XXE Models</name>
15+
16+
<!-- Tell javadoc plugin not to fail on warnings -->
17+
<profiles>
18+
<profile>
19+
<id>java8-doclint-disabled</id>
20+
<activation>
21+
<jdk>[1.8,)</jdk>
22+
</activation>
23+
<properties>
24+
<javadoc.opts>-Xdoclint:none</javadoc.opts>
25+
</properties>
26+
</profile>
27+
</profiles>
28+
29+
<build>
30+
<finalName>javax_xxe_models</finalName>
31+
<plugins>
32+
<plugin>
33+
<groupId>org.apache.maven.plugins</groupId>
34+
<artifactId>maven-compiler-plugin</artifactId>
35+
<version>3.6.1</version>
36+
<configuration>
37+
<compilerArguments>
38+
<classpath>${java.home}/lib/rt.jar</classpath>
39+
</compilerArguments>
40+
<source>1.8</source>
41+
<target>1.8</target>
42+
</configuration>
43+
</plugin>
44+
<plugin>
45+
<groupId>org.apache.maven.plugins</groupId>
46+
<artifactId>maven-javadoc-plugin</artifactId>
47+
<version>3.0.0-M1</version>
48+
<configuration>
49+
<outputDirectory>doc</outputDirectory>
50+
<quiet>true</quiet>
51+
<nosince>true</nosince>
52+
<sourcepath>src/main/java</sourcepath>
53+
<subpackages>java</subpackages>
54+
<overview>src/main/overview.html</overview>
55+
<windowtitle>Diffblue Library of XXE Models</windowtitle>
56+
<doctitle>Diffblue Library of XXE Models</doctitle>
57+
<!--No fail on warning-->
58+
<additionalparam>${javadoc.opts}</additionalparam>
59+
</configuration>
60+
</plugin>
61+
</plugins>
62+
</build>
63+
</project>
Lines changed: 138 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,138 @@
1+
package javax.xml.stream;
2+
3+
import javax.xml.stream.util.XMLEventAllocator;
4+
import javax.xml.transform.Source;
5+
6+
7+
class DIFFBLUEXMLInputFactory extends XMLInputFactory {
8+
9+
public XMLStreamReader createXMLStreamReader(java.io.Reader reader)
10+
throws XMLStreamException {
11+
if (this.isSupportingExternalEntities == true)
12+
return createXXEVulnerableXMLStreamReader(reader);
13+
return new DIFFBLUEXMLStreamReader(reader);
14+
}
15+
16+
private XMLStreamReader createXXEVulnerableXMLStreamReader(java.io.Reader reader)
17+
throws XMLStreamException {
18+
return new DIFFBLUEXMLStreamReader(reader);
19+
}
20+
21+
public XMLStreamReader createXMLStreamReader(Source source)
22+
throws XMLStreamException {
23+
return null;
24+
}
25+
26+
public XMLStreamReader createXMLStreamReader(java.io.InputStream stream)
27+
throws XMLStreamException {
28+
return null;
29+
}
30+
31+
public XMLStreamReader createXMLStreamReader(java.io.InputStream stream, String encoding)
32+
throws XMLStreamException {
33+
return null;
34+
}
35+
36+
public XMLStreamReader createXMLStreamReader(String systemId, java.io.InputStream stream)
37+
throws XMLStreamException {
38+
return null;
39+
}
40+
41+
public XMLStreamReader createXMLStreamReader(String systemId, java.io.Reader reader)
42+
throws XMLStreamException {
43+
return null;
44+
}
45+
46+
public XMLEventReader createXMLEventReader(java.io.Reader reader)
47+
throws XMLStreamException {
48+
return null;
49+
}
50+
51+
public XMLEventReader createXMLEventReader(String systemId, java.io.Reader reader)
52+
throws XMLStreamException {
53+
return null;
54+
}
55+
56+
public XMLEventReader createXMLEventReader(XMLStreamReader reader)
57+
throws XMLStreamException {
58+
return null;
59+
}
60+
61+
public XMLEventReader createXMLEventReader(Source source)
62+
throws XMLStreamException {
63+
return null;
64+
}
65+
66+
public XMLEventReader createXMLEventReader(java.io.InputStream stream)
67+
throws XMLStreamException {
68+
return null;
69+
}
70+
71+
public XMLEventReader createXMLEventReader(java.io.InputStream stream, String encoding)
72+
throws XMLStreamException {
73+
return null;
74+
}
75+
76+
public XMLEventReader createXMLEventReader(String systemId, java.io.InputStream stream)
77+
throws XMLStreamException {
78+
return null;
79+
}
80+
81+
public XMLStreamReader createFilteredReader(XMLStreamReader reader, StreamFilter filter)
82+
throws XMLStreamException {
83+
return null;
84+
}
85+
86+
public XMLEventReader createFilteredReader(XMLEventReader reader, EventFilter filter)
87+
throws XMLStreamException {
88+
return null;
89+
}
90+
91+
public XMLResolver getXMLResolver() {
92+
return null;
93+
}
94+
95+
public void setXMLResolver(XMLResolver resolver) {
96+
}
97+
98+
public XMLReporter getXMLReporter() {
99+
return null;
100+
}
101+
102+
public void setXMLReporter(XMLReporter reporter) {
103+
}
104+
105+
public void setProperty(java.lang.String name, Object value)
106+
throws java.lang.IllegalArgumentException {
107+
if (name == "javax.xml.stream.isSupportingExternalEntities") {
108+
if (value instanceof Boolean) {
109+
if ((Boolean)value == true)
110+
this.isSupportingExternalEntities = true;
111+
else
112+
this.isSupportingExternalEntities = false;
113+
}
114+
}
115+
}
116+
117+
public Object getProperty(java.lang.String name)
118+
throws java.lang.IllegalArgumentException {
119+
if (name == "javax.xml.stream.isSupportingExternalEntities")
120+
return new Boolean(this.isSupportingExternalEntities);
121+
return new Boolean(false);
122+
}
123+
124+
125+
public boolean isPropertySupported(String name) {
126+
return name == "javax.xml.stream.isSupportingExternalEntities";
127+
}
128+
129+
public void setEventAllocator(XMLEventAllocator allocator) {
130+
}
131+
132+
public XMLEventAllocator getEventAllocator() {
133+
return null;
134+
}
135+
136+
private boolean isSupportingExternalEntities;
137+
}
138+

0 commit comments

Comments
 (0)