精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

FileZilla FTP 兼容FtpAnywhere

運維 系統(tǒng)運維
FileZilla FTP是一個著名的開源標準FTP客戶端軟件,但是與FtpAnywhere提供的網(wǎng)格FTP有兼容問題。所以如何才能讓FileZilla FTP 兼容FtpAnywhere呢?本文主要講述的就是這個問題:讓FileZilla FTP 兼容FtpAnywhere

  讓FileZilla兼容FtpAnywhere

  FileZilla FTP是一個著名的開源標準FTP客戶端軟件,但是它的目前版本與FtpAnywhere提供的網(wǎng)格FTP有兼容問題,而且,目前無法通過它提供的那些設置模塊來實現(xiàn)兼容,因此,我特地下載了它的源代碼快照 [2009.4.16] ,看看是否有可能通過修改源代碼來讓它兼容.

  解壓縮它的源代碼,轉到子目錄\src\engine下,打開ftpcontrolsocket.cpp文件,這個文件就是FileZilla用來支持標準FTP指令的核心,需要改造的是它的列表模式以及對PASV反饋的分析代碼 [包括IPV6下的EPSV指令,但是暫時因為沒有IPV6,所以沒必要動它],改造它的PASV解析代碼

  讓FileZilla兼容FtpAnywhere

  1.   bool CFtpControlSocket::ParsePasvResponse(CRawTransferOpData* pData)  
  2.  
  3.   {  
  4.  
  5.   // Validate ip address  
  6.  
  7.   wxString digit = _T("0*[0-9]{1,3}");  
  8.  
  9.   const wxChar* dot = _T(",");  
  10.  
  11.   wxString exp = _T("( |\\()(") + digit + dot + digit + dot + digit + dot + digit + dot + digit + dot + digit + _T(")( |\\)|$)");  
  12.  
  13.   wxRegEx regex;  
  14.  
  15.   regex.Compile(exp);  
  16.  
  17.   if (!regex.Matches(m_Response))  
  18.  
  19.   return false;  
  20.  
  21.   pData->host = regex.GetMatch(m_Response, 2);  
  22.  
  23.   int i = pData->host.Find(',', true);  
  24.  
  25.   long number;  
  26.  
  27.   if (i == -1 || !pData->host.Mid(i + 1).ToLong(&number))  
  28.  
  29.   return false;  
  30.  
  31.   pData->port = number; //get ls byte of server socket  
  32.  
  33.   pData->host = pData->host.Left(i);  
  34.  
  35.   i = pData->host.Find(',', true);  
  36.  
  37.   if (i == -1 || !pData->host.Mid(i + 1).ToLong(&number))  
  38.  
  39.   return false;  
  40.  
  41.   pData->port += 256 * number; //add ms byte of server socket  
  42.  
  43.   pData->host = pData-> host.Left(i);  
  44.  
  45.   pData->host.Replace(_T(","), _T("."));  
  46.  
  47.   if (m_pProxyBackend)  
  48.  
  49.   {  
  50.  
  51.   // We do not have any information about the proxy's inner workings  
  52.  
  53.   return true;  
  54.  
  55.   }  
  56.  
  57.   const wxString peerIP = m_pSocket->GetPeerIP();  
  58.  
  59.   if (!IsRoutableAddress(pData->host, m_pSocket->GetAddressFamily()) && IsRoutableAddress(peerIP, m_pSocket->GetAddressFamily()))  
  60.  
  61.   {  
  62.  
  63.   if (!m_pEngine->GetOptions()->GetOptionVal(OPTION_PASVREPLYFALLBACKMODE) || pData->bTriedActive)  
  64.  
  65.   {  
  66.  
  67.   LogMessage(Status, _("Server sent passive reply with unroutable address. Using server address instead."));  
  68.  
  69.   LogMessage(Debug_Info, _T(" Reply: %s, peer: %s"), pData->host.c_str(), peerIP.c_str());  
  70.  
  71.   pData->host = peerIP;  
  72.  
  73.   }  
  74.  
  75.   else  
  76.  
  77.   {  
  78.  
  79.   LogMessage(Status, _("Server sent passive reply with unroutable address. Passive mode failed."));  
  80.  
  81.   LogMessage(Debug_Info, _T(" Reply: %s, peer: %s"), pData->host.c_str(), peerIP.c_str());  
  82.  
  83.   return false;  
  84.  
  85.   }  
  86.  
  87.   }  
  88.  
  89.   return true;  
  90.  
  91.   }  
  92.  

  這里是它原先的代碼,導致PASV模式下無法下載的問題就出在它不知道有P2P傳輸這么個東西,因此加了個安全判斷功能,只要把它注銷就可以適合FtpAnywhere了,一般來說,只要FTP服務器是正規(guī)的服務器,那么這些代碼完全是白費蠟,注銷后的代碼

  讓FileZilla兼容FtpAnywhere

  1.   bool CFtpControlSocket::ParsePasvResponse(CRawTransferOpData* pData)  
  2.  
  3.   {  
  4.  
  5.   // Validate ip address  
  6.  
  7.   wxString digit = _T("0*[0-9]{1,3}");  
  8.  
  9.   const wxChar* dot = _T(",");  
  10.  
  11.   wxString exp = _T("( |\\()(") + digit + dot + digit + dot + digit + dot + digit + dot + digit + dot + digit + _T(")( |\\)|$)");  
  12.  
  13.   wxRegEx regex;  
  14.  
  15.   regex.Compile(exp);  
  16.  
  17.   if (!regex.Matches(m_Response))  
  18.  
  19.   return false;  
  20.  
  21.   pData->host = regex.GetMatch(m_Response, 2);  
  22.  
  23.   int i = pData->host.Find(',', true);  
  24.  
  25.   long number;  
  26.  
  27.   if (i == -1 || !pData->host.Mid(i + 1).ToLong(&number))  
  28.  
  29.   return false;  
  30.  
  31.   pData->port = number; //get ls byte of server socket  
  32.  
  33.   pData->host = pData->host.Left(i);  
  34.  
  35.   i = pData->host.Find(',', true);  
  36.  
  37.   if (i == -1 || !pData->host.Mid(i + 1).ToLong(&number))  
  38.  
  39.   return false;  
  40.  
  41.   pData->port += 256 * number; //add ms byte of server socket  
  42.  
  43.   pData->host = pData-> host.Left(i);  
  44.  
  45.   pData->host.Replace(_T(","), _T("."));  
  46.  
  47.   if (m_pProxyBackend)  
  48.  
  49.   {  
  50.  
  51.   // We do not have any information about the proxy's inner workings  
  52.  
  53.   return true;  
  54.  
  55.   }  
  56.  
  57.   //注意,把下面的代碼注銷,就可以支持P2P PASV模式下的連接傳輸了  
  58.  
  59.   //const wxString peerIP = m_pSocket->GetPeerIP();  
  60.  
  61.   //if (!IsRoutableAddress(pData->host, m_pSocket->GetAddressFamily()) && IsRoutableAddress(peerIP, m_pSocket->GetAddressFamily()))  
  62.  
  63.   //{  
  64.  
  65.   //if (!m_pEngine->GetOptions()->GetOptionVal(OPTION_PASVREPLYFALLBACKMODE) || pData->bTriedActive)  
  66.  
  67.   //{  
  68.  
  69.   //LogMessage(Status, _("Server sent passive reply with unroutable address. Using server address instead."));  
  70.  
  71.   //LogMessage(Debug_Info, _T(" Reply: %s, peer: %s"), pData->host.c_str(), peerIP.c_str());  
  72.  
  73.   //pData->host = peerIP;  
  74.  
  75.   //}  
  76.  
  77.   //else  
  78.  
  79.   //{  
  80.  
  81.   //LogMessage(Status, _("Server sent passive reply with unroutable address. Passive mode failed."));  
  82.  
  83.   //LogMessage(Debug_Info, _T(" Reply: %s, peer: %s"), pData->host.c_str(), peerIP.c_str());  
  84.  
  85.   //return false;  
  86.  
  87.   //}  
  88.  
  89.   //}  
  90.  
  91.   return true;  
  92.  
  93.   }  
  94.  

#p#

  那么現(xiàn)在的代碼,只要在站點屬性的連接模式里,指定PORT為優(yōu)先,在PORT模式連接失敗后,設置自動切換到PASV模式,已經(jīng)可以有條件兼容,只是***次下載會失敗而已,下面我們改造它的列表模式,讓它具備更好的兼容性. 當然,你可以在FtpAnywhere服務器里,設置禁止根目錄下PASV列表,來讓FileZilla自動判斷連接模式,但是從它的代碼看,它的判斷還是存在一點兼容問題.因此,將LIST改造成主動模式優(yōu)先,是***的選擇.

  問題在這里

  1.   CRawTransferOpData::CRawTransferOpData()  
  2.  
  3.   : COpData(cmd_rawtransfer)  
  4.  
  5.   {  
  6.  
  7.   bTriedPasv = bTriedActive = false;  
  8.  
  9.   bPasv = true;  
  10.  
  11.   }  
  12.  

  它的初始化是被動模式優(yōu)先,這樣,列表的時候將發(fā)生問題,但是下載可以成功,但是我閱讀代碼,發(fā)現(xiàn)除非額外指定一個列表時優(yōu)先使用的模式變量,否則很難修改代碼,因為它的代碼中列表和文件傳輸?shù)膬?yōu)先模式是一致的,還要適應其他標準FTP站點,畢竟我不可以能讓它為我的FtpAnywhere進行優(yōu)化,方法是,在FtpControlSocket.h里定義的類

  1.   class CRawTransferOpData : public COpData  
  2.  
  3.   {  
  4.  
  5.   public:  
  6.  
  7.   CRawTransferOpData();  
  8.  
  9.   wxString cmd;  
  10.  
  11.   CFtpTransferOpData* pOldData;  
  12.  
  13.   bool bPasv;  
  14.  
  15.   bool bTriedPasv;  
  16.  
  17.   bool bTriedActive;  
  18.  
  19.   wxString host;  
  20.  
  21.   int port;  
  22.  
  23.   };  
  24.  

  給它加個額外的變量,例如 bool bFtpAnywhere;然后,在List指令前,確定首先采用PASV或者PORT前,判斷 bFtpAnywhere是否為真,如果為真,那么列表應該優(yōu)先采用PORT模式,否則繼續(xù)執(zhí)行默認的動作;而bFtpAnywhere的初始化應該從給服務器發(fā)送 VDSI指令是否返回2XX來判斷,是否是一個FtpAnywhere服務器,因為這里涉及的修改太多,除非FileZilla代碼維護人員同意,否則沒有意義,因此,最簡單最快的方法還是直接注銷我上面給出的代碼,雖然無法獲得100%兼容,但是基本可以兼容,而且通過設置項目,可以做到手動兼容.

【編輯推薦】

  1. FileZilla Ftp 教程
  2. FileZilla客戶端高級體驗(圖)
  3. FTP客戶端 Filezilla
  4. FileZilla Server 安裝設置(圖)
  5. FileZilla FTP server 安裝配置(圖)
  6. 用FileZilla共享文件Win7和Centos5虛擬機(圖)
  7. Filezilla server 安裝指南
  8. FileZilla FTP Server安裝教程
責任編輯:zhaolei 來源: CSDN
相關推薦

2011-03-07 14:34:50

FileZillaFtpAnywhere

2011-03-02 09:00:26

2011-03-07 14:23:08

2011-03-04 12:00:47

FileZilla

2011-03-01 16:50:19

2011-03-07 14:32:54

FileZilla帳戶

2011-03-02 14:36:24

Filezilla客戶端

2011-03-07 14:36:36

2011-03-07 15:51:41

FileZilla

2011-03-04 10:35:39

FileZilla

2011-03-07 14:36:36

2011-03-07 13:36:16

2011-03-01 17:38:07

FileZilla安裝

2011-03-04 14:02:53

Windows7Filezilla

2011-03-04 11:51:00

FileZilla用戶組

2021-11-01 07:15:36

服務器FTPFileZilla

2011-03-07 13:12:58

FileZilla

2011-03-04 11:23:55

FileZilla

2011-03-01 16:25:37

FileZilla

2011-03-01 16:01:08

FileZilla
點贊
收藏

51CTO技術棧公眾號

亚洲丰满少妇videoshd| 国产一二三精品| 国产一区二区三区四区福利| 无人在线观看的免费高清视频| 国产高清一级毛片在线不卡| 国产一区二区福利| 性欧美激情精品| 在线观看国产精品一区| 高清久久一区| 欧美午夜电影在线| 一级全黄肉体裸体全过程| 乱精品一区字幕二区| 日韩国产欧美视频| 欧美精品videos| 级毛片内射视频| 成人av婷婷| 欧美日本一区二区| 成人性免费视频| 老司机在线视频二区| 91一区二区在线| 91性高湖久久久久久久久_久久99| 日韩免费一级片| 91精品天堂福利在线观看| 日韩精品中文字幕在线观看 | 国产精品一卡二卡三卡| 91网站在线观看视频| 91精品在线国产| 中文字幕第一页在线播放| 亚洲激精日韩激精欧美精品| 日韩在线欧美在线| 蜜桃传媒一区二区亚洲av| 日韩三级久久| 3atv一区二区三区| 牛夜精品久久久久久久| 午夜av不卡| 午夜激情综合网| 男女激烈动态图| 欧美a在线看| 国产视频一区二区在线| 久久精品中文字幕一区二区三区 | 国产69精品久久| 欧美视频在线观看免费| 国产精品国产亚洲精品看不卡| av网址在线播放| 国产精品久久久久aaaa| 色狠狠久久av五月综合| 日本高清中文字幕二区在线| 91农村精品一区二区在线| 国产精品久久久久久久久久久久午夜片 | 天天综合久久| 在线视频欧美日韩精品| 无码人妻aⅴ一区二区三区69岛| 一区二区三区四区在线看| 亚洲福利在线视频| 中文乱码人妻一区二区三区视频| heyzo欧美激情| 欧美成人r级一区二区三区| 日本一二三区在线| 视频一区日韩精品| 欧美成人性福生活免费看| 免费国偷自产拍精品视频| 日韩欧洲国产| 亚洲成色777777女色窝| a级一a一级在线观看| 精品国产一区二区三区不卡蜜臂 | 日本黄在线观看| 久久精品欧美日韩精品| 欧美中文娱乐网| 第九色区av在线| 国产精品家庭影院| 天天干天天色天天爽| av软件在线观看| 香蕉av福利精品导航| 国产亚洲欧美在线视频| 欧美日韩免费观看视频| 欧美日韩国产综合草草| 超碰91在线播放| 成人午夜大片| 亚洲欧美制服第一页| 中文字幕第二区| 欧美xxxxx视频| 欧美激情精品久久久| 国产农村妇女aaaaa视频| 石原莉奈一区二区三区在线观看 | 中文字幕+乱码+中文| 韩国视频一区二区| 国产伦精品一区二区三区视频黑人| 视频污在线观看| 亚洲国产电影在线观看| 男女啪啪免费观看| 悠悠资源网亚洲青| 在线播放亚洲一区| av电影在线播放| 欧美精品尤物在线观看| 伦伦影院午夜日韩欧美限制| 一级aaa毛片| 美女视频网站黄色亚洲| 国产精品欧美久久| 电影av在线| 亚洲一二三区在线观看| 少妇黄色一级片| 99re6热只有精品免费观看| 亚洲欧美综合另类中字| 久久中文免费视频| 久久三级视频| 成人在线看片| 日本中文字幕电影在线免费观看 | 91麻豆免费看片| 在线视频不卡一区二区三区| www.综合| 91麻豆精品国产| 自拍偷拍中文字幕| 欧美国产91| 国产精品久久97| 亚洲色欧美另类| 亚洲美女视频在线| 另类小说色综合| 亚瑟一区二区三区四区| 久久av.com| 伊人久久成人网| 26uuu亚洲综合色欧美| 91嫩草国产丨精品入口麻豆| 欧美大片1688网站| 国产丝袜高跟一区| 久久久久久激情| 激情另类小说区图片区视频区| 美女三级99| www.色在线| 精品日韩成人av| www.超碰在线观看| 久久99久久久久| 视频一区二区三区免费观看| 91av亚洲| 日韩不卡在线观看| 国产大片aaa| 国产精品中文有码| 国产一二三四五| 青青久久精品| 中文字幕在线亚洲| 91麻豆精品在线| 国产亚洲一区二区三区| 成人黄色片视频| 亚洲瘦老头同性70tv| 91极品女神在线| www久久久com| 亚洲自拍欧美精品| 国产女主播在线播放| 在线成人激情| 91超碰在线电影| 暖暖在线中文免费日本| 欧美大片在线观看| 国产精品成人av久久| 丁香婷婷综合激情五月色| 国产肉体ⅹxxx137大胆| eeuss国产一区二区三区四区| 九九热精品在线| 刘亦菲久久免费一区二区| 午夜精品一区二区三区电影天堂| 精品视频站长推荐| 美女久久网站| 天天好比中文综合网| 国内欧美日韩| 久久国产视频网站| 空姐吹箫视频大全| 一本久道久久综合中文字幕| 91视频免费观看网站| 日本aⅴ免费视频一区二区三区| 亚洲电影网站| 精品视频一区二区三区在线观看| 欧美肥婆姓交大片| 亚洲 欧美 激情 另类| 日本道精品一区二区三区 | 亚洲制服丝袜在线| 黄色网址在线视频| 日韩电影在线观看电影| 青少年xxxxx性开放hg| 九色丨蝌蚪丨成人| 日韩免费观看在线观看| 欧洲美女少妇精品| 亚洲成人精品久久久| 日本中文在线播放| 欧美激情综合五月色丁香小说| 欧美丝袜在线观看| 亚洲国产美女| 午夜精品区一区二区三| 香蕉大人久久国产成人av| 91精品91久久久久久| 日本激情在线观看| 亚洲白拍色综合图区| 黄色一级视频免费看| 亚洲女性喷水在线观看一区| 97人妻精品一区二区三区免 | www视频在线观看免费| 91精品国产综合久久婷婷香蕉| 国产又色又爽又黄的| 国产精品乱子久久久久| 97人妻精品一区二区三区免费| 日本欧美一区二区三区乱码| 国产精品va在线观看无码| 国产日韩欧美一区二区三区| 亚洲专区国产精品| 向日葵视频成人app网址| 九九热最新视频//这里只有精品| 免费在线观看污视频| 欧美一区二区视频在线观看| 99re这里只有精品在线| 亚洲自拍偷拍麻豆| 少妇的滋味中文字幕bd| 91女人视频在线观看| 日本亚洲一区二区三区| 日韩成人一区二区| 91专区在线观看| 国产精品jizz在线观看美国| 亚洲v国产v在线观看| 人妖一区二区三区| 91麻豆蜜桃| 亚洲欧美在线人成swag| 日本一区二区不卡| 国产精选在线| 久久久久国产精品一区| 男女啪啪在线观看| 国产一区二区三区在线看| 天天操天天操天天干| 日韩一二在线观看| 91一区二区视频| 欧美在线999| 中文字幕精品视频在线观看| 欧美日韩国产黄| 精品少妇久久久| 一区二区三区欧美日韩| 国产人妻精品一区二区三区不卡| 亚洲国产高清不卡| 亚洲精品视频网址| 国产性做久久久久久| 亚洲一区二区观看| 99re成人在线| 最近中文字幕无免费| 丁香桃色午夜亚洲一区二区三区| 一级日本黄色片| 九九在线精品视频| 97人人爽人人| 久草热8精品视频在线观看| 一级黄色特级片| 奇米精品一区二区三区四区 | 在线不卡视频一区二区| 成人免费av| 亚洲在线不卡| 天天做天天爱天天爽综合网| 综合久久国产| 午夜视频精品| 日韩视频免费播放| 国产欧美二区| 日本www高清视频| 日韩不卡免费视频| 91亚洲精品久久久蜜桃借种| 国产一区二区三区免费在线观看| 欧美日韩精品区别| 国产精品一二三区| 香蕉视频免费网站| 91在线视频观看| 男生草女生视频| 国产精品成人在线观看| 亚洲伦理一区二区三区| 伊人色综合久久天天人手人婷| 精品一区二区三区人妻| 五月激情综合网| 国产主播第一页| 在线播放日韩导航| 日本激情视频网站| 亚洲人午夜精品免费| 国产福利在线看| 久久久久www| 免费h在线看| 国产精品久久久久久一区二区| 在线不卡一区| 国产在线欧美日韩| 国产欧美日韩一区二区三区四区| 中文字幕中文字幕99| 欧美精品国产| 日韩一级在线免费观看| 精品无人区卡一卡二卡三乱码免费卡| 一区二区三区人妻| 26uuu成人网一区二区三区| 亚洲少妇xxx| 午夜国产不卡在线观看视频| 久草热在线观看| 日韩一区二区三区电影| 精品乱码一区二区三四区视频| 日韩中文字幕在线观看| 男人久久天堂| 亚洲va欧美va国产综合剧情| 亚洲春色h网| 穿情趣内衣被c到高潮视频| 香蕉久久久久久久av网站| 小明看看成人免费视频| 99视频一区二区| 亚洲女人久久久| 欧美日韩一区二区精品| 国产99对白在线播放| 亚洲男人天堂手机在线| 成人看av片| 国产精品7m视频| 国产精品流白浆在线观看| 亚洲欧美日韩不卡一区二区三区| 亚洲电影在线| 青青草原播放器| 中文字幕不卡在线播放| 久久免费精彩视频| 欧美精选午夜久久久乱码6080| 日韩精品123| 欧美极品少妇全裸体| 国产精品66| 精品一区久久久| 黄页网站一区| 日韩精品视频网址| 国产精品午夜久久| 在线观看 亚洲| 精品国产一区二区三区不卡| 免费黄色在线| 国产精品国产三级国产aⅴ9色| 国产区精品视频在线观看豆花| 中文字幕日韩精品一区二区| 久久亚洲二区| 日本高清www| 精品日本美女福利在线观看| 黄色一级大片在线免费看国产一| 欧美xxxx18国产| 欧美视频精品| 视频一区视频二区视频三区高| 国产精品婷婷| 亚洲欧美在线不卡| 亚洲成人资源网| 午夜精品久久久久久久爽| 啊v视频在线一区二区三区| 先锋欧美三级| 日韩精品不卡| 日本成人超碰在线观看| 一级肉体全黄裸片| 91九色最新地址| 成年在线电影| 国产精品男人的天堂| 精品美女久久| 黄色一级二级三级| 国产清纯白嫩初高生在线观看91| 国产91精品一区| 亚洲欧美日本精品| 香蕉视频亚洲一级| 日本在线免费观看一区| 久久久久91| 免费网站在线高清观看| 在线看国产日韩| 中国日本在线视频中文字幕| 国产精品国产福利国产秒拍| 欧美h版在线| 亚洲成人福利视频| 亚洲成在人线免费| 日韩在线观看视频一区二区三区| 97在线免费观看| 免费一区二区| 亚洲欧洲日本精品| 亚洲卡通动漫在线| 亚洲精品国产av| 88xx成人精品| 欧美少妇xxxx| 黄色a级三级三级三级| 亚洲午夜一区二区三区| 天天操天天干天天| 国产精品男人的天堂| 亚洲欧美在线专区| 中文字幕乱码一区| 在线影视一区二区三区| 黄色免费在线观看网站| 69堂成人精品视频免费| 在线亚洲国产精品网站| xxx在线播放| 91精品国产一区二区人妖| 国产91足控脚交在线观看| 久久婷婷人人澡人人喊人人爽| 奇米精品一区二区三区四区| 中文字幕av免费在线观看| 日韩国产精品视频| 亚洲美女色播| 国产精品50p| 国产精品久久久久久久久久久免费看| 国产99999| 国产精品91视频| 国产精品av久久久久久麻豆网| 男生草女生视频| 日韩精品一区二区三区中文精品| 成人片免费看| 美女在线免费视频| 99精品黄色片免费大全| 一级片视频网站| 欧美亚洲成人xxx| 91精品天堂福利在线观看| 三上悠亚ssⅰn939无码播放| 3d成人h动漫网站入口| 欧美极品免费| 人妻夜夜添夜夜无码av| 中文字幕第一区二区|