summaryrefslogtreecommitdiffstats
path: root/libqpdf/qpdf/InsecureRandomDataProvider.hh
diff options
context:
space:
mode:
Diffstat (limited to 'libqpdf/qpdf/InsecureRandomDataProvider.hh')
-rw-r--r--libqpdf/qpdf/InsecureRandomDataProvider.hh27
1 files changed, 27 insertions, 0 deletions
diff --git a/libqpdf/qpdf/InsecureRandomDataProvider.hh b/libqpdf/qpdf/InsecureRandomDataProvider.hh
new file mode 100644
index 00000000..530ee3cb
--- /dev/null
+++ b/libqpdf/qpdf/InsecureRandomDataProvider.hh
@@ -0,0 +1,27 @@
+#ifndef __INSECURERANDOMDATAPROVIDER_HH__
+#define __INSECURERANDOMDATAPROVIDER_HH__
+
+#include <qpdf/RandomDataProvider.hh>
+#include <qpdf/DLL.h>
+
+class InsecureRandomDataProvider: public RandomDataProvider
+{
+ public:
+ QPDF_DLL
+ InsecureRandomDataProvider();
+ QPDF_DLL
+ virtual ~InsecureRandomDataProvider();
+
+ QPDF_DLL
+ virtual void provideRandomData(unsigned char* data, size_t len);
+
+ QPDF_DLL
+ static RandomDataProvider* getInstance();
+
+ private:
+ long random();
+
+ bool seeded_random;
+};
+
+#endif // __INSECURERANDOMDATAPROVIDER_HH__