[Bug 1877006] Review Request: smf-spf - Mail filter for Sender Policy Framework verification

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



https://bugzilla.redhat.com/show_bug.cgi?id=1877006



--- Comment #37 from Petr Pisar <ppisar@xxxxxxxxxx> ---
FIX: Missing an Url tag in the spec file pointing to an upstream. Did you mean
<https://github.com/jcbf/smf-spf>?
FIX: Source0 looks like a VCS snapshot. Put a URL you cloned it from into a
comment above Source0 tag
<https://docs.fedoraproject.org/en-US/packaging-guidelines/SourceURL/#_using_revision_control>.
Or use a URL of the snapshot if the upstream VCS hosting system supports it.
FIX: Version does not follow a schema for snapshots
<https://docs.fedoraproject.org/en-US/packaging-guidelines/Versioning/#_snapshots>.
Consider what would happen if you need to upgrade to a "051e937" snapshot of a
2.5.1-post release. In your current schema the new version would sort lower
than the old version.

Summary verified from README.md. Ok.
Description is Ok.

Licenses found:
GPL-2.0 text: COPYING
MIT: .devcontainer/Dockerfile
BSD-3-like: tests/04-fixed-client-auth-fail.lua
GPL-3.0 text: LICENSE
GPL-2.0-or-later: smf-spf.c

License tag is Ok.

TODO: It looks like the tests come from The Trusted Domain Project which uses
<https://github.com/trusteddomainproject/OpenDKIM/blob/master/LICENSE>. That
license requires carrying the license text. However, I cannot see the license
text anywhere in the source archive. You should clarify with the upstream an
origin of the tests. If upstream confirms it, the upstream and you need to
supply the missing license text.

FIX: Remove "rm -rf spf2" command from %prep. There is no such directory in the
archive.
TODO: Use "install -m0644" instead of "cp -a" for copying the additional
sources. A mode of the files is undefined. It depends on umask of the host
which builds the package.

FIX: Remove a duplicate "BuildRequires: systemd-rpm-macros".
FIX: Remove "Requires(pre):  shadow-utils". A correct dependency is handled
with "%{?sysusers_requires_compat}" macro.
FIX: Build-requires "coreutils" (smf-spf.spec:52).
FIX: Build-require "make" (smf-spf.spec:49).

FIX: The README.rpm is out-dated. "service", "chkconfig" commands are now
replaced with systemctl. Recommendation to install dependencies like libspf2
and sendmail is pointless. These are handled with RPM run-time dependencies of
this package. If sendmail-cf is required, then smf-spf or sendmail should
run-require it.

FIX: The lua script still fails:
error: lua script failed: [string "add_sysuser"]:16: invalid sysuser type:
#Type
  3<        (%lua)
  2<      (%add_sysuser)
Have you tried removing a first line with the comment from the file? At this
step the file is interpreted by Lua script of rpmbuild to generated RPM
Provides and it's possible that the script does not support comments.

$ rpmlint smf-spf.spec ../SRPMS/smf-spf-2.5.1.061e937-1.fc39.src.rpm
../RPMS/x86_64/smf-spf-*
======================================== rpmlint session starts
=======================================
rpmlint: 2.4.0
configuration:
    /usr/lib/python3.12/site-packages/rpmlint/configdefaults.toml
    /etc/xdg/rpmlint/fedora-legacy-licenses.toml
    /etc/xdg/rpmlint/fedora-spdx-licenses.toml
    /etc/xdg/rpmlint/fedora.toml
    /etc/xdg/rpmlint/scoring.toml
    /etc/xdg/rpmlint/users-groups.toml
    /etc/xdg/rpmlint/warn-on-functions.toml
checks: 31, packages: 5

smf-spf.x86_64: W: non-standard-uid /run/smfs smfs
smf-spf.x86_64: W: non-standard-gid /run/smfs smfs
smf-spf.x86_64: E: non-standard-dir-perm /run/smfs 700
smf-spf.x86_64: W: no-url-tag
smf-spf-debuginfo.x86_64: W: no-url-tag
smf-spf-debugsource.x86_64: W: no-url-tag
smf-spf.src: W: no-url-tag
smf-spf.x86_64: W: no-manual-page-for-binary smf-spf
smf-spf.spec:26: W: mixed-use-of-spaces-and-tabs (spaces: line 26, tab: line 1)
smf-spf.spec:26: W: mixed-use-of-spaces-and-tabs (spaces: line 26, tab: line 1)
smf-spf.spec: W: invalid-url Source0: smf-spf-2.5.1.061e937.tar.gz
smf-spf.spec: W: invalid-url Source0: smf-spf-2.5.1.061e937.tar.gz
smf-spf.x86_64: W: incoherent-version-in-changelog 2.5.1-1
['2.5.1.061e937-1.fc39', '2.5.1.061e937-1']
smf-spf.x86_64: E: file-parent-ownership-mismatch Path "/run/smfs/smf-spf.sock"
owned by "root" is stored in directory owned by "smfs"
======== 4 packages and 1 specfiles checked; 2 errors, 12 warnings, 2 badness;
has taken 0.3 s ========
TODO: Replace tabs with spaced in the spec file to achieve uniformity.
FIX: Correct a version in the changelog entry.

$ rpm -q -lv -p ../RPMS/x86_64/smf-spf-2.5.1.061e937-1.fc39.x86_64.rpm 
drwxr-xr-x    2 root     root                        0 Jul  4 02:00
/etc/mail/smfs
-rw-r--r--    1 root     root                     4731 Jul  4 02:00
/etc/mail/smfs/smf-spf.conf
drwx------    2 smfs     smfs                        0 Jul  4 02:00 /run/smfs
-rw-r--r--    1 root     root                        0 Jul  4 02:00
/run/smfs/smf-spf.sock
drwxr-xr-x    2 root     root                        0 Jul  4 02:00
/usr/lib/.build-id
drwxr-xr-x    2 root     root                        0 Jul  4 02:00
/usr/lib/.build-id/63
lrwxrwxrwx    1 root     root                       28 Jul  4 02:00
/usr/lib/.build-id/63/871eac7cfe0ef118abbb75bb4b0be08fe978f8 ->
../../../../usr/sbin/smf-spf
-rw-r--r--    1 root     root                      213 Nov 19  2020
/usr/lib/systemd/system/smf-spf.service
-rw-r--r--    1 root     root                      145 Jul  4 02:00
/usr/lib/sysusers.d/smfs.conf
-rwxr-xr-x    1 root     root                    36992 Jul  4 02:00
/usr/sbin/smf-spf
drwxr-xr-x    2 root     root                        0 Jul  4 02:00
/usr/share/doc/smf-spf
-rw-r--r--    1 root     root                     2140 Apr 23  2022
/usr/share/doc/smf-spf/ChangeLog
-rw-r--r--    1 root     root                     2235 Nov 19  2020
/usr/share/doc/smf-spf/README.rpm
-rw-r--r--    1 root     root                     5201 Jul  4 02:00
/usr/share/doc/smf-spf/readme
drwxr-xr-x    2 root     root                        0 Jul  4 02:00
/usr/share/licenses/smf-spf
-rw-r--r--    1 root     root                    25383 Apr 23  2022
/usr/share/licenses/smf-spf/COPYING
FIX: smf-spf.sysusers declares /var/lib/smfs as a home directory, but that
directory is not packaged. I think you should use "-" or "/run/smfs" instead.
See sysusers.d(5) manual page.
FIX: /run/smfs directory disappears on reboot because /run is tmpfs. Use
<https://docs.fedoraproject.org/en-US/packaging-guidelines/Tmpfiles.d/> for
creating one with correct ownership and mode.

$ rpm -q --requires -p  ../RPMS/x86_64/smf-spf-2.5.1.061e937-1.fc39.x86_64.rpm
| sort -f | uniq -c
      4 /bin/sh
      1 config(smf-spf) = 2.5.1.061e937-1.fc39
      1 libc.so.6()(64bit)
      1 libc.so.6(GLIBC_2.2.5)(64bit)
      1 libc.so.6(GLIBC_2.3)(64bit)
      1 libc.so.6(GLIBC_2.3.4)(64bit)
      1 libc.so.6(GLIBC_2.34)(64bit)
      1 libc.so.6(GLIBC_2.4)(64bit)
      1 libc.so.6(GLIBC_2.7)(64bit)
      1 libmilter.so.1.0()(64bit)
      1 libspf2.so.2()(64bit)
      1 rpmlib(CompressedFileNames) <= 3.0.4-1
      1 rpmlib(FileDigests) <= 4.6.0-1
      1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
      1 rpmlib(PayloadIsZstd) <= 5.4.18-1
      1 rtld(GNU_HASH)
      1 sendmail >= 8.12
      1 shadow-utils
TODO: Does this mail filter work only with sendmail? If it also works with
postfix, the package should depend on "(sendmail or postfix)".

$ rpm -q --provides -p  ../RPMS/x86_64/smf-spf-2.5.1.061e937-1.fc39.x86_64.rpm
| sort -f | uniq -c
      1 config(smf-spf) = 2.5.1.061e937-1.fc39
      1 group(smfs)
      1 smf-spf = 2.5.1.061e937-1.fc39
      1 smf-spf(x86-64) = 2.5.1.061e937-1.fc39
      1 user(smfs) =
dSBzbWZzIC0gIlNtYXJ0IFNlbmRtYWlsIEZpbHRlcnMiIC92YXIvbGliL3NtZnMgL3NiaW4vbm9sb2dpbgAA
Binary provides are Ok.

$ resolvedeps rawhide  ../RPMS/x86_64/smf-spf-2.5.1.061e937-1.fc39.x86_64.rpm 
Binary dependencies are resolvable. Ok.

The package builds in F39
<https://koji.fedoraproject.org/koji/taskinfo?taskID=103209562>. Ok.

Otherwise, the package is in line with Fedora packaging guidelines.
Please correct the FIX items, consider fixing TODO items, and provide a new
spec file.


-- 
You are receiving this mail because:
You are always notified about changes to this product and component
You are on the CC list for the bug.
https://bugzilla.redhat.com/show_bug.cgi?id=1877006

Report this comment as SPAM: https://bugzilla.redhat.com/enter_bug.cgi?product=Bugzilla&format=report-spam&short_desc=Report%20of%20Bug%201877006%23c37
_______________________________________________
package-review mailing list -- package-review@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to package-review-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/package-review@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue




[Index of Archives]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite Conditions]     [KDE Users]

  Powered by Linux