Commit graph

177 commits

Author SHA1 Message Date
mdecimus
a45fea86ed v0.10.1
Some checks are pending
trivy / Check (push) Waiting to run
2024-09-26 19:02:51 +02:00
afontenot
b4c00ebe90
Fix off-by-one error in get_blob with Range (#766)
When range.end == decompressed.len(), the last value in the range will
also be the last value in decompressed, because ranges ends are
exclusive.

This issue had two consequences that I have noticed. The first is that
requesting the last (or only) message part via JMAP will result in the
entire message being returned instead, because the range ends on the
last byte of the message.

The second issue, which resulted from the first, was that attempting to
fetch the last (or only) message part would almost always fail when
requested via JMAP if the message part used the quoted-printable
transfer encoding. This is because Stalwart would attempt to decode the
blob, but since the entire file was returned, this would include
headers which are very likely to break assumptions made by the decoder,
e.g. unexpected '=' tokens as in 'charset=UTF-8'

The second issue was originally reported here:
https://github.com/stalwartlabs/mail-server/discussions/758
2024-09-22 09:15:49 +02:00
mdecimus
a67f308645 Branding + fixes 2024-09-19 19:39:35 +02:00
mdecimus
d0303aefa8 Test fixes - part 3 2024-09-18 11:18:43 +02:00
mdecimus
d214468c54 Roles and multi-tenancy - part 1 2024-09-12 17:42:14 +02:00
mdecimus
fbcf55d8e1 Access token permissions 2024-09-10 18:44:44 +02:00
mdecimus
b214a458cc v0.9.4 2024-09-09 17:26:20 +02:00
mdecimus
794b8f2e50 Fix: Lookup reload does not include database settings 2024-09-08 17:01:38 +02:00
mdecimus
36fd5797b7 SYN flood, brute force fail2ban + session.mail.is-allowed expression (closes #482 closes #688 closes #609) 2024-08-29 12:22:44 +02:00
mdecimus
dcc31e8b3e Metric history + Live metrics 2024-08-23 16:21:35 +02:00
mdecimus
fe0ccb11bd Do not insert empty keywords in FTS index 2024-08-22 12:33:23 +02:00
mdecimus
bd4129e160 Fixed tracing index table type for SQL stores
Some checks are pending
trivy / Check (push) Waiting to run
2024-08-21 18:32:59 +02:00
mdecimus
147d9ded86 Increase SMTP transaction logging details 2024-08-21 16:12:01 +02:00
mdecimus
6d76b26fb8 Fix compile flags for SQL Read Replicas
Some checks are pending
trivy / Check (push) Waiting to run
2024-08-20 17:27:03 +02:00
mdecimus
0b91feffad Live tracing + Tracing history 2024-08-20 17:01:36 +02:00
mdecimus
ec23236b06 Include Forwarded-For IP address in http.request-url event (closes #682) 2024-08-17 17:29:15 +02:00
mdecimus
79297c37b0 Fixed read replicas
Some checks are pending
trivy / Check (push) Waiting to run
2024-08-14 20:00:24 +02:00
mdecimus
e2eb851bfc Add sql replicas to stores 2024-08-14 19:26:21 +02:00
mdecimus
d5f356ae6f Do not create tables when using SQL as an external directory (fixes #291)
Some checks are pending
trivy / Check (push) Waiting to run
2024-08-14 18:54:36 +02:00
mdecimus
349bbbbe05 Do not create tables when using SQL as an external directory (fixes #291) 2024-08-14 18:54:30 +02:00
mdecimus
abd318b678 Message delivery history + Live tracing 💎 2024-08-14 17:29:42 +02:00
mdecimus
be656ddd0c Retry logic for SQL read replicas
Some checks are pending
trivy / Check (push) Waiting to run
2024-08-13 17:17:38 +02:00
mdecimus
6b92961c36 SQL Read replicas and Distributed blob storage 💎 (closes #441)
Some checks failed
trivy / Check (push) Has been cancelled
2024-08-11 19:30:00 +02:00
mdecimus
f957cbb60f Replace lazy_static and OnceLock with LazyLock 2024-08-09 15:38:19 +02:00
mdecimus
db0efdaf59 v0.9.1 2024-08-08 12:50:00 +02:00
mdecimus
a3284b8bc3 Metrics collector 2024-08-06 19:23:02 +02:00
mdecimus
b0d1561554 Add options setting to PostgreSQL driver (closes #662) 2024-08-06 08:41:05 +02:00
mdecimus
5a43455917 Tracing macro improvements 2024-08-03 20:10:01 +02:00
mdecimus
3cb8918d2e v0.9.0 2024-08-01 17:09:39 +02:00
mdecimus
ed214fd087 Journald tracer reimplementation 2024-08-01 10:42:46 +02:00
mdecimus
a45eb50231 Improved tracing (part 4) 2024-07-28 15:21:22 +02:00
mdecimus
ae7cadc27d Improved tracing (part 1) 2024-07-23 12:44:14 +02:00
mdecimus
9c23774aa5 Lock-free fast tracing (closes #180) 2024-07-22 17:56:24 +02:00
mdecimus
d48523583b Improved error handling (part 4) 2024-07-18 20:04:09 +02:00
mdecimus
d2ad44cf9f Improved error handling (part 3) 2024-07-17 18:33:22 +02:00
mdecimus
0c2a3f09fe Improved error handling (part 1) 2024-07-11 18:44:51 +02:00
William Desportes
4164598ac2
Fix mysql feature also needs futures (#598) 2024-07-08 15:26:31 +02:00
mdecimus
14224c5ee0 Undelete emails 💎 (closes #589) 2024-07-07 16:44:37 +02:00
mdecimus
56ca136aa6 Refresh old FoundationDB read transactions (code cleanup) 2024-07-05 20:17:09 +02:00
mdecimus
b53c3d120e Refresh old FoundationDB read transactions (closes #520) 2024-07-05 20:09:17 +02:00
mdecimus
ec2cfc2fcd Bump to rustls 0.23 2024-07-03 15:14:50 +02:00
mdecimus
dacd8b384e v0.8.3 2024-06-30 09:46:30 +02:00
mdecimus
50a2f50e58 REUSE-compliant licensing 2024-06-25 19:57:25 +02:00
mdecimus
a1aa12f165 Bump to rust-s3 0.3.5-alpha to avoid 0.34 compile issue 2024-06-22 17:30:11 +02:00
mdecimus
0b46ec5808 Renamed jmilters to hooks 2024-06-21 17:05:14 +02:00
mdecimus
68a189ed9f Webhooks implementation (closes #480 closes #233) 2024-06-20 19:11:15 +02:00
mdecimus
f930cf59ef Incoming reports stored in the wrong subspace (fixes #543) 2024-06-18 12:44:22 +02:00
mdecimus
4e7087d335 Run Sieve scripts in async context 2024-05-24 10:32:41 +02:00
mdecimus
46076c6f20 v0.8.1 2024-05-23 16:32:47 +02:00
mdecimus
66cc0a3072 Faster email deletion, Junk/Trash folder auto-expunge and changelog auto-expiry (closes #403) 2024-05-19 12:15:35 +02:00