summaryrefslogtreecommitdiff
path: root/src/leap/mx/mail_receiver.py
AgeCommit message (Collapse)Author
2017-09-02[feature] add support for soledad incoming apiVictor Shyba
-- Related: #8664
2017-06-27[pkg] vendor pgpy 0.4.1Kali Kaneko
2017-06-27[feat] use PGPy instead of leap.keymanager to encryptRuben Pollan
In PGPy 0.4.0 keys are not accepted if they have empty lines before the ascii armored text. I addapt the tests around that for now. This is fixed already in PGPy repo, so it will not be an issue in comming releases. - Resolves: #8558, #8663
2017-05-26[bug] check if key is expiredRuben Pollan
For expired keys gnupg will not allow us to encrypt (to force it we'll need to fake the system date). Let's bounce the email properly in this case, and register the error. Make sure as well that _encrypt_message does not return None, let's raise exceptions in case of failure. - Related: #8663
2017-01-27[style] pep8 fixesdrebs
2017-01-27Returns doc as None if we have some error during the encryptionThais Siqueira
When we had an error during encryption, the doc property "_enc_json" was empty and we were saving this empty data on CouchDb. Then it was causing the [GNUPG:] NODATA 2 error during decryption. Related with: https://github.com/pixelated/pixelated-user-agent/issues/908 with @tayanefernandes
2016-04-14[feature] Bounce stalled emails after a timeout.Ruben Pollan
* Resolves: #7998
2016-04-07[style] remove unused codeRuben Pollan
2015-12-09[feat] use the original message for encryptionRuben Pollan
Do not reconstruct the message from the parsed one. Added test for missleading encoding. - Resolves: #7253
2015-11-23[feat] add '@deliver.local' to uuidRuben Pollan
- Resolves: #5959
2015-11-12[feat] update leap.mx usage of soledad CouchDatabaseRuben Pollan
- Related: #7565
2015-09-15[test] add test infrastructureRuben Pollan
Some refactor on the couchdb usage was needed to be able to mock couchdb. - Resolves: #7435
2015-09-11[feat] Don't add any X-Leap-Provenance headerRuben Pollan
- Resolves: #7439
2015-04-20[bug] implement message bouncing according to RFCsdrebs
If we do not adhere to the standads, we may have a lot of problems when bouncing a message. This commit implements a bounce message according to: * RFC 6522 - The Multipart/Report Media Type for the Reporting of Mail System Administrative Messages * RFC 3834 - Do not bounce for unknown or invalid addresses. * RFC 3464 - An Extensible Message Format for Delivery Status Notification. Closes: #6858.
2015-04-16[bug] fix extraction of uuid from message headersdrebs
Before this commit, the mail receiver system used to compare the domain of the delivery addresses found in the "Delivered-To" header to find out the final delivery address. If we assume that the mail server delivery to the spool mail directory was correct, then we have two facts: (1) the topmost "Delivered-To" header is the one that indicates the correct final delivery address; and (2) we should expect the address to be <uuid>@<domain> because of the earlier alias resolve query made by the mail server. Another problem is that the domain comparison would compare whatever is in the "Delivered-To" header with whatever the python's socket module would return, which depends on the values on /etc/hosts and the order of the values in that file. This was causing problems whenever the platform made changes in /etc/hosts. So this commit eliminates the domain check and gets the uuid from the first "Delivered-To" header found in the message. Related: #6858.
2015-04-16[bug] return uuid as result of alias resolverdrebs
This fixes a bug introduced on b0ef529cc882a96903597fb5279919969fa286c3, when the alias resolver was modified to return the user's address instead of the uuid. In order to fix this, I had to revert one of the changes made by the commit above, which is to don't make use of reduced view for the uuid query. The pgp public key query remains reduced, as implemented in the commit above. We also refactor the code a bit to allow for log messages specific to each of tcp map's sublasses. Related: #6858.
2015-04-13[bug] fix bounce message recipientdrebs
The bounce message was using the original message's "From:" header instead of the "To:" header to indicate the original recipient. This commit fixes that. Closes: #6854. Releases: 0.6.2, 0.7.0
2015-03-25[bug] correctly return async bouncer deferreddrebs
2015-02-06Retry watching dirs if failed for some reason (closes #6687).drebs
2015-02-05Add ability to trigger processing on SIGUSR1 (Related: #2591)Kali Kaneko
2015-02-05Process unprocessed mail when MX starts (closes #2591).drebs
2014-12-22Use gpg key directlyRuben Pollan
_build_key_from_gpg in keymanager has changed
2014-09-12Add errdecr key to each mail Soledad DocumentTomás Touceda
2014-09-11Implement mail bouncing under certain problematic situationsTomás Touceda
2013-12-19Merge remote-tracking branch ↵Tomás Touceda
'refs/remotes/drebs/bug/4475_use-couch-document' into develop Conflicts: src/leap/mx/mail_receiver.py
2013-12-17Ignore encoding, use message.as_string directly.Tomás Touceda
The message is already in str type, so we don't care about encoding. json.dumps will ignore convertion.
2013-12-16Use CouchDocument from new backend (#4475).drebs
2013-12-05Fix deadlock situation if adding a skipped mail failsTomás Touceda
2013-11-25Add X-Leap-Provenance header. Closes #4356.drebs
2013-11-08Implement processing skipped mail regularlyTomás Touceda
2013-11-07Refactor mail processing routineTomás Touceda
2013-11-07Use inline defers for more readable codeTomás Touceda
2013-10-31Improve logging to better support unicodeTomás Touceda
Also add some files I forgot to add in a different feature branch.
2013-10-31Pick correct recipient and encodingTomás Touceda
2013-10-28Make the mail received callback more robust and add support for mlTomás Touceda
2013-10-28Support any encoding in the emailsTomás Touceda
2013-10-15pep8 and sphinx formatKali Kaneko
2013-09-04Merge remote-tracking branch 'chiiph/bug/properly_parse_addr' into developKali Kaneko
2013-08-31Properly parse mail addressTomás Touceda
2013-08-30Merge remote-tracking branch 'chiiph/bug/keep_watcher_in_memory' into developKali Kaneko
2013-08-30Keep file watcher in memory to prevent losing file eventsTomás Touceda
2013-08-29Actually save the doc in couchTomás Touceda
2013-08-21Merge remote-tracking branch ↵Tomás Touceda
'drebs/feature/3487-split-soledad-into-common-client-and-server' into develop Conflicts: src/leap/mx/mail_receiver.py
2013-08-20Migrate mx to work with the new couchdb structure and viewsTomás Touceda
2013-08-19Update to new soledad package scheme.drebs
2013-08-08Update to latest keymanager API and support bundled GPG.drebs
2013-07-31Use the new API to import ascii armored keyTomás Touceda
2013-07-04Update to latest Soledad api.drebs
2013-05-03Add setup script and init.d scriptTomas Touceda
Also, some pep8 fixes
2013-05-03Use the new naming for the soledad document jsonTomas Touceda