-
-
Notifications
You must be signed in to change notification settings - Fork 1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Assertion when using WebTorrent #5100
Comments
The assertion ensures that there is no duplicate addresses in the connections list. It should be bypassed for WebRTC peers, but it doesn't work somehow. I'm having a look. In the meantime, a temporary fix could be set |
The peer list sorting was broken when using webRTC peers, resulting in potential duplicate peers triggering the assertion. Thanks for reporting, it should be fixed by #5184 |
@vktr Can this issue be closed? |
@paullouisageneau I'm hitting this assert, with this call stack
Might not be related - I'm not qualified to say :) I'm not hitting the assertion in this issue anyway so if you want to close this, do it, and I can open a new one with this new assertion. Thanks for the effort put in! 😃 |
OK thank you for reporting, I'll have a look over the weekend to see if it is linked. |
I'm also hitting this one,
With this call stack,
I can provide you with the dump file for this one if you want - it's 100mb compressed so was too big to attach. |
It's not obvious to me how the first assertion in The second one in |
I'm using the |
@vktr Thanks for the precision! @arvidn I couldn't find where the key size checked by this assert is enforced. Do you know if it just checks for what could be read from the other peer? libtorrent/src/bt_peer_connection.cpp Line 2742 in 81b4e66
|
The receive buffer class keeps track of the current packet size. That assert is related to the protocol "encryption" where it performs a diffie Hellman key exchange during the handshake. At that point it expects the packet size to be the size of the DH key. There should have been a call earlier to set the packet size to receive. (I haven't had time to look closely at this yet) |
OK thank you, I see how it works now. libtorrent/src/bt_peer_connection.cpp Line 237 in 81b4e66
libtorrent/src/bt_peer_connection.cpp Line 259 in 81b4e66
|
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
I found a new assertion failed while debugging, I'm investigating:
|
this assert ensures that the |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
libtorrent version (or branch): master (ea183a1)
platform/architecture: win64
compiler and compiler version: msvc-19
I'm trying to verify WebTorrent support in PicoTorrent and am hitting this assertions here,
This only happens for WebTorrents. When using regular torrents (with WebTorrent support enabled) I don't hit the assertion. I'm using the Sintel torrent from here, https://webtorrent.io/torrents/sintel.torrent)
Here's the call stack (MSVC style so frames are in descending order)
Let me know if you need more information or if I should try something else!
The text was updated successfully, but these errors were encountered: