Problem:
I just downloaded a large file; took me a while too. I tested the file, and it was corrupted . Anyways, I've thought of this kind of utility for a while, standalone; but it would fitted DC++ very nicely.
Solution:
Not to download the file, but rather 'scan' the file on the other side and compare checksums.
The way (in plain english):
[my client]: I want to scan BIGFILE.ISO
[other client]: Sure
[other client]: file checksum ZYZYZYZ
[my client]: False
<Starting process to find and repair corrupted data>
[other client]: First 10 mbs: CheckSum XXXXXX1
[my client]: True
[other client]: Next 10 mbs: CheckSum XXXX1X1
[my client]: False!
[other client] (starting at 10 mb, scanning 1 mb at the time to find within which 1 mb range the error resides)
[other client]: First megabyte (11th megabyte really) : Checksum XX2X1X1
[my client]: True
(processes through the 10 mbs in the same fashion, result: the area between (mb 14 and 15) and (mb 17 and 18) is corrupted. my client downloads the megabytes, and scans the second 10 mb again:
[other client]: 10-20 mbs: CheckSum XXXX1X1
[my client]: True
This feature requires that both clients have the capability; but since a lot of ppl use DC++ this may become a little standard.
It would've been useful as a utility also.
Would this be difficult to incorporate?
Cheers,
Espen alias sokk.
Don't you just hate corrupted files? An idea to a new featur
Moderator: Moderators
-
- Forum Moderator
- Posts: 1420
- Joined: 2003-04-22 14:37
-
- Forum Moderator
- Posts: 1420
- Joined: 2003-04-22 14:37
-
- DC++ Contributor
- Posts: 3212
- Joined: 2003-01-07 21:46
- Location: .pa.us
Re: Don't you just hate corrupted files? An idea to a new fe
Sokk, your post has a lot of merit. The type of hashing that would be nice in DC++ would allow verification of very small segments of a file. Combined with something that allows getting of a specific range of a file (which isn't possible natively in the DC protocol), you could repair a given file. All new downloads, from a hash-capable client, would not have a chance of becoming corrupt, however.