version 0.3.16
[fms.git] / include / freenet / captcha / alternatecaptcha2.h
diff --git a/include/freenet/captcha/alternatecaptcha2.h b/include/freenet/captcha/alternatecaptcha2.h
new file mode 100644 (file)
index 0000000..d76d832
--- /dev/null
@@ -0,0 +1,33 @@
+#ifndef _alternate_captcha2_\r
+#define _alternate_captcha2_\r
+\r
+#ifdef ALTERNATE_CAPTCHA\r
+\r
+#include <string>\r
+\r
+#include "icaptcha.h"\r
+#include "alternatecaptchafonts.h"\r
+\r
+class AlternateCaptcha2:public ICaptcha\r
+{\r
+public:\r
+       AlternateCaptcha2();\r
+\r
+       void Generate();\r
+\r
+       const bool GetPuzzle(std::vector<unsigned char> &puzzle);\r
+       const bool GetSolution(std::vector<unsigned char> &solution);\r
+\r
+private:\r
+       const std::string GenerateRandomString(const int len);\r
+\r
+       std::vector<FreeImage::Font> m_fonts;\r
+\r
+       std::vector<unsigned char> m_puzzle;\r
+       std::vector<unsigned char> m_solution;\r
+\r
+};\r
+\r
+#endif // ALTERNATE_CAPTCHA\r
+\r
+#endif // _alternate_captcha2_\r