Review for Source Package: libdisplay-info
[Summary]
libdisplay-info is still a relatively young project (with only 3 releases so
far), but seems to be well documented and tested (e.g. parser fuzzing). It can
be used for parsing & decoding EDID display data into human readable format.
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 not need a security review
List of specific binary packages to be promoted to main: libdisplay-info1
Specific binary packages built, but NOT to be promoted to main:
libdisplay-info-bin
Notes:
#0 - The library parses EDID data, but commonly from trusted sources (kernel,
sysfs).
It looks well tested & fuzzed, so IMO we don't need security review here.
#1 - The project is still young, with only 3 releases so far and sporadic
packaging updates.
Upstream states "The public API is not yet stable." – The desktop team
still wants to
take it as a dependency, handle any changes necessary due to unstable API
and help with
maintenance.
Required TODOs:
#2 - the current release is not packaged: We have v0.2.0 as of mid-June
Recommended TODOs:
#3 - The package should get a team bug subscriber before being promoted
#4 - does have a non-trivial test suite that runs as autopkgtest
=> simply re-running build-time tests, consider testing against the
pre-built binaries
#5 - Ubuntu does carry a delta
=> try upstreaming the tests, debian/watch and debhelper changes
#6 - Upstream & Debian/Ubuntu update history is sporadic consider helping with
maintenance, see #1
#7 - Warnings during build, consider helping to fix some of them:
../gtf.c:116:12: warning: ‘pixel_freq’ may be used uninitialized
[-Wmaybe-uninitialized]
../gtf.c:114:40: warning: ‘h_blank_pixels’ may be used uninitialized
[-Wmaybe-uninitialized]
../gtf.c:113:44: warning: ‘total_pixels’ may be used uninitialized
[-Wmaybe-uninitialized]
../gtf.c:112:22: warning: ‘v_sync_bp’ may be used uninitialized
[-Wmaybe-uninitialized]
../di-edid-decode/edid.c:500:51: warning: ‘hratio’ may be used uninitialized
[-Wmaybe-uninitialized]
../di-edid-decode/edid.c:500:61: warning: ‘vratio’ may be used uninitialized
[-Wmaybe-uninitialized]
[Rationale, Duplication and Ownership]
- There is no other package in main providing the same functionality.
=> Some provide similar functionality, but not in "main":
$ rmadison -c main {edid-decode,libparse-edid-perl,read-edid,wxedid}
- A team is committed to own long term maintenance of this package.
- The rationale given in the report seems valid and useful for Ubuntu
[Dependencies]
OK:
- no other Dependencies to MIR due to this
- SRCPKG checked with `check-mir`
- all dependencies can be found in `seeded-in-ubuntu` (already in main)
- none of the (potentially auto-generated) dependencies (Depends
and Recommends) that are present after build are not in main
- no -dev/-debug/-doc packages that need exclusion
- No dependencies in main that are only superficially tested requiring
more tests now.
Problems: None
[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
- does not run a daemon as root
- does not use webkit1,2
- does not use lib*v8 directly
- 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 (parser fuzzing)
Problems:
- parses data formats (e.g. EDID structures) from an trusted source.
=> usually from trusted kernel data, e.g. /sys/class/drm/card1-HDMI-A-1/edid,
but can also take random files as an input
[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.
- This does not need special HW for build or test
- no new python2 dependency
Problems:
- does have a non-trivial test suite that runs as autopkgtest
=> simply re-running build-time tests, consider testing against the pre-built
binaries
[Packaging red flags]
OK:
- symbols tracking is in place.
- debian/watch is present and looks ok (if needed, e.g. non-native)
- 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:
- Ubuntu does carry a delta
=> try upstreaming the tests and debhelper changes
- the current release is not packaged: We have v0.2.0 as of mid-June
- Upstream update history is sporadic (only 3 releases so far, new project)
- Debian/Ubuntu update history is sporadic
[Upstream red flags]
OK:
- no Errors during the build
- no incautious use of malloc/sprintf (as far as we can check it)
- no use of sudo, gksu, pkexec, or LD_LIBRARY_PATH
- no use of user nobody
- 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)?
Problems:
- Warnings during build:
../gtf.c:116:12: warning: ‘pixel_freq’ may be used uninitialized
[-Wmaybe-uninitialized]
../gtf.c:114:40: warning: ‘h_blank_pixels’ may be used uninitialized
[-Wmaybe-uninitialized]
../gtf.c:113:44: warning: ‘total_pixels’ may be used uninitialized
[-Wmaybe-uninitialized]
../gtf.c:112:22: warning: ‘v_sync_bp’ may be used uninitialized
[-Wmaybe-uninitialized]
../di-edid-decode/edid.c:500:51: warning: ‘hratio’ may be used uninitialized
[-Wmaybe-uninitialized]
../di-edid-decode/edid.c:500:61: warning: ‘vratio’ may be used uninitialized
[-Wmaybe-uninitialized]
** Changed in: libdisplay-info (Ubuntu)
Assignee: Lukas Märdian (slyon) => Jeremy Bícha (jbicha)
** Changed in: libdisplay-info (Ubuntu)
Status: Confirmed => Incomplete
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2071396
Title:
[MIR] libdisplay-info
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/libdisplay-info/+bug/2071396/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs