Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.

PostfixIntegrate.hpp 1.9KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. // \file PostfixIntegrate.hpp
  2. //
  3. // Copyright (C) 2011 ARM Research Labs, LLC.
  4. // See www.armresearch.com for the copyright terms.
  5. //
  6. // This file defines the PostfixIntegrate interface.
  7. //
  8. // $Id$
  9. //
  10. ///////////////////////////////////////////////////////////////////////////////////////////////////
  11. #ifndef PostfixIntegratehpp_included
  12. #define PostfixIntegratehpp_included
  13. #include "MtaIntegrate.hpp"
  14. /// Class to manage the SNFMilter integration with postfix.
  15. //
  16. // This class implements the MtaIntegrate interface for postfix.
  17. //
  18. //////////////////////////////////////////////////////////////////////////////////////////////////////////
  19. class PostfixIntegrate : public MtaIntegrate {
  20. public:
  21. virtual void SetOperatingSystem(std::string OperatingSystemType);
  22. virtual void Integrate(FileBackup *SaveFile);
  23. virtual void Unintegrate(FileBackup *SaveFile);
  24. // Return the default chroot configuration of Postfix.
  25. //
  26. // \returns true if the default configuration is for postfix to
  27. // run chrooted, false otherwise.
  28. //
  29. bool DefaultIsChrooted();
  30. private:
  31. virtual bool MtaIsRunningDetected();
  32. virtual bool ReloadMta();
  33. virtual bool IsIntegrated();
  34. bool MtaConfigurationIsChrooted();
  35. /// Postfix main.cf file path.
  36. std::string PostfixMainCfPath;
  37. /// Postfix master.cf file path.
  38. std::string PostfixMasterCfPath;
  39. /// Value of smtpd_milters keyword.
  40. std::string PostfixSocketSpec;
  41. /// Command to determine whether postfix is running.
  42. std::string MtaIsRunningCommand;
  43. /// Command to reload postfix.
  44. std::string ReloadMtaCommand;
  45. /// True if postfix runs chrooted by default.
  46. bool PostfixDefaultIsChrooted;
  47. /// Command to add the postfix user to the snfuser group.
  48. std::string AddPostfixToSnfuserGroupCommand;
  49. };
  50. #endif