/////////////////// !Timer ///////////////////
/////////////////// Socket ///////////////////
-CSocket::CSocket(CModule* pModule, const CString& sLabel) : Csock() {
+CSocket::CSocket(CModule* pModule) : Csock() {
m_pModule = pModule;
- m_sLabel = sLabel;
m_pModule->AddSocket(this);
EnableReadLine();
}
-CSocket::CSocket(CModule* pModule, const CString& sLabel, const CString& sHostname, unsigned short uPort, int iTimeout) : Csock(sHostname, uPort, iTimeout) {
+CSocket::CSocket(CModule* pModule, const CString& sHostname, unsigned short uPort, int iTimeout) : Csock(sHostname, uPort, iTimeout) {
m_pModule = pModule;
- m_sLabel = sLabel;
m_pModule->AddSocket(this);
EnableReadLine();
}
sVHost = m_pModule->GetUser()->GetVHost();
}
+ // Don't overwrite the socket name if one is already set
+ if (!GetSockName().empty()) {
+ sSockName = GetSockName();
+ }
+
return m_pModule->GetManager()->Connect(sHostname, uPort, sSockName, uTimeout, bSSL, sVHost, (Csock*) this);
}
if (pUser) {
sSockName += "::" + pUser->GetUserName();
}
+ // Don't overwrite the socket name if one is already set
+ if (!GetSockName().empty()) {
+ sSockName = GetSockName();
+ }
return m_pModule->GetManager()->ListenAll(uPort, sSockName, bSSL, SOMAXCONN, (Csock*) this);
}
}
void CSocket::SetModule(CModule* p) { m_pModule = p; }
-void CSocket::SetLabel(const CString& s) { m_sLabel = s; }
-
CModule* CSocket::GetModule() const { return m_pModule; }
-const CString& CSocket::GetLabel() const { return m_sLabel; }
/////////////////// !Socket ///////////////////
CModule::CModule(void* pDLL, CUser* pUser, const CString& sModName, const CString& sDataDir) {
return false;
}
-bool CModule::RemSocket(const CString& sLabel) {
+bool CModule::RemSocket(const CString& sSockName) {
for (unsigned int a = 0; a < m_vSockets.size(); a++) {
CSocket* pSocket = m_vSockets[a];
- if (pSocket->GetLabel().CaseCmp(sLabel) == 0) {
+ if (pSocket->GetSockName().CaseCmp(sSockName) == 0) {
m_vSockets.erase(m_vSockets.begin() +a);
m_pManager->DelSockByAddr(pSocket);
return true;
return false;
}
-CSocket* CModule::FindSocket(const CString& sLabel) {
+CSocket* CModule::FindSocket(const CString& sSockName) {
for (unsigned int a = 0; a < m_vSockets.size(); a++) {
CSocket* pSocket = m_vSockets[a];
- if (pSocket->GetLabel().CaseCmp(sLabel) == 0) {
+ if (pSocket->GetSockName().CaseCmp(sSockName) == 0) {
return pSocket;
}
}
CSocket* pSocket = (CSocket*) m_vSockets[a];
Table.AddRow();
- Table.SetCell("Name", pSocket->GetLabel());
+ Table.SetCell("Name", pSocket->GetSockName());
if (pSocket->GetType() == CSocket::LISTENER) {
Table.SetCell("State", "Listening");
class CSocket : public Csock {
public:
- CSocket(CModule* pModule, const CString& sLabel);
- CSocket(CModule* pModule, const CString& sLabel, const CString& sHostname, unsigned short uPort, int iTimeout = 60);
+ CSocket(CModule* pModule);
+ CSocket(CModule* pModule, const CString& sHostname, unsigned short uPort, int iTimeout = 60);
virtual ~CSocket();
using Csock::Connect;
// Setters
void SetModule(CModule* p);
- void SetLabel(const CString& s);
// !Setters
// Getters
CModule* GetModule() const;
- const CString& GetLabel() const;
// !Getters
private:
protected:
CModule* m_pModule;
- CString m_sLabel;
};
class CModInfo {
// Socket stuff
bool AddSocket(CSocket* pSocket);
bool RemSocket(CSocket* pSocket);
- bool RemSocket(const CString& sLabel);
+ bool RemSocket(const CString& sSockName);
bool UnlinkSocket(CSocket* pSocket);
- CSocket* FindSocket(const CString& sLabel);
+ CSocket* FindSocket(const CString& sSockName);
virtual void ListSockets();
// !Socket stuff