]>
git.ipfire.org Git - thirdparty/mlmmj.git/log
liu shiwei [Thu, 27 Nov 2025 09:42:52 +0000 (17:42 +0800)]
fix East Asian script garbled characters
the text files use `charset=utf8`,
but according to the RFC3629,RFC2046,RFC6532, the correct way to write it is `charset=utf-8`.
Baptiste Daroussin [Thu, 13 Nov 2025 16:44:56 +0000 (17:44 +0100)]
moderation: remove dead part of the message
Baptiste Daroussin [Thu, 13 Nov 2025 16:41:15 +0000 (17:41 +0100)]
selfmoderate: adapt the text send to the user
Baptiste Daroussin [Thu, 13 Nov 2025 15:33:55 +0000 (16:33 +0100)]
rename modemailsender to selfmoderate
Baptiste Daroussin [Thu, 13 Nov 2025 15:31:09 +0000 (16:31 +0100)]
autosubscribe: new feature
when a mailing list moderated for non subscribed people, if a moderator
accept the email of the sender automatically register the send in the
list of "nomail" subscribers.
Baptiste Daroussin [Thu, 13 Nov 2025 13:45:06 +0000 (14:45 +0100)]
move and rename getinfo into an understandable name
Baptiste Daroussin [Thu, 13 Nov 2025 13:07:29 +0000 (14:07 +0100)]
Use a generic function instead of findit
Baptiste Daroussin [Thu, 13 Nov 2025 07:44:08 +0000 (08:44 +0100)]
mlmmj-send: small style improvements
Baptiste Daroussin [Thu, 13 Nov 2025 07:36:04 +0000 (08:36 +0100)]
listcontrol: style improvements
Baptiste Daroussin [Wed, 12 Nov 2025 16:49:50 +0000 (17:49 +0100)]
mlmmj-process: more style improvements
Baptiste Daroussin [Wed, 12 Nov 2025 16:46:19 +0000 (17:46 +0100)]
mlmmj-process: small style changes
Michael S. Tsirkin [Sun, 24 Aug 2025 20:50:27 +0000 (16:50 -0400)]
implement modemailsender test
Implement a new moderation_modemailsender test.
It is identical to moderation_modemailsender, but
sets modemailsender and verifies that the moderation email
goes to the sender.
Michael S. Tsirkin [Sun, 24 Aug 2025 21:49:02 +0000 (17:49 -0400)]
refactor moderation test
add a subfunction that will allow adding more tests without duplication
Michael S. Tsirkin [Sun, 24 Aug 2025 17:45:28 +0000 (13:45 -0400)]
add modemailsender option for sender moderation
Some people make their lists subscriber-only for the only reason
that they want senders to confirm they can receive email.
For example, this is a weak form of anti-spam (senders which can not
receive mail and reply to it are filtered out).
However, this annoys one-time contributors which really just want to
post a random mail here and there.
To address this, add a new modemailsender option for sending moderation
emails back to senders instead of moderators. They can now then confirm
it themselves - less work for moderators!
Specifically, when the control/modemailsender file is present,
moderation emails are sent to the original sender instead of moderators.
Only affects moderated lists.
urosm [Sun, 9 Nov 2025 16:59:54 +0000 (17:59 +0100)]
Fix typo to correctly detect disabled nomail subscriptions
Erwan MAS [Mon, 30 Jun 2025 11:22:17 +0000 (07:22 -0400)]
- emphasize headers with markdown modifier
Baptiste Daroussin [Fri, 27 Jun 2025 09:18:36 +0000 (11:18 +0200)]
delheaders: improve documentation
Fixes: #68
Erwan MAS [Thu, 26 Jun 2025 15:26:04 +0000 (11:26 -0400)]
add more patterns to delheaders unit tests
Erwan MAS [Mon, 23 Jun 2025 18:40:09 +0000 (14:40 -0400)]
add more unit tests to delheaders feature
Baptiste Daroussin [Mon, 16 Jun 2025 12:16:07 +0000 (14:16 +0200)]
update license
Baptiste Daroussin [Fri, 13 Jun 2025 14:14:53 +0000 (16:14 +0200)]
Release 1.6.0
Baptiste Daroussin [Fri, 13 Jun 2025 14:04:16 +0000 (16:04 +0200)]
customheaders: remove blank prefix and skip empty lines
Remove all the blanks prefixing any lines and skip empty lines when
adding custom headers as it can break email parsers
Fixes: #17
Baptiste Daroussin [Fri, 13 Jun 2025 14:06:59 +0000 (16:06 +0200)]
Changelog: document $bouncenumbers$ new expansion
Baptiste Daroussin [Fri, 13 Jun 2025 13:33:57 +0000 (15:33 +0200)]
probe: send message-id is possibel in probe emails
When sending the probe emails, tries to add the message-id in the
message, to help users figuring finding the wrong email
Fixes: #8
Baptiste Daroussin [Fri, 13 Jun 2025 13:32:57 +0000 (15:32 +0200)]
refactoring: isolate the code scanning the header
Isolate the code scanning the header of a mail into its own function
for it to be reusable
Baptiste Daroussin [Fri, 13 Jun 2025 08:18:21 +0000 (10:18 +0200)]
cleanup: remove extra semicolon
Erwan MAS [Sat, 7 Jun 2025 18:37:00 +0000 (14:37 -0400)]
customheaders allow substitution on variable $posteraddr$
Erwan MAS [Fri, 30 May 2025 17:40:33 +0000 (13:40 -0400)]
- fix build issues on Linux/Hurd 386
- unit test tests/mlmmj:smtp was incorrect because write_dot send 2 lines
Baptiste Daroussin [Tue, 27 May 2025 11:37:05 +0000 (13:37 +0200)]
Update changelog
Baptiste Daroussin [Tue, 27 May 2025 10:05:37 +0000 (12:05 +0200)]
Release 1.5.2
Baptiste Daroussin [Tue, 27 May 2025 09:35:47 +0000 (11:35 +0200)]
test: restore usage of top_srcdir which was actually setup in kyua.conf
Add a test of the presence of the variable, it fails if the kyua.conf
path is not provided to the kyua call
Baptiste Daroussin [Tue, 27 May 2025 09:18:02 +0000 (11:18 +0200)]
portability: fix socket size initialisation (fixes tests on alpine)
Baptiste Daroussin [Tue, 27 May 2025 08:33:48 +0000 (10:33 +0200)]
test: fix setting up listtext symlinks
Note top_srcdir is not a valide atf-c variable, no idea why it worked
most of the time
Baptiste Daroussin [Tue, 27 May 2025 08:04:40 +0000 (10:04 +0200)]
portability: fix socket size initialisation (fixes tests on alpine)
Baptiste Daroussin [Tue, 27 May 2025 08:00:59 +0000 (10:00 +0200)]
fakesmtp: (portability) fix run on alpine
Baptiste Daroussin [Tue, 27 May 2025 07:00:05 +0000 (09:00 +0200)]
mlmmj-bounce:basics_6 can only be run as non root
Baptiste Daroussin [Tue, 27 May 2025 06:54:15 +0000 (08:54 +0200)]
32bit fix touch argument to remain on an always valid range
Erwan MAS [Mon, 26 May 2025 20:40:13 +0000 (16:40 -0400)]
- rewrite some tests involving time_t so he will perform better on 32 bits platform
Baptiste Daroussin [Mon, 26 May 2025 12:49:54 +0000 (14:49 +0200)]
Releae 1.5.1
Baptiste Daroussin [Mon, 26 May 2025 12:47:16 +0000 (14:47 +0200)]
Fix tests when there is an actual mailserver running on the host
Erwan MAS [Mon, 26 May 2025 03:45:12 +0000 (23:45 -0400)]
- fgetc return a int not a char , and that was not portable on arm 64
Erwan MAS [Sun, 25 May 2025 03:57:00 +0000 (23:57 -0400)]
- fix issue with struct ml , not be initialized , test mod_get_addr_type failed
Baptiste Daroussin [Wed, 29 Jan 2025 09:27:39 +0000 (10:27 +0100)]
Release 1.5.0
Baptiste Daroussin [Wed, 8 Jan 2025 13:12:22 +0000 (14:12 +0100)]
rfc2047: add tests for us-ascii
Baptiste Daroussin [Wed, 8 Jan 2025 10:42:45 +0000 (11:42 +0100)]
decode_qp: add Q format support and reuse the function
decode rfc2047's Q format using the strgen's decode_qp this reduces code
duplication
Baptiste Daroussin [Tue, 7 Jan 2025 17:37:58 +0000 (18:37 +0100)]
unistr: add tests for unistr_header_to_utf8
Baptiste Daroussin [Tue, 7 Jan 2025 16:58:29 +0000 (17:58 +0100)]
unistr: remove declaration of removed unistr_dump
Baptiste Daroussin [Tue, 7 Jan 2025 16:51:42 +0000 (17:51 +0100)]
unistr: remove unused functions
Graham Leggett [Fri, 3 Jan 2025 14:27:36 +0000 (14:27 +0000)]
Add option to copy From: to Reply-To:
The replyto boolean causes the original From: header to be copied
to Reply-To:, so that emails can be accepted from senders that
enforce DMARC policies.
Baptiste Daroussin [Mon, 23 Sep 2024 12:19:25 +0000 (14:19 +0200)]
Changelog: add a missing change
Baptiste Daroussin [Mon, 23 Sep 2024 12:17:52 +0000 (14:17 +0200)]
Changelog: add the 2 last changes
Baptiste Daroussin [Mon, 23 Sep 2024 12:00:40 +0000 (14:00 +0200)]
bounce: fix recording twice bounces
While here simplify bounce code
Baptiste Daroussin [Tue, 17 Sep 2024 15:00:35 +0000 (17:00 +0200)]
foot filter: remove documentation
Baptiste Daroussin [Tue, 17 Sep 2024 14:15:01 +0000 (16:15 +0200)]
foot_filter: remove
this is too naive and cannot cope with the complexity of emails.
Either mails are restricted to be plain/text and control/footer is
enough or preprocess with ah external program the email, this work
does not belong directly to mlmmj and I don't intend into maintaining
this code.
Fixes: #23
Baptiste Daroussin [Tue, 17 Sep 2024 14:14:14 +0000 (16:14 +0200)]
subscribefunc: ensure we have an address to (un)subscribe
Baptiste Daroussin [Tue, 17 Sep 2024 08:41:00 +0000 (10:41 +0200)]
analysis: mark a couple of function as noreturn
This helps code analysis tools.
Baptiste Daroussin [Tue, 27 Aug 2024 16:12:28 +0000 (18:12 +0200)]
mlmmj-process: plug memory leak
Baptiste Daroussin [Tue, 27 Aug 2024 16:08:16 +0000 (18:08 +0200)]
access: document the dash-extension
Baptiste Daroussin [Tue, 27 Aug 2024 15:13:58 +0000 (17:13 +0200)]
access: granular access rejection
if a qualifier was passed to the deny action, this qualifier is then
used as an extension when looking for the template of deny message to
send to the user.
deny-post-access-<qualifier>
Fixes: #7
Baptiste Daroussin [Tue, 27 Aug 2024 15:10:53 +0000 (17:10 +0200)]
access: accept -<qualifier> after actions
Baptiste Daroussin [Tue, 27 Aug 2024 14:53:29 +0000 (16:53 +0200)]
access: modify the function to make it build the message to log
this allows better testability and make sure we only log in one place.
Baptiste Daroussin [Tue, 27 Aug 2024 14:33:30 +0000 (16:33 +0200)]
access: move code handling access into a separate to make it testable
while here, add very basic unit tests
Baptiste Daroussin [Tue, 27 Aug 2024 13:38:15 +0000 (15:38 +0200)]
document removal of pymime
Baptiste Daroussin [Tue, 27 Aug 2024 13:37:05 +0000 (15:37 +0200)]
pymime: remove
This script is obsolete: depends on python 2 and hasn't been updated
upstream for years
Baptiste Daroussin [Tue, 27 Aug 2024 09:36:48 +0000 (11:36 +0200)]
receivestrip: delete blank lines
Baptiste Daroussin [Tue, 27 Aug 2024 09:23:55 +0000 (11:23 +0200)]
receive-strip: replace extract_boundary with unit tested parse_content_type
Baptiste Daroussin [Tue, 27 Aug 2024 09:18:48 +0000 (11:18 +0200)]
mlmmj: add a parser to extract content-type's mime and boundary
Baptiste Daroussin [Mon, 26 Aug 2024 07:47:43 +0000 (09:47 +0200)]
message formatting: remove all deprecated variables
Baptiste Daroussin [Mon, 26 Aug 2024 07:47:18 +0000 (09:47 +0200)]
listtexts: stop using deprecated $confaddr$
Use $confimaddr$ instead
Baptiste Daroussin [Mon, 1 Jul 2024 11:04:03 +0000 (13:04 +0200)]
fix build on linux
Baptiste Daroussin [Mon, 1 Jul 2024 10:55:53 +0000 (12:55 +0200)]
release: 1.4.7
Baptiste Daroussin [Mon, 1 Jul 2024 10:52:59 +0000 (12:52 +0200)]
strgen: xlocale.h is required to build on macOS
Siva Mahadevan [Tue, 11 Jun 2024 15:05:46 +0000 (11:05 -0400)]
mlmmj-process: fix duplicate queued moderation notification email
Baptiste Daroussin [Thu, 6 Jun 2024 11:27:32 +0000 (13:27 +0200)]
release: 1.4.6
Baptiste Daroussin [Thu, 6 Jun 2024 08:16:34 +0000 (10:16 +0200)]
test: fix a test regarding RFC 5321
Baptiste Daroussin [Fri, 31 May 2024 13:42:07 +0000 (15:42 +0200)]
Fix another regression in RFC 5321
Baptiste Daroussin [Fri, 31 May 2024 08:54:46 +0000 (10:54 +0200)]
test: add a unit test about #30
prx [Fri, 10 May 2024 18:50:16 +0000 (20:50 +0200)]
remove unnecessary double quotes breaking cron on OpenBSD
Baptiste Daroussin [Mon, 6 May 2024 09:33:39 +0000 (11:33 +0200)]
README: remove name, some are inactive nowaday
Baptiste Daroussin [Mon, 6 May 2024 09:31:59 +0000 (11:31 +0200)]
TUNABLES: fix rendering
Baptiste Daroussin [Mon, 6 May 2024 09:27:18 +0000 (11:27 +0200)]
security: remove note which might not be accurate anymore
Baptiste Daroussin [Mon, 6 May 2024 09:26:12 +0000 (11:26 +0200)]
README.*: convert all to READMEs to markdown
Baptiste Daroussin [Mon, 6 May 2024 09:03:02 +0000 (11:03 +0200)]
README.exim4: convert to markdown
Baptiste Daroussin [Mon, 6 May 2024 08:45:48 +0000 (10:45 +0200)]
README.archives: rename to .md
Baptiste Daroussin [Mon, 6 May 2024 08:39:44 +0000 (10:39 +0200)]
README.access: convert to markdown
Baptiste Daroussin [Mon, 6 May 2024 08:36:53 +0000 (10:36 +0200)]
README: fix formatting the hierarchy
Baptiste Daroussin [Mon, 6 May 2024 08:33:54 +0000 (10:33 +0200)]
README: update to match current state and convert to markdown
Baptiste Daroussin [Fri, 3 May 2024 14:58:16 +0000 (16:58 +0200)]
build: we don't need to link to librt at all
Baptiste Daroussin [Tue, 26 Mar 2024 07:48:37 +0000 (08:48 +0100)]
release: 1.4.5
Baptiste Daroussin [Tue, 26 Mar 2024 07:44:54 +0000 (08:44 +0100)]
sendmail: also log the RCPT when receiving a SMTP failure
This helps debugging
Baptiste Daroussin [Fri, 1 Mar 2024 21:15:33 +0000 (22:15 +0100)]
ci: add debian/unstable
Michael Jeanson [Fri, 1 Mar 2024 19:10:02 +0000 (14:10 -0500)]
WIP: Should use rhost?
I'm not sure this is the correct fix but the current code tries to
duplicate the string 'relayhost' which is always NULL at this point.
In file included from send_mail.c:39:
In function ‘xstrdup’,
inlined from ‘newsmtp’ at send_mail.c:362:15:
../include/xmalloc.h:34:19: warning: argument 1 null where non-null expected [-Wnonnull]
34 | char *s = strdup(str);
| ^~~~~~~~~~~
In file included from ../include/log_error.h:28,
from send_mail.c:34:
/usr/include/string.h: In function ‘newsmtp’:
/usr/include/string.h:187:14: note: in a call to function ‘strdup’ declared ‘nonnull’
187 | extern char *strdup (const char *__s)
| ^~~~~~
Signed-off-by: Michael Jeanson <mjeanson@debian.org>
Michael Jeanson [Fri, 1 Mar 2024 19:19:38 +0000 (14:19 -0500)]
Add GCC pragma ignore to tests
Add the GCC version of the ignore pragma.
Signed-off-by: Michael Jeanson <mjeanson@debian.org>
Michael Jeanson [Thu, 15 Feb 2024 18:50:31 +0000 (13:50 -0500)]
Add 'atf-sh' detection to configure
The configure script now checks for the 'atf-sh' binary when the test
suite is enabled. The binary found is then used in the test script
shebang. As an added bonus, the test script generation is now done by
AC_CONFIG_FILES instead of the Makefile copy custom rules.
Signed-off-by: Michael Jeanson <mjeanson@debian.org>
Michael Jeanson [Thu, 15 Feb 2024 18:42:56 +0000 (13:42 -0500)]
Use the configured 'kyua' binary to run the tests
The configure script uses 'AC_PATH_PROG' to find a kyua binary, use it
in the Makefile to run the test suite.
Signed-off-by: Michael Jeanson <mjeanson@debian.org>
Michael Jeanson [Thu, 15 Feb 2024 19:33:17 +0000 (14:33 -0500)]
Add missing file 'dsnmail' to distribution
The file was missing in release tarballs.
Signed-off-by: Michael Jeanson <mjeanson@debian.org>
Baptiste Daroussin [Mon, 26 Feb 2024 15:01:03 +0000 (16:01 +0100)]
ci: add a debian builder
Michael Jeanson [Mon, 12 Feb 2024 22:35:20 +0000 (17:35 -0500)]
Add .gitignore to ignore built files
Signed-off-by: Michael Jeanson <mjeanson@debian.org>
Michael Jeanson [Mon, 12 Feb 2024 23:12:55 +0000 (18:12 -0500)]
Fix the test suite for Out of tree builds
Move the test suite to the top level Makefile to allow proper
dependencies between the built files and the check target.
Add a generated 'kyua.conf' file to the build directory to pass the
top_srcdir and top_buildir variable from the build system to the test
suite.
Modify the test scripts to fetch the data files from the top_srcdir and
the generated files from the top_builddir variable.
Signed-off-by: Michael Jeanson <mjeanson@debian.org>
Michael Jeanson [Mon, 12 Feb 2024 22:53:42 +0000 (17:53 -0500)]
Add a configure option to disable tests
With the previous behavior, a missing dependency would silently disable
the test suite and could be error prone. Add a configure option to
explicitly disable the tests and build without Kyua and libatf.
Signed-off-by: Michael Jeanson <mjeanson@debian.org>