Opened 6 years ago
Closed 6 years ago
#1618 closed defect (fixed)
I2PSnark should set total_size to metadata_size according to BEP09
Reported by: | dg | Owned by: | zzz |
---|---|---|---|
Priority: | major | Milestone: | 0.9.21 |
Component: | apps/i2psnark | Version: | 0.9.20 |
Keywords: | Cc: | ||
Parent Tickets: | Sensitive: | no |
Description (last modified by )
From GitHub:
As of right now, total_size is just the size of a current piece. This freaks out libtorrent (see arvidn/libtorrent#36). BEP09 says total_size has the same semantics as metadata_size.
We need to fix this for libtorrent compatibility. It looks like they're working on bugs on their end too.
Subtickets
Change History (3)
comment:1 Changed 6 years ago by
Component: | unspecified → apps/i2psnark |
---|---|
Description: | modified (diff) |
Owner: | set to zzz |
Priority: | minor → major |
comment:2 Changed 6 years ago by
Milestone: | undecided → 0.9.21 |
---|---|
Status: | new → accepted |
comment:3 Changed 6 years ago by
Resolution: | → fixed |
---|---|
Status: | accepted → closed |
Parg confirmed at http://zzz.i2p/topics/1613?page=10#p10128 -
- Vuze ignores the field
- He agrees with libtorrent's interpretation of BEP 9, snark is wrong
I confirmed that in ExtensionHandler?.handleMetadata(), snark checks the received value, but only to log a warning, so it's essentially ignored in snark also.
Over at https://github.com/arvidn/libtorrent/issues/36 there's questions about version fields and how fast snark clients will upgrade. We don't include a snark version for anonymity reasons. I2P users update pretty quickly due to automatic update; approximately 90% will be on the latest release within 6-8 weeks. But if Vuze ignores the value maybe libtorrent should too…
Anyway, very happy to see the recent activity on libtorrent i2p support.
Fixed in fb357d205e438ed530d6ca8d27aa3f6ad6dfdac6 0.9.20-19-rc
easy fix, will sneak it into .21, awaiting confirmation from parg re: vuze over on zzz.i2p
re: https://github.com/arvidn/libtorrent/issues/36 , vuze is over half the clients, and it doesn't use the snark libs