BUGFIX: Fix SOCKS5 proxy authentication in search engine(closes #680072)

This commit is contained in:
Christophe Dumez 2010-11-22 17:04:35 +00:00
parent 52f81a8066
commit 906b0755eb
3 changed files with 6 additions and 3 deletions

View file

@ -12,6 +12,7 @@
- FEATURE: Added "Amount downloaded/left" columns to transfer list - FEATURE: Added "Amount downloaded/left" columns to transfer list
- FEATURE: Simplified proxy settings - FEATURE: Simplified proxy settings
- FEATURE: Optimized and improved the peer country resolution code - FEATURE: Optimized and improved the peer country resolution code
- BUGFIX: Fix SOCKS5 proxy authentication in search engine(closes #680072)
- COSMETIC: Replaced message box by on-screen notification for download errors - COSMETIC: Replaced message box by on-screen notification for download errors
- COSMETIC: Improved the torrent creation tool appearance - COSMETIC: Improved the torrent creation tool appearance
- COSMETIC: Use country flags by Mark James (Thanks to Dmytro Pukha) - COSMETIC: Use country flags by Mark James (Thanks to Dmytro Pukha)

View file

@ -187,7 +187,7 @@ class socksocket(socket.socket):
elif chosenauth[1] == "\x02": elif chosenauth[1] == "\x02":
# Okay, we need to perform a basic username/password # Okay, we need to perform a basic username/password
# authentication. # authentication.
self.sendall("\x01" + chr(len(self.__proxy[4])) + self.__proxy[4] + chr(len(self.proxy[5])) + self.__proxy[5]) self.sendall("\x01" + chr(len(self.__proxy[4])) + self.__proxy[4] + chr(len(self.__proxy[5])) + self.__proxy[5])
authstat = self.__recvall(2) authstat = self.__recvall(2)
if authstat[0] != "\x01": if authstat[0] != "\x01":
# Bad response # Bad response

View file

@ -519,9 +519,11 @@ void SearchEngine::updateNova() {
} }
filePath = search_dir.absoluteFilePath("socks.py"); filePath = search_dir.absoluteFilePath("socks.py");
if(!QFile::exists(filePath)) { if(QFile::exists(filePath)){
QFile::copy(":/nova/socks.py", filePath); misc::safeRemove(filePath);
misc::safeRemove(filePath+"c");
} }
QFile::copy(":/nova/socks.py", filePath);
QDir destDir(QDir(misc::searchEngineLocation()).absoluteFilePath("engines")); QDir destDir(QDir(misc::searchEngineLocation()).absoluteFilePath("engines"));
QDir shipped_subDir(":/nova/engines/"); QDir shipped_subDir(":/nova/engines/");
QStringList files = shipped_subDir.entryList(); QStringList files = shipped_subDir.entryList();