mox/webmail
Mechiel Lukkien 1f9b640d9a
add faq for smtp smuggling, fix bug around handling "\nX\n" for any X, reject bare carriage returns and possibly smtp-smuggling attempts
mox was already strict in its "\r\n.\r\n" handling for end-of-message in an
smtp transaction.

due to a mostly unrelated bug, sequences of "\nX\n", including "\n.\n" were
rejected with a "local processing error".

the sequence "\r\n.\n" dropped the dot, not necessarily a big problem, this is
unlikely to happen in a legimate transaction and the behaviour not
unreasonable.

we take this opportunity to reject all bare \r.  we detect all slightly
incorrect combinations of "\r\n.\r\n" with an error mentioning smtp smuggling,
in part to appease the tools checking for it.

smtp errors are 500 "bad syntax", and mention smtp smuggling.
2024-01-01 20:11:16 +01:00
..
api.go add faq for smtp smuggling, fix bug around handling "\nX\n" for any X, reject bare carriage returns and possibly smtp-smuggling attempts 2024-01-01 20:11:16 +01:00
api.json add more documentation, examples with tests to illustrate reusable components 2023-12-14 20:20:17 +01:00
api.ts add more documentation, examples with tests to illustrate reusable components 2023-12-14 20:20:17 +01:00
api_test.go switch to slog.Logger for logging, for easier reuse of packages by external software 2023-12-14 13:45:52 +01:00
eventwriter.go switch to slog.Logger for logging, for easier reuse of packages by external software 2023-12-14 13:45:52 +01:00
lib.ts change javascript into typescript for webaccount and webadmin interface 2023-12-31 12:05:31 +01:00
message.go expose fewer internals in packages, for easier software reuse 2023-12-14 15:39:36 +01:00
message_test.go when making a message preview, also recognize []-enclosed "horizontal ellipsis" unicode character as a snip 2023-09-11 14:41:50 +02:00
msg.html webmail: ensure wrap of long header lines, instead of horizontal scrollbar in message header section 2023-10-12 22:08:13 +02:00
msg.js webmail/*.ts needed rebuild after changing tcs.sh to target es2022 2024-01-01 14:13:05 +01:00
msg.ts webmail: for long to/cc/bcc address list (>5) show the first 4 and a button to show the rest 2023-11-20 21:36:40 +01:00
text.html add webmail 2023-08-07 21:57:03 +02:00
text.js webmail/*.ts needed rebuild after changing tcs.sh to target es2022 2024-01-01 14:13:05 +01:00
text.ts add webmail 2023-08-07 21:57:03 +02:00
view.go change javascript into typescript for webaccount and webadmin interface 2023-12-31 12:05:31 +01:00
view_test.go switch to slog.Logger for logging, for easier reuse of packages by external software 2023-12-14 13:45:52 +01:00
webmail.go change javascript into typescript for webaccount and webadmin interface 2023-12-31 12:05:31 +01:00
webmail.html webmail: autoresize address input field in compose window 2023-10-15 10:53:57 +02:00
webmail.js webmail: moxVersion was too similar to moxversion, choose better name 2024-01-01 14:51:17 +01:00
webmail.ts webmail: moxVersion was too similar to moxversion, choose better name 2024-01-01 14:51:17 +01:00
webmail_test.go switch to slog.Logger for logging, for easier reuse of packages by external software 2023-12-14 13:45:52 +01:00