Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

manually check popular patches against 1.09-to-be #275

Open
schmonz opened this issue Apr 12, 2024 · 5 comments
Open

manually check popular patches against 1.09-to-be #275

schmonz opened this issue Apr 12, 2024 · 5 comments
Assignees
Labels
Milestone

Comments

@schmonz
Copy link
Member

schmonz commented Apr 12, 2024

We don't (yet) have the patch checker integrated into the build, so for 1.09 we'll need to check manually that "popular patches" apply and build.

We believe that the set of popular patches is defined as the intersection of the list at notqmail.org/patches with the list of branches beginning with patches/, minus those that have been merged. In 1.09, we know that #201 has been merged.

@mbhangui will run-test the badmailfrom and rcptcheck patches. I'll build-test the rest (minus #201 and TLS, already tested in #259).

@schmonz schmonz added the build label Apr 12, 2024
@schmonz schmonz added this to the 1.09 milestone Apr 12, 2024
@mbhangui
Copy link
Contributor

mbhangui commented Apr 16, 2024

Tested following

  1. badmailfrom wildcard patch
  2. badmailfrom RELAYCLIENT patch
  3. rcptcheck patch. Tested return value of 0, 100, 111, 120 and 99 from $RCPTCHECK script
  4. AUTH LOGIN and AUTH PLAIN in qmail-smtpd smtp auth patch. What was not tested was AUTH CRAM-MD5 and qmail-remote using SMTP AUTH.

EDIT: Forgot to mention that the tests were successful.

@schmonz
Copy link
Member Author

schmonz commented Apr 19, 2024

General findings:

  • Updating: many patch branches do not apply cleanly against what will be 1.09. How best to publish updated branches with the conflicts resolved -- merge out from master, rebase and force-push, something else?
  • Attribution: for patches that we've merged, we make sure to attribute the initial commit (== the patch as published upstream, verbatim) to the original author before adding further commits to the branch. Not all of these patch branches have these attributions. If we do decide to rebase and force-push (or otherwise rewrite histories), we should fix this.
  • Naming: some of these branches are top-level refs, others are namespaced under patches/notqmail/. We should probably be consistent about the latter.

Specifics:

  • big-concurrency builds fine
  • big-todo conflict in qmail-qstat.sh is resolved by simply dropping the patch's changes, then builds fine
    • it may not be that helpful a patch on modern hardware with modern filesystems, but some users may still be carrying it around
  • ext-todo conflict in qmail-send.c that I didn't quickly understand how to resolve
  • smtpd-logging conflict in qmail-smtpd.c around safewrite() and saferead(), punted
  • spf many conflicts, did not inspect them yet
  • spp easy conflict in Makefile, builds fine

@schmonz
Copy link
Member Author

schmonz commented May 4, 2024

Current status:

All patch branches are now namespaced under patches/notqmail/, rebased onto master as it stands today, and attributed to their original authors. Waiting to hear from @AndrewCRichards about which email address would be best for qmail-logmsg (and whether @jrlevine should be a co-author on the commit).

Don't remove the remaining top-level notqmail-* branches! They're part of open PRs from @xenotrope. But they've also been rebased into the patch-branch namespace, and those have been added to our patches page.

@mbhangui's DKIM patch for netqmail has been rebased to patches/notqmail/dkim. Please review carefully. I'm sure qmail.c:qmail_close() is not as intended (we already have the custom-error patch errstr and I wasn't sure whether the patch's one is supposed to be distinct). I'm also unsure of what I did to get instpackage to link (caused by hier.c using auto_uidd for the first time).

@mbhangui has re-tested the rebased SMTP AUTH patch (LOGIN and PLAIN, as before, no CRAM-MD5 testing).

@mbhangui
Copy link
Contributor

mbhangui commented May 5, 2024

@mbhangui's DKIM patch for netqmail has been rebased to patches/notqmail/dkim. Please review carefully. I'm sure qmail.c:qmail_close() is not as intended (we already have the custom-error patch errstr

We should not be having qmail.c from the patch. This is for netqmail which doesn't have the custom error patch

and I wasn't sure whether the patch's one is supposed to be distinct). I'm also unsure of what I did to get instpackage to link (caused by hier.c using auto_uidd for the first time).

This requires a user qmaild in conf-users. qmail-smtpd run script is supposed to be run as qmaild user. When surbqueue program is configured in QMAILQUEUE it creates file in cache directory /var/qmail/control/cache. So a line is required in hier.c

d(auto_qmail,"control/cache",auto_uidd,auto_gidq,0755);

and conf-users is supposed to have qmaild user as below

alias
qmaild
qmaill
root
qmailp
qmailq
qmailr
qmails

patches/netqmail/dkim does have hier.c with control/cache directory and conf-users with qmaild user

@schmonz
Copy link
Member Author

schmonz commented May 5, 2024

Thanks for the clarification! It occurred to me that the dns.c changes were just the big-dns patch, but I didn't think to check if the qmail.[ch] changes were just the custom-error patch. Re-pushed.

Still confused why instpackage on master doesn't need instuidgid.o or ids.a.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants