Files
BetterDesk/docs/development/CONTRIBUTOR-ATTRIBUTIONS.md
UNITRONIX 4895363bad feat(signal): support opt-in controller-only outbound
Add ALLOW_LEGACY_OUTBOUND compatibility for stock RustDesk clients that do not register a local controller identity. Keep the path disabled by default, restrict it to open enrollment, force relay, and retain one-use relay ticket authorization.

Refs #427

Refs #358

Credit: @remoover via PR #358
https://github.com/UNITRONIX/BetterDesk/pull/358

Thanks: INSOLVE (Honorary); Marco Jakobs (@jacotec); MyNameisStitch (@MyNameisStitch); Redspin (@playerumpknow)
2026-09-18 18:26:41 +02:00

4.8 KiB

Contributor attributions

This register documents external reports, designs, tests, and code that informed BetterDesk changes. It is intended to preserve contributor credit and make provenance reviewable. It is not a copyright assignment or legal opinion.

@remoover

Contributor profile: https://github.com/remoover Collaboration discussion: issue #346

The original PR heads are preserved as public archive references. They were created without force-push; repository rules should also prevent deletion or rewriting of archive/remoover/* before release.

The following work informed the current BetterDesk changes:

  • #358 — controller-only outbound compatibility design, adapted with the explicit opt-in and relay-ticket safeguards described in this change.
  • #282 — browser relay framing, native WebSocket payload boundaries, and file-transfer session behavior. BetterDesk uses the framing portion and selected compatibility improvements; the full PR was not merged as a unit.
  • #348 — mixed transport behavior and preserving connected peer registrations during ID changes. BetterDesk uses separate, reviewable implementations for the peer rename and signal transport gate.
  • #357 — explicit ENROLLMENT_MODE precedence over stale persisted panel state.
  • #420 — Docker build cleanup was independently verified; the relevant Dockerfile state was already present locally.
  • #283 and #423 — production reporting requirements and failure scenarios informed the design review; the live-session feature itself was not merged.

The following proposals remain intentionally unimplemented pending separate security decisions:

  • #359 — disabling relay ticket enforcement for standalone relay processes.
  • #271 — upstream RustDesk client generator and GitHub Actions build pipeline.

Rights and license treatment

The BetterDesk development branch is AGPL-3.0. Directly reused contributor code remains subject to the applicable AGPL notices and the contributor's copyright. No contributor is treated as having assigned copyright merely because their issue or pull request was referenced.

When a future commit contains directly adapted code, the maintainer should:

  1. preserve the contributor's authorship and provenance in the commit and release notes;
  2. use Co-authored-by only after confirming the contributor's preferred identity and email address;
  3. avoid claiming exclusive authorship unless a separate written agreement grants it;
  4. include the relevant issue/PR links in the review record.

Bug reports, design proposals, production observations, and test scenarios are credited as such and do not imply that the reporter authored unrelated implementation code.