Emule 0.50B Beta1 Released
#22
Posted 25 March 2015 - 05:28 PM
When converting projects for that version, several minor alterations had to be done.
The one I recall right now was name clash of CMemDC class (defined in MemDC.h) with the name in latest versions of MFC.
The problem was solved with minor refactoring: to replace CMemDC with CMemoryDC in a handful of files.
It would be nice to have such changes applied to official code.
#23
Posted 25 March 2015 - 09:19 PM
client->DontSwapTo(reqfile); // ZZ:DownloadManagerhere instead, or we should check if our requested file is the same with the OP_FILEREQANSNOFIL answer before taking actions.
This is spotted by Xtreme mod, just reminder here.
Edit: Added modified codes as following
case OP_FILEREQANSNOFIL: { if (thePrefs.GetDebugClientTCPLevel() > 0) DebugRecv("OP_FileReqAnsNoFil", client, (size >= 16) ? packet : NULL); theStats.AddDownDataOverheadFileRequest(size); if (size == 16) { CPartFile* reqfile = theApp.downloadqueue->GetFileByID(packet); if (!reqfile){ client->CheckFailedFileIdReqs(packet); break; } /* else reqfile->m_DeadSourceList.AddDeadSource(client); */ if (!client->GetRequestFile()) //Enig123::are we requesting a downloading file? { AddDebugLogLine(false,_T("Source: (%s) answered FNF while asking for no file!(TCP)"), DbgGetClientInfo()); break; } if (client->GetRequestFile()!=reqfile) //Enig123::make sure we are talking about the same file { AddDebugLogLine(false,_T("Source: (%s) answered FNF while asking for another file!(TCP)"), DbgGetClientInfo()); break; } reqfile->m_DeadSourceList.AddDeadSource(client); // if that client does not have my file maybe has another different // we try to swap to another file ignoring no needed parts files switch (client->GetDownloadState()) { case DS_CONNECTED: case DS_ONQUEUE: case DS_NONEEDEDPARTS: /* client->DontSwapTo(client->GetRequestFile()); // ZZ:DownloadManager */ //Enig123::reqfile might be differant to client->GetRequestFile() client->DontSwapTo(reqfile); // ZZ:DownloadManager if (!client->SwapToAnotherFile(_T("Source says it doesn't have the file. CClientReqSocket::ProcessPacket()"), true, true, true, NULL, false, false)) { // ZZ:DownloadManager theApp.downloadqueue->RemoveSource(client); } break; } break; } throw GetResString(IDS_ERR_WRONGPACKAGESIZE); break; }
This post has been edited by Enig123: 27 March 2015 - 06:15 AM
#24
Posted 26 March 2015 - 12:25 AM
come ottenere aiuto italian guides - guide della sezione italiana
italian support - sezione italiana scaricare la lista server
ottenere id alto impostare le porte nel router
recuperare file corrotti i filtri ip
Sembra talco ma non č serve a darti l'allegrIa! Se lo lanci e poi lo respiri ti dā subito l'allegrIa!
#25
Posted 26 March 2015 - 09:12 AM
if (opcode == OP_REQUESTFILENAME /*low priority for OP_REQUESTFILENAME*/) DebugLogWarning(_T("Error: %s - while processing eDonkey packet: opcode=%s size=%u; %s"), error, DbgGetDonkeyClientTCPOpcode(opcode), size, DbgGetClientInfo()); else DebugLogWarning(_T("Error: %s - while processing eDonkey packet: opcode=%s size=%u; %s"), error, DbgGetDonkeyClientTCPOpcode(opcode), size, DbgGetClientInfo());
What it was intended to be?
#26
Posted 26 March 2015 - 08:17 PM
#27
Posted 27 March 2015 - 09:22 AM
#28
Posted 27 March 2015 - 11:04 PM
This post has been edited by nemoW: 27 March 2015 - 11:06 PM
#29
Posted 28 March 2015 - 12:25 AM
#30
Posted 28 March 2015 - 10:08 AM
So what about making the current emule compilable with this free VS 2013 IDE
I believe that would be a great improvement
it is the first client to be able to download form multiple networks the same file.
NL provides the first fully decentralized scalable torrent and DDL keyword search,
it implements an own novel anonymous file sharing network, providing anonymity and deniability to its users,
as well as many other new features.
It is written in C++ with Qt and is available for Windows, Linux and MacOS.
#31
Posted 28 March 2015 - 07:10 PM
it is the first client to be able to download form multiple networks the same file.
NL provides the first fully decentralized scalable torrent and DDL keyword search,
it implements an own novel anonymous file sharing network, providing anonymity and deniability to its users,
as well as many other new features.
It is written in C++ with Qt and is available for Windows, Linux and MacOS.
#32
Posted 29 March 2015 - 02:05 PM
Hope it helps.
#33
Posted 01 April 2015 - 08:38 PM
open eMule (tested whit beta1) whit autoconnect disabled, then configure eMule to have webserver and anable it.
access from webserver.now follow these steps:
1) go to kad tab in webserver and click "connect" (first problem: it remain "Connecting"). now emule is connected
01/04/2015 22.23.03: Starting Kademlia 01/04/2015 22.23.04: Read 902 source, 7496 keyword, and 86 load entries
Quote
Status: Open
UDP Status: Open
2) come back to kad tab and update the page , now webserver show correctly "Connected".
Now click "disconnect" (webserver show correctly "disconnected")
3) come back to emule and you can show in verborse
01/04/2015 22.26.14: Stopping Kademlia 01/04/2015 22.26.14: Wrote 189 contacts to file. 01/04/2015 22.26.14: Wrote 902 source, 7496 keyword, and 86 load entries
But in "my info tab" (in server window) show:
Quote
Status: Open
UDP Status: Open
IP:Port: MYIP:MYPORT
ID: MYID
and the kad arrow is Green.
if i double click on Green arrow receive
eD2K Network Status: Disconnected Kad Network Status: Disconnected(correctly disconnected)
Note: the "Connect button" is set to "Disconnect"
This post has been edited by Riso64Bit: 01 April 2015 - 08:45 PM
#34
Posted 05 April 2015 - 07:08 AM
This post has been edited by fabtar: 05 April 2015 - 07:08 AM
#35
Posted 11 April 2015 - 11:07 AM
I'm using wireless LAN (WLAN, Router Model:TP-LINK TL-WR841N) with my desktop, but version 0.50a has a working UPnP function with exactly the same hardware and software configuration, so I think this should be a bug.
#37
Posted 11 April 2015 - 12:04 PM
1. There is a possibility of memory leak in exception handling, because CKadTag* pTag would not be destroyed.
2. There is inconsistency in occasional use of uint32 to store ReadByte() result instead of uint8 (as in other places).
Since the variable is used only in loop header, for code efficiency it should be simply unsigned.
3. In some code sequences like
delete pEntry;
pEntry = NULL; //not needed
or
delete pTags;
pTags = NULL; //not needed
the second line are unnecessary when local variables would never be used after destruction.
4. Use of for() instead of while() limits scope of loop variable and keeps all loop-making in one line instead of three.
These points are applicable to several places in the file.
Below is an example based on Process_KADEMLIA2_PUBLISH_SOURCE_REQ method; all changes are marked with //*** comments
This post has been edited by fox88: 28 June 2015 - 06:26 PM
#38
Posted 11 April 2015 - 12:42 PM
fox88, on 11 April 2015 - 07:52 PM, said:
hunzhang, on 11 April 2015 - 02:07 PM, said:
It might be useful to post related log lines. See an example here.
Here is the log:
2015/4/11 20:39:54: Found 6 known shared files, going to hash 1 new files
2015/4/11 20:39:54: Credit file loaded, 803 clients are known
2015/4/11 20:39:54: Trying to setup port forwardings with UPnP...
2015/4/11 20:39:54: Hashing file: "E:\eMule0.50b_BETA1\Incoming\eMule0.50b.15 Beta Testfile 0b2449.txt"
2015/4/11 20:39:55: 0 servers in server.met found
2015/4/11 20:39:55: Found 1 part files
2015/4/11 20:39:55: eMule Version 0.50b BETA1 ready
2015/4/11 20:39:56: Read 200 contacts from file.
2015/4/11 20:40:12: UPnP failed to setup port forwardings, please foward those ports manually if necessary!
2015/4/11 20:40:13: UploadSpeedSense: Done with preparations. Starting control of upload speed. (First 60 seconds will be in fast reaction mode)
#39
Posted 11 April 2015 - 02:58 PM
the example was about verbose log, because ordinary log is uninformative - we already heard that UPnP failed.
Also it might be interesting to give logs from both 0.50a and 0.50b beta1.
#40
Posted 11 April 2015 - 03:50 PM