[Bug 1972866] Re: [MIR] gsasl
Didier Roche
1972866 at bugs.launchpad.net
Tue Jun 14 10:24:25 UTC 2022
Review for Package: gsasl
[Summary]
MIR team ACK will be granded once the discussion on the required TODOs (and possible actions) are solved, 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: gsasl, libgsasl18, libgsasl-dev, gsasl-doc, gsasl-common
Specific binary packages built, but NOT to be promoted to main: libgsasl7-dev
This package replaces cyrus-sasl which should be demoted once transitioned.
Notes:
Required TODOs:
- Please review the autopkgtests story: it seems quite light (running --version on the binary and building a simple program against the lib which get the version). Is there any integration tests we can use from the testsuite used during package build we can borrow?
- We need to wait for libntlm to be approved and in main first.
Recommended TODOs:
- There is a way override in the rules file with no proper clean up, please check:
override_dh_auto_install:
dh_auto_install
- There is one warning during the build. It’s harmless as we are using %d decimal and if we can’t allocate a new variables, we have bigger issues ahead :) Still, for the worth of silencing all warnings, it would be good to have upstream fixing it. (One warning would ask for a second one, and so on… until the project build log is unreadable)
../../tests/simple.c: In function 'doit':
../../tests/simple.c:289:3: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result]
289 | asprintf (&out, "%d.%d.%d", GSASL_VERSION_MAJOR,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
290 | GSASL_VERSION_MINOR, GSASL_VERSION_PATCH);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- The package should get a team bug subscriber before being promoted
[Duplication]
This package replaces cyrus-sasl which should be demoted once transitioned.
[Dependencies]
OK:
- no other Dependencies to MIR due to this apart from libntlm
- gsasl checked with `check-mir`
- no -dev/-debug/-doc packages that need exclusion
- No dependencies in main that are only superficially tested requiring more tests now.
[Embedded sources and static linking]
OK:
- no embedded source present
- no static linking
- does not have odd Built-Using entries
OK:
- not a go package, no extra constraints to consider in that regard
[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 parse data formats
- does not open a port/socket
- 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)
[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.
- no new python2 dependency
- Python package, but using dh_python
Problems:
- Please review the autopkgtests story: it seems quite light (running --version on the binary and building a simple program against the lib which get the version). Is there any integration tests we can use from the testsuite used during package build we can borrow?
[Packaging red flags]
OK:
- Ubuntu does not carry a delta
- symbols tracking is in place
- d/watch is present and looks ok (if needed, e.g. non-native)
- Upstream update history is good
- Debian/Ubuntu update history is good
- the current release is packaged
- promoting this does not seem to cause issues for MOTUs that so far
- no massive Lintian warnings
- d/rules is rather clean (but see below)
- It is not on the lto-disabled list
Problems:
There is a way override in the rules file with no proper clean up, please check:
override_dh_auto_install:
dh_auto_install
[Upstream red flags]
OK:
- no Errors, one harmelss warning 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 (usage is OK inside
tests)
- no use of user nobody
- no use of setuid
- use of setuid, but ok because TBD (prefer systemd to set those
for services)
- no important open bugs (crashers, etc) in Debian or Ubuntu
- no dependency on webkit, qtwebkit, seed or libgoa-*
- not part of the UI for extra checks
- no translation present, but none needed for this case?
Problems:
There is one warning during the build. It’s harmless as we are using %d decimal and if we can’t allocate a new variables, we have bigger issues ahead :) Still, for the worth of silencing all warnings, it would be good to have upstream fixing it. (One warning would ask for a second one, and so on… until the project build log is unreadable)
../../tests/simple.c: In function 'doit':
../../tests/simple.c:289:3: warning: ignoring return value of 'asprintf' declared with attribute 'warn_unused_result' [-Wunused-result]
289 | asprintf (&out, "%d.%d.%d", GSASL_VERSION_MAJOR,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
290 | GSASL_VERSION_MINOR, GSASL_VERSION_PATCH);
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
** Changed in: gsasl (Ubuntu)
Assignee: Didier Roche (didrocks) => (unassigned)
** Changed in: gsasl (Ubuntu)
Status: New => Incomplete
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to mutt in Ubuntu.
https://bugs.launchpad.net/bugs/1972866
Title:
[MIR] gsasl
Status in gsasl package in Ubuntu:
Incomplete
Status in mutt package in Ubuntu:
New
Status in mutt package in Debian:
Fix Released
Bug description:
[Summary]
* Everything seems in order with this package, but it should
be reviewed by the security team due to the nature of the package.
* Build log: https://launchpadlibrarian.net/564514219/buildlog_ubuntu-jammy-amd64.gsasl_1.10.0-5_BUILDING.txt.gz
[Availability]
* The package is already available in Ubuntu universe and builds for the required architectures
[Rationale]
* mutt (which is in main) used to depend on cyrus-sasl. Due to a
licensing conflict between mutt and cyrus-sasl, it has been updated
to use gsasl and drop the dependency on cyrus-sasl. This change
has been made in Debian. Mutt is used by a large part of our
user base, so continuing to provide it is important.
[Security]
* Package gsasl and associated libraries do not have any
security red-flags, but should still be reviewed by
the security team due to the nature of the package (it
authenticates users to servers)
* No CVEs/security issues in this software in the past
* No `suid` or `sgid` binaries
* No executables in `/sbin` and `/usr/sbin`
* Package does not install services, timers or recurring jobs
* Package does not open privileged ports (ports < 1024)
[Quality assurance - function/usage]
* The package works well right after install
[Quality assurance - maintenance]
* The package is maintained well in Debian/Ubuntu and has not too many
and long term critical bugs open
* The package does not deal with exotic hardware we cannot support
[Quality assurance - testing]
* The package runs a test suite on build time, if it fails
it makes the build fail
* The package runs an autopkgtest, and is currently passing
[Quality assurance - packaging]
* debian/watch is present and works
* debian/control defines a correct Maintainer field
* This package does not yield massive lintian Warnings, Errors
* Full output of `lintian --pedantic`:
```
P: gsasl source: update-debian-copyright 2014 vs 2021 [debian/copyright:44]
P: gsasl source: very-long-line-length-in-source-file configure line 13808 is 704 characters long (>512)
P: gsasl source: very-long-line-length-in-source-file examples/openid20/README line 92 is 807 characters long (>512)
P: gsasl source: very-long-line-length-in-source-file examples/saml20/README line 171 is 1396 characters long (>512)
P: gsasl source: very-long-line-length-in-source-file ... use --no-tag-display-limit to see all (or pipe to a file/program)
```
* Lintian overrides are present, but ok because upstream does
not provide source-only tarballs
* This package has no python2 or GTK2 dependencies
* Packaging and build is easy. d/rules is concise and readable
[UI standards]
* Application is end-user facing, Translation is present, via gettext
[Dependencies]
* libgsasl-dev depends on a package from src:libntlm. MIR for
libntlm is here: https://bugs.launchpad.net/ubuntu/+source/libntlm/+bug/1976405
[Standards compliance]
* This package correctly follows FHS and Debian Policy
[Maintenance/Owner]
* Owning Team will be foundations
* Team is not yet, but will subscribe to the package before promotion
* This does not use static builds
* This does not use vendored code
* The package successfully built during the most recent test rebuild
[Background information]
* The Package description explains the package well
* Upstream Name is GNU SASL
* Upstream Link is https://www.gnu.org/software/gsasl/
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/gsasl/+bug/1972866/+subscriptions
More information about the foundations-bugs
mailing list