Opened 9 years ago
Closed 9 years ago
#5451 closed Bug (fixed)
crash in tr_torrentGetPeerId() during encrypted incoming peer handshake
Reported by: | jordan | Owned by: | jordan |
---|---|---|---|
Priority: | Normal | Milestone: | 2.82 |
Component: | libtransmission | Version: | 2.80 |
Severity: | Normal | Keywords: | |
Cc: |
Description
Downstream ticket: https://bugs.launchpad.net/ubuntu/+source/transmission/+bug/1196544
Looks like this is a timing issue where an incoming peer's torrent is removed during an encrypted handshake between reading crypto-provide and IA.
I'm a little concerned that explanation is improbable for the number of duplicates this ticket has in launchpad, but it seems to be the case. For example, https://bugs.launchpad.net/ubuntu/+source/transmission/+bug/1201542 says that the crash occurred right after removing a batch of torrents.
libtransmission/handshake.c's buildHandshakeMessage() should test for this case and, instead of returning a void, return a success flag instead.
Change History (2)
comment:1 Changed 9 years ago by jordan
- Status changed from new to assigned
comment:2 Changed 9 years ago by jordan
- Resolution set to fixed
- Status changed from assigned to closed
- Summary changed from crash in tr_torrentGetPeerId() to crash in tr_torrentGetPeerId() during encrypted incoming peer handshake
Fixed in r14155.