Review for Source Package: src:libsdl3

[Summary]
SDL is undergoing and transition and Debian is replacing
libsdl2 with a compatibility shim layer sdl2-compat wrapping
libsdl3 by default, with no change in the API and ABI.

MIR team ACK under the constraint to resolve the below listed
required TODOs and as much as possible having a look at the
recommended TODOs.

This does need a security review, so I'll assign ubuntu-security.
SDL has a significant CVE history. Also, CVE-2026-35444 reported
against libsdl3 is yet to be evaluated.

List of specific binary packages to be promoted to main: bin:libsdl3-0
Specific binary packages built, but NOT to be promoted to main: TBD

Notes:
Required TODOs:
#1 - Please clearly specify binary packages that need to be promoted and NOT 
promoted.
#2 - Can we have an evaluation of CVE-2026-35444? This could be moved down as a
     recommended TODO, if agreed upon in the Security review.

Recommended TODOs:
#3 - Please add the team subscriber (Server)
#4 - Please address build warnings noted in [Upstream Red Flags]

[Rationale, Duplication and Ownership]
- There is no other package in main providing the same functionality.
  => The previous release libsdl2 provides the same functionality. But
  this MIR is related to an upstream transition from libsdl2 to libsdl3
  using libsdl2-compat.
- A team is committed to own long term maintenance of this package.
  => Server
- The rationale given in the report seems valid and useful for Ubuntu

[Dependencies]
OK:
- no other runtime Dependencies to MIR due to this
- no other build-time Dependencies with active code in the final binaries to 
MIR due to this
- no -dev/-debug/-doc packages that need exclusion
  => Not clear in the requester's template
- No dependencies in main that are only superficially tested requiring more 
tests now.

Problems:
- Binary packages that need exclusion are not clearly listed.

[Embedded sources and static linking]
OK:
- no embedded source present
- no static linking
- does not have unexpected Built-Using entries
- not a go package, no extra constraints to consider in that regard
- not a rust package, no extra constraints to consider in that regard

Problems: None

[Security]
OK:
- history of CVEs does not look concerning
  => history of CVEs in SDL 1.2 and SDL 2 appears significant
- does not run a daemon as root
- does not use webkit1,2
- does not use lib*v8 directly
- does not parse data formats (files [images, video, audio,
  xml, json, asn.1], network packets, structures, ...) from
  an untrusted source.
  => SDL does parse images and audio, but it is the prerogative of
  the application using SDL to verify their source.
- does not expose any external endpoint (port/socket/... or similar)
- does not process arbitrary web content
- does not use centralized online accounts
- does not integrate arbitrary javascript into the desktop
- does not deal with system authentication (eg, pam), etc)
- does not deal with security attestation (secure boot, tpm, signatures)
- does not deal with cryptography (en-/decryption, certificates, signing, ...)
- this makes appropriate (for its exposure) use of established risk
  mitigation features (dropping permissions, using temporary environments,
  restricted users/groups, seccomp, systemd isolation features,
  apparmor, ...)

Problems:
- Significant history of CVEs in past releases (2, 1.2)
- CVE-2026-35444 against libsdl3 yet to be evaluated

[Common blockers]
OK:
- does not FTBFS currently
- does have a test suite that runs at build time
  - test suite fails will fail the build upon error.
- does have a non-trivial test suite that runs as autopkgtest
  - This does not need special HW for build or test
- no new python2 dependency
- not a Python package
- not a Golang package

Problems: None

[Packaging red flags]
OK:
- Ubuntu does not carry a delta
- symbols tracking is in place.
- debian/watch is present and looks ok (if needed, e.g. non-native)
- Upstream update history is good
- Debian/Ubuntu update history is (good/slow/sporadic)
- the current release is packaged
- promoting this does not seem to cause issues for MOTUs that so far maintained 
the package
- no massive Lintian warnings
- debian/rules is rather clean
- It is not on the lto-disabled list

Problems: None

[Upstream red flags]
OK:
- no incautious use of malloc/sprintf (as far as we can check it)
- no use of sudo, gksu, pkexec, or LD_LIBRARY_PATH (usage is OK inside tests)
- no use of user 'nobody' outside of tests
- no use of setuid / setgid
- no important open bugs (crashers, etc) in Debian or Ubuntu
- no dependency on webkit, qtwebkit or libseed
- not part of the UI for extra checks
- no translation present, but none needed for this case (user visible)?

Problem: 
- no Errors/warnings during the build
=> Build log shows a few instances of warnings of this type:
- warning: Tag 'SYMBOL_CACHE_SIZE' at line 301 of file '../debian/Doxyfile' has 
become obsolete.
         To avoid this warning please remove this line from your configuration 
file or upgrade it using "doxygen -u"

** CVE added: https://cve.org/CVERecord?id=CVE-2026-35444

** Changed in: libsdl3 (Ubuntu)
     Assignee: Pushkar Kulkarni (pushkarnk) => Ubuntu Security Team 
(ubuntu-security)

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2155439

Title:
  [MIR] Promote libsdl3

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/libsdl3/+bug/2155439/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to