-\r
- /*\r
- TiXmlDocument td;\r
- td.Parse(xml.c_str());\r
-\r
- if(!td.Error())\r
- {\r
- std::string identity;\r
- std::string messagetruststr;\r
- std::string trustlisttruststr;\r
- std::string messagetrustcomment="";\r
- std::string trustlisttrustcomment="";\r
- long messagetrust;\r
- long trustlisttrust;\r
- TiXmlText *txt;\r
- TiXmlHandle hnd(&td);\r
- TiXmlNode *node;\r
- std::vector<std::string> m_foundkeys;\r
-\r
- Initialize();\r
-\r
- node=hnd.FirstChild("TrustList").FirstChild("Trust").ToElement();\r
- while(node)\r
- {\r
- identity="";\r
- messagetrust=-1;\r
- trustlisttrust=-1;\r
- messagetrustcomment="";\r
- trustlisttrustcomment="";\r
-\r
- TiXmlHandle hnd2(node);\r
- txt=hnd2.FirstChild("Identity").FirstChild().ToText();\r
- if(txt)\r
- {\r
- identity=SanitizeSingleString(txt->ValueStr());\r
- }\r
- txt=hnd2.FirstChild("MessageTrustLevel").FirstChild().ToText();\r
- if(txt)\r
- {\r
- messagetruststr=SanitizeSingleString(txt->ValueStr());\r
- if(messagetruststr!="")\r
- {\r
- StringFunctions::Convert(messagetruststr,messagetrust);\r
- }\r
- }\r
- txt=hnd2.FirstChild("TrustListTrustLevel").FirstChild().ToText();\r
- if(txt)\r
- {\r
- trustlisttruststr=SanitizeSingleString(txt->ValueStr());\r
- if(trustlisttruststr!="")\r
- {\r
- StringFunctions::Convert(trustlisttruststr,trustlisttrust);\r
- }\r
- }\r
- txt=hnd2.FirstChild("MessageTrustComment").FirstChild().ToText();\r
- if(txt)\r
- {\r
- messagetrustcomment=txt->ValueStr();\r
- }\r
- txt=hnd2.FirstChild("TrustListTrustComment").FirstChild().ToText();\r
- if(txt)\r
- {\r
- trustlisttrustcomment=txt->ValueStr();\r
- }\r
-\r
- if(identity!="" && messagetrust>=-1 && messagetrust<=100 && trustlisttrust>=-1 && trustlisttrust<=100)\r
- {\r
- // check so we don't add the same identity multiple times from a trust list\r
- if(std::find(m_foundkeys.begin(),m_foundkeys.end(),identity)==m_foundkeys.end())\r
- {\r
- m_foundkeys.push_back(identity);\r
- m_trust.push_back(trust(identity,messagetrust,trustlisttrust,messagetrustcomment,trustlisttrustcomment));\r
- }\r
- }\r
- else\r
- {\r
- m_log->WriteLog(LogFile::LOGLEVEL_ERROR,"TrustListXML::ParseXML malformed Trust in TrustList.xml");\r
- }\r
- \r
- node=node->NextSibling("Trust");\r
- }\r
- return true;\r
-\r
- }\r
- else\r
- {\r
- return false;\r
- }\r
- */\r