#include "../include/bitmapvalidator.h"\r
#include "../include/freenet/captcha/easybmp/EasyBMP.h"\r
\r
+#include <Poco/TemporaryFile.h>\r
+\r
#include <sstream>\r
+#include <cstdlib>\r
\r
const bool BitmapValidator::Validate(const std::vector<unsigned char> &data)\r
{\r
bool validated=false;\r
- std::ostringstream tempname;\r
- \r
- tempname << "validatebmp-" << rand() << ".tmp";\r
- FILE *outfile=fopen(tempname.str().c_str(),"w+b");\r
+ std::string tempname=Poco::TemporaryFile::tempName();\r
+\r
+ FILE *outfile=fopen(tempname.c_str(),"w+b");\r
if(outfile)\r
{\r
fwrite(&data[0],1,data.size(),outfile);\r
fclose(outfile);\r
\r
BMP temp;\r
- if(temp.ReadFromFile(tempname.str().c_str()))\r
+ if(temp.ReadFromFile(tempname.c_str()))\r
{\r
validated=true; \r
}\r
\r
- unlink(tempname.str().c_str());\r
+ unlink(tempname.c_str());\r
\r
}\r
\r