Skip to content

[stable-24.0.x] Fix #6169: elect call offerer using same-namespace session IDs - #6460

Merged
mahibi merged 1 commit into
stable-24.0.xfrom
backport/6375/stable-24.0.x
Aug 6, 2026
Merged

[stable-24.0.x] Fix #6169: elect call offerer using same-namespace session IDs#6460
mahibi merged 1 commit into
stable-24.0.xfrom
backport/6375/stable-24.0.x

Conversation

@backportbot

@backportbot backportbot Bot commented Aug 6, 2026

Copy link
Copy Markdown

Backport of PR #6375

In HPB (external signaling) mode the remote participant sessionId passed to
PeerConnectionWrapper is a signaling-layer session ID, while the local session
used for the offerer election (callSession) is the Nextcloud session ID. The two
peers then compare unrelated strings and can both compute the same role: both
"not offerer" (no offer is created — the call deadlocks) or both "offerer" (offer
collision). The requestoffer fallback only applies in MCU mode, so direct 2-party
calls deadlock outright.

Pass the local signaling session (webSocketClient.sessionId when external
signaling is used, callSession otherwise — matching the existing currentSessionId
resolution) so both peers compare the same namespace.

Also extract the election into PeerConnectionWrapper.isOfferer() and add
PeerConnectionWrapperOffererRoleTest covering the contract and the cross-namespace
failure mode.

Signed-off-by: Alain Lauzon <alauzon@alainlauzon.com>

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@backportbot
backportbot Bot requested a review from mahibi August 6, 2026 14:13
@backportbot backportbot Bot added 3. to review Waiting for reviews feedback-requested labels Aug 6, 2026
@backportbot backportbot Bot added this to the 24.0.3 milestone Aug 6, 2026
@github-actions

github-actions Bot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

APK file: https://github.com/nextcloud/talk-android/actions/runs/31109742767/artifacts/8973325804
To test this change/fix you can simply download above APK file and install and test it in parallel to your existing Nextcloud app.
qrcode (please click on link to get QR code displayed)

@mahibi
mahibi merged commit cbea962 into stable-24.0.x Aug 6, 2026
13 of 15 checks passed
@mahibi
mahibi deleted the backport/6375/stable-24.0.x branch August 6, 2026 17:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants