// // Created by robin on 8/8/15. // #ifndef PDNS_SLAVE_MAINCLASS_H #define PDNS_SLAVE_MAINCLASS_H #include #include #include #include "libmilter/mfapi.h" #include "libmilter/mfdef.h" class MainClass { public: static MainClass* getInstance(); MainClass(int argc, char* argv[]); virtual ~MainClass(); int main(); sfsistat mlfiHeader(SMFICTX *ctx); std::string randomizeString(const std::string& str); protected: int loadConfig(const std::string& filePath); int launchMilter(const std::string& socket); int launchDecrypt(const std::vector values); private: int _argc; char** _argv; std::shared_ptr _cryptoBusiness; std::string _defaultSocket; static MainClass* _instance; }; #endif //PDNS_SLAVE_MAINCLASS_H