summaryrefslogtreecommitdiff
path: root/examples/cxx/tree/secure/secure-dom-parser.hxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2015-09-10 12:18:02 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2015-09-10 12:18:02 +0200
commit8ffa44b96b668b0286aa73cc331b59d4cef38d48 (patch)
treef877fdad915719673606aff7b8b7e693c7baf376 /examples/cxx/tree/secure/secure-dom-parser.hxx
parentaabb88ef1fc3ada75b7210b73c05e73af5c653a8 (diff)
Add example of more secure XML parsing
Diffstat (limited to 'examples/cxx/tree/secure/secure-dom-parser.hxx')
-rw-r--r--examples/cxx/tree/secure/secure-dom-parser.hxx25
1 files changed, 25 insertions, 0 deletions
diff --git a/examples/cxx/tree/secure/secure-dom-parser.hxx b/examples/cxx/tree/secure/secure-dom-parser.hxx
new file mode 100644
index 0000000..20783b8
--- /dev/null
+++ b/examples/cxx/tree/secure/secure-dom-parser.hxx
@@ -0,0 +1,25 @@
+// file : examples/cxx/tree/secure/secure-dom-parser.hxx
+// copyright : not copyrighted - public domain
+
+#ifndef SECURE_DOM_PARSER_HXX
+#define SECURE_DOM_PARSER_HXX
+
+#include <xercesc/parsers/DOMLSParserImpl.hpp>
+
+class SecureDOMParser: public xercesc::DOMLSParserImpl
+{
+public:
+ SecureDOMParser (xercesc::MemoryManager* mm =
+ xercesc::XMLPlatformUtils::fgMemoryManager,
+ xercesc::XMLGrammarPool* gp = 0)
+ : DOMLSParserImpl (0, mm, gp) {}
+
+ virtual void
+ doctypeDecl (const xercesc::DTDElementDecl& root,
+ const XMLCh* const public_id,
+ const XMLCh* const system_id,
+ const bool has_internal,
+ const bool has_external);
+};
+
+#endif // SECURE_DOM_PARSER_HXX