Skip to content

Rendezvous Connection: Wrong Initial Sequence Initialization of the Receiver #2773

@maxsharabayko

Description

@maxsharabayko

The RCV buffer is initialized with the host's Initial Sequence Number value. If the host is the receiver, the ISN of the sender peer has to be used.
The issue results in the "SEQUENCE DISCREPANCY. BREAKING CONNECTION" error report upon the first data packet received.

Before PR #2711 the correct value was set after the RCV buffer had been initialized via CUDT::applyResponseSettings(..).
After the PR the RCV buffer may not yet be created when CUDT::applyResponseSettings(..) is called for the first time.

If it happens to be called once more or if the distance between the host's ISN and peer's ISN is not that big, the sending would work.

SRT versions with the bug: v1.5.2, v1.5.2.rc.2.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type: BugIndicates an unexpected problem or unintended behavior[core]Area: Changes in SRT library core

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions