]> git.ipfire.org Git - thirdparty/mlmmj.git/log
thirdparty/mlmmj.git
12 months agoUpdate changelog
Baptiste Daroussin [Tue, 27 May 2025 11:37:05 +0000 (13:37 +0200)] 
Update changelog

12 months agoRelease 1.5.2 RELEASE_1.5.2
Baptiste Daroussin [Tue, 27 May 2025 10:05:37 +0000 (12:05 +0200)] 
Release 1.5.2

12 months agotest: restore usage of top_srcdir which was actually setup in kyua.conf
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

12 months agoportability: fix socket size initialisation (fixes tests on alpine)
Baptiste Daroussin [Tue, 27 May 2025 09:18:02 +0000 (11:18 +0200)] 
portability: fix socket size initialisation (fixes tests on alpine)

12 months agotest: fix setting up listtext symlinks
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

12 months agoportability: fix socket size initialisation (fixes tests on alpine)
Baptiste Daroussin [Tue, 27 May 2025 08:04:40 +0000 (10:04 +0200)] 
portability: fix socket size initialisation (fixes tests on alpine)

12 months agofakesmtp: (portability) fix run on alpine
Baptiste Daroussin [Tue, 27 May 2025 08:00:59 +0000 (10:00 +0200)] 
fakesmtp: (portability) fix run on alpine

12 months agomlmmj-bounce:basics_6 can only be run as non root
Baptiste Daroussin [Tue, 27 May 2025 07:00:05 +0000 (09:00 +0200)] 
mlmmj-bounce:basics_6 can only be run as non root

12 months ago32bit fix touch argument to remain on an always valid range
Baptiste Daroussin [Tue, 27 May 2025 06:54:15 +0000 (08:54 +0200)] 
32bit fix touch argument to remain on an always valid range

12 months ago- rewrite some tests involving time_t so he will perform better on 32 bits platform 53/head
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

12 months agoReleae 1.5.1 RELEASE_1.5.1
Baptiste Daroussin [Mon, 26 May 2025 12:49:54 +0000 (14:49 +0200)] 
Releae 1.5.1

12 months agoFix tests when there is an actual mailserver running on the host
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

12 months ago- fgetc return a int not a char , and that was not portable on arm 64 52/head
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

12 months ago- fix issue with struct ml , not be initialized , test mod_get_addr_type failed 51/head
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

16 months agoRelease 1.5.0 RELEASE_1_5_0
Baptiste Daroussin [Wed, 29 Jan 2025 09:27:39 +0000 (10:27 +0100)] 
Release 1.5.0

17 months agorfc2047: add tests for us-ascii
Baptiste Daroussin [Wed, 8 Jan 2025 13:12:22 +0000 (14:12 +0100)] 
rfc2047: add tests for us-ascii

17 months agodecode_qp: add Q format support and reuse the function
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

17 months agounistr: add tests for unistr_header_to_utf8
Baptiste Daroussin [Tue, 7 Jan 2025 17:37:58 +0000 (18:37 +0100)] 
unistr: add tests for unistr_header_to_utf8

17 months agounistr: remove declaration of removed unistr_dump
Baptiste Daroussin [Tue, 7 Jan 2025 16:58:29 +0000 (17:58 +0100)] 
unistr: remove declaration of removed unistr_dump

17 months agounistr: remove unused functions
Baptiste Daroussin [Tue, 7 Jan 2025 16:51:42 +0000 (17:51 +0100)] 
unistr: remove unused functions

17 months agoAdd option to copy From: to Reply-To: 43/head
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.

20 months agoChangelog: add a missing change
Baptiste Daroussin [Mon, 23 Sep 2024 12:19:25 +0000 (14:19 +0200)] 
Changelog: add a missing change

20 months agoChangelog: add the 2 last changes
Baptiste Daroussin [Mon, 23 Sep 2024 12:17:52 +0000 (14:17 +0200)] 
Changelog: add the 2 last changes

20 months agobounce: fix recording twice bounces
Baptiste Daroussin [Mon, 23 Sep 2024 12:00:40 +0000 (14:00 +0200)] 
bounce: fix recording twice bounces

While here simplify bounce code

21 months agofoot filter: remove documentation
Baptiste Daroussin [Tue, 17 Sep 2024 15:00:35 +0000 (17:00 +0200)] 
foot filter: remove documentation

21 months agofoot_filter: remove
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
21 months agosubscribefunc: ensure we have an address to (un)subscribe
Baptiste Daroussin [Tue, 17 Sep 2024 14:14:14 +0000 (16:14 +0200)] 
subscribefunc: ensure we have an address to (un)subscribe

21 months agoanalysis: mark a couple of function as noreturn
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.

21 months agomlmmj-process: plug memory leak
Baptiste Daroussin [Tue, 27 Aug 2024 16:12:28 +0000 (18:12 +0200)] 
mlmmj-process: plug memory leak

21 months agoaccess: document the dash-extension
Baptiste Daroussin [Tue, 27 Aug 2024 16:08:16 +0000 (18:08 +0200)] 
access: document the dash-extension

21 months agoaccess: granular access rejection
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
21 months agoaccess: accept -<qualifier> after actions
Baptiste Daroussin [Tue, 27 Aug 2024 15:10:53 +0000 (17:10 +0200)] 
access: accept -<qualifier> after actions

21 months agoaccess: modify the function to make it build the message to log
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.

21 months agoaccess: move code handling access into a separate to make it testable
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

21 months agodocument removal of pymime
Baptiste Daroussin [Tue, 27 Aug 2024 13:38:15 +0000 (15:38 +0200)] 
document removal of pymime

21 months agopymime: remove
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

21 months agoreceivestrip: delete blank lines
Baptiste Daroussin [Tue, 27 Aug 2024 09:36:48 +0000 (11:36 +0200)] 
receivestrip: delete blank lines

21 months agoreceive-strip: replace extract_boundary with unit tested parse_content_type
Baptiste Daroussin [Tue, 27 Aug 2024 09:23:55 +0000 (11:23 +0200)] 
receive-strip: replace extract_boundary with unit tested parse_content_type

21 months agomlmmj: add a parser to extract content-type's mime and boundary
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

21 months agomessage formatting: remove all deprecated variables
Baptiste Daroussin [Mon, 26 Aug 2024 07:47:43 +0000 (09:47 +0200)] 
message formatting: remove all deprecated variables

21 months agolisttexts: stop using deprecated $confaddr$
Baptiste Daroussin [Mon, 26 Aug 2024 07:47:18 +0000 (09:47 +0200)] 
listtexts: stop using deprecated $confaddr$

Use $confimaddr$ instead

23 months agofix build on linux RELEASE_1_4_7
Baptiste Daroussin [Mon, 1 Jul 2024 11:04:03 +0000 (13:04 +0200)] 
fix build on linux

23 months agorelease: 1.4.7
Baptiste Daroussin [Mon, 1 Jul 2024 10:55:53 +0000 (12:55 +0200)] 
release: 1.4.7

23 months agostrgen: xlocale.h is required to build on macOS
Baptiste Daroussin [Mon, 1 Jul 2024 10:52:59 +0000 (12:52 +0200)] 
strgen: xlocale.h is required to build on macOS

2 years agomlmmj-process: fix duplicate queued moderation notification email 31/head
Siva Mahadevan [Tue, 11 Jun 2024 15:05:46 +0000 (11:05 -0400)] 
mlmmj-process: fix duplicate queued moderation notification email

2 years agorelease: 1.4.6 RELEASE_1_4_6
Baptiste Daroussin [Thu, 6 Jun 2024 11:27:32 +0000 (13:27 +0200)] 
release: 1.4.6

2 years agotest: fix a test regarding RFC 5321
Baptiste Daroussin [Thu, 6 Jun 2024 08:16:34 +0000 (10:16 +0200)] 
test: fix a test regarding RFC 5321

2 years agoFix another regression in RFC 5321
Baptiste Daroussin [Fri, 31 May 2024 13:42:07 +0000 (15:42 +0200)] 
Fix another regression in RFC 5321

2 years agotest: add a unit test about #30
Baptiste Daroussin [Fri, 31 May 2024 08:54:46 +0000 (10:54 +0200)] 
test: add a unit test about #30

2 years agoremove unnecessary double quotes breaking cron on OpenBSD 29/head
prx [Fri, 10 May 2024 18:50:16 +0000 (20:50 +0200)] 
remove unnecessary double quotes breaking cron on OpenBSD

2 years agoREADME: remove name, some are inactive nowaday
Baptiste Daroussin [Mon, 6 May 2024 09:33:39 +0000 (11:33 +0200)] 
README: remove name, some are inactive nowaday

2 years agoTUNABLES: fix rendering
Baptiste Daroussin [Mon, 6 May 2024 09:31:59 +0000 (11:31 +0200)] 
TUNABLES: fix rendering

2 years agosecurity: remove note which might not be accurate anymore
Baptiste Daroussin [Mon, 6 May 2024 09:27:18 +0000 (11:27 +0200)] 
security: remove note which might not be accurate anymore

2 years agoREADME.*: convert all to READMEs to markdown
Baptiste Daroussin [Mon, 6 May 2024 09:26:12 +0000 (11:26 +0200)] 
README.*: convert all to READMEs to markdown

2 years agoREADME.exim4: convert to markdown
Baptiste Daroussin [Mon, 6 May 2024 09:03:02 +0000 (11:03 +0200)] 
README.exim4: convert to markdown

2 years agoREADME.archives: rename to .md
Baptiste Daroussin [Mon, 6 May 2024 08:45:48 +0000 (10:45 +0200)] 
README.archives: rename to .md

2 years agoREADME.access: convert to markdown
Baptiste Daroussin [Mon, 6 May 2024 08:39:44 +0000 (10:39 +0200)] 
README.access: convert to markdown

2 years agoREADME: fix formatting the hierarchy
Baptiste Daroussin [Mon, 6 May 2024 08:36:53 +0000 (10:36 +0200)] 
README: fix formatting the hierarchy

2 years agoREADME: update to match current state and convert to markdown
Baptiste Daroussin [Mon, 6 May 2024 08:33:54 +0000 (10:33 +0200)] 
README: update to match current state and convert to markdown

2 years agobuild: we don't need to link to librt at all
Baptiste Daroussin [Fri, 3 May 2024 14:58:16 +0000 (16:58 +0200)] 
build: we don't need to link to librt at all

2 years agorelease: 1.4.5 RELEASE_1_4_5
Baptiste Daroussin [Tue, 26 Mar 2024 07:48:37 +0000 (08:48 +0100)] 
release: 1.4.5

2 years agosendmail: also log the RCPT when receiving a SMTP failure
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

2 years agoci: add debian/unstable
Baptiste Daroussin [Fri, 1 Mar 2024 21:15:33 +0000 (22:15 +0100)] 
ci: add debian/unstable

2 years agoWIP: Should use rhost?
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>
2 years agoAdd GCC pragma ignore to tests
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>
2 years agoAdd 'atf-sh' detection to configure 19/head
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>
2 years agoUse the configured 'kyua' binary to run the tests
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>
2 years agoAdd missing file 'dsnmail' to distribution
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>
2 years agoci: add a debian builder
Baptiste Daroussin [Mon, 26 Feb 2024 15:01:03 +0000 (16:01 +0100)] 
ci: add a debian builder

2 years agoAdd .gitignore to ignore built files 15/head
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>
2 years agoFix the test suite for Out of tree builds
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>
2 years agoAdd a configure option to disable tests
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>
2 years agoModernize autotools
Michael Jeanson [Mon, 12 Feb 2024 22:29:10 +0000 (17:29 -0500)] 
Modernize autotools

Set conservative base version requirements for Automake (>= 1.13) and
Autoconf (>= 2.69).

Enable silent rules (can be disabled with 'make V=1') and use a
subdirectory for auxiliary files.

Signed-off-by: Michael Jeanson <mjeanson@debian.org>
2 years agoCentralize AUTOMAKE_OPTIONS in configure.ac
Michael Jeanson [Mon, 12 Feb 2024 22:21:01 +0000 (17:21 -0500)] 
Centralize AUTOMAKE_OPTIONS in configure.ac

Signed-off-by: Michael Jeanson <mjeanson@debian.org>
2 years agoCentralize common AM_CFLAGS/LDFLAGS in configure.ac
Michael Jeanson [Mon, 12 Feb 2024 22:18:14 +0000 (17:18 -0500)] 
Centralize common AM_CFLAGS/LDFLAGS in configure.ac

Signed-off-by: Michael Jeanson <mjeanson@debian.org>
2 years agoConvert class.rFastTemplate.php from latin1 to utf-8 14/head
Michael Jeanson [Mon, 12 Feb 2024 21:00:56 +0000 (16:00 -0500)] 
Convert class.rFastTemplate.php from latin1 to utf-8

The 'copyright' characters could also be replaced by an ASCII
alternative.

Signed-off-by: Michael Jeanson <mjeanson@debian.org>
2 years agoFix misc typos 13/head
Michael Jeanson [Mon, 12 Feb 2024 19:06:20 +0000 (14:06 -0500)] 
Fix misc typos

Fix the following typos in code and documentation:

    occured -> occurred
    subcribe -> subscribe
    existance -> existence

Signed-off-by: Michael Jeanson <mjeanson@debian.org>
2 years agobuild: allow to build if atf and kyua are not present
Baptiste Daroussin [Fri, 19 Jan 2024 10:35:35 +0000 (11:35 +0100)] 
build: allow to build if atf and kyua are not present

2 years agoconfigure: reduce the number of useless checks
Baptiste Daroussin [Fri, 19 Jan 2024 10:23:25 +0000 (11:23 +0100)] 
configure: reduce the number of useless checks

2 years agoconfigure: remove check for function available everywhere
Baptiste Daroussin [Fri, 19 Jan 2024 10:20:46 +0000 (11:20 +0100)] 
configure: remove check for function available everywhere

2 years agorelease: 1.4.4 RELEASE_1_4_4
Baptiste Daroussin [Thu, 11 Jan 2024 16:52:31 +0000 (17:52 +0100)] 
release: 1.4.4

2 years agoprobes: fix a regression causing the probes not to sent the bounce numbers
Baptiste Daroussin [Thu, 11 Jan 2024 16:44:42 +0000 (17:44 +0100)] 
probes: fix a regression causing the probes not to sent the bounce numbers

move the code sending the probe into a reusable function for it to be
testable, add a unit test which checks the probes properly contains
what is expected.

2 years agobouncemail: add test
Baptiste Daroussin [Thu, 11 Jan 2024 15:45:43 +0000 (16:45 +0100)] 
bouncemail: add test

Fix a bug making the unsubscribed user bouncing to still create a file

2 years agoparse_latestdigest: use chomp
Baptiste Daroussin [Fri, 22 Dec 2023 10:51:43 +0000 (11:51 +0100)] 
parse_latestdigest: use chomp

2 years agorelease: 1.4.3 RELEASE_1_4_3
Baptiste Daroussin [Thu, 21 Dec 2023 07:46:51 +0000 (08:46 +0100)] 
release: 1.4.3

2 years agoprobes: update changelog regarding the last regression fix
Baptiste Daroussin [Wed, 20 Dec 2023 13:04:01 +0000 (14:04 +0100)] 
probes: update changelog regarding the last regression fix

2 years agobounce: only cleanup the probe file if sending the probe failed
Baptiste Daroussin [Wed, 20 Dec 2023 10:36:41 +0000 (11:36 +0100)] 
bounce: only cleanup the probe file if sending the probe failed

2 years agorelease: 1.4.2 RELEASE_1_4_2
Baptiste Daroussin [Mon, 18 Dec 2023 09:09:42 +0000 (10:09 +0100)] 
release: 1.4.2

2 years agodigest: trim the last element of lastdigest if needed
Baptiste Daroussin [Mon, 18 Dec 2023 09:02:07 +0000 (10:02 +0100)] 
digest: trim the last element of lastdigest if needed

Add regression tests about it

2 years agoparse_lastdigest: add a real test about what is expected
Baptiste Daroussin [Mon, 18 Dec 2023 08:17:39 +0000 (09:17 +0100)] 
parse_lastdigest: add a real test about what is expected

2 years agoci: add ci on sourcehut
Baptiste Daroussin [Fri, 15 Dec 2023 15:53:42 +0000 (16:53 +0100)] 
ci: add ci on sourcehut

2 years agorelease: 1.4.1 RELEASE_1_4_1
Baptiste Daroussin [Sat, 9 Dec 2023 19:19:48 +0000 (20:19 +0100)] 
release: 1.4.1

2 years agofix: incremental update
Baptiste Daroussin [Sat, 9 Dec 2023 19:18:49 +0000 (20:18 +0100)] 
fix: incremental update

2 years agoRelease 1.4.0 RELEASE_1_4_0
Baptiste Daroussin [Wed, 6 Dec 2023 16:05:19 +0000 (17:05 +0100)] 
Release 1.4.0

2 years ago1.4.0-rc3 RELEASE_1_4_0rc3
Baptiste Daroussin [Thu, 30 Nov 2023 06:01:44 +0000 (07:01 +0100)] 
1.4.0-rc3

2 years agoFix interactive prompt issue with spool directory option 11/head
raph [Tue, 21 Nov 2023 09:57:03 +0000 (09:57 +0000)] 
Fix interactive prompt issue with spool directory option

2 years agowrite mail: fix regression regarding RFC 5321
Baptiste Daroussin [Thu, 9 Nov 2023 10:20:41 +0000 (11:20 +0100)] 
write mail: fix regression regarding RFC 5321

if a line on the email to write only contains a dot, then the
dot should be doubled otherwise the mail server will consider it
as the end of the DATA and will prematurely terminate the email.

2 years agosubscruption: fix, subscription validation
Baptiste Daroussin [Wed, 25 Oct 2023 22:09:34 +0000 (00:09 +0200)] 
subscruption: fix, subscription validation

2 years ago1.4.0rc2 RELEASE_1_4_0rc2
Baptiste Daroussin [Tue, 24 Oct 2023 21:13:13 +0000 (23:13 +0200)] 
1.4.0rc2

2 years agoreallf: fix typo in prototype
Baptiste Daroussin [Wed, 18 Oct 2023 21:10:05 +0000 (23:10 +0200)] 
reallf: fix typo in prototype