version 0.2.20
[fms.git] / src / freenet / identityrequester.cpp
index b12fe08..c0f6c8a 100644 (file)
@@ -28,6 +28,7 @@ const bool IdentityRequester::HandleAllData(FCPMessage &message)
        IdentityXML xml;\r
        long identityid;\r
        long index;\r
+       std::string name="";\r
 \r
        now.SetToGMTime();\r
        StringFunctions::Split(message["Identifier"],"|",idparts);\r
@@ -55,8 +56,13 @@ const bool IdentityRequester::HandleAllData(FCPMessage &message)
        if(xml.ParseXML(std::string(data.begin(),data.end()))==true)\r
        {\r
 \r
-               st=m_db->Prepare("UPDATE tblIdentity SET Name=?, SingleUse=?, LastSeen=?, PublishTrustList=?, PublishBoardList=? WHERE IdentityID=?");\r
-               st.Bind(0,xml.GetName());\r
+               st=m_db->Prepare("UPDATE tblIdentity SET Name=?, SingleUse=?, LastSeen=?, PublishTrustList=?, PublishBoardList=?, FreesiteEdition=? WHERE IdentityID=?");\r
+               name=xml.GetName();\r
+               if(name.size()>40)\r
+               {\r
+                       name.erase(40);\r
+               }\r
+               st.Bind(0,name);\r
                if(xml.GetSingleUse()==true)\r
                {\r
                        st.Bind(1,"true");\r
@@ -82,7 +88,15 @@ const bool IdentityRequester::HandleAllData(FCPMessage &message)
                {\r
                        st.Bind(4,"false");\r
                }\r
-               st.Bind(5,identityid);\r
+               if(xml.GetFreesiteEdition()>=0)\r
+               {\r
+                       st.Bind(5,xml.GetFreesiteEdition());\r
+               }\r
+               else\r
+               {\r
+                       st.Bind(5);\r
+               }\r
+               st.Bind(6,identityid);\r
                st.Step();\r
                st.Finalize();\r
 \r