aboutsummaryrefslogtreecommitdiff
path: root/src/trinityrealm
diff options
context:
space:
mode:
Diffstat (limited to 'src/trinityrealm')
-rw-r--r--src/trinityrealm/AuthCodes.h1
-rw-r--r--src/trinityrealm/AuthSocket.cpp1
-rw-r--r--src/trinityrealm/AuthSocket.h87
-rw-r--r--src/trinityrealm/Main.cpp1
-rw-r--r--src/trinityrealm/RealmList.cpp1
-rw-r--r--src/trinityrealm/RealmList.h1
-rw-r--r--src/trinityrealm/resource.h1
7 files changed, 93 insertions, 0 deletions
diff --git a/src/trinityrealm/AuthCodes.h b/src/trinityrealm/AuthCodes.h
index 14a65b89504..defa513dede 100644
--- a/src/trinityrealm/AuthCodes.h
+++ b/src/trinityrealm/AuthCodes.h
@@ -73,3 +73,4 @@ enum LoginResult
#define EXPECTED_TRINITY_CLIENT_BUILD {8606, 0}
#endif
+
diff --git a/src/trinityrealm/AuthSocket.cpp b/src/trinityrealm/AuthSocket.cpp
index c5c81593737..dd7bc31e45b 100644
--- a/src/trinityrealm/AuthSocket.cpp
+++ b/src/trinityrealm/AuthSocket.cpp
@@ -1092,3 +1092,4 @@ Patcher::~Patcher()
for(Patches::iterator i = _patches.begin(); i != _patches.end(); i++ )
delete i->second;
}
+
diff --git a/src/trinityrealm/AuthSocket.h b/src/trinityrealm/AuthSocket.h
new file mode 100644
index 00000000000..73aa1b280e2
--- /dev/null
+++ b/src/trinityrealm/AuthSocket.h
@@ -0,0 +1,87 @@
+/*
+ * Copyright (C) 2005-2008 MaNGOS <http://www.mangosproject.org/>
+ *
+ * Copyright (C) 2008 Trinity <http://www.trinitycore.org/>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ */
+
+/// \addtogroup realmd
+/// @{
+/// \file
+
+#ifndef _AUTHSOCKET_H
+#define _AUTHSOCKET_H
+
+#include "Common.h"
+#include "Auth/BigNumber.h"
+#include "sockets/TcpSocket.h"
+#include "sockets/SocketHandler.h"
+#include "sockets/ListenSocket.h"
+#include "sockets/Utility.h"
+#include "sockets/Parse.h"
+#include "sockets/Socket.h"
+#include "zthread/Mutex.h"
+
+/// Handle login commands
+class AuthSocket: public TcpSocket
+{
+ public:
+ const static int s_BYTE_SIZE = 32;
+
+ AuthSocket(ISocketHandler& h);
+ ~AuthSocket();
+
+ void OnAccept();
+ void OnRead();
+
+ bool _HandleLogonChallenge();
+ bool _HandleLogonProof();
+ bool _HandleReconnectChallenge();
+ bool _HandleReconnectProof();
+ bool _HandleRealmList();
+ //data transfer handle for patch
+
+ bool _HandleXferResume();
+ bool _HandleXferCancel();
+ bool _HandleXferAccept();
+
+ void _SetVSFields(const std::string& rI);
+
+ FILE *pPatch;
+ ZThread::Mutex patcherLock;
+ bool IsLag();
+
+ private:
+
+ BigNumber N, s, g, v;
+ BigNumber b, B;
+ BigNumber K;
+ BigNumber _reconnectProof;
+
+ bool _authed;
+
+ std::string _login;
+ std::string _safelogin;
+
+ // Since GetLocaleByName() is _NOT_ bijective, we have to store the locale as a string. Otherwise we can't differ
+ // between enUS and enGB, which is important for the patch system
+ std::string _localizationName;
+ uint16 _build;
+ AccountTypes _accountSecurityLevel;
+};
+#endif
+/// @}
+
diff --git a/src/trinityrealm/Main.cpp b/src/trinityrealm/Main.cpp
index 95829ee96ca..8c2c199b2f4 100644
--- a/src/trinityrealm/Main.cpp
+++ b/src/trinityrealm/Main.cpp
@@ -351,3 +351,4 @@ void UnhookSignals()
}
/// @}
+
diff --git a/src/trinityrealm/RealmList.cpp b/src/trinityrealm/RealmList.cpp
index 6a3d6b47e0f..692f457b1a8 100644
--- a/src/trinityrealm/RealmList.cpp
+++ b/src/trinityrealm/RealmList.cpp
@@ -100,3 +100,4 @@ void RealmList::UpdateRealms(bool init)
delete result;
}
}
+
diff --git a/src/trinityrealm/RealmList.h b/src/trinityrealm/RealmList.h
index 842482bb75a..31690a19eb3 100644
--- a/src/trinityrealm/RealmList.h
+++ b/src/trinityrealm/RealmList.h
@@ -66,3 +66,4 @@ class RealmList
};
#endif
/// @}
+
diff --git a/src/trinityrealm/resource.h b/src/trinityrealm/resource.h
index 7dc5cb9ef7b..fbc730320b4 100644
--- a/src/trinityrealm/resource.h
+++ b/src/trinityrealm/resource.h
@@ -13,3 +13,4 @@
#define _APS_NEXT_SYMED_VALUE 101
#endif
#endif
+