Commit Graph

333 Commits

Author SHA1 Message Date
Adrià Casajús 451e69a3c4
More rebase fixes 2022-03-30 16:09:17 +02:00
Adrià Casajús db06ce0ae6
Create signed email addresses for VERP emails 2022-03-30 16:00:02 +02:00
Adrià Casajús 085c166cb2
Replace 5XX with 2XX for return path that fail SPF check 2022-03-29 15:09:10 +02:00
Son 63b1100a8b log event when there's no dmarc result 2022-03-25 16:19:11 +01:00
Son ce2d2a3b3a fix case where header isn't string 2022-03-25 16:17:58 +01:00
Son Nguyen Kim 99b05034b0
Merge pull request #843 from acasajus/new/parse-rpamd-headers
Parse rspamd headers and apply dmarc policy if found.
2022-03-22 17:13:11 +01:00
Son 5b3688b6df set a domain for message-id 2022-03-22 11:02:02 +01:00
Adrià Casajús 5f831d593a
CamelCase to snake_case 2022-03-21 17:59:43 +01:00
Son f554375f23 decode, replace and encode for base64 encoding 2022-03-21 17:29:22 +01:00
Adrià Casajús 06a1363e92
Updated MR comments 2022-03-21 12:03:11 +01:00
Adrià Casajús cdea0f5ee2
Rename header 2022-03-21 10:43:19 +01:00
Adrià Casajús c9cbaeb460
format 2022-03-21 10:43:17 +01:00
Adrià Casajús e8013f8e0c
Initial parse of rpamd extra headers 2022-03-21 10:43:17 +01:00
Son fa2f83dbf4 fix and refactor 2022-03-16 10:24:59 +01:00
Son 7e0992b767 add mime version header for transactional email 2022-03-14 19:23:38 +01:00
Son 350f498b94 lessen alias automatic disable check 2022-03-07 15:50:58 +01:00
Son 71136669e9 return the block reason in should_disable() 2022-03-07 15:44:27 +01:00
Adrià Casajús 33163660f7
PR comments 2022-02-21 12:30:26 +01:00
Adrià Casajús b0ac2f871a
Fixes 2022-02-17 13:21:40 +01:00
Adrià Casajús 398c1a55f1
Change SUPPORT_EMAIL to NOREPLY 2022-02-17 13:18:52 +01:00
george c415324932
Add flake8-bugbear 2022-02-06 20:37:43 +00:00
Son 049bd746ad refactor shell 2022-01-26 15:22:37 +01:00
george ab72927a16
Update text. 2022-01-20 18:24:28 +00:00
george 50122da0fe
Implement API notifications and use a function in email_utils 2022-01-20 17:42:11 +00:00
Son c0067b7657 add more log 2022-01-10 15:58:22 +01:00
Son c5e4dd6d16 save email for debug with error name as prefix 2022-01-08 16:58:23 +01:00
Son 20b6ce29fc take into account authorized_address when checking email loop 2022-01-08 00:09:45 +01:00
Son 325207d6ba Use InvalidMailboxDomain instead of DISPOSABLE_EMAIL_DOMAINS 2022-01-03 10:33:21 +01:00
Son 34118f459a ignore smtp error in send_trial_end_soon_email() 2022-01-03 09:59:52 +01:00
Son 558200113c remove unnecessary code in send_email() 2022-01-01 11:47:45 +01:00
Son 22cf8cfe38 send Custom/smtp_connection_time to newrelic 2021-12-30 14:17:46 +01:00
Son c5185eddf3 Revert "log "Custom/smtp_connection_time" metric in newrelic"
This reverts commit 378bad6253.
2021-12-30 11:55:48 +01:00
Son 378bad6253 log "Custom/smtp_connection_time" metric in newrelic 2021-12-30 11:46:01 +01:00
Son a64968f6e5 consider utf-8 email encoding as no encoding 2021-12-30 11:36:52 +01:00
Son b3469ba9d4 log how much time to get a smtp connection 2021-12-30 11:28:50 +01:00
Son c14a7b4f7a use with ... for smtp 2021-12-29 17:09:24 +01:00
Son f439e39580 cache smtp server and remove POSTFIX_PORT_FORWARD 2021-12-29 16:26:37 +01:00
Son b9e2a79933 enable email sending retry in cron job 2021-12-28 16:42:01 +01:00
Son 24a392818b sl_sendmail tries by default 2 times before giving up: replace can_retry by retries 2021-12-27 17:03:44 +01:00
Son 2cf1c4143a reduce sleep time between sl_sendmail failure 2021-12-27 17:00:11 +01:00
Son 544df7034d do not retry sending email in send_email() 2021-12-16 21:31:01 +01:00
Son 75d6b1dab5 add more logging 2021-12-16 15:09:15 +01:00
Son 64c6ef2cbe retry when SMTPRecipientsRefused too 2021-12-16 15:06:26 +01:00
Son a142a430d2 use sl_sendmail instead of smtp.sendmail 2021-12-16 10:32:10 +01:00
Son 6d1b6720cf set content_type for plain text message 2021-11-25 10:34:59 +01:00
Son dd6e265aa0 add RSPAMD_SIGN_DKIM and add "X-SimpleLogin-Want-Signing" header 2021-11-25 10:34:42 +01:00
Son 9c27f94e8e return only bounce report that can be decoded 2021-11-17 10:54:17 +01:00
Son 383f633e41 fix active_page 2021-11-05 18:33:14 +01:00
Son f8b6b20dd8 not create html in send_email if html isn't set 2021-11-04 14:27:33 +01:00
Son b50f1d60b2 refactor: create headers constants for List-Unsubscribe 2021-11-02 14:36:37 +01:00
Son 52a19818b7 save email whose bounce info can't be parsed for debugging 2021-11-02 14:32:16 +01:00
Son 2691fff217 handle UnicodeDecodeError in replace() 2021-11-01 10:11:36 +01:00
Son d701b84110 decode and encode email payload for quoted-printable email in replace() 2021-10-25 14:34:13 +02:00
Son 8680c0a739 do do not use the ra+ prefix for reverse alias 2021-10-25 14:33:42 +02:00
Son 9299904fc9 small refactor 2021-10-24 10:40:05 +02:00
Son 5843fa94a0 handle encoding typo 2021-10-19 18:05:56 +02:00
Son 421c121d59 black 2021-10-19 14:03:51 +02:00
Son be7ae3021a rename is_reply_email -> is_reverse_alias, make sure reverse-alias must end with EMAIL_DOMAIN 2021-10-19 12:14:16 +02:00
Son d6edd59450 use warning level 2021-10-18 09:55:28 +02:00
Son 0b06c46f65 handle missing content-transfer-encoding 2021-10-17 17:19:44 +02:00
Son 283a6a530d handle case address.parse can also parse an URL and return UrlAddress 2021-10-17 12:52:59 +02:00
Son 3bdeda3e04 add get_mailbox_bounce_info() 2021-10-14 15:10:16 +02:00
Son 372466ab06 do not use flask-sqlalchemy
- add __tablename__ for all models
- use sa and orm instead of db
- rollback all changes in tests
- remove session in @app.teardown_appcontext
2021-10-12 14:36:47 +02:00
Son 5821294ae9 refactor: use headers.py 2021-10-11 12:10:18 +02:00
Son Nguyen Kim 8301015afd do not use email_validator in get_email_domain_part() 2021-09-27 12:13:41 +02:00
Son Nguyen Kim 51a7dbfa52 Revert "not dkim sign"
This reverts commit b14534db2c.
2021-09-25 18:47:15 +02:00
Son Nguyen Kim b14534db2c not dkim sign 2021-09-23 19:32:06 +02:00
Son Nguyen Kim 0ed0ac9ea7 handle "text/x-python-script" in replace() 2021-09-23 09:19:07 +02:00
Son Nguyen Kim 8024b35f1d refactor 2021-09-21 14:11:59 +02:00
Son Nguyen Kim d8280af93c refactor: rename 2021-09-21 14:09:24 +02:00
Son Nguyen Kim d9d67df126 remove unique constraint on TransactionalEmail.email 2021-09-21 11:15:40 +02:00
Son Nguyen Kim 1d09d76cb2 use re2 instead of re to avoid ReDOS attack 2021-09-21 10:57:36 +02:00
Son Nguyen Kim 17c13ee37f ignore smtp error in handle_bounce_forward_phase() 2021-09-20 13:51:16 +02:00
Son Nguyen Kim cbc20dd268 remove unused import 2021-09-18 19:19:17 +02:00
Son 9b89d7cc5d update package 2021-09-18 18:48:31 +02:00
Son ec2812bfa4 handle invalid email in email_can_be_used_as_mailbox 2021-09-18 18:46:26 +02:00
Son Nguyen Kim 8b676bc4af not disable alias if ALIAS_AUTOMATIC_DISABLE is not set 2021-09-17 18:05:35 +02:00
Son Nguyen Kim a6c874e914 Use validate_email in get_email_local_part and get_email_domain_part 2021-09-17 17:42:52 +02:00
Son Nguyen Kim 695a628e68 save email that can't be DKIM signed to temp dir to investigate 2021-09-15 09:29:08 +02:00
Son Nguyen Kim 567bee9a0b add exception trace when dkim fails 2021-09-14 09:13:39 +02:00
Son Nguyen Kim e4ed192cce rename 2021-09-13 19:50:15 +02:00
Son Nguyen Kim 106358da5f handle yahoo complaint 2021-09-13 19:49:40 +02:00
Son Nguyen Kim b3012376c3 use another DKIM header if one fails 2021-09-13 16:04:32 +02:00
Son Nguyen Kim 41478a5715 replace parseaddr_unicode by parse_full_address 2021-09-10 17:26:14 +02:00
Son Nguyen Kim 8023afe9be use email_validator instead of validate_email which isn't updated for a while 2021-09-10 16:42:02 +02:00
Son Nguyen Kim 6b65e00dcf install flanker, upgrade email_validator 2021-09-10 16:36:59 +02:00
Son Nguyen Kim defd7b159d Fix get_header_unicode: handle the case header contains several parts 2021-09-09 11:47:01 +02:00
Son Nguyen Kim 4df83f953d handle utf-8 decoding fail 2021-09-08 15:17:11 +02:00
Son Nguyen Kim 5ac78f2694 reformat 2021-09-08 11:29:55 +02:00
Son Nguyen Kim b53da25a41 handle hotmail complaint 2021-09-06 19:44:18 +02:00
Son Nguyen Kim bae9a6f431 flake8 2021-08-20 16:09:22 +02:00
Son Nguyen Kim 76c1b3d807 use deepcopy instead of email.message_from_string in copy() 2021-08-20 16:03:22 +02:00
Son Nguyen Kim fb29503b81 do not send bounce to IgnoreBounceSender 2021-08-02 11:33:58 +02:00
Son Nguyen Kim 383cd49f25 fix year copyright in email 2021-07-30 17:05:16 +02:00
Son Nguyen Kim 189eb8427e speed up should_disable() 2021-07-14 12:25:44 +02:00
Son Nguyen Kim e26287a4c7 Revert "disable should_disable() for now"
This reverts commit fb88654d84.
2021-07-14 12:23:02 +02:00
Son Nguyen Kim fb88654d84 disable should_disable() for now 2021-07-13 17:24:28 +02:00
Son 93991816c9 fix "Received" header is not str 2021-06-17 23:02:25 +02:00
Son NK 79d0ef8906 Use Postfix queue-id as log message-id 2021-06-04 17:15:59 +02:00
Son NK 2f96322977 make sure BOUNCE_PREFIX_FOR_REPLY_PHASE can't be used as directory name or for creating aliases on-the-fly 2021-05-25 17:59:40 +02:00