Son NK
|
8d65175ac5
|
set mailbox ID in X-SimpleLogin-Mailbox-ID header
|
2020-05-10 20:09:54 +02:00 |
|
Son NK
|
97e1c334af
|
call strip() on rcpt_to just to be sure
|
2020-05-10 20:09:54 +02:00 |
|
Son NK
|
4b479defa8
|
Support alias having multiple mailboxes in forward phase
|
2020-05-10 20:09:54 +02:00 |
|
Son NK
|
7f6ba313fd
|
add strip() to rcpt_to just in case
|
2020-05-10 20:09:54 +02:00 |
|
Son NK
|
2755e67c31
|
simplify code: replace mailbox_email by mailbox.email
|
2020-05-10 20:09:54 +02:00 |
|
Son NK
|
59036972f1
|
refactor handle_forward: move the disabled alias case to the beginning
|
2020-05-10 20:09:54 +02:00 |
|
Son NK
|
b5e7f05bfc
|
allow user sends emails to his alias from his mailbox
|
2020-05-10 20:09:54 +02:00 |
|
Son NK
|
f59ccd4018
|
optimize import email_handler
|
2020-05-10 20:09:54 +02:00 |
|
Son NK
|
9ddb8ff2d4
|
add more info to spf alert email. Set the max number of emails per 24h to 1
|
2020-05-10 10:37:56 +02:00 |
|
Son NK
|
a48f7db599
|
refactor: create handle_unknown_mailbox()
|
2020-05-09 23:12:30 +02:00 |
|
Son NK
|
9234527ea6
|
refactor: put spf handling into a method
|
2020-05-09 23:09:11 +02:00 |
|
Son NK
|
178515dbde
|
alert user when spf fails
|
2020-05-09 23:00:30 +02:00 |
|
Son NK
|
c6e293ef8e
|
small refactor
|
2020-05-09 22:54:55 +02:00 |
|
Son NK
|
7833d4609f
|
Use send_email_with_rate_control when alerting user
|
2020-05-09 20:45:04 +02:00 |
|
Son NK
|
e84e4d50c7
|
add logging
|
2020-05-09 17:48:57 +02:00 |
|
Son NK
|
0add756654
|
make sure SPF exception does not stop reply-phase
|
2020-05-09 17:34:49 +02:00 |
|
Son NK
|
7654992fc2
|
refactoring: replace "X-SimpleLogin-Client-IP" by constant
|
2020-05-09 17:31:37 +02:00 |
|
Son NK
|
bd68a52158
|
make sure to remove "X-SimpleLogin-Client-IP" during forward
|
2020-05-09 17:30:21 +02:00 |
|
Son NK
|
5ec0ea5f6c
|
Report error when SPF fails on emails sent from mailbox. Return 451 instead of 550 to avoid bounce emails.
|
2020-05-09 14:52:39 +02:00 |
|
Sibren Vasse
|
001079bdc5
|
Enforce SPF
|
2020-05-09 14:15:08 +02:00 |
|
Sibren Vasse
|
0e4799030d
|
Add default alias name to custom domain
|
2020-05-03 19:35:02 +02:00 |
|
Son NK
|
ba081a597a
|
Fix: do not use spam check on disabled alias
|
2020-04-27 18:18:40 +02:00 |
|
Son NK
|
3063fee472
|
Use alias name in reply phase
|
2020-04-26 10:41:24 +02:00 |
|
Son NK
|
0f71eff531
|
handle the case some email providers might strip off the = suffix
|
2020-04-24 09:09:11 +02:00 |
|
Son NK
|
703d9385b5
|
Fix "Content-Transfer-Encoding" issue when encrypting emails
|
2020-04-14 20:49:48 +02:00 |
|
Son NK
|
6cfd534192
|
Add LOAD_PGP_EMAIL_HANDLER param. Load PGP keys if LOAD_PGP_EMAIL_HANDLER is set
|
2020-04-14 12:46:12 +02:00 |
|
Son NK
|
ed76a8ae8d
|
reformat
|
2020-04-13 20:51:29 +02:00 |
|
Son NK
|
6a617ceeea
|
Add custom error code for 550 SL error
|
2020-04-13 19:33:45 +02:00 |
|
Son NK
|
f3244eb274
|
force convert contact_from_header to string
|
2020-04-05 15:42:09 +02:00 |
|
Son NK
|
2619333cc6
|
remove uses of website_from
|
2020-04-05 15:39:48 +02:00 |
|
Son NK
|
18844b7011
|
use full email header in replace_header_when_reply
|
2020-04-05 15:27:35 +02:00 |
|
Son NK
|
f78e790b71
|
set contact name in get_or_create_contact, use contact.new_addrs in replace_header_when_forward
|
2020-04-05 15:24:09 +02:00 |
|
Son NK
|
b01533e9ac
|
Update contact name in forward phase
|
2020-04-05 14:50:12 +02:00 |
|
Son NK
|
a7eefe8232
|
rename
|
2020-04-05 12:59:36 +02:00 |
|
Son NK
|
3a845af2fa
|
use website_email instead of website_from in spam-email
|
2020-04-05 12:00:01 +02:00 |
|
Son NK
|
a081298756
|
use website_email instead of website_from in bounce-email
|
2020-04-05 11:59:24 +02:00 |
|
Son NK
|
b2f22db9f6
|
use website_email instead of website_from for automatic-disable-alias email
|
2020-04-05 11:58:13 +02:00 |
|
Son NK
|
c163bdc14f
|
use warning for grey listing
|
2020-04-04 21:59:42 +02:00 |
|
Son NK
|
0657f3dbc2
|
rename
|
2020-04-04 20:06:35 +02:00 |
|
Son NK
|
f7e5ab1e34
|
reaname
|
2020-04-04 19:21:31 +02:00 |
|
Son NK
|
eab45beef2
|
Use error level when greylisting happens
|
2020-04-04 18:07:22 +02:00 |
|
Son NK
|
8caebc0142
|
Return 421 when there's too much activity on an alias or mailbox
|
2020-04-04 16:27:22 +02:00 |
|
Son NK
|
661547ec3a
|
refactor: avoid calling "with app.app_context()" all the time
|
2020-04-04 16:09:24 +02:00 |
|
Son NK
|
c1f5c07d86
|
Move alias auto-creation to alias_utils
|
2020-04-04 15:24:27 +02:00 |
|
Son NK
|
27d048f70b
|
add send-from-alias-from-unknown-sender template in html
|
2020-04-03 23:39:07 +02:00 |
|
Son NK
|
3550447a66
|
use BytesIO as input when encrypting
|
2020-04-02 21:30:36 +02:00 |
|
Son NK
|
ed8caa237a
|
use email.message_from_bytes instead of Parser(policy=SMTPUTF8).parsestr
|
2020-04-02 21:30:36 +02:00 |
|
Son NK
|
55b1ce2067
|
use a different s3 folder for spams
|
2020-04-02 21:30:36 +02:00 |
|
Son NK
|
55190ff358
|
use msg.as_bytes() instead of msg.as_string().encode()
|
2020-04-02 21:30:36 +02:00 |
|
Son NK
|
0517fcfd48
|
Remove the X-Sender during the reply phase
|
2020-04-01 20:33:27 +02:00 |
|
Son NK
|
c8ba6e8013
|
Special handling for self-forward case
|
2020-04-01 20:32:26 +02:00 |
|
Son NK
|
62e028c30f
|
Remove the workaround
|
2020-03-31 22:19:15 +02:00 |
|
Son NK
|
f34c1f555f
|
quick workaround for prod
|
2020-03-30 22:37:41 +02:00 |
|
Son NK
|
3925ebce1e
|
reformat
|
2020-03-30 22:12:35 +02:00 |
|
Son NK
|
bb12b35d2c
|
delete "Received" header in reply phase
|
2020-03-30 22:05:51 +02:00 |
|
Son NK
|
9500cc6cee
|
Take into account spamassassin spam report
|
2020-03-30 22:05:31 +02:00 |
|
Son NK
|
33a80236d3
|
Handle the case the msg is sent from the mailbox to alias. Happen when reply-all
|
2020-03-30 22:02:22 +02:00 |
|
Son NK
|
ca5e3ac477
|
Refactoring: better naming
|
2020-03-30 21:46:52 +02:00 |
|
Son NK
|
019f5307c9
|
Always replace To and Cc header in reply phase
|
2020-03-30 21:45:18 +02:00 |
|
Son NK
|
59a336f5cd
|
use warning level for bounce log message
|
2020-03-29 23:13:12 +02:00 |
|
Son NK
|
da6441b4b8
|
Handle on-click unsubcribe
|
2020-03-28 23:19:25 +01:00 |
|
Son NK
|
7f49312255
|
use user preferred sender format
|
2020-03-28 22:37:00 +01:00 |
|
Son NK
|
5771eaeb63
|
Handle multiple rcpt_to
|
2020-03-28 21:24:43 +01:00 |
|
Son NK
|
e9cd043760
|
do not put alias again when reply all
|
2020-03-28 21:20:59 +01:00 |
|
Son NK
|
aa3a13c3ca
|
Replace To or CC header when forward/reply
|
2020-03-28 19:16:55 +01:00 |
|
Son NK
|
fee69d9546
|
refactor: create generate_reply_email()
|
2020-03-28 11:12:20 +01:00 |
|
Son NK
|
f10d18c020
|
Add SL prefix to 550 to facilitate search
|
2020-03-28 11:05:14 +01:00 |
|
Son NK
|
9afcae534b
|
return 550 instead of 510 when alias not exist
|
2020-03-28 11:04:58 +01:00 |
|
Son NK
|
0c43c2dd45
|
reformat: rename website -> contact whenever possible
|
2020-03-26 11:19:20 +01:00 |
|
Son NK
|
c521052042
|
use {website_email} via SimpleLogin FROM header
|
2020-03-26 11:15:18 +01:00 |
|
Son NK
|
bc3a3dae02
|
reformat
|
2020-03-22 16:56:08 +01:00 |
|
Son NK
|
86ef7f54d9
|
RefusedEmail.path can be null
|
2020-03-22 16:51:21 +01:00 |
|
Son NK
|
22ac3fa153
|
strip from/to header
|
2020-03-22 14:21:19 +01:00 |
|
Son NK
|
7f5f3e68ba
|
make sure to set user_id when creating EmailLog
|
2020-03-20 09:55:52 +01:00 |
|
Son NK
|
6e54b4fed8
|
make sure to set user_id when creating contact
|
2020-03-20 09:54:38 +01:00 |
|
Son NK
|
8ce9d56e84
|
only premium user can encrypt emails with PGP
|
2020-03-19 19:19:04 +01:00 |
|
Son NK
|
c6138828c2
|
fix to_header
|
2020-03-19 11:33:21 +01:00 |
|
Son NK
|
ca4f02426c
|
fix alias != address
|
2020-03-19 11:15:02 +01:00 |
|
Son NK
|
4a2523d20e
|
refactor handle_bounce
|
2020-03-17 12:12:11 +01:00 |
|
Son NK
|
a597fb3832
|
fix should_append_alias
|
2020-03-17 12:10:13 +01:00 |
|
Son NK
|
2d90d35647
|
rename gen_email_id -> alias_id
|
2020-03-17 12:01:18 +01:00 |
|
Son NK
|
4f281bdbbb
|
rename GenEmail -> Alias, gen_email to alias whenever possible
|
2020-03-17 11:51:40 +01:00 |
|
Son NK
|
bea870ef8b
|
rename ForwardEmailLog to EmailLog
|
2020-03-17 11:10:50 +01:00 |
|
Son NK
|
f2d630e597
|
rename forward_id to contact_id
|
2020-03-17 11:05:53 +01:00 |
|
Son NK
|
17974de746
|
rename ForwardEmail to Contact
|
2020-03-17 10:56:59 +01:00 |
|
Son NK
|
027cbb10d9
|
use parseaddr instead of get_email_part
|
2020-03-15 22:32:48 +01:00 |
|
Son NK
|
6b6fca2281
|
use email.utils.parseaddr and formataddr instead of get_email_name
|
2020-03-15 22:29:53 +01:00 |
|
Son NK
|
b19be41a5e
|
Support download email file in browser
|
2020-03-15 18:39:59 +01:00 |
|
Son NK
|
b3977e5efd
|
reformat
|
2020-03-15 12:26:35 +01:00 |
|
Son NK
|
9cdf766825
|
Send refused email notif to user email instead of mailbox
|
2020-03-15 12:15:11 +01:00 |
|
Son NK
|
0525e5822a
|
Not include original email in automatic disable alias email
|
2020-03-15 10:50:46 +01:00 |
|
Son NK
|
5db92b049d
|
Inform refused email to mailbox
|
2020-03-14 23:00:33 +01:00 |
|
Son NK
|
69198ff08a
|
delete all unnecessary headers in PGP
|
2020-03-14 22:24:02 +01:00 |
|
Son NK
|
0bb9830680
|
Store the bounced email in email handling.
|
2020-03-14 16:34:23 +01:00 |
|
Son NK
|
e713efee98
|
reformat
|
2020-03-13 10:34:41 +01:00 |
|
Son NK
|
be9d2cdbe3
|
delete sender header
|
2020-03-13 10:34:02 +01:00 |
|
Son NK
|
5674cab390
|
fix KeyError exception: use add_or_replace_header instead of msg.replace_header
|
2020-03-10 09:56:47 +01:00 |
|
Son NK
|
1f370abf4d
|
Merge branch 'master' into staging
|
2020-03-09 13:35:42 +01:00 |
|
Son NK
|
cdea0e08ce
|
improve logging
|
2020-03-09 08:45:16 +01:00 |
|
Son NK
|
612e4f6717
|
encrypt forwarded emails to gpg-enabled mailbox
|
2020-03-08 23:07:23 +01:00 |
|