00001
00032 #ifndef LL_LLMAIL_H
00033 #define LL_LLMAIL_H
00034
00035 typedef struct apr_pool_t apr_pool_t;
00036
00037 class LLUUID;
00038
00039 class LLMail
00040 {
00041 public:
00042
00043 static void init(const std::string& hostname, apr_pool_t* pool);
00044
00045
00046 static void enable(bool mail_enabled);
00047
00048
00049
00050
00051
00052
00053
00054
00055 static BOOL send(const char* from_name, const char* from_address,
00056 const char* to_name, const char* to_address,
00057 const char* subject, const char* message);
00058
00070 static std::string buildSMTPTransaction(
00071 const char* from_name,
00072 const char* from_address,
00073 const char* to_name,
00074 const char* to_address,
00075 const char* subject);
00076
00086 static bool send(
00087 const std::string& header,
00088 const std::string& message,
00089 const char* from_address,
00090 const char* to_address);
00091
00092
00093
00094
00095
00096
00097
00098
00099
00100
00101
00102
00103
00104
00105
00106
00107
00108 static std::string encryptIMEmailAddress(
00109 const LLUUID& from_agent_id,
00110 const LLUUID& to_agent_id,
00111 U32 time,
00112 const U8* secret,
00113 size_t secret_size);
00114 };
00115
00116 extern const size_t LL_MAX_KNOWN_GOOD_MAIL_SIZE;
00117
00118 #endif