Commit Graph
1159 Commits
Author SHA1 Message Date
Jacob Halsey 1391a834ce #715: Support setting the local IP address to connect from (#762)
This adds a `local_address: Option<IpAddr>` parameter to the synchronous, and tokio connect functions.

(As far as I can see there is no current way to support this in async-std, because the library doesn't provide any way to do an async connect for an existing socket)
2022-05-29 07:05:39 +00:00
André Cruz e6b4529896 use email_address crate for checking formats (#763)
The email_address crate is more strict in validating user and domain
parts of email addresses. For example, it verifies the total size
of the local part, which the current method does not, and this has
caused upstream servers to fail to accept an email.
2022-05-26 19:21:14 +02:00
Kevin Cox ca5cb3f8f7 Fix encoded header signing. (#765)
The header needs to be properly formatted so that Unicode characters are encoded the same way they will be in the final message. Previously the logical header value was being encoded.

A notable example is that a `'` in the `To:` header needs to be encoded. This was being encoded incorrectly.
2022-05-26 07:44:14 +02:00
Kevin Cox 1e2279457e Add editorconfig file. (#766)
Makes it easy for everyone to use the preferred settings.

https://editorconfig.org/
2022-05-18 13:07:38 +00:00
Kevin Cox 961364cc29 Remove unnecessary clone. (#767)
This is backwards-incompatible but hopefully is an acceptable change for a pre-release. The upgrade path is straight forward.
2022-05-18 10:51:02 +02:00
Paolo Barbolini b0db759e5f Prepare 0.10.0-rc.6 (#761) v0.10.0-rc.6 2022-04-29 15:59:36 +02:00
Paolo Barbolini 5daf5d397a Fix parsing Mailboxes with a comma in the name (#760) 2022-04-26 12:18:12 +02:00
Paolo Barbolini 3f1647fa48 Bump dependencies (#759) 2022-04-25 09:17:58 +00:00
Paolo Barbolini fd106d9b0c Bump rsa crate to the final 0.6.0 release (#758) 2022-04-14 09:39:30 +00:00
Vincent Breitmoser c1d37d54b4 Use +0000 timezone format in Date header (#756)
Since the Date we emit is UTC, it's correct to use "+0000". The
previously used -0000 timezone indicator means "no timezone info".
2022-04-10 08:34:50 +02:00
David Krasnitsky efa0d58778 Improve compiler error messages (#754) 2022-04-07 05:03:28 +00:00
Paolo Barbolini 9567b23f4d Prepare 0.10.0-rc.5 (#750) v0.10.0-rc.5 2022-04-02 10:21:38 +02:00
Paolo Barbolini f77376fa19 Update to released email-encoding crate (#749) 2022-04-02 08:10:25 +00:00
Paolo Barbolini 6e35b9b30d Bump RustCrypto crates (#748) 2022-04-02 07:55:36 +00:00
Sven-Hendrik Haase c24213c850 Add message logging to StubTransport (#744)
This makes it more useful as a testing tool as it now allows you to retrieve
all messages sent via this transport.
2022-03-25 08:22:47 +01:00
fluentpwn 8b40e438fd Year update (#725) 2022-03-24 06:06:24 +00:00
Paolo Barbolini e1462b2d1b Bump MSRV to 1.56 - Edition 2021 (#745) 2022-03-24 05:52:28 +00:00
Paolo Barbolini 96b42515cd Don't run headers that don't need encoding though the encoder (#739) 2022-02-17 19:18:54 +00:00
Paolo Barbolini 1ea4987023 Encode mailbox headers through email-encoding (#737) 2022-02-17 20:00:43 +01:00
Paolo Barbolini 9273d24e54 Use nightly rustfmt features to improve code style (#734)
* format_code_in_doc_comments

* imports_granularity

* group_imports

* Add ci job
2022-02-12 20:03:37 +01:00
Paolo Barbolini 7a0dd5bd92 clippy: deny string_add (#735) 2022-02-12 17:12:41 +00:00
Paolo Barbolini 9a8aa46dba Start future proofing the DKIM API (#733) 2022-02-12 16:41:34 +00:00
Paolo Barbolini 0377ea29b7 Dkim improvements (#732)
Some tweaks to the DKIM implementation to make it a tiny bit more readable in some places and allocate less in general.
2022-02-12 16:19:06 +00:00
Paolo Barbolini 89e5b9083e Bump dev dependencies (#730) 2022-02-12 10:25:42 +00:00
Paolo Barbolini 8c370e28c9 Follow RFC 2231 in order to properly encode the Content-Disposition header (#685)
Uses RFC 2231 to encode the Content-Disposition header
2022-02-12 10:17:44 +00:00
Paolo Barbolini 3eed80ef30 Bump MSRV to 1.53 (#731) 2022-02-12 10:02:44 +00:00
Paolo Barbolini dbb135c533 Introduce HeaderValue (#729) 2022-02-12 10:24:52 +01:00
Gaëtan Duchaussois 4c5f02b4f6 feat(email): add dkim signing capacity to message (#670) 2022-02-12 09:21:35 +01:00
Paolo Barbolini f02542841c Bump rustls-pemfile to 0.3 (#728) 2022-02-05 18:34:13 +01:00
Jacob Halsey 29c34adc25 feature(transport-smtp): make peer certificate available in SmtpConnection (#716) 2022-01-19 11:28:34 +01:00
Kevin Cox 5e3ebbb189 Properly quote mailbox name (#700)
This quoting is performed according to https://datatracker.ietf.org/doc/html/rfc2822.

Note that the obsolete phrase specification allows periods in the mailbox name. This does not implement the obsolete specification, instead periods force the mailbox to use a quoted string.

Fixes #698
2021-11-17 18:28:34 +01:00
Dirkjan Ochtman 60399a93cc Forward first line of response for negative responses (#701) 2021-11-15 17:41:54 +01:00
facklambda a48bc8a1b2 docs(smtp-transport) Add Troubleshooting steps (#692) 2021-11-12 21:53:12 +01:00
Paolo Barbolini 94cc0149d1 Prepare 0.10.0-rc.4 (#691) v0.10.0-rc.4 2021-10-29 09:22:53 +02:00
Filip Gospodinov a89383cdb6 Re-enable pool tests (#684)
The pool tests have been implicitly disabled by testing
for a feature that has been removed.
2021-10-20 19:31:56 +02:00
Filip GospodinovandAlexis Mousset 592593f4b8 Expose test_connected via transport (#677)
It is useful for application developers to validate SMTP
settings by testing the connection.

Co-authored-by: Alexis Mousset <contact@amousset.me>
2021-10-20 16:42:49 +02:00
Paolo Barbolini 97d3c760c0 Update rustls to 0.20 (#648) 2021-10-20 14:37:16 +02:00
Alexis Mousset 8f28b0c341 fix(transport): Use the sendmail command in PATH by default (#682)
This will allow the transport to work with default settings on more systems,
while preserving the ability to use a specific binary.
2021-10-16 09:49:45 +02:00
Paolo BarboliniandAlexis Mousset dc9c5df210 Sync pool impl (#644)
Co-authored-by: Alexis Mousset <contact@amousset.me>
2021-10-16 09:39:06 +02:00
Gaëtan Duchaussois c9b3fa0baa docs(all): Add instruction to launch fake smtp server (#681) 2021-10-11 16:41:03 +02:00
Paolo Barbolini addf8754dd smtp: don't send QUIT to connections that failed the STARTTLS handshake (#679) 2021-10-06 17:25:50 +00:00
Jacob Mischka af157c5f26 Add From<Mime> under mime03 flag (#676)
Closes #615
2021-10-05 11:22:25 +02:00
TornaxO7 3e8988ae55 ContentTransferEncoding derives changes (#652) 2021-09-29 06:42:54 +02:00
Paolo Barbolini 941a00bcaa Bump MSRV to 1.52.1 (#671) 2021-09-12 18:40:26 +00:00
Paolo Barbolini 14079bff8c Give a compiletime error when using an incorrect combination of TLS features (#666) 2021-09-07 20:43:07 +02:00
Paolo Barbolini 696c06e8d7 Bump nom to v7 (#663) 2021-08-22 14:54:09 +02:00
Paolo Barbolini d4f7618898 Better document how Attachments can be used (#658) 2021-08-20 08:17:36 +00:00
Christopher Vittal e0a0a2e624 feat(address): Add TryFrom<String> for Address (#660)
Refactor the validation part of from_str into its own function as the
behavior for try_from is identical.
2021-08-20 09:09:49 +02:00
Paolo Barbolini 9ab6bb56d3 Fix broken <summary> style (#659) 2021-08-20 04:48:30 +02:00
Paolo BarboliniandAlexis Mousset e1d3778329 Revert "Allow a Message to be decomposed into a MessageBuilder (#633)" (#649)
This reverts commit aadcc0f83c.

Co-authored-by: Alexis Mousset <contact@amousset.me>
2021-08-02 12:20:02 +00:00