Windows NT KAMIDAKI 10.0 build 19045 (Windows 10) AMD64
Apache/2.4.58 (Win64) OpenSSL/3.1.3 PHP/8.3.9
Server IP : 192.168.3.16 & Your IP : 216.73.216.140
Domains :
Cant Read [ /etc/named.conf ]
User : SISTEMA
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
C: /
xampp /
FileZillaFTP /
source /
interface /
Delete
Unzip
Name
Size
Permission
Date
Action
misc
[ DIR ]
drwxrwxrwx
2024-07-26 17:37
res
[ DIR ]
drwxrwxrwx
2024-07-26 17:37
AdminSocket.cpp
11.93
KB
-rw-rw-rw-
2012-04-16 19:30
AdminSocket.h
2.15
KB
-rw-rw-rw-
2012-04-16 19:30
ConnectDialog.cpp
3.33
KB
-rw-rw-rw-
2012-04-16 19:30
ConnectDialog.h
2.2
KB
-rw-rw-rw-
2012-04-16 19:30
DeleteGroupInUseDlg.cpp
2.21
KB
-rw-rw-rw-
2012-04-16 19:30
DeleteGroupInUseDlg.h
1.57
KB
-rw-rw-rw-
2012-04-16 19:30
EnterSomething.cpp
2.91
KB
-rw-rw-rw-
2012-04-16 19:30
EnterSomething.h
2.27
KB
-rw-rw-rw-
2012-04-16 19:30
FileZilla Server Interface.vcproj
46.3
KB
-rw-rw-rw-
2012-04-16 19:30
FileZilla server.cpp
6.09
KB
-rw-rw-rw-
2012-04-16 19:30
FileZilla server.h
2.37
KB
-rw-rw-rw-
2012-04-16 19:30
FileZilla server.rc
66.64
KB
-rw-rw-rw-
2012-04-16 19:30
GenerateCertificateDlg.cpp
3.22
KB
-rw-rw-rw-
2012-04-16 19:30
GenerateCertificateDlg.h
1.39
KB
-rw-rw-rw-
2012-04-16 19:30
GroupsDlg.cpp
13.45
KB
-rw-rw-rw-
2012-04-16 19:30
GroupsDlg.h
3.1
KB
-rw-rw-rw-
2012-04-16 19:30
GroupsDlgGeneral.cpp
5.01
KB
-rw-rw-rw-
2012-04-16 19:30
GroupsDlgGeneral.h
2.64
KB
-rw-rw-rw-
2012-04-16 19:30
GroupsDlgIpFilter.cpp
3.94
KB
-rw-rw-rw-
2012-04-16 19:30
GroupsDlgIpFilter.h
2.36
KB
-rw-rw-rw-
2012-04-16 19:30
GroupsDlgSharedFolders.cpp
18.15
KB
-rw-rw-rw-
2012-04-16 19:30
GroupsDlgSharedFolders.h
3.51
KB
-rw-rw-rw-
2012-04-16 19:30
GroupsDlgSpeedLimit.cpp
14.94
KB
-rw-rw-rw-
2012-04-16 19:30
GroupsDlgSpeedLimit.h
3.38
KB
-rw-rw-rw-
2012-04-16 19:30
MainFrm.cpp
35.15
KB
-rw-rw-rw-
2012-04-16 19:30
MainFrm.h
5.65
KB
-rw-rw-rw-
2012-04-16 19:30
NewUserDlg.cpp
2.68
KB
-rw-rw-rw-
2012-04-16 19:30
NewUserDlg.h
2.18
KB
-rw-rw-rw-
2012-04-16 19:30
OfflineAskDlg.cpp
2.05
KB
-rw-rw-rw-
2012-04-16 19:30
OfflineAskDlg.h
2.06
KB
-rw-rw-rw-
2012-04-16 19:30
Options.cpp
8.67
KB
-rw-rw-rw-
2012-04-16 19:30
Options.h
2.18
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsAdminInterfacePage.cpp
7.01
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsAdminInterfacePage.h
2.58
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsAutobanPage.cpp
3.75
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsAutobanPage.h
2.14
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsCompressionPage.cpp
3.42
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsCompressionPage.h
1.41
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsDlg.cpp
10.44
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsDlg.h
3.05
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsGSSPage.cpp
2.32
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsGSSPage.h
2.1
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsGeneralIpbindingsPage.cpp
1.78
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsGeneralIpbindingsPage.h
1.33
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsGeneralPage.cpp
4.98
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsGeneralPage.h
2.41
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsGeneralWelcomemessagePage.cpp
3.5
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsGeneralWelcomemessagePage.h
2.45
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsIpFilterPage.cpp
3.15
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsIpFilterPage.h
2.3
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsLoggingPage.cpp
4.91
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsLoggingPage.h
2.49
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsMiscPage.cpp
3.78
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsMiscPage.h
2.33
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsPage.cpp
2.03
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsPage.h
2.27
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsPasvPage.cpp
5.96
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsPasvPage.h
2.51
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsSecurityPage.cpp
3.48
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsSecurityPage.h
2.39
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsSpeedLimitPage.cpp
12
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsSpeedLimitPage.h
3.35
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsSslPage.cpp
6.76
KB
-rw-rw-rw-
2012-04-16 19:30
OptionsSslPage.h
1.76
KB
-rw-rw-rw-
2012-04-16 19:30
OutputFormat.cpp
792
B
-rw-rw-rw-
2012-04-16 19:30
OutputFormat.h
178
B
-rw-rw-rw-
2012-04-16 19:30
SpeedLimitRuleDlg.cpp
5.04
KB
-rw-rw-rw-
2012-04-16 19:30
SpeedLimitRuleDlg.h
2.46
KB
-rw-rw-rw-
2012-04-16 19:30
StatusCtrl.cpp
10.46
KB
-rw-rw-rw-
2012-04-16 19:30
StatusCtrl.h
2.81
KB
-rw-rw-rw-
2012-04-16 19:30
StatusView.cpp
2.95
KB
-rw-rw-rw-
2012-04-16 19:30
StatusView.h
2.39
KB
-rw-rw-rw-
2012-04-16 19:30
StdAfx.cpp
1.03
KB
-rw-rw-rw-
2012-04-16 19:30
StdAfx.h
2.77
KB
-rw-rw-rw-
2012-04-16 19:30
UsersDlg.cpp
13.17
KB
-rw-rw-rw-
2012-04-16 19:30
UsersDlg.h
3.26
KB
-rw-rw-rw-
2012-04-16 19:30
UsersDlgGeneral.cpp
8.51
KB
-rw-rw-rw-
2012-04-16 19:30
UsersDlgGeneral.h
2.78
KB
-rw-rw-rw-
2012-04-16 19:30
UsersDlgIpFilter.cpp
3.88
KB
-rw-rw-rw-
2012-04-16 19:30
UsersDlgIpFilter.h
2.34
KB
-rw-rw-rw-
2012-04-16 19:30
UsersDlgSharedFolders.cpp
17.95
KB
-rw-rw-rw-
2012-04-16 19:30
UsersDlgSharedFolders.h
3.45
KB
-rw-rw-rw-
2012-04-16 19:30
UsersDlgSpeedLimit.cpp
15.4
KB
-rw-rw-rw-
2012-04-16 19:30
UsersDlgSpeedLimit.h
3.36
KB
-rw-rw-rw-
2012-04-16 19:30
UsersListCtrl.cpp
24.46
KB
-rw-rw-rw-
2012-04-16 19:30
UsersListCtrl.h
3.54
KB
-rw-rw-rw-
2012-04-16 19:30
UsersView.cpp
2.83
KB
-rw-rw-rw-
2012-04-16 19:30
UsersView.h
2.37
KB
-rw-rw-rw-
2012-04-16 19:30
resource.h
14.1
KB
-rw-rw-rw-
2012-04-16 19:30
splitex.cpp
10.85
KB
-rw-rw-rw-
2012-04-16 19:30
splitex.h
1.4
KB
-rw-rw-rw-
2012-04-16 19:30
Save
Rename
// FileZilla Server - a Windows ftp server // Copyright (C) 2002-2004 - Tim Kosse <tim.kosse@gmx.de> // 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. // Options.cpp: Implementierungsdatei // #include "stdafx.h" #include "../version.h" #include "filezilla server.h" #include "OptionsDlg.h" #include "..\OptionTypes.h" #include "Options.h" #if defined(_DEBUG) && !defined(MMGR) #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif #include "OptionsPage.h" #include "OptionsGeneralPage.h" #include "OptionsGeneralWelcomemessagePage.h" #include "OptionsPasvPage.h" #include "OptionsSecurityPage.h" #include "OptionsMiscPage.h" #include "OptionsAdminInterfacePage.h" #include "OptionsLoggingPage.h" #include "OptionsGSSPage.h" #include "OptionsSpeedLimitPage.h" #include "OptionsCompressionPage.h" #include "OptionsGeneralIpbindingsPage.h" #include "OptionsIpFilterPage.h" #include "OptionsSslPage.h" #include "OptionsAutobanPage.h" ///////////////////////////////////////////////////////////////////////////// // Dialogfeld COptionsDlg COptionsDlg::COptionsDlg(COptions *pInterfaceOptions, bool localConnection) : m_localConnection(localConnection) { ASSERT(pInterfaceOptions); m_pInterfaceOptions = pInterfaceOptions; //Add options pages COptionsPage *page; page = new COptionsGeneralPage(this); AddPage(*page, IDS_OPTIONSPAGE_GENERAL); m_PageList.push_back(page); page = new COptionsGeneralWelcomemessagePage(this); AddPage(*page, IDS_OPTIONSPAGE_GENERAL_WELCOMEMESSAGE, m_PageList.back()); m_PageList.push_back(page); page = new COptionsGeneralIpbindingsPage(this); AddPage(*page, IDS_OPTIONSPAGE_GENERAL_IPBINDINGS, *--(--m_PageList.end())); m_PageList.push_back(page); page = new COptionsIpFilterPage(this); AddPage(*page, IDS_OPTIONSPAGE_GENERAL_IPFILTER, m_PageList.front()); m_PageList.push_back(page); page = new COptionsPasvPage(this); AddPage(*page, IDS_OPTIONSPAGE_PASV); m_PageList.push_back(page); page = new COptionsSecurityPage(this); AddPage(*page, IDS_OPTIONSPAGE_SECURITY); m_PageList.push_back(page); page = new COptionsMiscPage(this); AddPage(*page, IDS_OPTIONSPAGE_MISC); m_PageList.push_back(page); page = new COptionsAdminInterfacePage(this); AddPage(*page, IDS_OPTIONSPAGE_ADMININTERFACE); m_PageList.push_back(page); page = new COptionsLoggingPage(this); AddPage(*page, IDS_OPTIONSPAGE_LOGGING); m_PageList.push_back(page); page = new COptionsGSSPage(this); AddPage(*page, IDS_OPTIONSPAGE_GSS); m_PageList.push_back(page); m_pOptionsSpeedLimitPage = new COptionsSpeedLimitPage(this); AddPage(*m_pOptionsSpeedLimitPage, IDS_OPTIONSPAGE_SPEEDLIMIT); m_PageList.push_back(m_pOptionsSpeedLimitPage); page = new COptionsCompressionPage(this); AddPage(*page, IDS_OPTIONSPAGE_COMPRESSION); m_PageList.push_back(page); page = new COptionsSslPage(this); AddPage(*page, IDS_OPTIONSPAGE_SSL); m_PageList.push_back(page); page = new COptionsAutobanPage(this); AddPage(*page, IDS_OPTIONSPAGE_AUTOBAN); m_PageList.push_back(page); } COptionsDlg::~COptionsDlg() { for (std::list<COptionsPage *>::iterator iter = m_PageList.begin(); iter != m_PageList.end(); iter++) delete *iter; } void COptionsDlg::DoDataExchange(CDataExchange* pDX) { CSAPrefsDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(COptionsDlg) // HINWEIS: Der Klassen-Assistent f�gt hier DDX- und DDV-Aufrufe ein //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(COptionsDlg, CSAPrefsDialog) //{{AFX_MSG_MAP(COptionsDlg) //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // Behandlungsroutinen f�r Nachrichten COptionsDlg BOOL COptionsDlg::Show() { SetConstantText("FileZilla Server"); std::list<COptionsPage *>::iterator iter; for (iter = m_PageList.begin(); iter != m_PageList.end(); iter++) (*iter)->LoadData(); if (DoModal()!=IDOK) return FALSE; for (iter = m_PageList.begin(); iter != m_PageList.end(); iter++) (*iter)->SaveData(); return TRUE; } BOOL COptionsDlg::OnInitDialog() { CSAPrefsDialog::OnInitDialog(); return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX-Eigenschaftenseiten sollten FALSE zur�ckgeben } void COptionsDlg::SetOption(int nOptionID, __int64 value) { m_OptionsCache[nOptionID-1].nType = 1; m_OptionsCache[nOptionID-1].value = value; } void COptionsDlg::SetOption(int nOptionID, CString value) { m_OptionsCache[nOptionID-1].nType = 0; m_OptionsCache[nOptionID-1].str = value; } CString COptionsDlg::GetOption(int nOptionID) { ASSERT(nOptionID>0 && nOptionID<=OPTIONS_NUM); ASSERT(!m_Options[nOptionID-1].nType); return m_OptionsCache[nOptionID-1].str; } __int64 COptionsDlg::GetOptionVal(int nOptionID) { ASSERT(nOptionID>0 && nOptionID<=OPTIONS_NUM); ASSERT(m_Options[nOptionID-1].nType == 1); return m_OptionsCache[nOptionID-1].value; } void COptionsDlg::OnOK() { if (!UpdateData(true)) return; if (!GetCurPage()->UpdateData(TRUE)) return; for (std::list<COptionsPage *>::iterator iter = m_PageList.begin(); iter != m_PageList.end(); iter++) if (!(*iter)->IsDataValid()) return; CSAPrefsDialog::OnOK(); } CSAPrefsSubDlg* COptionsDlg::GetCurPage() { int iPage = m_iCurPage; // show the new one if ((iPage >= 0) && (iPage < (int)m_pages.size())) { pageStruct *pPS = m_pages[iPage]; ASSERT(pPS); if (pPS) { ASSERT(pPS->pDlg); if (pPS->pDlg) { return pPS->pDlg; } } } return NULL; } bool COptionsDlg::AddPage(CSAPrefsSubDlg &page, UINT nCaptionID, CSAPrefsSubDlg *pDlgParent /*= NULL*/) { CString str; str.LoadString(nCaptionID); return CSAPrefsDialog::AddPage(page, str, pDlgParent); } bool COptionsDlg::IsNumeric(LPCTSTR str) { if (!str) return false; LPCTSTR p=str; while(*p) { if (*p<'0' || *p>'9') { return false; } p++; } return true; } BOOL COptionsDlg::Init(unsigned char *pData, DWORD dwDataLength) { unsigned char *p = pData; int i; int num = *p * 256 + p[1]; p+=2; if (num!=OPTIONS_NUM) return FALSE; for (i=0; i<num; i++) { if (static_cast<DWORD>(p-pData) >= dwDataLength) return FALSE; int nType = *p++; if (!nType) { if (static_cast<DWORD>(p-pData+3) >= dwDataLength) return 2; int len= *p * 256 * 256 + p[1] * 256 + p[2]; p+=3; if (static_cast<DWORD>(p-pData+len)>dwDataLength) return FALSE; m_OptionsCache[i].nType = 0; char* tmp = new char[len + 1]; memcpy(tmp, p, len); tmp[len] = 0; #if _UNICODE m_OptionsCache[i].str = ConvFromNetwork(tmp); #else m_OptionsCache[i].str = ConvToLocal(ConvFromNetwork(tmp)); #endif p += len; delete [] tmp; } else if (nType == 1) { if (static_cast<DWORD>(p-pData+8)>dwDataLength) return FALSE; m_OptionsCache[i].nType = 1; memcpy(&m_OptionsCache[i].value, p, 8); p+=8; } else return FALSE; } if (static_cast<DWORD>(p-pData+2) > dwDataLength) return FALSE; num = *p++ << 8; num |= *p++; for (i=0; i<num; i++) { CSpeedLimit limit; p = limit.ParseBuffer(p, dwDataLength - (p - pData)); if (!p) return FALSE; m_pOptionsSpeedLimitPage->m_DownloadSpeedLimits.push_back(limit); } if (static_cast<DWORD>(p-pData+2) > dwDataLength) return FALSE; num = *p++ << 8; num |= *p++; for (i=0; i<num; i++) { CSpeedLimit limit; p = limit.ParseBuffer(p, dwDataLength - (p - pData)); if (!p) return FALSE; m_pOptionsSpeedLimitPage->m_UploadSpeedLimits.push_back(limit); } return TRUE; } BOOL COptionsDlg::GetAsCommand(char **pBuffer, DWORD *nBufferLength) { DWORD len = 2; int i; for (i = 0; i < OPTIONS_NUM; i++) { len+=1; if (!m_Options[i].nType) { char* utf8 = ConvToNetwork(GetOption(i+1)); if (utf8) { int l = strlen(utf8); delete [] utf8; if (l > 0xFFFFFF) return FALSE; len += l; } len += 3; } else len+=8; } len += 4; //Number of rules SPEEDLIMITSLIST::const_iterator iter; for (iter = m_pOptionsSpeedLimitPage->m_DownloadSpeedLimits.begin(); iter != m_pOptionsSpeedLimitPage->m_DownloadSpeedLimits.end(); iter++) len += iter->GetRequiredBufferLen(); for (iter = m_pOptionsSpeedLimitPage->m_UploadSpeedLimits.begin(); iter != m_pOptionsSpeedLimitPage->m_UploadSpeedLimits.end(); iter++) len += iter->GetRequiredBufferLen(); *pBuffer = new char[len]; char *p=*pBuffer; *p++ = OPTIONS_NUM/256; *p++ = OPTIONS_NUM%256; for (i=0; i<OPTIONS_NUM; i++) { *p++ = m_Options[i].nType; switch(m_Options[i].nType) { case 0: { char* utf8 = ConvToNetwork(GetOption(i+1)); if (utf8) { int slen = strlen(utf8); *p++ = (slen / 256) / 256; *p++ = slen / 256; *p++ = slen % 256; memcpy(p, utf8, slen); p += slen; delete [] utf8; } else { *p++ = 0; *p++ = 0; } } break; case 1: { _int64 value = GetOptionVal(i+1); memcpy(p, &value, 8); p+=8; } break; default: ASSERT(FALSE); } } *p++ = m_pOptionsSpeedLimitPage->m_DownloadSpeedLimits.size() >> 8; *p++ = m_pOptionsSpeedLimitPage->m_DownloadSpeedLimits.size() % 256; for (iter = m_pOptionsSpeedLimitPage->m_DownloadSpeedLimits.begin(); iter != m_pOptionsSpeedLimitPage->m_DownloadSpeedLimits.end(); iter++) p = iter->FillBuffer(p); *p++ = m_pOptionsSpeedLimitPage->m_UploadSpeedLimits.size() >> 8; *p++ = m_pOptionsSpeedLimitPage->m_UploadSpeedLimits.size() % 256; for (iter = m_pOptionsSpeedLimitPage->m_UploadSpeedLimits.begin(); iter != m_pOptionsSpeedLimitPage->m_UploadSpeedLimits.end(); iter++) p = iter->FillBuffer(p); *nBufferLength = len; return TRUE; }