mirror of
https://github.com/znc/znc.git
synced 2026-08-08 09:52:55 +02:00
CAuthBase: Use a Csock* instead of a CString "sRemoteIP"
git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@1511 726aef4b-f618-498e-8847-2d620e286838
This commit is contained in:
+7
-1
@@ -620,7 +620,7 @@ void CClient::AuthUser() {
|
||||
}
|
||||
|
||||
CClientAuth::CClientAuth(CClient* pClient, const CString& sUsername, const CString& sPassword)
|
||||
: CAuthBase(sUsername, sPassword, pClient->GetRemoteIP()) {
|
||||
: CAuthBase(sUsername, sPassword, pClient) {
|
||||
m_pClient = pClient;
|
||||
}
|
||||
|
||||
@@ -630,6 +630,12 @@ void CClientAuth::RefusedLogin(const CString& sReason) {
|
||||
}
|
||||
}
|
||||
|
||||
CString CAuthBase::GetRemoteIP() const {
|
||||
if (m_pSock)
|
||||
return m_pSock->GetRemoteIP();
|
||||
return "";
|
||||
}
|
||||
|
||||
void CAuthBase::RefuseLogin(const CString& sReason) {
|
||||
CUser* pUser = CZNC::Get().GetUser(GetUsername());
|
||||
|
||||
|
||||
@@ -23,17 +23,17 @@ class CClientTimeout;
|
||||
|
||||
class CAuthBase {
|
||||
public:
|
||||
CAuthBase(const CString& sUsername, const CString& sPassword, const CString& sRemoteIP) {
|
||||
SetLoginInfo(sUsername, sPassword, sRemoteIP);
|
||||
CAuthBase(const CString& sUsername, const CString& sPassword, Csock *pSock) {
|
||||
SetLoginInfo(sUsername, sPassword, pSock);
|
||||
}
|
||||
|
||||
virtual ~CAuthBase() {}
|
||||
|
||||
virtual void SetLoginInfo(const CString& sUsername, const CString& sPassword,
|
||||
const CString& sRemoteIP) {
|
||||
Csock *pSock) {
|
||||
m_sUsername = sUsername;
|
||||
m_sPassword = sPassword;
|
||||
m_sRemoteIP = sRemoteIP;
|
||||
m_pSock = pSock;
|
||||
}
|
||||
|
||||
void AcceptLogin(CUser& User) { AcceptedLogin(User); }
|
||||
@@ -41,7 +41,7 @@ public:
|
||||
|
||||
const CString& GetUsername() const { return m_sUsername; }
|
||||
const CString& GetPassword() const { return m_sPassword; }
|
||||
const CString& GetRemoteIP() const { return m_sRemoteIP; }
|
||||
CString GetRemoteIP() const;
|
||||
|
||||
protected:
|
||||
virtual void AcceptedLogin(CUser& User) = 0;
|
||||
@@ -50,7 +50,7 @@ protected:
|
||||
private:
|
||||
CString m_sUsername;
|
||||
CString m_sPassword;
|
||||
CString m_sRemoteIP;
|
||||
Csock* m_pSock;
|
||||
};
|
||||
|
||||
|
||||
|
||||
@@ -1160,7 +1160,7 @@ CUser* CWebAdminSock::GetNewUser(CString& sPageRet, CUser* pUser) {
|
||||
|
||||
CWebAdminAuth::CWebAdminAuth(CWebAdminSock* pWebAdminSock, const CString& sUsername,
|
||||
const CString& sPassword)
|
||||
: CAuthBase(sUsername, sPassword, pWebAdminSock->GetRemoteIP()) {
|
||||
: CAuthBase(sUsername, sPassword, pWebAdminSock) {
|
||||
m_pWebAdminSock = pWebAdminSock;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user