From fb7c8c7cddd628d00047b465f2c02531aa6d128a Mon Sep 17 00:00:00 2001 From: Christian Loitsch Date: Sun, 15 Feb 2026 11:09:30 +0100 Subject: [PATCH 1/8] feat: version 7: binarymime and refactoring --- .github/workflows/test.yml | 30 + .gitignore | 3 +- CHANGELOG.md | 16 + README.md | 243 +- analysis_options.yaml | 21 +- doc/gmail_xoauth2/README.md | 117 + .../screenshots/step10_oauth_consent.png | Bin 0 -> 76784 bytes .../screenshots/step11_get_started.png | Bin 0 -> 99748 bytes .../screenshots/step12_app_info.png | Bin 0 -> 83738 bytes .../screenshots/step13_external.png | Bin 0 -> 93248 bytes .../screenshots/step14_contact.png | Bin 0 -> 87080 bytes .../screenshots/step15_finish.png | Bin 0 -> 89923 bytes .../step16_create_oauth_client.png | Bin 0 -> 69658 bytes .../step17_create_desktop_oauth.png | Bin 0 -> 110742 bytes .../screenshots/step18_add_users.png | Bin 0 -> 76893 bytes .../screenshots/step1_console.png | Bin 0 -> 23636 bytes .../screenshots/step2_new_project.png | Bin 0 -> 38149 bytes .../screenshots/step3_create.png | Bin 0 -> 72304 bytes .../screenshots/step4_select.png | Bin 0 -> 41246 bytes .../screenshots/step5_apis_overview.png | Bin 0 -> 101058 bytes .../screenshots/step6_enable_apis.png | Bin 0 -> 34126 bytes .../screenshots/step7_gmail_api.png | Bin 0 -> 100758 bytes .../screenshots/step8_gmail_api2.png | Bin 0 -> 65978 bytes .../screenshots/step9_enable.png | Bin 0 -> 43476 bytes doc/inline_image_guide.md | 53 + doc/rfc3030.txt | 675 +++ doc/rfc5321.txt | 5323 +++++++++++++++++ example/gmail_xoauth2/README.md | 43 +- .../gmail_xoauth2}/flutter_user.png | Bin example/gmail_xoauth2/obtain_credentials.dart | 25 +- example/gmail_xoauth2/send_mail.dart | 13 +- example/send_gmail.dart | 12 +- lib/mailer.dart | 7 +- lib/smtp_server.dart | 5 +- lib/smtp_server/amazon.dart | 3 +- lib/smtp_server/gmail.dart | 5 +- lib/smtp_server/qq.dart | 4 +- lib/smtp_server/sendgrid.dart | 3 +- lib/smtp_server/yahoo.dart | 3 +- lib/smtp_server/yandex.dart | 3 +- lib/smtp_server/zoho.dart | 4 +- lib/src/{entities => core}/address.dart | 31 +- lib/src/core/address_validator.dart | 286 + lib/src/{entities => core}/attachment.dart | 20 +- lib/src/{entities => core}/message.dart | 4 +- lib/src/{entities => core}/problem.dart | 0 lib/src/{entities => core}/send_report.dart | 3 +- lib/src/entities.dart | 4 - lib/src/idna/idna.dart | 177 + lib/src/mime/encoder.dart | 30 + lib/src/mime/mime.dart | 36 + lib/src/mime/mime_header.dart | 251 + .../mime_message.dart} | 25 +- lib/src/mime/mime_part.dart | 210 + .../stream_splitter.dart} | 24 +- .../smtp/buffering_stream_transformer.dart | 40 + lib/src/smtp/capabilities.dart | 23 +- lib/src/smtp/connection.dart | 32 +- lib/src/smtp/exceptions.dart | 15 +- .../internal_representation.dart | 42 - .../internal_representation/ir_content.dart | 210 - .../internal_representation/ir_header.dart | 256 - lib/src/smtp/mail_sender.dart | 17 +- lib/src/smtp/smtp_client.dart | 45 +- lib/src/smtp/validator.dart | 54 +- pubspec.yaml | 32 +- test/address_test.dart | 15 +- test/binarymime_test.dart | 125 + test/idna_test.dart | 127 + test/message_out_test.dart | 19 +- test/messages/message_all.dart | 25 +- test/messages/message_helpers.dart | 85 +- test/messages/message_simple_utf8.dart | 5 +- test/messages/message_text_html_only.dart | 10 +- test/messages/message_utf8_from_header.dart | 11 +- .../message_utf8_long_subject_long_body.dart | 128 +- test/mock_smtp_server.dart | 100 + test/punycode_test.dart | 215 + test/rfc3030_test.dart | 51 + test/send_test.dart | 14 +- test/split_test.dart | 7 +- test/stream_splitter_test.dart | 91 + test/test.dart | 25 + test/validator_test.dart | 390 ++ 84 files changed, 8871 insertions(+), 1050 deletions(-) create mode 100644 .github/workflows/test.yml create mode 100644 doc/gmail_xoauth2/README.md create mode 100644 doc/gmail_xoauth2/screenshots/step10_oauth_consent.png create mode 100644 doc/gmail_xoauth2/screenshots/step11_get_started.png create mode 100644 doc/gmail_xoauth2/screenshots/step12_app_info.png create mode 100644 doc/gmail_xoauth2/screenshots/step13_external.png create mode 100644 doc/gmail_xoauth2/screenshots/step14_contact.png create mode 100644 doc/gmail_xoauth2/screenshots/step15_finish.png create mode 100644 doc/gmail_xoauth2/screenshots/step16_create_oauth_client.png create mode 100644 doc/gmail_xoauth2/screenshots/step17_create_desktop_oauth.png create mode 100644 doc/gmail_xoauth2/screenshots/step18_add_users.png create mode 100644 doc/gmail_xoauth2/screenshots/step1_console.png create mode 100644 doc/gmail_xoauth2/screenshots/step2_new_project.png create mode 100644 doc/gmail_xoauth2/screenshots/step3_create.png create mode 100644 doc/gmail_xoauth2/screenshots/step4_select.png create mode 100644 doc/gmail_xoauth2/screenshots/step5_apis_overview.png create mode 100644 doc/gmail_xoauth2/screenshots/step6_enable_apis.png create mode 100644 doc/gmail_xoauth2/screenshots/step7_gmail_api.png create mode 100644 doc/gmail_xoauth2/screenshots/step8_gmail_api2.png create mode 100644 doc/gmail_xoauth2/screenshots/step9_enable.png create mode 100644 doc/inline_image_guide.md create mode 100644 doc/rfc3030.txt create mode 100644 doc/rfc5321.txt rename {doc => example/gmail_xoauth2}/flutter_user.png (100%) rename lib/src/{entities => core}/address.dart (71%) create mode 100644 lib/src/core/address_validator.dart rename lib/src/{entities => core}/attachment.dart (75%) rename lib/src/{entities => core}/message.dart (97%) rename lib/src/{entities => core}/problem.dart (100%) rename lib/src/{entities => core}/send_report.dart (92%) delete mode 100644 lib/src/entities.dart create mode 100644 lib/src/idna/idna.dart create mode 100644 lib/src/mime/encoder.dart create mode 100644 lib/src/mime/mime.dart create mode 100644 lib/src/mime/mime_header.dart rename lib/src/{smtp/internal_representation/ir_message.dart => mime/mime_message.dart} (56%) create mode 100644 lib/src/mime/mime_part.dart rename lib/src/{smtp/internal_representation/conversion.dart => mime/stream_splitter.dart} (83%) create mode 100644 lib/src/smtp/buffering_stream_transformer.dart delete mode 100644 lib/src/smtp/internal_representation/internal_representation.dart delete mode 100644 lib/src/smtp/internal_representation/ir_content.dart delete mode 100644 lib/src/smtp/internal_representation/ir_header.dart create mode 100644 test/binarymime_test.dart create mode 100644 test/idna_test.dart create mode 100644 test/mock_smtp_server.dart create mode 100644 test/punycode_test.dart create mode 100644 test/rfc3030_test.dart create mode 100644 test/stream_splitter_test.dart create mode 100644 test/test.dart create mode 100644 test/validator_test.dart diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 0000000..49fd597 --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,30 @@ +name: Dart + +on: + push: + branches: [ master ] + pull_request: + branches: [ master ] + +jobs: + build: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + + - uses: dart-lang/setup-dart@v1 + with: + sdk: stable + + - name: Install dependencies + run: dart pub get + + - name: Verify formatting + run: dart format --output=none --set-exit-if-changed . + + - name: Analyze project source + run: dart analyze + + - name: Run tests + run: dart test diff --git a/.gitignore b/.gitignore index 1bc7782..5addf44 100644 --- a/.gitignore +++ b/.gitignore @@ -8,4 +8,5 @@ packages *.iml .dart_tool /test/smtpserver.json -.DS_Store \ No newline at end of file +.DS_Store +secrets.json \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 8fdc289..40b9284 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,19 @@ +## 7.0.0 +* Major Refactoring: Simplified library structure and standardized exports. + - Renamed internal `IR` classes to `Mime`. + - Moved files into `core`, `mime`, and `smtp` directories. + - Standardized on relative imports within the package. +* Feature: Added support for RFC 3030 (CHUNKING and BINARYMIME). +* Feature: Implemented Custom Address Validation API. + - Added `PracticalAddressValidator` (recommended for input validation). + - Added `StrictAddressValidator` (RFC 5322 compliance). + - Added `PermissiveAddressValidator` and `SimpleAddressValidator`. +* Feature: Correct IDNA encoding for domains. + - Proper NFC Unicode normalization using `unorm_dart`. + - Case folding and label validation (RFC 5890). +* Breaking: Removed `lib/src/core/entities.dart`. Import `package:mailer/mailer.dart` instead. +* Update: Bumped SDK constraint to Dart 3. + ## 6.6.0 * Add Amazon simple Email Service stmp server Thanks https://github.com/karelklic diff --git a/README.md b/README.md index 501a929..375b6b4 100644 --- a/README.md +++ b/README.md @@ -2,158 +2,171 @@ **mailer** is an easy-to-use library for composing and sending emails in Dart. -Mailer supports file attachments and HTML emails. +It supports: +* **Plaintext and HTML** emails. +* **Attachments** (files, streams, etc.). +* **Inline images** (using CID). +* **Unicode** support. +* **RFC 3030** (CHUNKING) for efficient large file transfer. +* **Secure connections** (TLS/SSL) with context-aware sanitization. +* **Custom Address Validation** strategies (strict, permissive, etc.). +* **Pre-configured services** (Gmail, Yahoo, Hotmail, etc.) and generic SMTP support. -## FLUTTER developers +## Usage -**This library does not work with flutter web.** Sending mails using the SMTP is technically not possible over HTTP. +### Simple Example (Gmail) +```dart +import 'package:mailer/mailer.dart'; +import 'package:mailer/smtp_server.dart'; -Please do NOT use mailer together with your credentials. Extracting them is very easy and anybody could then send -mails using your account. If you use your gmail credentials it's even worse as an attacker could read your mails as -well. +void main() async { + String username = 'username@gmail.com'; + String password = 'password'; // Use an App Password if 2FA is enabled + final smtpServer = gmail(username, password); + // Use the SmtpServer class to configure any other SMTP server: + // final smtpServer = SmtpServer('smtp.domain.com'); -[Johannes Milke](https://github.com/JohannesMilke) has created an excellent tutorial on how to use `mailer` without -needing to embed your credentials in the flutter app. + final message = Message() + ..from = Address(username, 'Your Name') + ..recipients.add('destination@example.com') + ..ccRecipients.addAll(['destCc1@example.com', 'destCc2@example.com']) + ..bccRecipients.add(Address('bccAddress@example.com')) + ..subject = 'Test Dart Mailer library :: 😀 :: ${DateTime.now()}' + ..text = 'This is the plain text.\nThis is line 2 of the text part.' + ..html = "

Test

\n

Hey! Here's some HTML content

"; -[Flutter Tutorial - How To Send Email In Background \[2021\] Without Backend](https://www.youtube.com/watch?v=RDwst9icjAY) + try { + final sendReport = await send(message, smtpServer); + print('Message sent: $sendReport'); + } on MailerException catch (e) { + print('Message not sent.'); + for (var p in e.problems) { + print('Problem: ${p.code}: ${p.msg}'); + } + } +} +``` -The tutorial will use firebase and ask for the credentials of the android user: ![flutter-screenshot](doc/flutter_user.png) -By using the account of the android user it avoids storing your credentials in the app. +### Advanced Usage -## Server developers +#### Attachments and Inline Images -[Suragch](https://suragch.medium.com/) has written an excellent tutorial on -[How to send yourself email notifications from a Dart server](https://suragch.medium.com/how-to-send-yourself-email-notifications-from-a-dart-server-a7c16a1900d6) +```dart +final message = Message() + ..from = Address(username, 'Your Name') + ..recipients.add('destination@example.com') + ..subject = 'Inline Image Test' + ..html = '

Test

Here is an image:

' + ..attachments = [ + FileAttachment(File('image.png')) + ..location = Location.inline + ..cid = '' + ]; +``` -Thanks to Suragch for bringing those tutorials to my attention. -If you have created a tutorial yourself (or know of one) please open an issue, so that I can add it to this "list". +#### Custom Address Validation -Note that those tutorial don't need to be in English! +The library validates addresses before sending. By default, it uses a simple check (contains `@` with non-empty parts). You can customize this behavior: -## SMTP definitions +**Available validators:** +| Validator | Use Case | +|:----------|:---------| +| `PracticalAddressValidator` | **Recommended for input validation.** Rejects IP literals, quoted strings, and domains without dots. | +| `StrictAddressValidator` | Full RFC 5322 compliance. Accepts technically valid but uncommon formats. | +| `PermissiveAddressValidator` | Accepts any non-empty string. | -Mailer provides configurations for a few common SMTP servers. +**Validating user input (recommended):** +```dart +import 'package:mailer/src/core/address_validator.dart'; -Please create merge requests for missing configurations. +final validator = PracticalAddressValidator(); +final address = Address('test@example.com'); -* Copy `lib/smtp_server/gmail.dart` to `lib/smtp_server/xxx.dart` -* Adapt the code. (See `lib/smtp_server.dart` for possible arguments) -* Export the newly created SMTP server in `lib/smtp_server.dart` -* Create a pull request. +if (validator.validate(address)) { + print('Address is valid'); +} else { + print('Address is invalid - may not be deliverable'); +} +``` -In a lot of cases you will find a configuration -in [legacy.dart](https://github.com/kaisellgren/mailer/blob/v2/lib/legacy.dart) +**Using a validator for sending:** +```dart +final message = Message() + ..validator = StrictAddressValidator() // or PracticalAddressValidator() + ..from = 'valid@example.com'; +``` -## Features +#### Persistent Connection -* Plaintext and HTML emails -* Unicode support -* Attachments -* Secure (filters and sanitizes all fields context-wise) -* Use any SMTP server like Gmail, Live, SendGrid, Amazon SES -* SSL/TLS support -* Pre-configured services (Gmail, Yahoo, Hotmail, etc.). Just fill in your username and password. +For sending multiple messages efficiently, use `PersistentConnection`. -## TODO *HELP WANTED* +```dart +var connection = PersistentConnection(smtpServer); -* Correct encoding of non ASCII mail addresses. -* Reintegrate address validation from version 1.* -* Improve Header types. (see [ir_header.dart](lib/src/smtp/internal_representation/ir_header.dart)) - We should choose the correct header based on the header name. - Known headers (`list-unsubscribe`,...) should have their own subclass. -* Improve documentation. +await connection.send(message1); +await connection.send(message2); -## Examples +await connection.close(); +``` -### Sending an email with SMTP -See [gmail example](example/send_gmail.dart). +## Documentation -We also have an example which uses [gmail oauth](example/gmail_xoauth2/). +* [Using Inline Images (doc/inline_image_guide.md)](doc/inline_image_guide.md) +* [Gmail XOAUTH2 Guide (doc/gmail_xoauth2/README.md)](doc/gmail_xoauth2/README.md) -```dart -import 'package:mailer/mailer.dart'; -import 'package:mailer/smtp_server.dart'; +## Tutorials -main() async { - // Note that using a username and password for gmail only works if - // you have two-factor authentication enabled and created an App password. - // Search for "gmail app password 2fa" - // The alternative is to use oauth. - String username = 'username@gmail.com'; - String password = 'password'; +### Flutter Developers - final smtpServer = gmail(username, password); - // Use the SmtpServer class to configure an SMTP server: - // final smtpServer = SmtpServer('smtp.domain.com'); - // See the named arguments of SmtpServer for further configuration - // options. +**Flutter Web is NOT supported.** Sending emails via SMTP directly from a browser is technically impossible due to security restrictions (CORS, lack of raw socket access). You must use a backend server or a proxy. - // Create our message. - final message = Message() - ..from = Address(username, 'Your name') - ..recipients.add('destination@example.com') - ..ccRecipients.addAll(['destCc1@example.com', 'destCc2@example.com']) - ..bccRecipients.add(Address('bccAddress@example.com')) - ..subject = 'Test Dart Mailer library :: 😀 :: ${DateTime.now()}' - ..text = 'This is the plain text.\nThis is line 2 of the text part.' - ..html = "

Test

\n

Hey! Here's some HTML content

"; +**Security Warning:** Do NOT embed your SMTP credentials (username/password) directly in your client-side Flutter code. If you do, anyone can extract them and use your account to send spam. - try { - final sendReport = await send(message, smtpServer); - print('Message sent: ' + sendReport.toString()); - } on MailerException catch (e) { - print('Message not sent.'); - for (var p in e.problems) { - print('Problem: ${p.code}: ${p.msg}'); - } - } - // DONE - - - // Let's send another message using a slightly different syntax: - // - // Addresses without a name part can be set directly. - // For instance `..recipients.add('destination@example.com')` - // If you want to display a name part you have to create an - // Address object: `new Address('destination@example.com', 'Display name part')` - // Creating and adding an Address object without a name part - // `new Address('destination@example.com')` is equivalent to - // adding the mail address as `String`. - final equivalentMessage = Message() - ..from = Address(username, 'Your name 😀') - ..recipients.add(Address('destination@example.com')) - ..ccRecipients.addAll([Address('destCc1@example.com'), 'destCc2@example.com']) - ..bccRecipients.add('bccAddress@example.com') - ..subject = 'Test Dart Mailer library :: 😀 :: ${DateTime.now()}' - ..text = 'This is the plain text.\nThis is line 2 of the text part.' - ..html = '

Test

\n

Hey! Here is some HTML content

' - ..attachments = [ - FileAttachment(File('exploits_of_a_mom.png')) - ..location = Location.inline - ..cid = '' - ]; +[Johannes Milke](https://github.com/JohannesMilke) has created an excellent tutorial on how to use `mailer` without needing to embed your credentials in the Flutter app: + +* [Flutter Tutorial - How To Send Email In Background [2021] Without Backend](https://www.youtube.com/watch?v=RDwst9icjAY) + +The tutorial uses Firebase and requests the credentials of the Android user, avoiding storing your credentials in the app. + +### Server Developers - final sendReport2 = await send(equivalentMessage, smtpServer); +[Suragch](https://suragch.medium.com/) has written an excellent tutorial on [How to send yourself email notifications from a Dart server](https://suragch.medium.com/how-to-send-yourself-email-notifications-from-a-dart-server-a7c16a1900d6). - // Sending multiple messages with the same connection - // - // Create a smtp client that will persist the connection - var connection = PersistentConnection(smtpServer); +--- - // Send the first message - await connection.send(message); +If you have created a tutorial yourself (or know of one) please open an issue, so it can be added to this list. Note that tutorials don't need to be in English! - // send the equivalent message - await connection.send(equivalentMessage); +## Logging - // close the connection - await connection.close(); +The library uses the `logging` package. By default, no logs are output. +To see the SMTP communication (which is helpful for debugging), configure a logger listener: + +```dart +import 'package:logging/logging.dart'; + +void main() { + Logger.root.level = Level.ALL; // defaults to Level.INFO + Logger.root.onRecord.listen((LogRecord rec) { + print('${rec.level.name}: ${rec.time}: ${rec.message}'); + }); + + // ... rest of your code } ``` +**Security Note:** Credentials (passwords, tokens) in `AUTH` commands are masked (`*******`) in the logs to prevent accidental leakage. + +## FAQ + +**Q: How do I handle large attachments?** +A: `mailer` supports RFC 3030 (CHUNKING). If the server supports it, `mailer` will automatically stream the data using `BDAT` commands, which is more efficient than the standard `DATA` command. + +**Q: How do I use Gmail with 2FA?** +A: You must generate an **App Password** in your Google Account settings and use that instead of your standard password. + ## License -This library is licensed under MIT. +MIT diff --git a/analysis_options.yaml b/analysis_options.yaml index df2dc41..4410035 100644 --- a/analysis_options.yaml +++ b/analysis_options.yaml @@ -1,18 +1,11 @@ -analyzer: - strong-mode: - implicit-casts: false - errors: - todo: ignore - exclude: - - flutter/** - - lib/api/*.dart - - .dart_tool - - example/gmail_xoauth2 +include: package:lints/recommended.yaml linter: rules: - - avoid_empty_else - - cancel_subscriptions - - close_sinks + - prefer_single_quotes + - unawaited_futures + - always_declare_return_types + - lines_longer_than_80_chars: false -include: package:lints/recommended.yaml \ No newline at end of file +formatter: + page_width: 100 \ No newline at end of file diff --git a/doc/gmail_xoauth2/README.md b/doc/gmail_xoauth2/README.md new file mode 100644 index 0000000..42bdc25 --- /dev/null +++ b/doc/gmail_xoauth2/README.md @@ -0,0 +1,117 @@ +# Server-Side XOAuth2 with Mailer + +This guide explains how to acquire the necessary credentials to use Gmail with the `mailer` package on a server (or any headless environment). + +Unlike the "App Password" method, XOAuth2 is more secure and is the recommended way to access Gmail programmatically. + +## Prerequisites + +1. A Google Cloud Project. +2. The `mailer` package installed in your Dart project. + +## Step 1: Google Cloud Console Setup + +### 1. Create a Project + +1. Go to the [Google Cloud Console](https://console.cloud.google.com/). + ![Console](screenshots/step1_console.png) + +2. Click on the project dropdown and select **New Project**. + ![New Project](screenshots/step2_new_project.png) + +3. Enter a project name and click **Create**. + ![Create Project](screenshots/step3_create.png) + +4. Select your newly created project. + ![Select Project](screenshots/step4_select.png) + +### 2. Enable Gmail API + +1. Go to **APIs & Services > Dashboard**. + ![APIs Overview](screenshots/step5_apis_overview.png) + +2. Click **Enable APIs and Services**. + ![Enable APIs](screenshots/step6_enable_apis.png) + +3. Search for `Gmail API`. + ![Search Gmail API](screenshots/step7_gmail_api.png) + +4. Select **Gmail API** from the results. + ![Select Gmail API](screenshots/step8_gmail_api2.png) + +5. Click **Enable**. + ![Enable](screenshots/step9_enable.png) + +### 3. Configure OAuth Consent Screen + +1. Go to **APIs & Services > OAuth consent screen**. + ![OAuth Consent Screen](screenshots/step10_oauth_consent.png) + +2. Click **Get Started** (or similar). + ![Get Started](screenshots/step11_get_started.png) + +3. Fill in the required fields (App name, User support email). + ![App Info](screenshots/step12_app_info.png) + +4. Select **External** (unless you are a G Suite user and want to limit to your organization) if prompted. + ![External User Type](screenshots/step13_external.png) + +5. Add Developer contact information. + ![Contact Info](screenshots/step14_contact.png) + +6. Continue through the steps. + ![Finish Consent Screen](screenshots/step15_finish.png) + +### 4. Create Credentials + +1. Go to **APIs & Services > Credentials**. +2. Click **Create Credentials** and select **OAuth client ID**. + ![Create OAuth Client](screenshots/step16_create_oauth_client.png) + +3. Application type: **Desktop app**. +4. Name: Give it a name (e.g., "Mailer Server"). +5. Click **Create**. + ![Create Desktop OAuth](screenshots/step17_create_desktop_oauth.png) + +### 5. Finalize + +1. Add **Test Users**: Add the email address you intend to use for sending emails. *This is critical if your app is in "Testing" mode.* + ![Add Test Users](screenshots/step18_add_users.png) + +2. You will see a popup with your **Client ID** and **Client Secret**. Copy these or download the JSON file. + +## Step 2: Acquire Refresh Token + +You need a `refreshToken` to access Gmail without user interaction. The `accessToken` expires quickly (usually 1 hour), but the `refreshToken` works indefinitely (with some exceptions). + +The `mailer` package includes a script to help you get this token. + +Run the `obtain_credentials.dart` script with your Client ID and Client Secret: + +```bash +dart example/gmail_xoauth2/obtain_credentials.dart \ + --id "YOUR_CLIENT_ID" \ + --secret "YOUR_CLIENT_SECRET" \ + --username "your.email@gmail.com" \ + --file "secrets.json" +``` + +The script will: +1. Print a URL and attempt to open it in your default browser. +2. Ask you to log in to your Google Account and grant permissions. +3. Once accepted, it will save the `refreshToken`, `identifier`, `secret`, and `username` to `secrets.json`. + +> [!NOTE] +> If the browser doesn't open automatically, copy the URL printed in the terminal and open it manually. + +## Step 3: Use in Your Application + +Now you can load these credentials in your server application to send emails. + +Check the [send_mail.dart](../../example/gmail_xoauth2/send_mail.dart) example file to see how to use the credentials +to send an email. + +Run the example: +```bash +dart example/gmail_xoauth2/send_mail.dart --file secrets.json --to recipient@example.com +``` diff --git a/doc/gmail_xoauth2/screenshots/step10_oauth_consent.png b/doc/gmail_xoauth2/screenshots/step10_oauth_consent.png new file mode 100644 index 0000000000000000000000000000000000000000..76fae4e3bd892ffddab599d21a0a2cb160d944b9 GIT binary patch literal 76784 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

_B<#Q$JXvXAmv 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 z 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 OUh2yCl+gc}z5EY=Bzz5uYU6i9Kp`QBLE+8 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

4F-dvio2D~R^57JzlN6@#vx!8~6k)6!sLHF!J| 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�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 XaVJH=YFzh-D1f|-%F8mT*TMe{rmDkZ literal 0 HcmV?d00001 diff --git a/doc/gmail_xoauth2/screenshots/step16_create_oauth_client.png b/doc/gmail_xoauth2/screenshots/step16_create_oauth_client.png new file mode 100644 index 0000000000000000000000000000000000000000..d99d569abc37243328b215c598c79f34b18bfa69 GIT binary patch literal 69658 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%0D5w+ITpw{{bhKy>n%J(qGk!xafKU6s8S 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 literal 0 HcmV?d00001 diff --git a/doc/gmail_xoauth2/screenshots/step18_add_users.png b/doc/gmail_xoauth2/screenshots/step18_add_users.png new file mode 100644 index 0000000000000000000000000000000000000000..28286e4855072c48da7a8311a6c6ab2428b1387a GIT binary patch literal 76893 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 JS?83{1OQhzE4Tmv literal 0 HcmV?d00001 diff --git a/doc/gmail_xoauth2/screenshots/step1_console.png b/doc/gmail_xoauth2/screenshots/step1_console.png new file mode 100644 index 0000000000000000000000000000000000000000..694b9c2ab7422a08a0c813d2e5ed9970b611d3d0 GIT binary patch literal 23636 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

g60}b%dKCH{mo$>CHXGl3D6^ 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 G(Ek8`n7h>g literal 0 HcmV?d00001 diff --git a/doc/gmail_xoauth2/screenshots/step2_new_project.png b/doc/gmail_xoauth2/screenshots/step2_new_project.png new file mode 100644 index 0000000000000000000000000000000000000000..dc452d539e189ecec53a41dd84f930181f124bcd GIT binary patch literal 38149 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 literal 0 HcmV?d00001 diff --git a/doc/gmail_xoauth2/screenshots/step4_select.png b/doc/gmail_xoauth2/screenshots/step4_select.png new file mode 100644 index 0000000000000000000000000000000000000000..b6da9879e53dbd188077319ec5a4524f0c5f871d GIT binary patch literal 41246 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

^6{EajPPutn-oXQ+<*Gmo+2_S;q5Pw#;Bv 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

~(% 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 literal 0 HcmV?d00001 diff --git a/doc/gmail_xoauth2/screenshots/step6_enable_apis.png b/doc/gmail_xoauth2/screenshots/step6_enable_apis.png new file mode 100644 index 0000000000000000000000000000000000000000..1a8c34a6ee1aebaca27385f42f95e172b8823c0b GIT binary patch literal 34126 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 literal 0 HcmV?d00001 diff --git a/doc/gmail_xoauth2/screenshots/step7_gmail_api.png b/doc/gmail_xoauth2/screenshots/step7_gmail_api.png new file mode 100644 index 0000000000000000000000000000000000000000..c9940bfe2eaf4187ff17aabc19c76730b1eb8fff GIT binary patch literal 100758 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%0D$Ko@TsZ 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 DyH2Jj literal 0 HcmV?d00001 diff --git a/doc/gmail_xoauth2/screenshots/step8_gmail_api2.png b/doc/gmail_xoauth2/screenshots/step8_gmail_api2.png new file mode 100644 index 0000000000000000000000000000000000000000..9c7393633d252b4f0dd9a8bc76a1bbd9f31afc05 GIT binary patch literal 65978 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 literal 0 HcmV?d00001 diff --git a/doc/inline_image_guide.md b/doc/inline_image_guide.md new file mode 100644 index 0000000..b3f6442 --- /dev/null +++ b/doc/inline_image_guide.md @@ -0,0 +1,53 @@ +# Using Inline Images + +Sending HTML emails with inline images requires embedding the image as an attachment and referencing it in the HTML using a Content-ID (CID). + +## Steps + +1. **Create an Attachment**: Create a `FileAttachment` or `StreamAttachment` for your image. +2. **Set the Content-ID (`cid`)**: Assign a unique ID to the attachment's `cid` property. +3. **Set the Location**: Ensure the attachment's `location` is set to `Location.inline`. The default is `Location.attachment`, so you must set this explicitly. +4. **Reference in HTML**: Use `` in your HTML body. + +## Example + +```dart +import 'dart:io'; +import 'package:mailer/mailer.dart'; +import 'package:mailer/smtp_server.dart'; + +main() async { + var smtpServer = localhost(); // Replace with your server + + // Create the message + var message = Message() + ..from = Address('sender@example.com', 'Sender Name') + ..recipients.add('recipient@example.com') + ..subject = 'Inline Image Test' + ..html = ''' +

Look at this image!

+ + '''; + + // Create the attachment + var file = File('test/exploits_of_a_mom.png'); // Path to your image + var attachment = FileAttachment(file) + ..location = Location.inline + ..cid = ''; // The specific CID to reference in the HTML. + // The library automatically adds angle brackets < > around the CID if they are missing. The id must contain an '@' symbol. + + // Add attachment to message + message.attachments.add(attachment); + + // Send + await send(message, smtpServer); +} +``` + +## Notes + +- **CID Format**: The Content-ID should be globally unique. A common practice is `part1.timestamp@domain.com`. + RFC 2392 requires a valid `addr-spec` which includes an `@` symbol. The library does not enforce this, but stricter clients might reject CIDs without an `@`. +- **Angle Brackets**: The library automatically adds angle brackets `<` and `>` to the `Content-ID` header if they are missing. For example setting `cid` to `my-id` results in the header `Content-ID: `. + + diff --git a/doc/rfc3030.txt b/doc/rfc3030.txt new file mode 100644 index 0000000..821b675 --- /dev/null +++ b/doc/rfc3030.txt @@ -0,0 +1,675 @@ + + + + + + +Network Working Group G. Vaudreuil +Request for Comments: 3030 Lucent Technologies +Obsolete: 1830 December 2000 +Category: Standards Track + + + SMTP Service Extensions + for Transmission of Large + and Binary MIME Messages + +Status of this Memo + + This document specifies an Internet standards track protocol for the + Internet community, and requests discussion and suggestions for + improvements. Please refer to the current edition of the "Internet + Official Protocol Standards" (STD 1) for the standardization state + and status of this protocol. Distribution of this memo is unlimited. + +Copyright Notice + + Copyright (C) The Internet Society (2000). All Rights Reserved. + +Abstract + + This memo defines two extensions to the SMTP (Simple Mail Transfer + Protocol) service. The first extension enables a SMTP client and + server to negotiate the use of an alternative to the DATA command, + called "BDAT", for efficiently sending large MIME (Multipurpose + Internet Mail Extensions) messages. The second extension takes + advantage of the BDAT command to permit the negotiated sending of + MIME messages that employ the binary transfer encoding. This + document is intended to update and obsolete RFC 1830. + +Working Group Summary + + This protocol is not the product of an IETF working group, however + the specification resulted from discussions within the ESMTP working + group. The resulting protocol documented in RFC 1830 was classified + as experimental at that time due to questions about the robustness of + the Binary Content-Transfer-Encoding deployed in then existent MIME + implementations. As MIME has matured and other uses of the Binary + Content-Transfer-Encoding have been deployed, these concerns have + been allayed. With this document, Binary ESMTP is expected to become + standards-track. + + + + + + + +Vaudreuil Standards Track [Page 1] + +RFC 3030 Binary ESMTP December 2000 + + +Document Conventions + + The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", + "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this + document are to be interpreted as described in RFC 2119 [RFC2119]. + +Table of Contents + + 1. Overview ................................................... 2 + 2. Framework for the Large Message Extensions ................. 3 + 3. Framework for the Binary Service Extension ................. 5 + 4. Examples ................................................... 8 + 4.1 Simple Chunking .......................................... 8 + 4.2 Pipelining BINARYMIME .................................... 8 + 5. Security Considerations .................................... 9 + 6. References ................................................. 9 + 7. Author's Address ........................................... 10 + 8. Appendix A - Changes from RFC 1830 ......................... 11 + 9. Full Copyright Statement ................................... 12 + +1. Overview + + The MIME extensions to the Internet message format provides for the + transmission of many kinds of data that were previously unsupported + in Internet mail. Anticipating the need to transport the new media + more efficiently, the SMTP protocol has been extended to provide + transport for new message types. RFC 1652 defines one such extension + for the transmission of unencoded 8-bit MIME messages [8BIT]. This + service extension permits the receiver SMTP to declare support for + 8-bit body parts and the sender to request 8-bit transmission of a + particular message. + + One expected result of the use of MIME is that the Internet mail + system will be expected to carry very large mail messages. In such + transactions, there is a performance-based desire to eliminate the + requirement that the message be scanned for "CR LF . CR LF" sequences + upon sending and receiving to detect the end of message. + + Independent of the need to send large messages, Internet mail is + increasingly multimedia. There is a need to avoid the overhead of + base64 and quoted-printable encoding of binary objects sent using the + MIME message format over SMTP between hosts that support binary + message processing. + + + + + + + + +Vaudreuil Standards Track [Page 2] + +RFC 3030 Binary ESMTP December 2000 + + + This memo uses the mechanism defined in [ESMTP] to define two + extensions to the SMTP service whereby an SMTP server ("receiver- + SMTP") may declare support for the message chunking transmission mode + and support for the reception of Binary messages, which the SMTP + client ("sender-SMTP") is then free to use. + +2. Framework for the Large Message Extensions + + The following service extension is hereby defined: + + 1) The name of the data chunking service extension is "CHUNKING". + + 2) The EHLO keyword value associated with this extension is + "CHUNKING". + + 3) A new SMTP verb, BDAT, is defined as an alternative to the "DATA" + command of [RFC821]. The BDAT verb takes two arguments. The + first argument indicates the length, in octets, of the binary data + chunk. The second optional argument indicates that the data chunk + is the last. + + bdat-cmd ::= "BDAT" SP chunk-size [ SP end-marker ] CR LF + chunk-size ::= 1*DIGIT + end-marker ::= "LAST" + + 4) This extension may be used for SMTP message submission. [Submit] + + 5) Servers that offer the BDAT extension MUST continue to support the + regular SMTP DATA command. Clients are free to use DATA to + transfer appropriately encoded to servers that support the + CHUNKING extension if they wish to do so. + + The CHUNKING service extension enables the use of the BDAT + alternative to the DATA command. This extension can be used for any + message, whether 7-bit, 8BITMIME or BINARYMIME. + + When a sender-SMTP wishes to send (using the MAIL command) a large + message using the CHUNKING extension, it first issues the EHLO + command to the receiver-SMTP. If the receiver-SMTP responds with + code 250 to the EHLO command and the response includes the EHLO + keyword value CHUNKING, then the receiver-SMTP is indicating that it + supports the BDAT command and will accept the sending of messages in + chunks. + + After all MAIL and RCPT responses are collected and processed, the + message is sent using a series of BDAT commands. The BDAT command + takes one required argument, the exact length of the data segment in + + + + +Vaudreuil Standards Track [Page 3] + +RFC 3030 Binary ESMTP December 2000 + + + octets. The message data is sent immediately after the trailing + of the BDAT command line. Once the receiver-SMTP receives the + specified number of octets, it will return a 250 reply code. + + The optional LAST parameter on the BDAT command indicates that this + is the last chunk of message data to be sent. The last BDAT command + MAY have a byte-count of zero indicating there is no additional data + to be sent. Any BDAT command sent after the BDAT LAST is illegal and + MUST be replied to with a 503 "Bad sequence of commands" reply code. + The state resulting from this error is indeterminate. A RSET command + MUST be sent to clear the transaction before continuing. + + A 250 response MUST be sent to each successful BDAT data block within + a mail transaction. If a failure occurs after a BDAT command is + received, the receiver-SMTP MUST accept and discard the associated + message data before sending the appropriate 5XX or 4XX code. If a + 5XX or 4XX code is received by the sender-SMTP in response to a BDAT + chunk, the transaction should be considered failed and the sender- + SMTP MUST NOT send any additional BDAT segments. If the receiver- + SMTP has declared support for command pipelining [PIPE], the receiver + SMTP MUST be prepared to accept and discard additional BDAT chunks + already in the pipeline after the failed BDAT. + + Note: An error on the receiver-SMTP such as disk full or imminent + shutdown can only be reported after the BDAT segment has been + received. It is therefore important to choose a reasonable chunk + size given the expected end-to-end bandwidth. + + Note: Because the receiver-SMTP does not acknowledge the BDAT + command before the message data is sent, it is important to send + the BDAT only to systems that have declared their capability to + accept BDAT commands. Illegally sending a BDAT command and + associated message data to a non-CHUNKING capable system will + result in the receiver-SMTP parsing the associated message data as + if it were a potentially very long, ESMTP command line containing + binary data. + + The resulting state from a failed BDAT command is indeterminate. A + RSET command MUST be issued to clear the transaction before + additional commands may be sent. The RSET command, when issued after + the first BDAT and before the BDAT LAST, clears all segments sent + during that transaction and resets the session. + + DATA and BDAT commands cannot be used in the same transaction. If a + DATA statement is issued after a BDAT for the current transaction, a + 503 "Bad sequence of commands" MUST be issued. The state resulting + from this error is indeterminate. A RSET command MUST be sent to + + + + +Vaudreuil Standards Track [Page 4] + +RFC 3030 Binary ESMTP December 2000 + + + clear the transaction before continuing. There is no prohibition on + using DATA and BDAT in the same session, so long as they are not + mixed in the same transaction. + + The local storage size of a message may not accurately reflect the + actual size of the message sent due to local storage conventions. In + particular, text messages sent with the BDAT command MUST be sent in + the canonical MIME format with lines delimited with a . It + may not be possible to convert the entire message to the canonical + format at once. CHUNKING provides a mechanism to convert the message + to canonical form, accurately count the bytes, and send the message a + single chunk at a time. + + Note: Correct byte counting is essential. If the sender-SMTP + indicates a chunk-size larger than the actual chunk-size, the + receiver-SMTP will continue to wait for the remainder of the data + or when using streaming, will read the subsequent command as + additional message data. In the case where a portion of the + previous command was read as data, the parser will return a syntax + error when the incomplete command is read. + + If the sender-SMTP indicates a chunk-size smaller than the actual + chunk-size, the receiver-SMTP will interpret the remainder of the + message data as invalid commands. Note that the remainder of the + message data may be binary and as such lexicographical parsers + MUST be prepared to receive, process, and reject lines of + arbitrary octets. + +3. Framework for the Binary Service Extension + + The following service extension is hereby defined: + + 1) The name of the binary service extension is "BINARYMIME". + + 2) The EHLO keyword value associated with this extension is + "BINARYMIME". + + 3) The BINARYMIME service extension can only be used with the + "CHUNKING" service extension. + + 4) No parameter is used with the BINARYMIME keyword. + + 5) [8BIT] defines the BODY parameter for the MAIL command. This + extension defines an additional value for the BODY parameter, + "BINARYMIME". The value "BINARYMIME" associated with this + parameter indicates that this message is a Binary MIME message (in + + + + + +Vaudreuil Standards Track [Page 5] + +RFC 3030 Binary ESMTP December 2000 + + + strict compliance with [MIME]) with arbitrary octet content being + sent. The revised syntax of the value is as follows, using the + ABNF notation of [RFC822]: + + body-value ::= "7BIT" / "8BITMIME" / "BINARYMIME" + + 6) No new verbs are defined for the BINARYMIME extension. + + 7) This extension may be used for SMTP message submission. [Submit] + + 8) The maximum length of a MAIL FROM command line is increased by 16 + characters by the possible addition of the BODY=BINARYMIME keyword + and value;. + + A sender-SMTP may request that a binary MIME message be sent without + transport encoding by sending a BODY parameter with a value of + "BINARYMIME" with the MAIL command. When the receiver-SMTP accepts a + MAIL command with the BINARYMIME body-value, it agrees to preserve + all bits in each octet passed using the BDAT command. Once a + receiver-SMTP supporting the BINARYMIME service extension accepts a + message containing binary material, the receiver-SMTP MUST deliver or + relay the message in such a way as to preserve all bits in each + octet. + + BINARYMIME cannot be used with the DATA command. If a DATA command + is issued after a MAIL command containing the body-value of + "BINARYMIME", a 503 "Bad sequence of commands" response MUST be sent. + The resulting state from this error condition is indeterminate and + the transaction MUST be reset with the RSET command. + + It is especially important when using BINARYMIME to ensure that the + MIME message itself is properly formed. In particular, it is + essential that text be canonically encoded with each line properly + terminated with . Any transformation of text into non- + canonical MIME to observe local storage conventions MUST be reversed + before sending as BINARYMIME. Some line-oriented shortcuts will + break if used with BINARYMIME. A sender-SMTP MUST use the canonical + encoding for a given MIME content-type. In particular, text/* MUST + be sent with terminated lines. + + Note: Although CR and LF do not necessarily represent ends of text + lines in BDAT chunks and use of the binary transfer encoding is + allowed, the RFC 2781 prohibition against using a UTF-16 charset + within the text top-level media type remains. + + + + + + + +Vaudreuil Standards Track [Page 6] + +RFC 3030 Binary ESMTP December 2000 + + + The syntax of the extended MAIL command is identical to the MAIL + command in [RFC821], except that a BODY=BINARYMIME parameter and + value MUST be added. The complete syntax of this extended command is + defined in [ESMTP]. + + If a receiver-SMTP does not indicate support the BINARYMIME message + format then the sender-SMTP MUST NOT, under any circumstances, send + binary data. + + If the receiver-SMTP does not support BINARYMIME and the message to + be sent is a MIME object with a binary encoding, a sender-SMTP has + three options with which to forward the message. First, if the + receiver-SMTP supports the 8bit-MIMEtransport extension [8bit] and + the content is amenable to being encoded in 8bit, the sender-SMTP may + implement a gateway transformation to convert the message into valid + 8bit-encoded MIME. Second, it may implement a gateway transformation + to convert the message into valid 7bit-encoded MIME. Third, it may + treat this as a permanent error and handle it in the usual manner for + delivery failures. The specifics of MIME content-transfer-encodings, + including transformations from Binary MIME to 8bit or 7bit MIME are + not described by this RFC; the conversion is nevertheless constrained + in the following ways: + + 1. The conversion MUST cause no loss of information; MIME + transport encodings MUST be employed as needed to insure this + is the case. + + 2. The resulting message MUST be valid 7bit or 8bit MIME. In + particular, the transformation MUST NOT result in nested Base- + 64 or Quoted-Printable content-transfer-encodings. + + Note that at the time of this writing there are no mechanisms for + converting a binary MIME object into an 8-bit MIME object. Such a + transformation will require the specification of a new MIME content- + transfer-encoding. + + If the MIME message contains a "Binary" content-transfer-encoding and + the BODY parameter does not indicate BINARYMIME, the message MUST be + accepted. The message SHOULD be returned to the sender with an + appropriate DSN. The message contents MAY be returned to the sender + if the offending content can be mangled into a legal DSN structure. + "Fixing" and forwarding the offending content is beyond the scope of + this document. + + + + + + + + +Vaudreuil Standards Track [Page 7] + +RFC 3030 Binary ESMTP December 2000 + + +4. Examples + +4.1 Simple Chunking + + The following simple dialogue illustrates the use of the large + message extension to send a short pseudo-RFC 822 message to one + recipient using the CHUNKING extension: + + R: + S: + R: 220 cnri.reston.va.us SMTP service ready + S: EHLO ymir.claremont.edu + R: 250-cnri.reston.va.us says hello + R: 250 CHUNKING + S: MAIL FROM: + R: 250 Sender ok + S: RCPT TO: + R: 250 Recipient ok + S: BDAT 86 LAST + S: To: Susan@random.com + S: From: Sam@random.com + S: Subject: This is a bodyless test message + R: 250 Message OK, 86 octets received + S: QUIT + R: 221 Goodbye + +4.2 Pipelining BINARYMIME + + The following dialogue illustrates the use of the large message + extension to send a BINARYMIME object to two recipients using the + CHUNKING and PIPELINING extensions: + + R: + R: 220 cnri.reston.va.us SMTP service ready + S: EHLO ymir.claremont.edu + R: 250-cnri.reston.va.us says hello + R: 250-PIPELINING + R: 250-BINARYMIME + R: 250 CHUNKING + S: MAIL FROM: BODY=BINARYMIME + S: RCPT TO: + S: RCPT TO: + R: 250 ... Sender and BINARYMIME ok + R: 250 ... Recipient ok + R: 250 ... Recipient ok + S: BDAT 100000 + S: (First 10000 octets of canonical MIME message data) + + + +Vaudreuil Standards Track [Page 8] + +RFC 3030 Binary ESMTP December 2000 + + + S: BDAT 324 + S: (Remaining 324 octets of canonical MIME message data) + S: BDAT 0 LAST + R: 250 100000 octets received + R: 250 324 octets received + R: 250 Message OK, 100324 octets received + S: QUIT + R: 221 Goodbye + +5. Security Considerations + + This extension is not known to present any additional security issues + not already endemic to electronic mail and present in fully + conforming implementations of [RFC821], or otherwise made possible by + [MIME]. + +6. References + + [BINARY] Vaudreuil, G., "SMTP Service Extensions for Transmission of + Large and Binary MIME Messages", RFC 1830, August 1995. + + [RFC821] Postel, J., "Simple Mail Transfer Protocol", STD 10, RFC + 821, August 1982. + + [RFC822] Crocker, D., "Standard for the Format of ARPA Internet Text + Messages", STD 11, RFC 822, August 1982. + + [MIME] Borenstein, N. and N. Freed, "Multipurpose Internet Mail + Extensions (MIME) Part One: Format of Internet Message + Bodies", RFC 2045, November 1996. + + [SUBMIT] Gellens, R. and J. Klensin, "Message Submission", RFC 2476, + December 1998. + + [ESMTP] Klensin, J., Freed, N., Rose, M., Stefferud, E. and D. + Crocker, "SMTP Service Extensions", RFC 1869, November + 1995. + + [8BIT] Klensin, J., Freed, N., Rose, M., Stefferud, E. and D. + Crocker, "SMTP Service Extension for 8bit-MIMEtransport", + RFC 1652, July 1994. + + [PIPE] Freed, N., "SMTP Service Extensions for Command + Pipelining", RFC 2920, September 2000. + + [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate + Requirement Levels", BCP 14, RFC 2119, March 1997. + + + + +Vaudreuil Standards Track [Page 9] + +RFC 3030 Binary ESMTP December 2000 + + +7. Author's Address + + Gregory M. Vaudreuil + Lucent Technologies + 17080 Dallas Parkway + Dallas, TX 75248-1905 + + Phone/Fax: +1-972-733-2722 + EMail: GregV@ieee.org + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Vaudreuil Standards Track [Page 10] + +RFC 3030 Binary ESMTP December 2000 + + +Appendix A - Changes from RFC 1830 + + Numerous editorial changes including required intellectual property + boilerplate and revised authors contact information + + Corrected the simple chunking example to use the correct number of + bytes. Updated the pipelining example to illustrate use of the BDAT + 0 LAST construct. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Vaudreuil Standards Track [Page 11] + +RFC 3030 Binary ESMTP December 2000 + + +Full Copyright Statement + + Copyright (C) The Internet Society (2000). All Rights Reserved. + + This document and translations of it may be copied and furnished to + others, and derivative works that comment on or otherwise explain it + or assist in its implementation may be prepared, copied, published + and distributed, in whole or in part, without restriction of any + kind, provided that the above copyright notice and this paragraph are + included on all such copies and derivative works. However, this + document itself may not be modified in any way, such as by removing + the copyright notice or references to the Internet Society or other + Internet organizations, except as needed for the purpose of + developing Internet standards in which case the procedures for + copyrights defined in the Internet Standards process must be + followed, or as required to translate it into languages other than + English. + + The limited permissions granted above are perpetual and will not be + revoked by the Internet Society or its successors or assigns. + + This document and the information contained herein is provided on an + "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING + TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING + BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION + HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF + MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. + +Acknowledgement + + Funding for the RFC Editor function is currently provided by the + Internet Society. + + + + + + + + + + + + + + + + + + + +Vaudreuil Standards Track [Page 12] + diff --git a/doc/rfc5321.txt b/doc/rfc5321.txt new file mode 100644 index 0000000..4c33ddd --- /dev/null +++ b/doc/rfc5321.txt @@ -0,0 +1,5323 @@ + + + + + + +Network Working Group J. Klensin +Request for Comments: 5321 October 2008 +Obsoletes: 2821 +Updates: 1123 +Category: Standards Track + + + Simple Mail Transfer Protocol + +Status of This Memo + + This document specifies an Internet standards track protocol for the + Internet community, and requests discussion and suggestions for + improvements. Please refer to the current edition of the "Internet + Official Protocol Standards" (STD 1) for the standardization state + and status of this protocol. Distribution of this memo is unlimited. + +Abstract + + This document is a specification of the basic protocol for Internet + electronic mail transport. It consolidates, updates, and clarifies + several previous documents, making all or parts of most of them + obsolete. It covers the SMTP extension mechanisms and best practices + for the contemporary Internet, but does not provide details about + particular extensions. Although SMTP was designed as a mail + transport and delivery protocol, this specification also contains + information that is important to its use as a "mail submission" + protocol for "split-UA" (User Agent) mail reading systems and mobile + environments. + + + + + + + + + + + + + + + + + + + + + + +Klensin Standards Track [Page 1] + +RFC 5321 SMTP October 2008 + + +Table of Contents + + 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 5 + 1.1. Transport of Electronic Mail . . . . . . . . . . . . . . . 5 + 1.2. History and Context for This Document . . . . . . . . . . 5 + 1.3. Document Conventions . . . . . . . . . . . . . . . . . . . 6 + 2. The SMTP Model . . . . . . . . . . . . . . . . . . . . . . . . 7 + 2.1. Basic Structure . . . . . . . . . . . . . . . . . . . . . 7 + 2.2. The Extension Model . . . . . . . . . . . . . . . . . . . 9 + 2.2.1. Background . . . . . . . . . . . . . . . . . . . . . . 9 + 2.2.2. Definition and Registration of Extensions . . . . . . 10 + 2.2.3. Special Issues with Extensions . . . . . . . . . . . . 11 + 2.3. SMTP Terminology . . . . . . . . . . . . . . . . . . . . . 11 + 2.3.1. Mail Objects . . . . . . . . . . . . . . . . . . . . . 11 + 2.3.2. Senders and Receivers . . . . . . . . . . . . . . . . 12 + 2.3.3. Mail Agents and Message Stores . . . . . . . . . . . . 12 + 2.3.4. Host . . . . . . . . . . . . . . . . . . . . . . . . . 13 + 2.3.5. Domain Names . . . . . . . . . . . . . . . . . . . . . 13 + 2.3.6. Buffer and State Table . . . . . . . . . . . . . . . . 14 + 2.3.7. Commands and Replies . . . . . . . . . . . . . . . . . 14 + 2.3.8. Lines . . . . . . . . . . . . . . . . . . . . . . . . 14 + 2.3.9. Message Content and Mail Data . . . . . . . . . . . . 15 + 2.3.10. Originator, Delivery, Relay, and Gateway Systems . . . 15 + 2.3.11. Mailbox and Address . . . . . . . . . . . . . . . . . 15 + 2.4. General Syntax Principles and Transaction Model . . . . . 16 + 3. The SMTP Procedures: An Overview . . . . . . . . . . . . . . . 17 + 3.1. Session Initiation . . . . . . . . . . . . . . . . . . . . 18 + 3.2. Client Initiation . . . . . . . . . . . . . . . . . . . . 18 + 3.3. Mail Transactions . . . . . . . . . . . . . . . . . . . . 19 + 3.4. Forwarding for Address Correction or Updating . . . . . . 21 + 3.5. Commands for Debugging Addresses . . . . . . . . . . . . . 22 + 3.5.1. Overview . . . . . . . . . . . . . . . . . . . . . . . 22 + 3.5.2. VRFY Normal Response . . . . . . . . . . . . . . . . . 24 + 3.5.3. Meaning of VRFY or EXPN Success Response . . . . . . . 25 + 3.5.4. Semantics and Applications of EXPN . . . . . . . . . . 26 + 3.6. Relaying and Mail Routing . . . . . . . . . . . . . . . . 26 + 3.6.1. Source Routes and Relaying . . . . . . . . . . . . . . 26 + 3.6.2. Mail eXchange Records and Relaying . . . . . . . . . . 26 + 3.6.3. Message Submission Servers as Relays . . . . . . . . . 27 + 3.7. Mail Gatewaying . . . . . . . . . . . . . . . . . . . . . 28 + 3.7.1. Header Fields in Gatewaying . . . . . . . . . . . . . 28 + 3.7.2. Received Lines in Gatewaying . . . . . . . . . . . . . 29 + 3.7.3. Addresses in Gatewaying . . . . . . . . . . . . . . . 29 + 3.7.4. Other Header Fields in Gatewaying . . . . . . . . . . 29 + 3.7.5. Envelopes in Gatewaying . . . . . . . . . . . . . . . 30 + 3.8. Terminating Sessions and Connections . . . . . . . . . . . 30 + 3.9. Mailing Lists and Aliases . . . . . . . . . . . . . . . . 31 + 3.9.1. Alias . . . . . . . . . . . . . . . . . . . . . . . . 31 + + + +Klensin Standards Track [Page 2] + +RFC 5321 SMTP October 2008 + + + 3.9.2. List . . . . . . . . . . . . . . . . . . . . . . . . . 31 + 4. The SMTP Specifications . . . . . . . . . . . . . . . . . . . 32 + 4.1. SMTP Commands . . . . . . . . . . . . . . . . . . . . . . 32 + 4.1.1. Command Semantics and Syntax . . . . . . . . . . . . . 32 + 4.1.2. Command Argument Syntax . . . . . . . . . . . . . . . 41 + 4.1.3. Address Literals . . . . . . . . . . . . . . . . . . . 43 + 4.1.4. Order of Commands . . . . . . . . . . . . . . . . . . 44 + 4.1.5. Private-Use Commands . . . . . . . . . . . . . . . . . 46 + 4.2. SMTP Replies . . . . . . . . . . . . . . . . . . . . . . . 46 + 4.2.1. Reply Code Severities and Theory . . . . . . . . . . . 48 + 4.2.2. Reply Codes by Function Groups . . . . . . . . . . . . 50 + 4.2.3. Reply Codes in Numeric Order . . . . . . . . . . . . . 52 + 4.2.4. Reply Code 502 . . . . . . . . . . . . . . . . . . . . 53 + 4.2.5. Reply Codes after DATA and the Subsequent + . . . . . . . . . . . . . . . . . . . . . 53 + 4.3. Sequencing of Commands and Replies . . . . . . . . . . . . 54 + 4.3.1. Sequencing Overview . . . . . . . . . . . . . . . . . 54 + 4.3.2. Command-Reply Sequences . . . . . . . . . . . . . . . 55 + 4.4. Trace Information . . . . . . . . . . . . . . . . . . . . 57 + 4.5. Additional Implementation Issues . . . . . . . . . . . . . 61 + 4.5.1. Minimum Implementation . . . . . . . . . . . . . . . . 61 + 4.5.2. Transparency . . . . . . . . . . . . . . . . . . . . . 62 + 4.5.3. Sizes and Timeouts . . . . . . . . . . . . . . . . . . 62 + 4.5.3.1. Size Limits and Minimums . . . . . . . . . . . . . 62 + 4.5.3.1.1. Local-part . . . . . . . . . . . . . . . . . . 63 + 4.5.3.1.2. Domain . . . . . . . . . . . . . . . . . . . . 63 + 4.5.3.1.3. Path . . . . . . . . . . . . . . . . . . . . . 63 + 4.5.3.1.4. Command Line . . . . . . . . . . . . . . . . . 63 + 4.5.3.1.5. Reply Line . . . . . . . . . . . . . . . . . . 63 + 4.5.3.1.6. Text Line . . . . . . . . . . . . . . . . . . 63 + 4.5.3.1.7. Message Content . . . . . . . . . . . . . . . 63 + 4.5.3.1.8. Recipients Buffer . . . . . . . . . . . . . . 64 + 4.5.3.1.9. Treatment When Limits Exceeded . . . . . . . . 64 + 4.5.3.1.10. Too Many Recipients Code . . . . . . . . . . . 64 + 4.5.3.2. Timeouts . . . . . . . . . . . . . . . . . . . . . 65 + 4.5.3.2.1. Initial 220 Message: 5 Minutes . . . . . . . . 65 + 4.5.3.2.2. MAIL Command: 5 Minutes . . . . . . . . . . . 65 + 4.5.3.2.3. RCPT Command: 5 Minutes . . . . . . . . . . . 65 + 4.5.3.2.4. DATA Initiation: 2 Minutes . . . . . . . . . . 66 + 4.5.3.2.5. Data Block: 3 Minutes . . . . . . . . . . . . 66 + 4.5.3.2.6. DATA Termination: 10 Minutes. . . . . . . . . 66 + 4.5.3.2.7. Server Timeout: 5 Minutes. . . . . . . . . . . 66 + 4.5.4. Retry Strategies . . . . . . . . . . . . . . . . . . . 66 + 4.5.5. Messages with a Null Reverse-Path . . . . . . . . . . 68 + 5. Address Resolution and Mail Handling . . . . . . . . . . . . . 69 + 5.1. Locating the Target Host . . . . . . . . . . . . . . . . . 69 + 5.2. IPv6 and MX Records . . . . . . . . . . . . . . . . . . . 71 + 6. Problem Detection and Handling . . . . . . . . . . . . . . . . 71 + + + +Klensin Standards Track [Page 3] + +RFC 5321 SMTP October 2008 + + + 6.1. Reliable Delivery and Replies by Email . . . . . . . . . . 71 + 6.2. Unwanted, Unsolicited, and "Attack" Messages . . . . . . . 72 + 6.3. Loop Detection . . . . . . . . . . . . . . . . . . . . . . 73 + 6.4. Compensating for Irregularities . . . . . . . . . . . . . 73 + 7. Security Considerations . . . . . . . . . . . . . . . . . . . 75 + 7.1. Mail Security and Spoofing . . . . . . . . . . . . . . . . 75 + 7.2. "Blind" Copies . . . . . . . . . . . . . . . . . . . . . . 76 + 7.3. VRFY, EXPN, and Security . . . . . . . . . . . . . . . . . 76 + 7.4. Mail Rerouting Based on the 251 and 551 Response Codes . . 77 + 7.5. Information Disclosure in Announcements . . . . . . . . . 77 + 7.6. Information Disclosure in Trace Fields . . . . . . . . . . 78 + 7.7. Information Disclosure in Message Forwarding . . . . . . . 78 + 7.8. Resistance to Attacks . . . . . . . . . . . . . . . . . . 78 + 7.9. Scope of Operation of SMTP Servers . . . . . . . . . . . . 78 + 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 79 + 9. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 80 + 10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 81 + 10.1. Normative References . . . . . . . . . . . . . . . . . . . 81 + 10.2. Informative References . . . . . . . . . . . . . . . . . . 82 + Appendix A. TCP Transport Service . . . . . . . . . . . . . . . . 85 + Appendix B. Generating SMTP Commands from RFC 822 Header + Fields . . . . . . . . . . . . . . . . . . . . . . . 85 + Appendix C. Source Routes . . . . . . . . . . . . . . . . . . . . 86 + Appendix D. Scenarios . . . . . . . . . . . . . . . . . . . . . . 87 + D.1. A Typical SMTP Transaction Scenario . . . . . . . . . . . 88 + D.2. Aborted SMTP Transaction Scenario . . . . . . . . . . . . 89 + D.3. Relayed Mail Scenario . . . . . . . . . . . . . . . . . . 90 + D.4. Verifying and Sending Scenario . . . . . . . . . . . . . . 92 + Appendix E. Other Gateway Issues . . . . . . . . . . . . . . . . 92 + Appendix F. Deprecated Features of RFC 821 . . . . . . . . . . . 93 + F.1. TURN . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 + F.2. Source Routing . . . . . . . . . . . . . . . . . . . . . . 93 + F.3. HELO . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 + F.4. #-literals . . . . . . . . . . . . . . . . . . . . . . . . 94 + F.5. Dates and Years . . . . . . . . . . . . . . . . . . . . . 94 + F.6. Sending versus Mailing . . . . . . . . . . . . . . . . . . 94 + + + + + + + + + + + + + + + +Klensin Standards Track [Page 4] + +RFC 5321 SMTP October 2008 + + +1. Introduction + +1.1. Transport of Electronic Mail + + The objective of the Simple Mail Transfer Protocol (SMTP) is to + transfer mail reliably and efficiently. + + SMTP is independent of the particular transmission subsystem and + requires only a reliable ordered data stream channel. While this + document specifically discusses transport over TCP, other transports + are possible. Appendices to RFC 821 [1] describe some of them. + + An important feature of SMTP is its capability to transport mail + across multiple networks, usually referred to as "SMTP mail relaying" + (see Section 3.6). A network consists of the mutually-TCP-accessible + hosts on the public Internet, the mutually-TCP-accessible hosts on a + firewall-isolated TCP/IP Intranet, or hosts in some other LAN or WAN + environment utilizing a non-TCP transport-level protocol. Using + SMTP, a process can transfer mail to another process on the same + network or to some other network via a relay or gateway process + accessible to both networks. + + In this way, a mail message may pass through a number of intermediate + relay or gateway hosts on its path from sender to ultimate recipient. + The Mail eXchanger mechanisms of the domain name system (RFC 1035 + [2], RFC 974 [12], and Section 5 of this document) are used to + identify the appropriate next-hop destination for a message being + transported. + +1.2. History and Context for This Document + + This document is a specification of the basic protocol for the + Internet electronic mail transport. It consolidates, updates and + clarifies, but does not add new or change existing functionality of + the following: + + o the original SMTP (Simple Mail Transfer Protocol) specification of + RFC 821 [1], + + o domain name system requirements and implications for mail + transport from RFC 1035 [2] and RFC 974 [12], + + o the clarifications and applicability statements in RFC 1123 [3], + and + + o material drawn from the SMTP Extension mechanisms in RFC 1869 + [13]. + + + + +Klensin Standards Track [Page 5] + +RFC 5321 SMTP October 2008 + + + o Editorial and clarification changes to RFC 2821 [14] to bring that + specification to Draft Standard. + + It obsoletes RFC 821, RFC 974, RFC 1869, and RFC 2821 and updates RFC + 1123 (replacing the mail transport materials of RFC 1123). However, + RFC 821 specifies some features that were not in significant use in + the Internet by the mid-1990s and (in appendices) some additional + transport models. Those sections are omitted here in the interest of + clarity and brevity; readers needing them should refer to RFC 821. + + It also includes some additional material from RFC 1123 that required + amplification. This material has been identified in multiple ways, + mostly by tracking flaming on various lists and newsgroups and + problems of unusual readings or interpretations that have appeared as + the SMTP extensions have been deployed. Where this specification + moves beyond consolidation and actually differs from earlier + documents, it supersedes them technically as well as textually. + + Although SMTP was designed as a mail transport and delivery protocol, + this specification also contains information that is important to its + use as a "mail submission" protocol, as recommended for Post Office + Protocol (POP) (RFC 937 [15], RFC 1939 [16]) and IMAP (RFC 3501 + [17]). In general, the separate mail submission protocol specified + in RFC 4409 [18] is now preferred to direct use of SMTP; more + discussion of that subject appears in that document. + + Section 2.3 provides definitions of terms specific to this document. + Except when the historical terminology is necessary for clarity, this + document uses the current 'client' and 'server' terminology to + identify the sending and receiving SMTP processes, respectively. + + A companion document, RFC 5322 [4], discusses message header sections + and bodies and specifies formats and structures for them. + +1.3. Document Conventions + + The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", + "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this + document are to be interpreted as described in RFC 2119 [5]. As each + of these terms was intentionally and carefully chosen to improve the + interoperability of email, each use of these terms is to be treated + as a conformance requirement. + + Because this document has a long history and to avoid the risk of + various errors and of confusing readers and documents that point to + this one, most examples and the domain names they contain are + preserved from RFC 2821. Readers are cautioned that these are + + + + +Klensin Standards Track [Page 6] + +RFC 5321 SMTP October 2008 + + + illustrative examples that should not actually be used in either code + or configuration files. + +2. The SMTP Model + +2.1. Basic Structure + + The SMTP design can be pictured as: + + +----------+ +----------+ + +------+ | | | | + | User |<-->| | SMTP | | + +------+ | Client- |Commands/Replies| Server- | + +------+ | SMTP |<-------------->| SMTP | +------+ + | File |<-->| | and Mail | |<-->| File | + |System| | | | | |System| + +------+ +----------+ +----------+ +------+ + SMTP client SMTP server + + When an SMTP client has a message to transmit, it establishes a two- + way transmission channel to an SMTP server. The responsibility of an + SMTP client is to transfer mail messages to one or more SMTP servers, + or report its failure to do so. + + The means by which a mail message is presented to an SMTP client, and + how that client determines the identifier(s) ("names") of the + domain(s) to which mail messages are to be transferred, is a local + matter, and is not addressed by this document. In some cases, the + designated domain(s), or those determined by an SMTP client, will + identify the final destination(s) of the mail message. In other + cases, common with SMTP clients associated with implementations of + the POP (RFC 937 [15], RFC 1939 [16]) or IMAP (RFC 3501 [17]) + protocols, or when the SMTP client is inside an isolated transport + service environment, the domain determined will identify an + intermediate destination through which all mail messages are to be + relayed. SMTP clients that transfer all traffic regardless of the + target domains associated with the individual messages, or that do + not maintain queues for retrying message transmissions that initially + cannot be completed, may otherwise conform to this specification but + are not considered fully-capable. Fully-capable SMTP + implementations, including the relays used by these less capable + ones, and their destinations, are expected to support all of the + queuing, retrying, and alternate address functions discussed in this + specification. In many situations and configurations, the less- + capable clients discussed above SHOULD be using the message + submission protocol (RFC 4409 [18]) rather than SMTP. + + + + + +Klensin Standards Track [Page 7] + +RFC 5321 SMTP October 2008 + + + The means by which an SMTP client, once it has determined a target + domain, determines the identity of an SMTP server to which a copy of + a message is to be transferred, and then performs that transfer, is + covered by this document. To effect a mail transfer to an SMTP + server, an SMTP client establishes a two-way transmission channel to + that SMTP server. An SMTP client determines the address of an + appropriate host running an SMTP server by resolving a destination + domain name to either an intermediate Mail eXchanger host or a final + target host. + + An SMTP server may be either the ultimate destination or an + intermediate "relay" (that is, it may assume the role of an SMTP + client after receiving the message) or "gateway" (that is, it may + transport the message further using some protocol other than SMTP). + SMTP commands are generated by the SMTP client and sent to the SMTP + server. SMTP replies are sent from the SMTP server to the SMTP + client in response to the commands. + + In other words, message transfer can occur in a single connection + between the original SMTP-sender and the final SMTP-recipient, or can + occur in a series of hops through intermediary systems. In either + case, once the server has issued a success response at the end of the + mail data, a formal handoff of responsibility for the message occurs: + the protocol requires that a server MUST accept responsibility for + either delivering the message or properly reporting the failure to do + so (see Sections 6.1, 6.2, and 7.8, below). + + Once the transmission channel is established and initial handshaking + is completed, the SMTP client normally initiates a mail transaction. + Such a transaction consists of a series of commands to specify the + originator and destination of the mail and transmission of the + message content (including any lines in the header section or other + structure) itself. When the same message is sent to multiple + recipients, this protocol encourages the transmission of only one + copy of the data for all recipients at the same destination (or + intermediate relay) host. + + The server responds to each command with a reply; replies may + indicate that the command was accepted, that additional commands are + expected, or that a temporary or permanent error condition exists. + Commands specifying the sender or recipients may include server- + permitted SMTP service extension requests, as discussed in + Section 2.2. The dialog is purposely lock-step, one-at-a-time, + although this can be modified by mutually agreed upon extension + requests such as command pipelining (RFC 2920 [19]). + + Once a given mail message has been transmitted, the client may either + request that the connection be shut down or may initiate other mail + + + +Klensin Standards Track [Page 8] + +RFC 5321 SMTP October 2008 + + + transactions. In addition, an SMTP client may use a connection to an + SMTP server for ancillary services such as verification of email + addresses or retrieval of mailing list subscriber addresses. + + As suggested above, this protocol provides mechanisms for the + transmission of mail. Historically, this transmission normally + occurred directly from the sending user's host to the receiving + user's host when the two hosts are connected to the same transport + service. When they are not connected to the same transport service, + transmission occurs via one or more relay SMTP servers. A very + common case in the Internet today involves submission of the original + message to an intermediate, "message submission" server, which is + similar to a relay but has some additional properties; such servers + are discussed in Section 2.3.10 and at some length in RFC 4409 [18]. + An intermediate host that acts as either an SMTP relay or as a + gateway into some other transmission environment is usually selected + through the use of the domain name service (DNS) Mail eXchanger + mechanism. + + Usually, intermediate hosts are determined via the DNS MX record, not + by explicit "source" routing (see Section 5 and Appendix C and + Appendix F.2). + +2.2. The Extension Model + +2.2.1. Background + + In an effort that started in 1990, approximately a decade after RFC + 821 was completed, the protocol was modified with a "service + extensions" model that permits the client and server to agree to + utilize shared functionality beyond the original SMTP requirements. + The SMTP extension mechanism defines a means whereby an extended SMTP + client and server may recognize each other, and the server can inform + the client as to the service extensions that it supports. + + Contemporary SMTP implementations MUST support the basic extension + mechanisms. For instance, servers MUST support the EHLO command even + if they do not implement any specific extensions and clients SHOULD + preferentially utilize EHLO rather than HELO. (However, for + compatibility with older conforming implementations, SMTP clients and + servers MUST support the original HELO mechanisms as a fallback.) + Unless the different characteristics of HELO must be identified for + interoperability purposes, this document discusses only EHLO. + + SMTP is widely deployed and high-quality implementations have proven + to be very robust. However, the Internet community now considers + some services to be important that were not anticipated when the + protocol was first designed. If support for those services is to be + + + +Klensin Standards Track [Page 9] + +RFC 5321 SMTP October 2008 + + + added, it must be done in a way that permits older implementations to + continue working acceptably. The extension framework consists of: + + o The SMTP command EHLO, superseding the earlier HELO, + + o a registry of SMTP service extensions, + + o additional parameters to the SMTP MAIL and RCPT commands, and + + o optional replacements for commands defined in this protocol, such + as for DATA in non-ASCII transmissions (RFC 3030 [20]). + + SMTP's strength comes primarily from its simplicity. Experience with + many protocols has shown that protocols with few options tend towards + ubiquity, whereas protocols with many options tend towards obscurity. + + Each and every extension, regardless of its benefits, must be + carefully scrutinized with respect to its implementation, deployment, + and interoperability costs. In many cases, the cost of extending the + SMTP service will likely outweigh the benefit. + +2.2.2. Definition and Registration of Extensions + + The IANA maintains a registry of SMTP service extensions. A + corresponding EHLO keyword value is associated with each extension. + Each service extension registered with the IANA must be defined in a + formal Standards-Track or IESG-approved Experimental protocol + document. The definition must include: + + o the textual name of the SMTP service extension; + + o the EHLO keyword value associated with the extension; + + o the syntax and possible values of parameters associated with the + EHLO keyword value; + + o any additional SMTP verbs associated with the extension + (additional verbs will usually be, but are not required to be, the + same as the EHLO keyword value); + + o any new parameters the extension associates with the MAIL or RCPT + verbs; + + o a description of how support for the extension affects the + behavior of a server and client SMTP; and + + + + + + +Klensin Standards Track [Page 10] + +RFC 5321 SMTP October 2008 + + + o the increment by which the extension is increasing the maximum + length of the commands MAIL and/or RCPT, over that specified in + this Standard. + + In addition, any EHLO keyword value starting with an upper or lower + case "X" refers to a local SMTP service extension used exclusively + through bilateral agreement. Keywords beginning with "X" MUST NOT be + used in a registered service extension. Conversely, keyword values + presented in the EHLO response that do not begin with "X" MUST + correspond to a Standard, Standards-Track, or IESG-approved + Experimental SMTP service extension registered with IANA. A + conforming server MUST NOT offer non-"X"-prefixed keyword values that + are not described in a registered extension. + + Additional verbs and parameter names are bound by the same rules as + EHLO keywords; specifically, verbs beginning with "X" are local + extensions that may not be registered or standardized. Conversely, + verbs not beginning with "X" must always be registered. + +2.2.3. Special Issues with Extensions + + Extensions that change fairly basic properties of SMTP operation are + permitted. The text in other sections of this document must be + understood in that context. In particular, extensions can change the + minimum limits specified in Section 4.5.3, can change the ASCII + character set requirement as mentioned above, or can introduce some + optional modes of message handling. + + In particular, if an extension implies that the delivery path + normally supports special features of that extension, and an + intermediate SMTP system finds a next hop that does not support the + required extension, it MAY choose, based on the specific extension + and circumstances, to requeue the message and try later and/or try an + alternate MX host. If this strategy is employed, the timeout to fall + back to an unextended format (if one is available) SHOULD be less + than the normal timeout for bouncing as undeliverable (e.g., if + normal timeout is three days, the requeue timeout before attempting + to transmit the mail without the extension might be one day). + +2.3. SMTP Terminology + +2.3.1. Mail Objects + + SMTP transports a mail object. A mail object contains an envelope + and content. + + The SMTP envelope is sent as a series of SMTP protocol units + (described in Section 3). It consists of an originator address (to + + + +Klensin Standards Track [Page 11] + +RFC 5321 SMTP October 2008 + + + which error reports should be directed), one or more recipient + addresses, and optional protocol extension material. Historically, + variations on the reverse-path (originator) address specification + command (MAIL) could be used to specify alternate delivery modes, + such as immediate display; those variations have now been deprecated + (see Appendix F and Appendix F.6). + + The SMTP content is sent in the SMTP DATA protocol unit and has two + parts: the header section and the body. If the content conforms to + other contemporary standards, the header section consists of a + collection of header fields, each consisting of a header name, a + colon, and data, structured as in the message format specification + (RFC 5322 [4]); the body, if structured, is defined according to MIME + (RFC 2045 [21]). The content is textual in nature, expressed using + the US-ASCII repertoire [6]. Although SMTP extensions (such as + "8BITMIME", RFC 1652 [22]) may relax this restriction for the content + body, the content header fields are always encoded using the US-ASCII + repertoire. Two MIME extensions (RFC 2047 [23] and RFC 2231 [24]) + define an algorithm for representing header values outside the US- + ASCII repertoire, while still encoding them using the US-ASCII + repertoire. + +2.3.2. Senders and Receivers + + In RFC 821, the two hosts participating in an SMTP transaction were + described as the "SMTP-sender" and "SMTP-receiver". This document + has been changed to reflect current industry terminology and hence + refers to them as the "SMTP client" (or sometimes just "the client") + and "SMTP server" (or just "the server"), respectively. Since a + given host may act both as server and client in a relay situation, + "receiver" and "sender" terminology is still used where needed for + clarity. + +2.3.3. Mail Agents and Message Stores + + Additional mail system terminology became common after RFC 821 was + published and, where convenient, is used in this specification. In + particular, SMTP servers and clients provide a mail transport service + and therefore act as "Mail Transfer Agents" (MTAs). "Mail User + Agents" (MUAs or UAs) are normally thought of as the sources and + targets of mail. At the source, an MUA might collect mail to be + transmitted from a user and hand it off to an MTA; the final + ("delivery") MTA would be thought of as handing the mail off to an + MUA (or at least transferring responsibility to it, e.g., by + depositing the message in a "message store"). However, while these + terms are used with at least the appearance of great precision in + other environments, the implied boundaries between MUAs and MTAs + often do not accurately match common, and conforming, practices with + + + +Klensin Standards Track [Page 12] + +RFC 5321 SMTP October 2008 + + + Internet mail. Hence, the reader should be cautious about inferring + the strong relationships and responsibilities that might be implied + if these terms were used elsewhere. + +2.3.4. Host + + For the purposes of this specification, a host is a computer system + attached to the Internet (or, in some cases, to a private TCP/IP + network) and supporting the SMTP protocol. Hosts are known by names + (see the next section); they SHOULD NOT be identified by numerical + addresses, i.e., by address literals as described in Section 4.1.2. + +2.3.5. Domain Names + + A domain name (or often just a "domain") consists of one or more + components, separated by dots if more than one appears. In the case + of a top-level domain used by itself in an email address, a single + string is used without any dots. This makes the requirement, + described in more detail below, that only fully-qualified domain + names appear in SMTP transactions on the public Internet, + particularly important where top-level domains are involved. These + components ("labels" in DNS terminology, RFC 1035 [2]) are restricted + for SMTP purposes to consist of a sequence of letters, digits, and + hyphens drawn from the ASCII character set [6]. Domain names are + used as names of hosts and of other entities in the domain name + hierarchy. For example, a domain may refer to an alias (label of a + CNAME RR) or the label of Mail eXchanger records to be used to + deliver mail instead of representing a host name. See RFC 1035 [2] + and Section 5 of this specification. + + The domain name, as described in this document and in RFC 1035 [2], + is the entire, fully-qualified name (often referred to as an "FQDN"). + A domain name that is not in FQDN form is no more than a local alias. + Local aliases MUST NOT appear in any SMTP transaction. + + Only resolvable, fully-qualified domain names (FQDNs) are permitted + when domain names are used in SMTP. In other words, names that can + be resolved to MX RRs or address (i.e., A or AAAA) RRs (as discussed + in Section 5) are permitted, as are CNAME RRs whose targets can be + resolved, in turn, to MX or address RRs. Local nicknames or + unqualified names MUST NOT be used. There are two exceptions to the + rule requiring FQDNs: + + o The domain name given in the EHLO command MUST be either a primary + host name (a domain name that resolves to an address RR) or, if + the host has no name, an address literal, as described in + Section 4.1.3 and discussed further in the EHLO discussion of + Section 4.1.4. + + + +Klensin Standards Track [Page 13] + +RFC 5321 SMTP October 2008 + + + o The reserved mailbox name "postmaster" may be used in a RCPT + command without domain qualification (see Section 4.1.1.3) and + MUST be accepted if so used. + +2.3.6. Buffer and State Table + + SMTP sessions are stateful, with both parties carefully maintaining a + common view of the current state. In this document, we model this + state by a virtual "buffer" and a "state table" on the server that + may be used by the client to, for example, "clear the buffer" or + "reset the state table", causing the information in the buffer to be + discarded and the state to be returned to some previous state. + +2.3.7. Commands and Replies + + SMTP commands and, unless altered by a service extension, message + data, are transmitted from the sender to the receiver via the + transmission channel in "lines". + + An SMTP reply is an acknowledgment (positive or negative) sent in + "lines" from receiver to sender via the transmission channel in + response to a command. The general form of a reply is a numeric + completion code (indicating failure or success) usually followed by a + text string. The codes are for use by programs and the text is + usually intended for human users. RFC 3463 [25], specifies further + structuring of the reply strings, including the use of supplemental + and more specific completion codes (see also RFC 5248 [26]). + +2.3.8. Lines + + Lines consist of zero or more data characters terminated by the + sequence ASCII character "CR" (hex value 0D) followed immediately by + ASCII character "LF" (hex value 0A). This termination sequence is + denoted as in this document. Conforming implementations MUST + NOT recognize or generate any other character or character sequence + as a line terminator. Limits MAY be imposed on line lengths by + servers (see Section 4). + + In addition, the appearance of "bare" "CR" or "LF" characters in text + (i.e., either without the other) has a long history of causing + problems in mail implementations and applications that use the mail + system as a tool. SMTP client implementations MUST NOT transmit + these characters except when they are intended as line terminators + and then MUST, as indicated above, transmit them only as a + sequence. + + + + + + +Klensin Standards Track [Page 14] + +RFC 5321 SMTP October 2008 + + +2.3.9. Message Content and Mail Data + + The terms "message content" and "mail data" are used interchangeably + in this document to describe the material transmitted after the DATA + command is accepted and before the end of data indication is + transmitted. Message content includes the message header section and + the possibly structured message body. The MIME specification (RFC + 2045 [21]) provides the standard mechanisms for structured message + bodies. + +2.3.10. Originator, Delivery, Relay, and Gateway Systems + + This specification makes a distinction among four types of SMTP + systems, based on the role those systems play in transmitting + electronic mail. An "originating" system (sometimes called an SMTP + originator) introduces mail into the Internet or, more generally, + into a transport service environment. A "delivery" SMTP system is + one that receives mail from a transport service environment and + passes it to a mail user agent or deposits it in a message store that + a mail user agent is expected to subsequently access. A "relay" SMTP + system (usually referred to just as a "relay") receives mail from an + SMTP client and transmits it, without modification to the message + data other than adding trace information, to another SMTP server for + further relaying or for delivery. + + A "gateway" SMTP system (usually referred to just as a "gateway") + receives mail from a client system in one transport environment and + transmits it to a server system in another transport environment. + Differences in protocols or message semantics between the transport + environments on either side of a gateway may require that the gateway + system perform transformations to the message that are not permitted + to SMTP relay systems. For the purposes of this specification, + firewalls that rewrite addresses should be considered as gateways, + even if SMTP is used on both sides of them (see RFC 2979 [27]). + +2.3.11. Mailbox and Address + + As used in this specification, an "address" is a character string + that identifies a user to whom mail will be sent or a location into + which mail will be deposited. The term "mailbox" refers to that + depository. The two terms are typically used interchangeably unless + the distinction between the location in which mail is placed (the + mailbox) and a reference to it (the address) is important. An + address normally consists of user and domain specifications. The + standard mailbox naming convention is defined to be + "local-part@domain"; contemporary usage permits a much broader set of + applications than simple "user names". Consequently, and due to a + long history of problems when intermediate hosts have attempted to + + + +Klensin Standards Track [Page 15] + +RFC 5321 SMTP October 2008 + + + optimize transport by modifying them, the local-part MUST be + interpreted and assigned semantics only by the host specified in the + domain part of the address. + +2.4. General Syntax Principles and Transaction Model + + SMTP commands and replies have a rigid syntax. All commands begin + with a command verb. All replies begin with a three digit numeric + code. In some commands and replies, arguments are required following + the verb or reply code. Some commands do not accept arguments (after + the verb), and some reply codes are followed, sometimes optionally, + by free form text. In both cases, where text appears, it is + separated from the verb or reply code by a space character. Complete + definitions of commands and replies appear in Section 4. + + Verbs and argument values (e.g., "TO:" or "to:" in the RCPT command + and extension name keywords) are not case sensitive, with the sole + exception in this specification of a mailbox local-part (SMTP + Extensions may explicitly specify case-sensitive elements). That is, + a command verb, an argument value other than a mailbox local-part, + and free form text MAY be encoded in upper case, lower case, or any + mixture of upper and lower case with no impact on its meaning. The + local-part of a mailbox MUST BE treated as case sensitive. + Therefore, SMTP implementations MUST take care to preserve the case + of mailbox local-parts. In particular, for some hosts, the user + "smith" is different from the user "Smith". However, exploiting the + case sensitivity of mailbox local-parts impedes interoperability and + is discouraged. Mailbox domains follow normal DNS rules and are + hence not case sensitive. + + A few SMTP servers, in violation of this specification (and RFC 821) + require that command verbs be encoded by clients in upper case. + Implementations MAY wish to employ this encoding to accommodate those + servers. + + The argument clause consists of a variable-length character string + ending with the end of the line, i.e., with the character sequence + . The receiver will take no action until this sequence is + received. + + The syntax for each command is shown with the discussion of that + command. Common elements and parameters are shown in Section 4.1.2. + + Commands and replies are composed of characters from the ASCII + character set [6]. When the transport service provides an 8-bit byte + (octet) transmission channel, each 7-bit character is transmitted, + right justified, in an octet with the high-order bit cleared to zero. + More specifically, the unextended SMTP service provides 7-bit + + + +Klensin Standards Track [Page 16] + +RFC 5321 SMTP October 2008 + + + transport only. An originating SMTP client that has not successfully + negotiated an appropriate extension with a particular server (see the + next paragraph) MUST NOT transmit messages with information in the + high-order bit of octets. If such messages are transmitted in + violation of this rule, receiving SMTP servers MAY clear the high- + order bit or reject the message as invalid. In general, a relay SMTP + SHOULD assume that the message content it has received is valid and, + assuming that the envelope permits doing so, relay it without + inspecting that content. Of course, if the content is mislabeled and + the data path cannot accept the actual content, this may result in + the ultimate delivery of a severely garbled message to the recipient. + Delivery SMTP systems MAY reject such messages, or return them as + undeliverable, rather than deliver them. In the absence of a server- + offered extension explicitly permitting it, a sending SMTP system is + not permitted to send envelope commands in any character set other + than US-ASCII. Receiving systems SHOULD reject such commands, + normally using "500 syntax error - invalid character" replies. + + 8-bit message content transmission MAY be requested of the server by + a client using extended SMTP facilities, notably the "8BITMIME" + extension, RFC 1652 [22]. 8BITMIME SHOULD be supported by SMTP + servers. However, it MUST NOT be construed as authorization to + transmit unrestricted 8-bit material, nor does 8BITMIME authorize + transmission of any envelope material in other than ASCII. 8BITMIME + MUST NOT be requested by senders for material with the high bit on + that is not in MIME format with an appropriate content-transfer + encoding; servers MAY reject such messages. + + The metalinguistic notation used in this document corresponds to the + "Augmented BNF" used in other Internet mail system documents. The + reader who is not familiar with that syntax should consult the ABNF + specification in RFC 5234 [7]. Metalanguage terms used in running + text are surrounded by pointed brackets (e.g., ) for clarity. + The reader is cautioned that the grammar expressed in the + metalanguage is not comprehensive. There are many instances in which + provisions in the text constrain or otherwise modify the syntax or + semantics implied by the grammar. + +3. The SMTP Procedures: An Overview + + This section contains descriptions of the procedures used in SMTP: + session initiation, mail transaction, forwarding mail, verifying + mailbox names and expanding mailing lists, and opening and closing + exchanges. Comments on relaying, a note on mail domains, and a + discussion of changing roles are included at the end of this section. + Several complete scenarios are presented in Appendix D. + + + + + +Klensin Standards Track [Page 17] + +RFC 5321 SMTP October 2008 + + +3.1. Session Initiation + + An SMTP session is initiated when a client opens a connection to a + server and the server responds with an opening message. + + SMTP server implementations MAY include identification of their + software and version information in the connection greeting reply + after the 220 code, a practice that permits more efficient isolation + and repair of any problems. Implementations MAY make provision for + SMTP servers to disable the software and version announcement where + it causes security concerns. While some systems also identify their + contact point for mail problems, this is not a substitute for + maintaining the required "postmaster" address (see Section 4). + + The SMTP protocol allows a server to formally reject a mail session + while still allowing the initial connection as follows: a 554 + response MAY be given in the initial connection opening message + instead of the 220. A server taking this approach MUST still wait + for the client to send a QUIT (see Section 4.1.1.10) before closing + the connection and SHOULD respond to any intervening commands with + "503 bad sequence of commands". Since an attempt to make an SMTP + connection to such a system is probably in error, a server returning + a 554 response on connection opening SHOULD provide enough + information in the reply text to facilitate debugging of the sending + system. + +3.2. Client Initiation + + Once the server has sent the greeting (welcoming) message and the + client has received it, the client normally sends the EHLO command to + the server, indicating the client's identity. In addition to opening + the session, use of EHLO indicates that the client is able to process + service extensions and requests that the server provide a list of the + extensions it supports. Older SMTP systems that are unable to + support service extensions, and contemporary clients that do not + require service extensions in the mail session being initiated, MAY + use HELO instead of EHLO. Servers MUST NOT return the extended EHLO- + style response to a HELO command. For a particular connection + attempt, if the server returns a "command not recognized" response to + EHLO, the client SHOULD be able to fall back and send HELO. + + In the EHLO command, the host sending the command identifies itself; + the command may be interpreted as saying "Hello, I am " (and, + in the case of EHLO, "and I support service extension requests"). + + + + + + + +Klensin Standards Track [Page 18] + +RFC 5321 SMTP October 2008 + + +3.3. Mail Transactions + + There are three steps to SMTP mail transactions. The transaction + starts with a MAIL command that gives the sender identification. (In + general, the MAIL command may be sent only when no mail transaction + is in progress; see Section 4.1.4.) A series of one or more RCPT + commands follows, giving the receiver information. Then, a DATA + command initiates transfer of the mail data and is terminated by the + "end of mail" data indicator, which also confirms the transaction. + + The first step in the procedure is the MAIL command. + + MAIL FROM: [SP ] + + This command tells the SMTP-receiver that a new mail transaction is + starting and to reset all its state tables and buffers, including any + recipients or mail data. The portion of the first or + only argument contains the source mailbox (between "<" and ">" + brackets), which can be used to report errors (see Section 4.2 for a + discussion of error reporting). If accepted, the SMTP server returns + a "250 OK" reply. If the mailbox specification is not acceptable for + some reason, the server MUST return a reply indicating whether the + failure is permanent (i.e., will occur again if the client tries to + send the same address again) or temporary (i.e., the address might be + accepted if the client tries again later). Despite the apparent + scope of this requirement, there are circumstances in which the + acceptability of the reverse-path may not be determined until one or + more forward-paths (in RCPT commands) can be examined. In those + cases, the server MAY reasonably accept the reverse-path (with a 250 + reply) and then report problems after the forward-paths are received + and examined. Normally, failures produce 550 or 553 replies. + + Historically, the was permitted to contain more than + just a mailbox; however, contemporary systems SHOULD NOT use source + routing (see Appendix C). + + The optional are associated with negotiated SMTP + service extensions (see Section 2.2). + + The second step in the procedure is the RCPT command. This step of + the procedure can be repeated any number of times. + + RCPT TO: [ SP ] + + The first or only argument to this command includes a forward-path + (normally a mailbox and domain, always surrounded by "<" and ">" + brackets) identifying one recipient. If accepted, the SMTP server + returns a "250 OK" reply and stores the forward-path. If the + + + +Klensin Standards Track [Page 19] + +RFC 5321 SMTP October 2008 + + + recipient is known not to be a deliverable address, the SMTP server + returns a 550 reply, typically with a string such as "no such user - + " and the mailbox name (other circumstances and reply codes are + possible). + + The can contain more than just a mailbox. + Historically, the was permitted to contain a source + routing list of hosts and the destination mailbox; however, + contemporary SMTP clients SHOULD NOT utilize source routes (see + Appendix C). Servers MUST be prepared to encounter a list of source + routes in the forward-path, but they SHOULD ignore the routes or MAY + decline to support the relaying they imply. Similarly, servers MAY + decline to accept mail that is destined for other hosts or systems. + These restrictions make a server useless as a relay for clients that + do not support full SMTP functionality. Consequently, restricted- + capability clients MUST NOT assume that any SMTP server on the + Internet can be used as their mail processing (relaying) site. If a + RCPT command appears without a previous MAIL command, the server MUST + return a 503 "Bad sequence of commands" response. The optional + are associated with negotiated SMTP service + extensions (see Section 2.2). + + Since it has been a common source of errors, it is worth noting that + spaces are not permitted on either side of the colon following FROM + in the MAIL command or TO in the RCPT command. The syntax is exactly + as given above. + + The third step in the procedure is the DATA command (or some + alternative specified in a service extension). + + DATA + + If accepted, the SMTP server returns a 354 Intermediate reply and + considers all succeeding lines up to but not including the end of + mail data indicator to be the message text. When the end of text is + successfully received and stored, the SMTP-receiver sends a "250 OK" + reply. + + Since the mail data is sent on the transmission channel, the end of + mail data must be indicated so that the command and reply dialog can + be resumed. SMTP indicates the end of the mail data by sending a + line containing only a "." (period or full stop). A transparency + procedure is used to prevent this from interfering with the user's + text (see Section 4.5.2). + + The end of mail data indicator also confirms the mail transaction and + tells the SMTP server to now process the stored recipients and mail + + + + +Klensin Standards Track [Page 20] + +RFC 5321 SMTP October 2008 + + + data. If accepted, the SMTP server returns a "250 OK" reply. The + DATA command can fail at only two points in the protocol exchange: + + If there was no MAIL, or no RCPT, command, or all such commands were + rejected, the server MAY return a "command out of sequence" (503) or + "no valid recipients" (554) reply in response to the DATA command. + If one of those replies (or any other 5yz reply) is received, the + client MUST NOT send the message data; more generally, message data + MUST NOT be sent unless a 354 reply is received. + + If the verb is initially accepted and the 354 reply issued, the DATA + command should fail only if the mail transaction was incomplete (for + example, no recipients), if resources were unavailable (including, of + course, the server unexpectedly becoming unavailable), or if the + server determines that the message should be rejected for policy or + other reasons. + + However, in practice, some servers do not perform recipient + verification until after the message text is received. These servers + SHOULD treat a failure for one or more recipients as a "subsequent + failure" and return a mail message as discussed in Section 6 and, in + particular, in Section 6.1. Using a "550 mailbox not found" (or + equivalent) reply code after the data are accepted makes it difficult + or impossible for the client to determine which recipients failed. + + When the RFC 822 format ([28], [4]) is being used, the mail data + include the header fields such as those named Date, Subject, To, Cc, + and From. Server SMTP systems SHOULD NOT reject messages based on + perceived defects in the RFC 822 or MIME (RFC 2045 [21]) message + header section or message body. In particular, they MUST NOT reject + messages in which the numbers of Resent-header fields do not match or + Resent-to appears without Resent-from and/or Resent-date. + + Mail transaction commands MUST be used in the order discussed above. + +3.4. Forwarding for Address Correction or Updating + + Forwarding support is most often required to consolidate and simplify + addresses within, or relative to, some enterprise and less frequently + to establish addresses to link a person's prior address with a + current one. Silent forwarding of messages (without server + notification to the sender), for security or non-disclosure purposes, + is common in the contemporary Internet. + + In both the enterprise and the "new address" cases, information + hiding (and sometimes security) considerations argue against exposure + of the "final" address through the SMTP protocol as a side effect of + the forwarding activity. This may be especially important when the + + + +Klensin Standards Track [Page 21] + +RFC 5321 SMTP October 2008 + + + final address may not even be reachable by the sender. Consequently, + the "forwarding" mechanisms described in Section 3.2 of RFC 821, and + especially the 251 (corrected destination) and 551 reply codes from + RCPT must be evaluated carefully by implementers and, when they are + available, by those configuring systems (see also Section 7.4). + + In particular: + + o Servers MAY forward messages when they are aware of an address + change. When they do so, they MAY either provide address-updating + information with a 251 code, or may forward "silently" and return + a 250 code. However, if a 251 code is used, they MUST NOT assume + that the client will actually update address information or even + return that information to the user. + + Alternately, + + o Servers MAY reject messages or return them as non-deliverable when + they cannot be delivered precisely as addressed. When they do so, + they MAY either provide address-updating information with a 551 + code, or may reject the message as undeliverable with a 550 code + and no address-specific information. However, if a 551 code is + used, they MUST NOT assume that the client will actually update + address information or even return that information to the user. + + SMTP server implementations that support the 251 and/or 551 reply + codes SHOULD provide configuration mechanisms so that sites that + conclude that they would undesirably disclose information can disable + or restrict their use. + +3.5. Commands for Debugging Addresses + +3.5.1. Overview + + SMTP provides commands to verify a user name or obtain the content of + a mailing list. This is done with the VRFY and EXPN commands, which + have character string arguments. Implementations SHOULD support VRFY + and EXPN (however, see Section 3.5.2 and Section 7.3). + + For the VRFY command, the string is a user name or a user name and + domain (see below). If a normal (i.e., 250) response is returned, + the response MAY include the full name of the user and MUST include + the mailbox of the user. It MUST be in either of the following + forms: + + User Name + local-part@domain + + + + +Klensin Standards Track [Page 22] + +RFC 5321 SMTP October 2008 + + + When a name that is the argument to VRFY could identify more than one + mailbox, the server MAY either note the ambiguity or identify the + alternatives. In other words, any of the following are legitimate + responses to VRFY: + + 553 User ambiguous + + or + + 553- Ambiguous; Possibilities are + 553-Joe Smith + 553-Harry Smith + 553 Melvin Smith + + or + + 553-Ambiguous; Possibilities + 553- + 553- + 553 + + Under normal circumstances, a client receiving a 553 reply would be + expected to expose the result to the user. Use of exactly the forms + given, and the "user ambiguous" or "ambiguous" keywords, possibly + supplemented by extended reply codes, such as those described in RFC + 3463 [25], will facilitate automated translation into other languages + as needed. Of course, a client that was highly automated or that was + operating in another language than English might choose to try to + translate the response to return some other indication to the user + than the literal text of the reply, or to take some automated action + such as consulting a directory service for additional information + before reporting to the user. + + For the EXPN command, the string identifies a mailing list, and the + successful (i.e., 250) multiline response MAY include the full name + of the users and MUST give the mailboxes on the mailing list. + + In some hosts, the distinction between a mailing list and an alias + for a single mailbox is a bit fuzzy, since a common data structure + may hold both types of entries, and it is possible to have mailing + lists containing only one mailbox. If a request is made to apply + VRFY to a mailing list, a positive response MAY be given if a message + so addressed would be delivered to everyone on the list, otherwise an + error SHOULD be reported (e.g., "550 That is a mailing list, not a + user" or "252 Unable to verify members of mailing list"). If a + request is made to expand a user name, the server MAY return a + + + + + +Klensin Standards Track [Page 23] + +RFC 5321 SMTP October 2008 + + + positive response consisting of a list containing one name, or an + error MAY be reported (e.g., "550 That is a user name, not a mailing + list"). + + In the case of a successful multiline reply (normal for EXPN), + exactly one mailbox is to be specified on each line of the reply. + The case of an ambiguous request is discussed above. + + "User name" is a fuzzy term and has been used deliberately. An + implementation of the VRFY or EXPN commands MUST include at least + recognition of local mailboxes as "user names". However, since + current Internet practice often results in a single host handling + mail for multiple domains, hosts, especially hosts that provide this + functionality, SHOULD accept the "local-part@domain" form as a "user + name"; hosts MAY also choose to recognize other strings as "user + names". + + The case of expanding a mailbox list requires a multiline reply, such + as: + + C: EXPN Example-People + S: 250-Jon Postel + S: 250-Fred Fonebone + S: 250 Sam Q. Smith + + or + + C: EXPN Executive-Washroom-List + S: 550 Access Denied to You. + + The character string arguments of the VRFY and EXPN commands cannot + be further restricted due to the variety of implementations of the + user name and mailbox list concepts. On some systems, it may be + appropriate for the argument of the EXPN command to be a file name + for a file containing a mailing list, but again there are a variety + of file naming conventions in the Internet. Similarly, historical + variations in what is returned by these commands are such that the + response SHOULD be interpreted very carefully, if at all, and SHOULD + generally only be used for diagnostic purposes. + +3.5.2. VRFY Normal Response + + When normal (2yz or 551) responses are returned from a VRFY or EXPN + request, the reply MUST include the name using a + "" construction, where "domain" is a fully- + qualified domain name. In circumstances exceptional enough to + justify violating the intent of this specification, free-form text + MAY be returned. In order to facilitate parsing by both computers + + + +Klensin Standards Track [Page 24] + +RFC 5321 SMTP October 2008 + + + and people, addresses SHOULD appear in pointed brackets. When + addresses, rather than free-form debugging information, are returned, + EXPN and VRFY MUST return only valid domain addresses that are usable + in SMTP RCPT commands. Consequently, if an address implies delivery + to a program or other system, the mailbox name used to reach that + target MUST be given. Paths (explicit source routes) MUST NOT be + returned by VRFY or EXPN. + + Server implementations SHOULD support both VRFY and EXPN. For + security reasons, implementations MAY provide local installations a + way to disable either or both of these commands through configuration + options or the equivalent (see Section 7.3). When these commands are + supported, they are not required to work across relays when relaying + is supported. Since they were both optional in RFC 821, but VRFY was + made mandatory in RFC 1123 [3], if EXPN is supported, it MUST be + listed as a service extension in an EHLO response. VRFY MAY be + listed as a convenience but, since support for it is required, SMTP + clients are not required to check for its presence on the extension + list before using it. + +3.5.3. Meaning of VRFY or EXPN Success Response + + A server MUST NOT return a 250 code in response to a VRFY or EXPN + command unless it has actually verified the address. In particular, + a server MUST NOT return 250 if all it has done is to verify that the + syntax given is valid. In that case, 502 (Command not implemented) + or 500 (Syntax error, command unrecognized) SHOULD be returned. As + stated elsewhere, implementation (in the sense of actually validating + addresses and returning information) of VRFY and EXPN are strongly + recommended. Hence, implementations that return 500 or 502 for VRFY + are not in full compliance with this specification. + + There may be circumstances where an address appears to be valid but + cannot reasonably be verified in real time, particularly when a + server is acting as a mail exchanger for another server or domain. + "Apparent validity", in this case, would normally involve at least + syntax checking and might involve verification that any domains + specified were ones to which the host expected to be able to relay + mail. In these situations, reply code 252 SHOULD be returned. These + cases parallel the discussion of RCPT verification in Section 2.1. + Similarly, the discussion in Section 3.4 applies to the use of reply + codes 251 and 551 with VRFY (and EXPN) to indicate addresses that are + recognized but that would be forwarded or rejected were mail received + for them. Implementations generally SHOULD be more aggressive about + address verification in the case of VRFY than in the case of RCPT, + even if it takes a little longer to do so. + + + + + +Klensin Standards Track [Page 25] + +RFC 5321 SMTP October 2008 + + +3.5.4. Semantics and Applications of EXPN + + EXPN is often very useful in debugging and understanding problems + with mailing lists and multiple-target-address aliases. Some systems + have attempted to use source expansion of mailing lists as a means of + eliminating duplicates. The propagation of aliasing systems with + mail on the Internet for hosts (typically with MX and CNAME DNS + records), for mailboxes (various types of local host aliases), and in + various proxying arrangements has made it nearly impossible for these + strategies to work consistently, and mail systems SHOULD NOT attempt + them. + +3.6. Relaying and Mail Routing + +3.6.1. Source Routes and Relaying + + In general, the availability of Mail eXchanger records in the domain + name system (RFC 1035 [2], RFC 974 [12]) makes the use of explicit + source routes in the Internet mail system unnecessary. Many + historical problems with the interpretation of explicit source routes + have made their use undesirable. SMTP clients SHOULD NOT generate + explicit source routes except under unusual circumstances. SMTP + servers MAY decline to act as mail relays or to accept addresses that + specify source routes. When route information is encountered, SMTP + servers MAY ignore the route information and simply send to the final + destination specified as the last element in the route and SHOULD do + so. There has been an invalid practice of using names that do not + appear in the DNS as destination names, with the senders counting on + the intermediate hosts specified in source routing to resolve any + problems. If source routes are stripped, this practice will cause + failures. This is one of several reasons why SMTP clients MUST NOT + generate invalid source routes or depend on serial resolution of + names. + + When source routes are not used, the process described in RFC 821 for + constructing a reverse-path from the forward-path is not applicable + and the reverse-path at the time of delivery will simply be the + address that appeared in the MAIL command. + +3.6.2. Mail eXchange Records and Relaying + + A relay SMTP server is usually the target of a DNS MX record that + designates it, rather than the final delivery system. The relay + server may accept or reject the task of relaying the mail in the same + way it accepts or rejects mail for a local user. If it accepts the + task, it then becomes an SMTP client, establishes a transmission + channel to the next SMTP server specified in the DNS (according to + the rules in Section 5), and sends it the mail. If it declines to + + + +Klensin Standards Track [Page 26] + +RFC 5321 SMTP October 2008 + + + relay mail to a particular address for policy reasons, a 550 response + SHOULD be returned. + + This specification does not deal with the verification of return + paths for use in delivery notifications. Recent work, such as that + on SPF [29] and DKIM [30] [31], has been done to provide ways to + ascertain that an address is valid or belongs to the person who + actually sent the message. A server MAY attempt to verify the return + path before using its address for delivery notifications, but methods + of doing so are not defined here nor is any particular method + recommended at this time. + +3.6.3. Message Submission Servers as Relays + + Many mail-sending clients exist, especially in conjunction with + facilities that receive mail via POP3 or IMAP, that have limited + capability to support some of the requirements of this specification, + such as the ability to queue messages for subsequent delivery + attempts. For these clients, it is common practice to make private + arrangements to send all messages to a single server for processing + and subsequent distribution. SMTP, as specified here, is not ideally + suited for this role. A standardized mail submission protocol has + been developed that is gradually superseding practices based on SMTP + (see RFC 4409 [18]). In any event, because these arrangements are + private and fall outside the scope of this specification, they are + not described here. + + It is important to note that MX records can point to SMTP servers + that act as gateways into other environments, not just SMTP relays + and final delivery systems; see Sections 3.7 and 5. + + If an SMTP server has accepted the task of relaying the mail and + later finds that the destination is incorrect or that the mail cannot + be delivered for some other reason, then it MUST construct an + "undeliverable mail" notification message and send it to the + originator of the undeliverable mail (as indicated by the reverse- + path). Formats specified for non-delivery reports by other standards + (see, for example, RFC 3461 [32] and RFC 3464 [33]) SHOULD be used if + possible. + + This notification message must be from the SMTP server at the relay + host or the host that first determines that delivery cannot be + accomplished. Of course, SMTP servers MUST NOT send notification + messages about problems transporting notification messages. One way + to prevent loops in error reporting is to specify a null reverse-path + in the MAIL command of a notification message. When such a message + is transmitted, the reverse-path MUST be set to null (see + + + + +Klensin Standards Track [Page 27] + +RFC 5321 SMTP October 2008 + + + Section 4.5.5 for additional discussion). A MAIL command with a null + reverse-path appears as follows: + + MAIL FROM:<> + + As discussed in Section 6.4, a relay SMTP has no need to inspect or + act upon the header section or body of the message data and MUST NOT + do so except to add its own "Received:" header field (Section 4.4) + and, optionally, to attempt to detect looping in the mail system (see + Section 6.3). Of course, this prohibition also applies to any + modifications of these header fields or text (see also Section 7.9). + +3.7. Mail Gatewaying + + While the relay function discussed above operates within the Internet + SMTP transport service environment, MX records or various forms of + explicit routing may require that an intermediate SMTP server perform + a translation function between one transport service and another. As + discussed in Section 2.3.10, when such a system is at the boundary + between two transport service environments, we refer to it as a + "gateway" or "gateway SMTP". + + Gatewaying mail between different mail environments, such as + different mail formats and protocols, is complex and does not easily + yield to standardization. However, some general requirements may be + given for a gateway between the Internet and another mail + environment. + +3.7.1. Header Fields in Gatewaying + + Header fields MAY be rewritten when necessary as messages are + gatewayed across mail environment boundaries. This may involve + inspecting the message body or interpreting the local-part of the + destination address in spite of the prohibitions in Section 6.4. + + Other mail systems gatewayed to the Internet often use a subset of + the RFC 822 header section or provide similar functionality with a + different syntax, but some of these mail systems do not have an + equivalent to the SMTP envelope. Therefore, when a message leaves + the Internet environment, it may be necessary to fold the SMTP + envelope information into the message header section. A possible + solution would be to create new header fields to carry the envelope + information (e.g., "X-SMTP-MAIL:" and "X-SMTP-RCPT:"); however, this + would require changes in mail programs in foreign environments and + might risk disclosure of private information (see Section 7.2). + + + + + + +Klensin Standards Track [Page 28] + +RFC 5321 SMTP October 2008 + + +3.7.2. Received Lines in Gatewaying + + When forwarding a message into or out of the Internet environment, a + gateway MUST prepend a Received: line, but it MUST NOT alter in any + way a Received: line that is already in the header section. + + "Received:" header fields of messages originating from other + environments may not conform exactly to this specification. However, + the most important use of Received: lines is for debugging mail + faults, and this debugging can be severely hampered by well-meaning + gateways that try to "fix" a Received: line. As another consequence + of trace header fields arising in non-SMTP environments, receiving + systems MUST NOT reject mail based on the format of a trace header + field and SHOULD be extremely robust in the light of unexpected + information or formats in those header fields. + + The gateway SHOULD indicate the environment and protocol in the "via" + clauses of Received header field(s) that it supplies. + +3.7.3. Addresses in Gatewaying + + From the Internet side, the gateway SHOULD accept all valid address + formats in SMTP commands and in the RFC 822 header section, and all + valid RFC 822 messages. Addresses and header fields generated by + gateways MUST conform to applicable standards (including this one and + RFC 5322 [4]). Gateways are, of course, subject to the same rules + for handling source routes as those described for other SMTP systems + in Section 3.3. + +3.7.4. Other Header Fields in Gatewaying + + The gateway MUST ensure that all header fields of a message that it + forwards into the Internet mail environment meet the requirements for + Internet mail. In particular, all addresses in "From:", "To:", + "Cc:", etc., header fields MUST be transformed (if necessary) to + satisfy the standard header syntax of RFC 5322 [4], MUST reference + only fully-qualified domain names, and MUST be effective and useful + for sending replies. The translation algorithm used to convert mail + from the Internet protocols to another environment's protocol SHOULD + ensure that error messages from the foreign mail environment are + delivered to the reverse-path from the SMTP envelope, not to an + address in the "From:", "Sender:", or similar header fields of the + message. + + + + + + + + +Klensin Standards Track [Page 29] + +RFC 5321 SMTP October 2008 + + +3.7.5. Envelopes in Gatewaying + + Similarly, when forwarding a message from another environment into + the Internet, the gateway SHOULD set the envelope return path in + accordance with an error message return address, if supplied by the + foreign environment. If the foreign environment has no equivalent + concept, the gateway must select and use a best approximation, with + the message originator's address as the default of last resort. + +3.8. Terminating Sessions and Connections + + An SMTP connection is terminated when the client sends a QUIT + command. The server responds with a positive reply code, after which + it closes the connection. + + An SMTP server MUST NOT intentionally close the connection under + normal operational circumstances (see Section 7.8) except: + + o After receiving a QUIT command and responding with a 221 reply. + + o After detecting the need to shut down the SMTP service and + returning a 421 response code. This response code can be issued + after the server receives any command or, if necessary, + asynchronously from command receipt (on the assumption that the + client will receive it after the next command is issued). + + o After a timeout, as specified in Section 4.5.3.2, occurs waiting + for the client to send a command or data. + + In particular, a server that closes connections in response to + commands that are not understood is in violation of this + specification. Servers are expected to be tolerant of unknown + commands, issuing a 500 reply and awaiting further instructions from + the client. + + An SMTP server that is forcibly shut down via external means SHOULD + attempt to send a line containing a 421 response code to the SMTP + client before exiting. The SMTP client will normally read the 421 + response code after sending its next command. + + SMTP clients that experience a connection close, reset, or other + communications failure due to circumstances not under their control + (in violation of the intent of this specification but sometimes + unavoidable) SHOULD, to maintain the robustness of the mail system, + treat the mail transaction as if a 451 response had been received and + act accordingly. + + + + + +Klensin Standards Track [Page 30] + +RFC 5321 SMTP October 2008 + + +3.9. Mailing Lists and Aliases + + An SMTP-capable host SHOULD support both the alias and the list + models of address expansion for multiple delivery. When a message is + delivered or forwarded to each address of an expanded list form, the + return address in the envelope ("MAIL FROM:") MUST be changed to be + the address of a person or other entity who administers the list. + However, in this case, the message header section (RFC 5322 [4]) MUST + be left unchanged; in particular, the "From" field of the header + section is unaffected. + + An important mail facility is a mechanism for multi-destination + delivery of a single message, by transforming (or "expanding" or + "exploding") a pseudo-mailbox address into a list of destination + mailbox addresses. When a message is sent to such a pseudo-mailbox + (sometimes called an "exploder"), copies are forwarded or + redistributed to each mailbox in the expanded list. Servers SHOULD + simply utilize the addresses on the list; application of heuristics + or other matching rules to eliminate some addresses, such as that of + the originator, is strongly discouraged. We classify such a pseudo- + mailbox as an "alias" or a "list", depending upon the expansion + rules. + +3.9.1. Alias + + To expand an alias, the recipient mailer simply replaces the pseudo- + mailbox address in the envelope with each of the expanded addresses + in turn; the rest of the envelope and the message body are left + unchanged. The message is then delivered or forwarded to each + expanded address. + +3.9.2. List + + A mailing list may be said to operate by "redistribution" rather than + by "forwarding". To expand a list, the recipient mailer replaces the + pseudo-mailbox address in the envelope with each of the expanded + addresses in turn. The return (backward-pointing) address in the + envelope is changed so that all error messages generated by the final + deliveries will be returned to a list administrator, not to the + message originator, who generally has no control over the contents of + the list and will typically find error messages annoying. Note that + the key difference between handling aliases (Section 3.9.1) and + forwarding (this subsection) is the change to the backward-pointing + address in this case. When a list constrains its processing to the + very limited set of modifications and actions described here, it is + attempting to emulate an MTA; such lists can be treated as a + continuation in email transit. + + + + +Klensin Standards Track [Page 31] + +RFC 5321 SMTP October 2008 + + + There exist mailing lists that perform additional, sometimes + extensive, modifications to a message and its envelope. Such mailing + lists need to be viewed as full MUAs, which accept a delivery and + post a new message. + +4. The SMTP Specifications + +4.1. SMTP Commands + +4.1.1. Command Semantics and Syntax + + The SMTP commands define the mail transfer or the mail system + function requested by the user. SMTP commands are character strings + terminated by . The commands themselves are alphabetic + characters terminated by if parameters follow and + otherwise. (In the interest of improved interoperability, SMTP + receivers SHOULD tolerate trailing white space before the terminating + .) The syntax of the local part of a mailbox MUST conform to + receiver site conventions and the syntax specified in Section 4.1.2. + The SMTP commands are discussed below. The SMTP replies are + discussed in Section 4.2. + + A mail transaction involves several data objects that are + communicated as arguments to different commands. The reverse-path is + the argument of the MAIL command, the forward-path is the argument of + the RCPT command, and the mail data is the argument of the DATA + command. These arguments or data objects must be transmitted and + held, pending the confirmation communicated by the end of mail data + indication that finalizes the transaction. The model for this is + that distinct buffers are provided to hold the types of data objects; + that is, there is a reverse-path buffer, a forward-path buffer, and a + mail data buffer. Specific commands cause information to be appended + to a specific buffer, or cause one or more buffers to be cleared. + + Several commands (RSET, DATA, QUIT) are specified as not permitting + parameters. In the absence of specific extensions offered by the + server and accepted by the client, clients MUST NOT send such + parameters and servers SHOULD reject commands containing them as + having invalid syntax. + +4.1.1.1. Extended HELLO (EHLO) or HELLO (HELO) + + These commands are used to identify the SMTP client to the SMTP + server. The argument clause contains the fully-qualified domain name + of the SMTP client, if one is available. In situations in which the + SMTP client system does not have a meaningful domain name (e.g., when + its address is dynamically allocated and no reverse mapping record is + + + + +Klensin Standards Track [Page 32] + +RFC 5321 SMTP October 2008 + + + available), the client SHOULD send an address literal (see + Section 4.1.3). + + RFC 2821, and some earlier informal practices, encouraged following + the literal by information that would help to identify the client + system. That convention was not widely supported, and many SMTP + servers considered it an error. In the interest of interoperability, + it is probably wise for servers to be prepared for this string to + occur, but SMTP clients SHOULD NOT send it. + + The SMTP server identifies itself to the SMTP client in the + connection greeting reply and in the response to this command. + + A client SMTP SHOULD start an SMTP session by issuing the EHLO + command. If the SMTP server supports the SMTP service extensions, it + will give a successful response, a failure response, or an error + response. If the SMTP server, in violation of this specification, + does not support any SMTP service extensions, it will generate an + error response. Older client SMTP systems MAY, as discussed above, + use HELO (as specified in RFC 821) instead of EHLO, and servers MUST + support the HELO command and reply properly to it. In any event, a + client MUST issue HELO or EHLO before starting a mail transaction. + + These commands, and a "250 OK" reply to one of them, confirm that + both the SMTP client and the SMTP server are in the initial state, + that is, there is no transaction in progress and all state tables and + buffers are cleared. + + Syntax: + + ehlo = "EHLO" SP ( Domain / address-literal ) CRLF + + helo = "HELO" SP Domain CRLF + + Normally, the response to EHLO will be a multiline reply. Each line + of the response contains a keyword and, optionally, one or more + parameters. Following the normal syntax for multiline replies, these + keywords follow the code (250) and a hyphen for all but the last + line, and the code and a space for the last line. The syntax for a + positive response, using the ABNF notation and terminal symbols of + RFC 5234 [7], is: + + ehlo-ok-rsp = ( "250" SP Domain [ SP ehlo-greet ] CRLF ) + / ( "250-" Domain [ SP ehlo-greet ] CRLF + *( "250-" ehlo-line CRLF ) + "250" SP ehlo-line CRLF ) + + + + + +Klensin Standards Track [Page 33] + +RFC 5321 SMTP October 2008 + + + ehlo-greet = 1*(%d0-9 / %d11-12 / %d14-127) + ; string of any characters other than CR or LF + + ehlo-line = ehlo-keyword *( SP ehlo-param ) + + ehlo-keyword = (ALPHA / DIGIT) *(ALPHA / DIGIT / "-") + ; additional syntax of ehlo-params depends on + ; ehlo-keyword + + ehlo-param = 1*(%d33-126) + ; any CHAR excluding and all + ; control characters (US-ASCII 0-31 and 127 + ; inclusive) + + Although EHLO keywords may be specified in upper, lower, or mixed + case, they MUST always be recognized and processed in a case- + insensitive manner. This is simply an extension of practices + specified in RFC 821 and Section 2.4. + + The EHLO response MUST contain keywords (and associated parameters if + required) for all commands not listed as "required" in Section 4.5.1 + excepting only private-use commands as described in Section 4.1.5. + Private-use commands MAY be listed. + +4.1.1.2. MAIL (MAIL) + + This command is used to initiate a mail transaction in which the mail + data is delivered to an SMTP server that may, in turn, deliver it to + one or more mailboxes or pass it on to another system (possibly using + SMTP). The argument clause contains a reverse-path and may contain + optional parameters. In general, the MAIL command may be sent only + when no mail transaction is in progress, see Section 4.1.4. + + The reverse-path consists of the sender mailbox. Historically, that + mailbox might optionally have been preceded by a list of hosts, but + that behavior is now deprecated (see Appendix C). In some types of + reporting messages for which a reply is likely to cause a mail loop + (for example, mail delivery and non-delivery notifications), the + reverse-path may be null (see Section 3.6). + + This command clears the reverse-path buffer, the forward-path buffer, + and the mail data buffer, and it inserts the reverse-path information + from its argument clause into the reverse-path buffer. + + If service extensions were negotiated, the MAIL command may also + carry parameters associated with a particular service extension. + + + + + +Klensin Standards Track [Page 34] + +RFC 5321 SMTP October 2008 + + + Syntax: + + mail = "MAIL FROM:" Reverse-path + [SP Mail-parameters] CRLF + +4.1.1.3. RECIPIENT (RCPT) + + This command is used to identify an individual recipient of the mail + data; multiple recipients are specified by multiple uses of this + command. The argument clause contains a forward-path and may contain + optional parameters. + + The forward-path normally consists of the required destination + mailbox. Sending systems SHOULD NOT generate the optional list of + hosts known as a source route. Receiving systems MUST recognize + source route syntax but SHOULD strip off the source route + specification and utilize the domain name associated with the mailbox + as if the source route had not been provided. + + Similarly, relay hosts SHOULD strip or ignore source routes, and + names MUST NOT be copied into the reverse-path. When mail reaches + its ultimate destination (the forward-path contains only a + destination mailbox), the SMTP server inserts it into the destination + mailbox in accordance with its host mail conventions. + + This command appends its forward-path argument to the forward-path + buffer; it does not change the reverse-path buffer nor the mail data + buffer. + + For example, mail received at relay host xyz.com with envelope + commands + + MAIL FROM: + RCPT TO:<@hosta.int,@jkl.org:userc@d.bar.org> + + will normally be sent directly on to host d.bar.org with envelope + commands + + MAIL FROM: + RCPT TO: + + As provided in Appendix C, xyz.com MAY also choose to relay the + message to hosta.int, using the envelope commands + + MAIL FROM: + RCPT TO:<@hosta.int,@jkl.org:userc@d.bar.org> + + + + + +Klensin Standards Track [Page 35] + +RFC 5321 SMTP October 2008 + + + or to jkl.org, using the envelope commands + + MAIL FROM: + RCPT TO:<@jkl.org:userc@d.bar.org> + + Attempting to use relaying this way is now strongly discouraged. + Since hosts are not required to relay mail at all, xyz.com MAY also + reject the message entirely when the RCPT command is received, using + a 550 code (since this is a "policy reason"). + + If service extensions were negotiated, the RCPT command may also + carry parameters associated with a particular service extension + offered by the server. The client MUST NOT transmit parameters other + than those associated with a service extension offered by the server + in its EHLO response. + + Syntax: + + rcpt = "RCPT TO:" ( "" / "" / + Forward-path ) [SP Rcpt-parameters] CRLF + + Note that, in a departure from the usual rules for + local-parts, the "Postmaster" string shown above is + treated as case-insensitive. + +4.1.1.4. DATA (DATA) + + The receiver normally sends a 354 response to DATA, and then treats + the lines (strings ending in sequences, as described in + Section 2.3.7) following the command as mail data from the sender. + This command causes the mail data to be appended to the mail data + buffer. The mail data may contain any of the 128 ASCII character + codes, although experience has indicated that use of control + characters other than SP, HT, CR, and LF may cause problems and + SHOULD be avoided when possible. + + The mail data are terminated by a line containing only a period, that + is, the character sequence ".", where the first is + actually the terminator of the previous line (see Section 4.5.2). + This is the end of mail data indication. The first of this + terminating sequence is also the that ends the final line of + the data (message text) or, if there was no mail data, ends the DATA + command itself (the "no mail data" case does not conform to this + specification since it would require that neither the trace header + fields required by this specification nor the message header section + required by RFC 5322 [4] be transmitted). An extra MUST NOT + be added, as that would cause an empty line to be added to the + message. The only exception to this rule would arise if the message + + + +Klensin Standards Track [Page 36] + +RFC 5321 SMTP October 2008 + + + body were passed to the originating SMTP-sender with a final "line" + that did not end in ; in that case, the originating SMTP system + MUST either reject the message as invalid or add in order to + have the receiving SMTP server recognize the "end of data" condition. + + The custom of accepting lines ending only in , as a concession to + non-conforming behavior on the part of some UNIX systems, has proven + to cause more interoperability problems than it solves, and SMTP + server systems MUST NOT do this, even in the name of improved + robustness. In particular, the sequence "." (bare line + feeds, without carriage returns) MUST NOT be treated as equivalent to + . as the end of mail data indication. + + Receipt of the end of mail data indication requires the server to + process the stored mail transaction information. This processing + consumes the information in the reverse-path buffer, the forward-path + buffer, and the mail data buffer, and on the completion of this + command these buffers are cleared. If the processing is successful, + the receiver MUST send an OK reply. If the processing fails, the + receiver MUST send a failure reply. The SMTP model does not allow + for partial failures at this point: either the message is accepted by + the server for delivery and a positive response is returned or it is + not accepted and a failure reply is returned. In sending a positive + "250 OK" completion reply to the end of data indication, the receiver + takes full responsibility for the message (see Section 6.1). Errors + that are diagnosed subsequently MUST be reported in a mail message, + as discussed in Section 4.4. + + When the SMTP server accepts a message either for relaying or for + final delivery, it inserts a trace record (also referred to + interchangeably as a "time stamp line" or "Received" line) at the top + of the mail data. This trace record indicates the identity of the + host that sent the message, the identity of the host that received + the message (and is inserting this time stamp), and the date and time + the message was received. Relayed messages will have multiple time + stamp lines. Details for formation of these lines, including their + syntax, is specified in Section 4.4. + + Additional discussion about the operation of the DATA command appears + in Section 3.3. + + Syntax: + + data = "DATA" CRLF + + + + + + + +Klensin Standards Track [Page 37] + +RFC 5321 SMTP October 2008 + + +4.1.1.5. RESET (RSET) + + This command specifies that the current mail transaction will be + aborted. Any stored sender, recipients, and mail data MUST be + discarded, and all buffers and state tables cleared. The receiver + MUST send a "250 OK" reply to a RSET command with no arguments. A + reset command may be issued by the client at any time. It is + effectively equivalent to a NOOP (i.e., it has no effect) if issued + immediately after EHLO, before EHLO is issued in the session, after + an end of data indicator has been sent and acknowledged, or + immediately before a QUIT. An SMTP server MUST NOT close the + connection as the result of receiving a RSET; that action is reserved + for QUIT (see Section 4.1.1.10). + + Since EHLO implies some additional processing and response by the + server, RSET will normally be more efficient than reissuing that + command, even though the formal semantics are the same. + + There are circumstances, contrary to the intent of this + specification, in which an SMTP server may receive an indication that + the underlying TCP connection has been closed or reset. To preserve + the robustness of the mail system, SMTP servers SHOULD be prepared + for this condition and SHOULD treat it as if a QUIT had been received + before the connection disappeared. + + Syntax: + + rset = "RSET" CRLF + +4.1.1.6. VERIFY (VRFY) + + This command asks the receiver to confirm that the argument + identifies a user or mailbox. If it is a user name, information is + returned as specified in Section 3.5. + + This command has no effect on the reverse-path buffer, the forward- + path buffer, or the mail data buffer. + + Syntax: + + vrfy = "VRFY" SP String CRLF + + + + + + + + + + +Klensin Standards Track [Page 38] + +RFC 5321 SMTP October 2008 + + +4.1.1.7. EXPAND (EXPN) + + This command asks the receiver to confirm that the argument + identifies a mailing list, and if so, to return the membership of + that list. If the command is successful, a reply is returned + containing information as described in Section 3.5. This reply will + have multiple lines except in the trivial case of a one-member list. + + This command has no effect on the reverse-path buffer, the forward- + path buffer, or the mail data buffer, and it may be issued at any + time. + + Syntax: + + expn = "EXPN" SP String CRLF + +4.1.1.8. HELP (HELP) + + This command causes the server to send helpful information to the + client. The command MAY take an argument (e.g., any command name) + and return more specific information as a response. + + This command has no effect on the reverse-path buffer, the forward- + path buffer, or the mail data buffer, and it may be issued at any + time. + + SMTP servers SHOULD support HELP without arguments and MAY support it + with arguments. + + Syntax: + + help = "HELP" [ SP String ] CRLF + + + + + + + + + + + + + + + + + + + +Klensin Standards Track [Page 39] + +RFC 5321 SMTP October 2008 + + +4.1.1.9. NOOP (NOOP) + + This command does not affect any parameters or previously entered + commands. It specifies no action other than that the receiver send a + "250 OK" reply. + + This command has no effect on the reverse-path buffer, the forward- + path buffer, or the mail data buffer, and it may be issued at any + time. If a parameter string is specified, servers SHOULD ignore it. + + Syntax: + + noop = "NOOP" [ SP String ] CRLF + +4.1.1.10. QUIT (QUIT) + + This command specifies that the receiver MUST send a "221 OK" reply, + and then close the transmission channel. + + The receiver MUST NOT intentionally close the transmission channel + until it receives and replies to a QUIT command (even if there was an + error). The sender MUST NOT intentionally close the transmission + channel until it sends a QUIT command, and it SHOULD wait until it + receives the reply (even if there was an error response to a previous + command). If the connection is closed prematurely due to violations + of the above or system or network failure, the server MUST cancel any + pending transaction, but not undo any previously completed + transaction, and generally MUST act as if the command or transaction + in progress had received a temporary error (i.e., a 4yz response). + + The QUIT command may be issued at any time. Any current uncompleted + mail transaction will be aborted. + + Syntax: + + quit = "QUIT" CRLF + +4.1.1.11. Mail-Parameter and Rcpt-Parameter Error Responses + + If the server SMTP does not recognize or cannot implement one or more + of the parameters associated with a particular MAIL FROM or RCPT TO + command, it will return code 555. + + If, for some reason, the server is temporarily unable to accommodate + one or more of the parameters associated with a MAIL FROM or RCPT TO + command, and if the definition of the specific parameter does not + mandate the use of another code, it should return code 455. + + + + +Klensin Standards Track [Page 40] + +RFC 5321 SMTP October 2008 + + + Errors specific to particular parameters and their values will be + specified in the parameter's defining RFC. + +4.1.2. Command Argument Syntax + + The syntax of the argument clauses of the above commands (using the + syntax specified in RFC 5234 [7] where applicable) is given below. + Some of the productions given below are used only in conjunction with + source routes as described in Appendix C. Terminals not defined in + this document, such as ALPHA, DIGIT, SP, CR, LF, CRLF, are as defined + in the "core" syntax in Section 6 of RFC 5234 [7] or in the message + format syntax in RFC 5322 [4]. + + Reverse-path = Path / "<>" + + Forward-path = Path + + Path = "<" [ A-d-l ":" ] Mailbox ">" + + A-d-l = At-domain *( "," At-domain ) + ; Note that this form, the so-called "source + ; route", MUST BE accepted, SHOULD NOT be + ; generated, and SHOULD be ignored. + + At-domain = "@" Domain + + Mail-parameters = esmtp-param *(SP esmtp-param) + + Rcpt-parameters = esmtp-param *(SP esmtp-param) + + esmtp-param = esmtp-keyword ["=" esmtp-value] + + esmtp-keyword = (ALPHA / DIGIT) *(ALPHA / DIGIT / "-") + + esmtp-value = 1*(%d33-60 / %d62-126) + ; any CHAR excluding "=", SP, and control + ; characters. If this string is an email address, + ; i.e., a Mailbox, then the "xtext" syntax [32] + ; SHOULD be used. + + Keyword = Ldh-str + + Argument = Atom + + Domain = sub-domain *("." sub-domain) + + + + + + +Klensin Standards Track [Page 41] + +RFC 5321 SMTP October 2008 + + + sub-domain = Let-dig [Ldh-str] + + Let-dig = ALPHA / DIGIT + + Ldh-str = *( ALPHA / DIGIT / "-" ) Let-dig + + address-literal = "[" ( IPv4-address-literal / + IPv6-address-literal / + General-address-literal ) "]" + ; See Section 4.1.3 + + Mailbox = Local-part "@" ( Domain / address-literal ) + + Local-part = Dot-string / Quoted-string + ; MAY be case-sensitive + + + Dot-string = Atom *("." Atom) + + Atom = 1*atext + + Quoted-string = DQUOTE *QcontentSMTP DQUOTE + + QcontentSMTP = qtextSMTP / quoted-pairSMTP + + quoted-pairSMTP = %d92 %d32-126 + ; i.e., backslash followed by any ASCII + ; graphic (including itself) or SPace + + qtextSMTP = %d32-33 / %d35-91 / %d93-126 + ; i.e., within a quoted string, any + ; ASCII graphic or space is permitted + ; without blackslash-quoting except + ; double-quote and the backslash itself. + + String = Atom / Quoted-string + + While the above definition for Local-part is relatively permissive, + for maximum interoperability, a host that expects to receive mail + SHOULD avoid defining mailboxes where the Local-part requires (or + uses) the Quoted-string form or where the Local-part is case- + sensitive. For any purposes that require generating or comparing + Local-parts (e.g., to specific mailbox names), all quoted forms MUST + be treated as equivalent, and the sending system SHOULD transmit the + form that uses the minimum quoting possible. + + Systems MUST NOT define mailboxes in such a way as to require the use + in SMTP of non-ASCII characters (octets with the high order bit set + + + +Klensin Standards Track [Page 42] + +RFC 5321 SMTP October 2008 + + + to one) or ASCII "control characters" (decimal value 0-31 and 127). + These characters MUST NOT be used in MAIL or RCPT commands or other + commands that require mailbox names. + + Note that the backslash, "\", is a quote character, which is used to + indicate that the next character is to be used literally (instead of + its normal interpretation). For example, "Joe\,Smith" indicates a + single nine-character user name string with the comma being the + fourth character of that string. + + To promote interoperability and consistent with long-standing + guidance about conservative use of the DNS in naming and applications + (e.g., see Section 2.3.1 of the base DNS document, RFC 1035 [2]), + characters outside the set of alphabetic characters, digits, and + hyphen MUST NOT appear in domain name labels for SMTP clients or + servers. In particular, the underscore character is not permitted. + SMTP servers that receive a command in which invalid character codes + have been employed, and for which there are no other reasons for + rejection, MUST reject that command with a 501 response (this rule, + like others, could be overridden by appropriate SMTP extensions). + +4.1.3. Address Literals + + Sometimes a host is not known to the domain name system and + communication (and, in particular, communication to report and repair + the error) is blocked. To bypass this barrier, a special literal + form of the address is allowed as an alternative to a domain name. + For IPv4 addresses, this form uses four small decimal integers + separated by dots and enclosed by brackets such as [123.255.37.2], + which indicates an (IPv4) Internet Address in sequence-of-octets + form. For IPv6 and other forms of addressing that might eventually + be standardized, the form consists of a standardized "tag" that + identifies the address syntax, a colon, and the address itself, in a + format specified as part of the relevant standards (i.e., RFC 4291 + [8] for IPv6). + + Specifically: + + IPv4-address-literal = Snum 3("." Snum) + + IPv6-address-literal = "IPv6:" IPv6-addr + + General-address-literal = Standardized-tag ":" 1*dcontent + + Standardized-tag = Ldh-str + ; Standardized-tag MUST be specified in a + ; Standards-Track RFC and registered with IANA + + + + +Klensin Standards Track [Page 43] + +RFC 5321 SMTP October 2008 + + + dcontent = %d33-90 / ; Printable US-ASCII + %d94-126 ; excl. "[", "\", "]" + + Snum = 1*3DIGIT + ; representing a decimal integer + ; value in the range 0 through 255 + + IPv6-addr = IPv6-full / IPv6-comp / IPv6v4-full / IPv6v4-comp + + IPv6-hex = 1*4HEXDIG + + IPv6-full = IPv6-hex 7(":" IPv6-hex) + + IPv6-comp = [IPv6-hex *5(":" IPv6-hex)] "::" + [IPv6-hex *5(":" IPv6-hex)] + ; The "::" represents at least 2 16-bit groups of + ; zeros. No more than 6 groups in addition to the + ; "::" may be present. + + IPv6v4-full = IPv6-hex 5(":" IPv6-hex) ":" IPv4-address-literal + + IPv6v4-comp = [IPv6-hex *3(":" IPv6-hex)] "::" + [IPv6-hex *3(":" IPv6-hex) ":"] + IPv4-address-literal + ; The "::" represents at least 2 16-bit groups of + ; zeros. No more than 4 groups in addition to the + ; "::" and IPv4-address-literal may be present. + +4.1.4. Order of Commands + + There are restrictions on the order in which these commands may be + used. + + A session that will contain mail transactions MUST first be + initialized by the use of the EHLO command. An SMTP server SHOULD + accept commands for non-mail transactions (e.g., VRFY or EXPN) + without this initialization. + + An EHLO command MAY be issued by a client later in the session. If + it is issued after the session begins and the EHLO command is + acceptable to the SMTP server, the SMTP server MUST clear all buffers + and reset the state exactly as if a RSET command had been issued. In + other words, the sequence of RSET followed immediately by EHLO is + redundant, but not harmful other than in the performance cost of + executing unnecessary commands. + + If the EHLO command is not acceptable to the SMTP server, 501, 500, + 502, or 550 failure replies MUST be returned as appropriate. The + + + +Klensin Standards Track [Page 44] + +RFC 5321 SMTP October 2008 + + + SMTP server MUST stay in the same state after transmitting these + replies that it was in before the EHLO was received. + + The SMTP client MUST, if possible, ensure that the domain parameter + to the EHLO command is a primary host name as specified for this + command in Section 2.3.5. If this is not possible (e.g., when the + client's address is dynamically assigned and the client does not have + an obvious name), an address literal SHOULD be substituted for the + domain name. + + An SMTP server MAY verify that the domain name argument in the EHLO + command actually corresponds to the IP address of the client. + However, if the verification fails, the server MUST NOT refuse to + accept a message on that basis. Information captured in the + verification attempt is for logging and tracing purposes. Note that + this prohibition applies to the matching of the parameter to its IP + address only; see Section 7.9 for a more extensive discussion of + rejecting incoming connections or mail messages. + + The NOOP, HELP, EXPN, VRFY, and RSET commands can be used at any time + during a session, or without previously initializing a session. SMTP + servers SHOULD process these normally (that is, not return a 503 + code) even if no EHLO command has yet been received; clients SHOULD + open a session with EHLO before sending these commands. + + If these rules are followed, the example in RFC 821 that shows "550 + access denied to you" in response to an EXPN command is incorrect + unless an EHLO command precedes the EXPN or the denial of access is + based on the client's IP address or other authentication or + authorization-determining mechanisms. + + The MAIL command (or the obsolete SEND, SOML, or SAML commands) + begins a mail transaction. Once started, a mail transaction consists + of a transaction beginning command, one or more RCPT commands, and a + DATA command, in that order. A mail transaction may be aborted by + the RSET, a new EHLO, or the QUIT command. There may be zero or more + transactions in a session. MAIL (or SEND, SOML, or SAML) MUST NOT be + sent if a mail transaction is already open, i.e., it should be sent + only if no mail transaction had been started in the session, or if + the previous one successfully concluded with a successful DATA + command, or if the previous one was aborted, e.g., with a RSET or new + EHLO. + + If the transaction beginning command argument is not acceptable, a + 501 failure reply MUST be returned and the SMTP server MUST stay in + the same state. If the commands in a transaction are out of order to + the degree that they cannot be processed by the server, a 503 failure + + + + +Klensin Standards Track [Page 45] + +RFC 5321 SMTP October 2008 + + + reply MUST be returned and the SMTP server MUST stay in the same + state. + + The last command in a session MUST be the QUIT command. The QUIT + command SHOULD be used by the client SMTP to request connection + closure, even when no session opening command was sent and accepted. + +4.1.5. Private-Use Commands + + As specified in Section 2.2.2, commands starting in "X" may be used + by bilateral agreement between the client (sending) and server + (receiving) SMTP agents. An SMTP server that does not recognize such + a command is expected to reply with "500 Command not recognized". An + extended SMTP server MAY list the feature names associated with these + private commands in the response to the EHLO command. + + Commands sent or accepted by SMTP systems that do not start with "X" + MUST conform to the requirements of Section 2.2.2. + +4.2. SMTP Replies + + Replies to SMTP commands serve to ensure the synchronization of + requests and actions in the process of mail transfer and to guarantee + that the SMTP client always knows the state of the SMTP server. + Every command MUST generate exactly one reply. + + The details of the command-reply sequence are described in + Section 4.3. + + An SMTP reply consists of a three digit number (transmitted as three + numeric characters) followed by some text unless specified otherwise + in this document. The number is for use by automata to determine + what state to enter next; the text is for the human user. The three + digits contain enough encoded information that the SMTP client need + not examine the text and may either discard it or pass it on to the + user, as appropriate. Exceptions are as noted elsewhere in this + document. In particular, the 220, 221, 251, 421, and 551 reply codes + are associated with message text that must be parsed and interpreted + by machines. In the general case, the text may be receiver dependent + and context dependent, so there are likely to be varying texts for + each reply code. A discussion of the theory of reply codes is given + in Section 4.2.1. Formally, a reply is defined to be the sequence: a + three-digit code, , one line of text, and , or a multiline + reply (as defined in the same section). Since, in violation of this + specification, the text is sometimes not sent, clients that do not + receive it SHOULD be prepared to process the code alone (with or + without a trailing space character). Only the EHLO, EXPN, and HELP + commands are expected to result in multiline replies in normal + + + +Klensin Standards Track [Page 46] + +RFC 5321 SMTP October 2008 + + + circumstances; however, multiline replies are allowed for any + command. + + In ABNF, server responses are: + + Greeting = ( "220 " (Domain / address-literal) + [ SP textstring ] CRLF ) / + ( "220-" (Domain / address-literal) + [ SP textstring ] CRLF + *( "220-" [ textstring ] CRLF ) + "220" [ SP textstring ] CRLF ) + + textstring = 1*(%d09 / %d32-126) ; HT, SP, Printable US-ASCII + + Reply-line = *( Reply-code "-" [ textstring ] CRLF ) + Reply-code [ SP textstring ] CRLF + + Reply-code = %x32-35 %x30-35 %x30-39 + + where "Greeting" appears only in the 220 response that announces that + the server is opening its part of the connection. (Other possible + server responses upon connection follow the syntax of Reply-line.) + + An SMTP server SHOULD send only the reply codes listed in this + document. An SMTP server SHOULD use the text shown in the examples + whenever appropriate. + + An SMTP client MUST determine its actions only by the reply code, not + by the text (except for the "change of address" 251 and 551 and, if + necessary, 220, 221, and 421 replies); in the general case, any text, + including no text at all (although senders SHOULD NOT send bare + codes), MUST be acceptable. The space (blank) following the reply + code is considered part of the text. Whenever possible, a receiver- + SMTP SHOULD test the first digit (severity indication) of the reply + code. + + The list of codes that appears below MUST NOT be construed as + permanent. While the addition of new codes should be a rare and + significant activity, with supplemental information in the textual + part of the response being preferred, new codes may be added as the + result of new Standards or Standards-Track specifications. + Consequently, a sender-SMTP MUST be prepared to handle codes not + specified in this document and MUST do so by interpreting the first + digit only. + + In the absence of extensions negotiated with the client, SMTP servers + MUST NOT send reply codes whose first digits are other than 2, 3, 4, + + + + +Klensin Standards Track [Page 47] + +RFC 5321 SMTP October 2008 + + + or 5. Clients that receive such out-of-range codes SHOULD normally + treat them as fatal errors and terminate the mail transaction. + +4.2.1. Reply Code Severities and Theory + + The three digits of the reply each have a special significance. The + first digit denotes whether the response is good, bad, or incomplete. + An unsophisticated SMTP client, or one that receives an unexpected + code, will be able to determine its next action (proceed as planned, + redo, retrench, etc.) by examining this first digit. An SMTP client + that wants to know approximately what kind of error occurred (e.g., + mail system error, command syntax error) may examine the second + digit. The third digit and any supplemental information that may be + present is reserved for the finest gradation of information. + + There are four values for the first digit of the reply code: + + 2yz Positive Completion reply + The requested action has been successfully completed. A new + request may be initiated. + + 3yz Positive Intermediate reply + The command has been accepted, but the requested action is being + held in abeyance, pending receipt of further information. The + SMTP client should send another command specifying this + information. This reply is used in command sequence groups (i.e., + in DATA). + + 4yz Transient Negative Completion reply + The command was not accepted, and the requested action did not + occur. However, the error condition is temporary, and the action + may be requested again. The sender should return to the beginning + of the command sequence (if any). It is difficult to assign a + meaning to "transient" when two different sites (receiver- and + sender-SMTP agents) must agree on the interpretation. Each reply + in this category might have a different time value, but the SMTP + client SHOULD try again. A rule of thumb to determine whether a + reply fits into the 4yz or the 5yz category (see below) is that + replies are 4yz if they can be successful if repeated without any + change in command form or in properties of the sender or receiver + (that is, the command is repeated identically and the receiver + does not put up a new implementation). + + 5yz Permanent Negative Completion reply + The command was not accepted and the requested action did not + occur. The SMTP client SHOULD NOT repeat the exact request (in + the same sequence). Even some "permanent" error conditions can be + corrected, so the human user may want to direct the SMTP client to + + + +Klensin Standards Track [Page 48] + +RFC 5321 SMTP October 2008 + + + reinitiate the command sequence by direct action at some point in + the future (e.g., after the spelling has been changed, or the user + has altered the account status). + + It is worth noting that the file transfer protocol (FTP) [34] uses a + very similar code architecture and that the SMTP codes are based on + the FTP model. However, SMTP uses a one-command, one-response model + (while FTP is asynchronous) and FTP's 1yz codes are not part of the + SMTP model. + + The second digit encodes responses in specific categories: + + x0z Syntax: These replies refer to syntax errors, syntactically + correct commands that do not fit any functional category, and + unimplemented or superfluous commands. + + x1z Information: These are replies to requests for information, such + as status or help. + + x2z Connections: These are replies referring to the transmission + channel. + + x3z Unspecified. + + x4z Unspecified. + + x5z Mail system: These replies indicate the status of the receiver + mail system vis-a-vis the requested transfer or other mail system + action. + + The third digit gives a finer gradation of meaning in each category + specified by the second digit. The list of replies illustrates this. + Each reply text is recommended rather than mandatory, and may even + change according to the command with which it is associated. On the + other hand, the reply codes must strictly follow the specifications + in this section. Receiver implementations should not invent new + codes for slightly different situations from the ones described here, + but rather adapt codes already defined. + + For example, a command such as NOOP, whose successful execution does + not offer the SMTP client any new information, will return a 250 + reply. The reply is 502 when the command requests an unimplemented + non-site-specific action. A refinement of that is the 504 reply for + a command that is implemented, but that requests an unimplemented + parameter. + + + + + + +Klensin Standards Track [Page 49] + +RFC 5321 SMTP October 2008 + + + The reply text may be longer than a single line; in these cases the + complete text must be marked so the SMTP client knows when it can + stop reading the reply. This requires a special format to indicate a + multiple line reply. + + The format for multiline replies requires that every line, except the + last, begin with the reply code, followed immediately by a hyphen, + "-" (also known as minus), followed by text. The last line will + begin with the reply code, followed immediately by , optionally + some text, and . As noted above, servers SHOULD send the + if subsequent text is not sent, but clients MUST be prepared for it + to be omitted. + + For example: + + 250-First line + 250-Second line + 250-234 Text beginning with numbers + 250 The last line + + In a multiline reply, the reply code on each of the lines MUST be the + same. It is reasonable for the client to rely on this, so it can + make processing decisions based on the code in any line, assuming + that all others will be the same. In a few cases, there is important + data for the client in the reply "text". The client will be able to + identify these cases from the current context. + +4.2.2. Reply Codes by Function Groups + + 500 Syntax error, command unrecognized (This may include errors such + as command line too long) + + 501 Syntax error in parameters or arguments + + 502 Command not implemented (see Section 4.2.4) + + 503 Bad sequence of commands + + 504 Command parameter not implemented + + + 211 System status, or system help reply + + 214 Help message (Information on how to use the receiver or the + meaning of a particular non-standard command; this reply is useful + only to the human user) + + + + + +Klensin Standards Track [Page 50] + +RFC 5321 SMTP October 2008 + + + 220 Service ready + + 221 Service closing transmission channel + + 421 Service not available, closing transmission channel + (This may be a reply to any command if the service knows it must + shut down) + + + 250 Requested mail action okay, completed + + 251 User not local; will forward to (See Section 3.4) + + 252 Cannot VRFY user, but will accept message and attempt delivery + (See Section 3.5.3) + + 455 Server unable to accommodate parameters + + 555 MAIL FROM/RCPT TO parameters not recognized or not implemented + + 450 Requested mail action not taken: mailbox unavailable (e.g., + mailbox busy or temporarily blocked for policy reasons) + + 550 Requested action not taken: mailbox unavailable (e.g., mailbox + not found, no access, or command rejected for policy reasons) + + 451 Requested action aborted: error in processing + + 551 User not local; please try (See Section 3.4) + + 452 Requested action not taken: insufficient system storage + + 552 Requested mail action aborted: exceeded storage allocation + + 553 Requested action not taken: mailbox name not allowed (e.g., + mailbox syntax incorrect) + + 354 Start mail input; end with . + + 554 Transaction failed (Or, in the case of a connection-opening + response, "No SMTP service here") + + + + + + + + + + +Klensin Standards Track [Page 51] + +RFC 5321 SMTP October 2008 + + +4.2.3. Reply Codes in Numeric Order + + 211 System status, or system help reply + + 214 Help message (Information on how to use the receiver or the + meaning of a particular non-standard command; this reply is useful + only to the human user) + + 220 Service ready + + 221 Service closing transmission channel + + 250 Requested mail action okay, completed + + 251 User not local; will forward to (See Section 3.4) + + 252 Cannot VRFY user, but will accept message and attempt delivery + (See Section 3.5.3) + + 354 Start mail input; end with . + + 421 Service not available, closing transmission channel + (This may be a reply to any command if the service knows it must + shut down) + + 450 Requested mail action not taken: mailbox unavailable (e.g., + mailbox busy or temporarily blocked for policy reasons) + + 451 Requested action aborted: local error in processing + + 452 Requested action not taken: insufficient system storage + + 455 Server unable to accommodate parameters + + 500 Syntax error, command unrecognized (This may include errors such + as command line too long) + + 501 Syntax error in parameters or arguments + + 502 Command not implemented (see Section 4.2.4) + + 503 Bad sequence of commands + + 504 Command parameter not implemented + + 550 Requested action not taken: mailbox unavailable (e.g., mailbox + not found, no access, or command rejected for policy reasons) + + + + +Klensin Standards Track [Page 52] + +RFC 5321 SMTP October 2008 + + + 551 User not local; please try (See Section 3.4) + + 552 Requested mail action aborted: exceeded storage allocation + + 553 Requested action not taken: mailbox name not allowed (e.g., + mailbox syntax incorrect) + + 554 Transaction failed (Or, in the case of a connection-opening + response, "No SMTP service here") + + 555 MAIL FROM/RCPT TO parameters not recognized or not implemented + +4.2.4. Reply Code 502 + + Questions have been raised as to when reply code 502 (Command not + implemented) SHOULD be returned in preference to other codes. 502 + SHOULD be used when the command is actually recognized by the SMTP + server, but not implemented. If the command is not recognized, code + 500 SHOULD be returned. Extended SMTP systems MUST NOT list + capabilities in response to EHLO for which they will return 502 (or + 500) replies. + +4.2.5. Reply Codes after DATA and the Subsequent . + + When an SMTP server returns a positive completion status (2yz code) + after the DATA command is completed with ., it accepts + responsibility for: + + o delivering the message (if the recipient mailbox exists), or + + o if attempts to deliver the message fail due to transient + conditions, retrying delivery some reasonable number of times at + intervals as specified in Section 4.5.4. + + o if attempts to deliver the message fail due to permanent + conditions, or if repeated attempts to deliver the message fail + due to transient conditions, returning appropriate notification to + the sender of the original message (using the address in the SMTP + MAIL command). + + When an SMTP server returns a temporary error status (4yz) code after + the DATA command is completed with ., it MUST NOT make a + subsequent attempt to deliver that message. The SMTP client retains + responsibility for the delivery of that message and may either return + it to the user or requeue it for a subsequent attempt (see + Section 4.5.4.1). + + + + + +Klensin Standards Track [Page 53] + +RFC 5321 SMTP October 2008 + + + The user who originated the message SHOULD be able to interpret the + return of a transient failure status (by mail message or otherwise) + as a non-delivery indication, just as a permanent failure would be + interpreted. If the client SMTP successfully handles these + conditions, the user will not receive such a reply. + + When an SMTP server returns a permanent error status (5yz) code after + the DATA command is completed with ., it MUST NOT make + any subsequent attempt to deliver the message. As with temporary + error status codes, the SMTP client retains responsibility for the + message, but SHOULD not again attempt delivery to the same server + without user review of the message and response and appropriate + intervention. + +4.3. Sequencing of Commands and Replies + +4.3.1. Sequencing Overview + + The communication between the sender and receiver is an alternating + dialogue, controlled by the sender. As such, the sender issues a + command and the receiver responds with a reply. Unless other + arrangements are negotiated through service extensions, the sender + MUST wait for this response before sending further commands. One + important reply is the connection greeting. Normally, a receiver + will send a 220 "Service ready" reply when the connection is + completed. The sender SHOULD wait for this greeting message before + sending any commands. + + Note: all the greeting-type replies have the official name (the + fully-qualified primary domain name) of the server host as the first + word following the reply code. Sometimes the host will have no + meaningful name. See Section 4.1.3 for a discussion of alternatives + in these situations. + + For example, + + 220 ISIF.USC.EDU Service ready + + or + + 220 mail.example.com SuperSMTP v 6.1.2 Service ready + + or + + 220 [10.0.0.1] Clueless host service ready + + The table below lists alternative success and failure replies for + each command. These SHOULD be strictly adhered to. A receiver MAY + + + +Klensin Standards Track [Page 54] + +RFC 5321 SMTP October 2008 + + + substitute text in the replies, but the meanings and actions implied + by the code numbers and by the specific command reply sequence MUST + be preserved. + +4.3.2. Command-Reply Sequences + + Each command is listed with its usual possible replies. The prefixes + used before the possible replies are "I" for intermediate, "S" for + success, and "E" for error. Since some servers may generate other + replies under special circumstances, and to allow for future + extension, SMTP clients SHOULD, when possible, interpret only the + first digit of the reply and MUST be prepared to deal with + unrecognized reply codes by interpreting the first digit only. + Unless extended using the mechanisms described in Section 2.2, SMTP + servers MUST NOT transmit reply codes to an SMTP client that are + other than three digits or that do not start in a digit between 2 and + 5 inclusive. + + These sequencing rules and, in principle, the codes themselves, can + be extended or modified by SMTP extensions offered by the server and + accepted (requested) by the client. However, if the target is more + precise granularity in the codes, rather than codes for completely + new purposes, the system described in RFC 3463 [25] SHOULD be used in + preference to the invention of new codes. + + In addition to the codes listed below, any SMTP command can return + any of the following codes if the corresponding unusual circumstances + are encountered: + + 500 For the "command line too long" case or if the command name was + not recognized. Note that producing a "command not recognized" + error in response to the required subset of these commands is a + violation of this specification. Similarly, producing a "command + too long" message for a command line shorter than 512 characters + would violate the provisions of Section 4.5.3.1.4. + + 501 Syntax error in command or arguments. In order to provide for + future extensions, commands that are specified in this document as + not accepting arguments (DATA, RSET, QUIT) SHOULD return a 501 + message if arguments are supplied in the absence of EHLO- + advertised extensions. + + 421 Service shutting down and closing transmission channel + + + + + + + + +Klensin Standards Track [Page 55] + +RFC 5321 SMTP October 2008 + + + Specific sequences are: + + CONNECTION ESTABLISHMENT + + S: 220 + E: 554 + + EHLO or HELO + + S: 250 + E: 504 (a conforming implementation could return this code only + in fairly obscure cases), 550, 502 (permitted only with an old- + style server that does not support EHLO) + + MAIL + + S: 250 + E: 552, 451, 452, 550, 553, 503, 455, 555 + + RCPT + + S: 250, 251 (but see Section 3.4 for discussion of 251 and 551) + E: 550, 551, 552, 553, 450, 451, 452, 503, 455, 555 + + DATA + + I: 354 -> data -> S: 250 + + E: 552, 554, 451, 452 + + E: 450, 550 (rejections for policy reasons) + + E: 503, 554 + + RSET + + S: 250 + + VRFY + + S: 250, 251, 252 + E: 550, 551, 553, 502, 504 + + EXPN + + S: 250, 252 + E: 550, 500, 502, 504 + + + + +Klensin Standards Track [Page 56] + +RFC 5321 SMTP October 2008 + + + HELP + + S: 211, 214 + E: 502, 504 + + NOOP + + S: 250 + + QUIT + + S: 221 + +4.4. Trace Information + + When an SMTP server receives a message for delivery or further + processing, it MUST insert trace ("time stamp" or "Received") + information at the beginning of the message content, as discussed in + Section 4.1.1.4. + + This line MUST be structured as follows: + + o The FROM clause, which MUST be supplied in an SMTP environment, + SHOULD contain both (1) the name of the source host as presented + in the EHLO command and (2) an address literal containing the IP + address of the source, determined from the TCP connection. + + o The ID clause MAY contain an "@" as suggested in RFC 822, but this + is not required. + + o If the FOR clause appears, it MUST contain exactly one + entry, even when multiple RCPT commands have been given. Multiple + s raise some security issues and have been deprecated, see + Section 7.2. + + An Internet mail program MUST NOT change or delete a Received: line + that was previously added to the message header section. SMTP + servers MUST prepend Received lines to messages; they MUST NOT change + the order of existing lines or insert Received lines in any other + location. + + As the Internet grows, comparability of Received header fields is + important for detecting problems, especially slow relays. SMTP + servers that create Received header fields SHOULD use explicit + offsets in the dates (e.g., -0800), rather than time zone names of + any type. Local time (with an offset) SHOULD be used rather than UT + when feasible. This formulation allows slightly more information + about local circumstances to be specified. If UT is needed, the + + + +Klensin Standards Track [Page 57] + +RFC 5321 SMTP October 2008 + + + receiver need merely do some simple arithmetic to convert the values. + Use of UT loses information about the time zone-location of the + server. If it is desired to supply a time zone name, it SHOULD be + included in a comment. + + When the delivery SMTP server makes the "final delivery" of a + message, it inserts a return-path line at the beginning of the mail + data. This use of return-path is required; mail systems MUST support + it. The return-path line preserves the information in the from the MAIL command. Here, final delivery means the message + has left the SMTP environment. Normally, this would mean it had been + delivered to the destination user or an associated mail drop, but in + some cases it may be further processed and transmitted by another + mail system. + + It is possible for the mailbox in the return path to be different + from the actual sender's mailbox, for example, if error responses are + to be delivered to a special error handling mailbox rather than to + the message sender. When mailing lists are involved, this + arrangement is common and useful as a means of directing errors to + the list maintainer rather than the message originator. + + The text above implies that the final mail data will begin with a + return path line, followed by one or more time stamp lines. These + lines will be followed by the rest of the mail data: first the + balance of the mail header section and then the body (RFC 5322 [4]). + + It is sometimes difficult for an SMTP server to determine whether or + not it is making final delivery since forwarding or other operations + may occur after the message is accepted for delivery. Consequently, + any further (forwarding, gateway, or relay) systems MAY remove the + return path and rebuild the MAIL command as needed to ensure that + exactly one such line appears in a delivered message. + + A message-originating SMTP system SHOULD NOT send a message that + already contains a Return-path header field. SMTP servers performing + a relay function MUST NOT inspect the message data, and especially + not to the extent needed to determine if Return-path header fields + are present. SMTP servers making final delivery MAY remove Return- + path header fields before adding their own. + + The primary purpose of the Return-path is to designate the address to + which messages indicating non-delivery or other mail system failures + are to be sent. For this to be unambiguous, exactly one return path + SHOULD be present when the message is delivered. Systems using RFC + 822 syntax with non-SMTP transports SHOULD designate an unambiguous + address, associated with the transport envelope, to which error + reports (e.g., non-delivery messages) should be sent. + + + +Klensin Standards Track [Page 58] + +RFC 5321 SMTP October 2008 + + + Historical note: Text in RFC 822 that appears to contradict the use + of the Return-path header field (or the envelope reverse-path address + from the MAIL command) as the destination for error messages is not + applicable on the Internet. The reverse-path address (as copied into + the Return-path) MUST be used as the target of any mail containing + delivery error messages. + + In particular: + o a gateway from SMTP -> elsewhere SHOULD insert a return-path + header field, unless it is known that the "elsewhere" transport + also uses Internet domain addresses and maintains the envelope + sender address separately. + + o a gateway from elsewhere -> SMTP SHOULD delete any return-path + header field present in the message, and either copy that + information to the SMTP envelope or combine it with information + present in the envelope of the other transport system to construct + the reverse-path argument to the MAIL command in the SMTP + envelope. + + The server must give special treatment to cases in which the + processing following the end of mail data indication is only + partially successful. This could happen if, after accepting several + recipients and the mail data, the SMTP server finds that the mail + data could be successfully delivered to some, but not all, of the + recipients. In such cases, the response to the DATA command MUST be + an OK reply. However, the SMTP server MUST compose and send an + "undeliverable mail" notification message to the originator of the + message. + + A single notification listing all of the failed recipients or + separate notification messages MUST be sent for each failed + recipient. For economy of processing by the sender, the former + SHOULD be used when possible. Note that the key difference between + handling aliases (Section 3.9.1) and forwarding (this subsection) is + the change to the backward-pointing address in this case. All + notification messages about undeliverable mail MUST be sent using the + MAIL command (even if they result from processing the obsolete SEND, + SOML, or SAML commands) and MUST use a null return path as discussed + in Section 3.6. + + The time stamp line and the return path line are formally defined as + follows (the definitions for "FWS" and "CFWS" appear in RFC 5322 + [4]): + + Return-path-line = "Return-Path:" FWS Reverse-path + + Time-stamp-line = "Received:" FWS Stamp + + + +Klensin Standards Track [Page 59] + +RFC 5321 SMTP October 2008 + + + Stamp = From-domain By-domain Opt-info [CFWS] ";" + FWS date-time + ; where "date-time" is as defined in RFC 5322 [4] + ; but the "obs-" forms, especially two-digit + ; years, are prohibited in SMTP and MUST NOT be used. + + From-domain = "FROM" FWS Extended-Domain + + By-domain = CFWS "BY" FWS Extended-Domain + + Extended-Domain = Domain / + ( Domain FWS "(" TCP-info ")" ) / + ( address-literal FWS "(" TCP-info ")" ) + + TCP-info = address-literal / ( Domain FWS address-literal ) + ; Information derived by server from TCP connection + ; not client EHLO. + + Opt-info = [Via] [With] [ID] [For] + [Additional-Registered-Clauses] + + Via = CFWS "VIA" FWS Link + + With = CFWS "WITH" FWS Protocol + + ID = CFWS "ID" FWS ( Atom / msg-id ) + ; msg-id is defined in RFC 5322 [4] + + For = CFWS "FOR" FWS ( Path / Mailbox ) + + Additional-Registered-Clauses = CFWS Atom FWS String + ; Additional standard clauses may be + added in this + ; location by future standards and + registration with + ; IANA. SMTP servers SHOULD NOT use + unregistered + ; names. See Section 8. + + Link = "TCP" / Addtl-Link + + Addtl-Link = Atom + ; Additional standard names for links are + ; registered with the Internet Assigned Numbers + ; Authority (IANA). "Via" is primarily of value + ; with non-Internet transports. SMTP servers + ; SHOULD NOT use unregistered names. + + + + +Klensin Standards Track [Page 60] + +RFC 5321 SMTP October 2008 + + + Protocol = "ESMTP" / "SMTP" / Attdl-Protocol + + Attdl-Protocol = Atom + ; Additional standard names for protocols are + ; registered with the Internet Assigned Numbers + ; Authority (IANA) in the "mail parameters" + ; registry [9]. SMTP servers SHOULD NOT + ; use unregistered names. + +4.5. Additional Implementation Issues + +4.5.1. Minimum Implementation + + In order to make SMTP workable, the following minimum implementation + MUST be provided by all receivers. The following commands MUST be + supported to conform to this specification: + + EHLO + HELO + MAIL + RCPT + DATA + RSET + NOOP + QUIT + VRFY + + Any system that includes an SMTP server supporting mail relaying or + delivery MUST support the reserved mailbox "postmaster" as a case- + insensitive local name. This postmaster address is not strictly + necessary if the server always returns 554 on connection opening (as + described in Section 3.1). The requirement to accept mail for + postmaster implies that RCPT commands that specify a mailbox for + postmaster at any of the domains for which the SMTP server provides + mail service, as well as the special case of "RCPT TO:" + (with no domain specification), MUST be supported. + + SMTP systems are expected to make every reasonable effort to accept + mail directed to Postmaster from any other system on the Internet. + In extreme cases -- such as to contain a denial of service attack or + other breach of security -- an SMTP server may block mail directed to + Postmaster. However, such arrangements SHOULD be narrowly tailored + so as to avoid blocking messages that are not part of such attacks. + + + + + + + + +Klensin Standards Track [Page 61] + +RFC 5321 SMTP October 2008 + + +4.5.2. Transparency + + Without some provision for data transparency, the character sequence + "." ends the mail text and cannot be sent by the user. + In general, users are not aware of such "forbidden" sequences. To + allow all user composed text to be transmitted transparently, the + following procedures are used: + + o Before sending a line of mail text, the SMTP client checks the + first character of the line. If it is a period, one additional + period is inserted at the beginning of the line. + + o When a line of mail text is received by the SMTP server, it checks + the line. If the line is composed of a single period, it is + treated as the end of mail indicator. If the first character is a + period and there are other characters on the line, the first + character is deleted. + + The mail data may contain any of the 128 ASCII characters. All + characters are to be delivered to the recipient's mailbox, including + spaces, vertical and horizontal tabs, and other control characters. + If the transmission channel provides an 8-bit byte (octet) data + stream, the 7-bit ASCII codes are transmitted, right justified, in + the octets, with the high-order bits cleared to zero. See + Section 3.6 for special treatment of these conditions in SMTP systems + serving a relay function. + + In some systems, it may be necessary to transform the data as it is + received and stored. This may be necessary for hosts that use a + different character set than ASCII as their local character set, that + store data in records rather than strings, or which use special + character sequences as delimiters inside mailboxes. If such + transformations are necessary, they MUST be reversible, especially if + they are applied to mail being relayed. + +4.5.3. Sizes and Timeouts + +4.5.3.1. Size Limits and Minimums + + There are several objects that have required minimum/maximum sizes. + Every implementation MUST be able to receive objects of at least + these sizes. Objects larger than these sizes SHOULD be avoided when + possible. However, some Internet mail constructs such as encoded + X.400 addresses (RFC 2156 [35]) will often require larger objects. + Clients MAY attempt to transmit these, but MUST be prepared for a + server to reject them if they cannot be handled by it. To the + maximum extent possible, implementation techniques that impose no + limits on the length of these objects should be used. + + + +Klensin Standards Track [Page 62] + +RFC 5321 SMTP October 2008 + + + Extensions to SMTP may involve the use of characters that occupy more + than a single octet each. This section therefore specifies lengths + in octets where absolute lengths, rather than character counts, are + intended. + +4.5.3.1.1. Local-part + + The maximum total length of a user name or other local-part is 64 + octets. + +4.5.3.1.2. Domain + + The maximum total length of a domain name or number is 255 octets. + +4.5.3.1.3. Path + + The maximum total length of a reverse-path or forward-path is 256 + octets (including the punctuation and element separators). + +4.5.3.1.4. Command Line + + The maximum total length of a command line including the command word + and the is 512 octets. SMTP extensions may be used to + increase this limit. + +4.5.3.1.5. Reply Line + + The maximum total length of a reply line including the reply code and + the is 512 octets. More information may be conveyed through + multiple-line replies. + +4.5.3.1.6. Text Line + + The maximum total length of a text line including the is 1000 + octets (not counting the leading dot duplicated for transparency). + This number may be increased by the use of SMTP Service Extensions. + +4.5.3.1.7. Message Content + + The maximum total length of a message content (including any message + header section as well as the message body) MUST BE at least 64K + octets. Since the introduction of Internet Standards for multimedia + mail (RFC 2045 [21]), message lengths on the Internet have grown + dramatically, and message size restrictions should be avoided if at + all possible. SMTP server systems that must impose restrictions + SHOULD implement the "SIZE" service extension of RFC 1870 [10], and + SMTP client systems that will send large messages SHOULD utilize it + when possible. + + + +Klensin Standards Track [Page 63] + +RFC 5321 SMTP October 2008 + + +4.5.3.1.8. Recipients Buffer + + The minimum total number of recipients that MUST be buffered is 100 + recipients. Rejection of messages (for excessive recipients) with + fewer than 100 RCPT commands is a violation of this specification. + The general principle that relaying SMTP server MUST NOT, and + delivery SMTP servers SHOULD NOT, perform validation tests on message + header fields suggests that messages SHOULD NOT be rejected based on + the total number of recipients shown in header fields. A server that + imposes a limit on the number of recipients MUST behave in an orderly + fashion, such as rejecting additional addresses over its limit rather + than silently discarding addresses previously accepted. A client + that needs to deliver a message containing over 100 RCPT commands + SHOULD be prepared to transmit in 100-recipient "chunks" if the + server declines to accept more than 100 recipients in a single + message. + +4.5.3.1.9. Treatment When Limits Exceeded + + Errors due to exceeding these limits may be reported by using the + reply codes. Some examples of reply codes are: + + 500 Line too long. + + or + + 501 Path too long + + or + + 452 Too many recipients (see below) + + or + + 552 Too much mail data. + +4.5.3.1.10. Too Many Recipients Code + + RFC 821 [1] incorrectly listed the error where an SMTP server + exhausts its implementation limit on the number of RCPT commands + ("too many recipients") as having reply code 552. The correct reply + code for this condition is 452. Clients SHOULD treat a 552 code in + this case as a temporary, rather than permanent, failure so the logic + below works. + + When a conforming SMTP server encounters this condition, it has at + least 100 successful RCPT commands in its recipients buffer. If the + server is able to accept the message, then at least these 100 + + + +Klensin Standards Track [Page 64] + +RFC 5321 SMTP October 2008 + + + addresses will be removed from the SMTP client's queue. When the + client attempts retransmission of those addresses that received 452 + responses, at least 100 of these will be able to fit in the SMTP + server's recipients buffer. Each retransmission attempt that is able + to deliver anything will be able to dispose of at least 100 of these + recipients. + + If an SMTP server has an implementation limit on the number of RCPT + commands and this limit is exhausted, it MUST use a response code of + 452 (but the client SHOULD also be prepared for a 552, as noted + above). If the server has a configured site-policy limitation on the + number of RCPT commands, it MAY instead use a 5yz response code. In + particular, if the intent is to prohibit messages with more than a + site-specified number of recipients, rather than merely limit the + number of recipients in a given mail transaction, it would be + reasonable to return a 503 response to any DATA command received + subsequent to the 452 (or 552) code or to simply return the 503 after + DATA without returning any previous negative response. + +4.5.3.2. Timeouts + + An SMTP client MUST provide a timeout mechanism. It MUST use per- + command timeouts rather than somehow trying to time the entire mail + transaction. Timeouts SHOULD be easily reconfigurable, preferably + without recompiling the SMTP code. To implement this, a timer is set + for each SMTP command and for each buffer of the data transfer. The + latter means that the overall timeout is inherently proportional to + the size of the message. + + Based on extensive experience with busy mail-relay hosts, the minimum + per-command timeout values SHOULD be as follows: + +4.5.3.2.1. Initial 220 Message: 5 Minutes + + An SMTP client process needs to distinguish between a failed TCP + connection and a delay in receiving the initial 220 greeting message. + Many SMTP servers accept a TCP connection but delay delivery of the + 220 message until their system load permits more mail to be + processed. + +4.5.3.2.2. MAIL Command: 5 Minutes + +4.5.3.2.3. RCPT Command: 5 Minutes + + A longer timeout is required if processing of mailing lists and + aliases is not deferred until after the message was accepted. + + + + + +Klensin Standards Track [Page 65] + +RFC 5321 SMTP October 2008 + + +4.5.3.2.4. DATA Initiation: 2 Minutes + + This is while awaiting the "354 Start Input" reply to a DATA command. + +4.5.3.2.5. Data Block: 3 Minutes + + This is while awaiting the completion of each TCP SEND call + transmitting a chunk of data. + +4.5.3.2.6. DATA Termination: 10 Minutes. + + This is while awaiting the "250 OK" reply. When the receiver gets + the final period terminating the message data, it typically performs + processing to deliver the message to a user mailbox. A spurious + timeout at this point would be very wasteful and would typically + result in delivery of multiple copies of the message, since it has + been successfully sent and the server has accepted responsibility for + delivery. See Section 6.1 for additional discussion. + +4.5.3.2.7. Server Timeout: 5 Minutes. + + An SMTP server SHOULD have a timeout of at least 5 minutes while it + is awaiting the next command from the sender. + +4.5.4. Retry Strategies + + The common structure of a host SMTP implementation includes user + mailboxes, one or more areas for queuing messages in transit, and one + or more daemon processes for sending and receiving mail. The exact + structure will vary depending on the needs of the users on the host + and the number and size of mailing lists supported by the host. We + describe several optimizations that have proved helpful, particularly + for mailers supporting high traffic levels. + + Any queuing strategy MUST include timeouts on all activities on a + per-command basis. A queuing strategy MUST NOT send error messages + in response to error messages under any circumstances. + +4.5.4.1. Sending Strategy + + The general model for an SMTP client is one or more processes that + periodically attempt to transmit outgoing mail. In a typical system, + the program that composes a message has some method for requesting + immediate attention for a new piece of outgoing mail, while mail that + cannot be transmitted immediately MUST be queued and periodically + retried by the sender. A mail queue entry will include not only the + message itself but also the envelope information. + + + + +Klensin Standards Track [Page 66] + +RFC 5321 SMTP October 2008 + + + The sender MUST delay retrying a particular destination after one + attempt has failed. In general, the retry interval SHOULD be at + least 30 minutes; however, more sophisticated and variable strategies + will be beneficial when the SMTP client can determine the reason for + non-delivery. + + Retries continue until the message is transmitted or the sender gives + up; the give-up time generally needs to be at least 4-5 days. It MAY + be appropriate to set a shorter maximum number of retries for non- + delivery notifications and equivalent error messages than for + standard messages. The parameters to the retry algorithm MUST be + configurable. + + A client SHOULD keep a list of hosts it cannot reach and + corresponding connection timeouts, rather than just retrying queued + mail items. + + Experience suggests that failures are typically transient (the target + system or its connection has crashed), favoring a policy of two + connection attempts in the first hour the message is in the queue, + and then backing off to one every two or three hours. + + The SMTP client can shorten the queuing delay in cooperation with the + SMTP server. For example, if mail is received from a particular + address, it is likely that mail queued for that host can now be sent. + Application of this principle may, in many cases, eliminate the + requirement for an explicit "send queues now" function such as ETRN, + RFC 1985 [36]. + + The strategy may be further modified as a result of multiple + addresses per host (see below) to optimize delivery time versus + resource usage. + + An SMTP client may have a large queue of messages for each + unavailable destination host. If all of these messages were retried + in every retry cycle, there would be excessive Internet overhead and + the sending system would be blocked for a long period. Note that an + SMTP client can generally determine that a delivery attempt has + failed only after a timeout of several minutes, and even a one-minute + timeout per connection will result in a very large delay if retries + are repeated for dozens, or even hundreds, of queued messages to the + same host. + + At the same time, SMTP clients SHOULD use great care in caching + negative responses from servers. In an extreme case, if EHLO is + issued multiple times during the same SMTP connection, different + answers may be returned by the server. More significantly, 5yz + responses to the MAIL command MUST NOT be cached. + + + +Klensin Standards Track [Page 67] + +RFC 5321 SMTP October 2008 + + + When a mail message is to be delivered to multiple recipients, and + the SMTP server to which a copy of the message is to be sent is the + same for multiple recipients, then only one copy of the message + SHOULD be transmitted. That is, the SMTP client SHOULD use the + command sequence: MAIL, RCPT, RCPT, ..., RCPT, DATA instead of the + sequence: MAIL, RCPT, DATA, ..., MAIL, RCPT, DATA. However, if there + are very many addresses, a limit on the number of RCPT commands per + MAIL command MAY be imposed. This efficiency feature SHOULD be + implemented. + + Similarly, to achieve timely delivery, the SMTP client MAY support + multiple concurrent outgoing mail transactions. However, some limit + may be appropriate to protect the host from devoting all its + resources to mail. + +4.5.4.2. Receiving Strategy + + The SMTP server SHOULD attempt to keep a pending listen on the SMTP + port (specified by IANA as port 25) at all times. This requires the + support of multiple incoming TCP connections for SMTP. Some limit + MAY be imposed, but servers that cannot handle more than one SMTP + transaction at a time are not in conformance with the intent of this + specification. + + As discussed above, when the SMTP server receives mail from a + particular host address, it could activate its own SMTP queuing + mechanisms to retry any mail pending for that host address. + +4.5.5. Messages with a Null Reverse-Path + + There are several types of notification messages that are required by + existing and proposed Standards to be sent with a null reverse-path, + namely non-delivery notifications as discussed in Section 3.7, other + kinds of Delivery Status Notifications (DSNs, RFC 3461 [32]), and + Message Disposition Notifications (MDNs, RFC 3798 [37]). All of + these kinds of messages are notifications about a previous message, + and they are sent to the reverse-path of the previous mail message. + (If the delivery of such a notification message fails, that usually + indicates a problem with the mail system of the host to which the + notification message is addressed. For this reason, at some hosts + the MTA is set up to forward such failed notification messages to + someone who is able to fix problems with the mail system, e.g., via + the postmaster alias.) + + All other types of messages (i.e., any message which is not required + by a Standards-Track RFC to have a null reverse-path) SHOULD be sent + with a valid, non-null reverse-path. + + + + +Klensin Standards Track [Page 68] + +RFC 5321 SMTP October 2008 + + + Implementers of automated email processors should be careful to make + sure that the various kinds of messages with a null reverse-path are + handled correctly. In particular, such systems SHOULD NOT reply to + messages with a null reverse-path, and they SHOULD NOT add a non-null + reverse-path, or change a null reverse-path to a non-null one, to + such messages when forwarding. + +5. Address Resolution and Mail Handling + +5.1. Locating the Target Host + + Once an SMTP client lexically identifies a domain to which mail will + be delivered for processing (as described in Sections 2.3.5 and 3.6), + a DNS lookup MUST be performed to resolve the domain name (RFC 1035 + [2]). The names are expected to be fully-qualified domain names + (FQDNs): mechanisms for inferring FQDNs from partial names or local + aliases are outside of this specification. Due to a history of + problems, SMTP servers used for initial submission of messages SHOULD + NOT make such inferences (Message Submission Servers [18] have + somewhat more flexibility) and intermediate (relay) SMTP servers MUST + NOT make them. + + The lookup first attempts to locate an MX record associated with the + name. If a CNAME record is found, the resulting name is processed as + if it were the initial name. If a non-existent domain error is + returned, this situation MUST be reported as an error. If a + temporary error is returned, the message MUST be queued and retried + later (see Section 4.5.4.1). If an empty list of MXs is returned, + the address is treated as if it was associated with an implicit MX + RR, with a preference of 0, pointing to that host. If MX records are + present, but none of them are usable, or the implicit MX is unusable, + this situation MUST be reported as an error. + + If one or more MX RRs are found for a given name, SMTP systems MUST + NOT utilize any address RRs associated with that name unless they are + located using the MX RRs; the "implicit MX" rule above applies only + if there are no MX records present. If MX records are present, but + none of them are usable, this situation MUST be reported as an error. + + When a domain name associated with an MX RR is looked up and the + associated data field obtained, the data field of that response MUST + contain a domain name. That domain name, when queried, MUST return + at least one address record (e.g., A or AAAA RR) that gives the IP + address of the SMTP server to which the message should be directed. + Any other response, specifically including a value that will return a + CNAME record when queried, lies outside the scope of this Standard. + The prohibition on labels in the data that resolve to CNAMEs is + discussed in more detail in RFC 2181, Section 10.3 [38]. + + + +Klensin Standards Track [Page 69] + +RFC 5321 SMTP October 2008 + + + When the lookup succeeds, the mapping can result in a list of + alternative delivery addresses rather than a single address, because + of multiple MX records, multihoming, or both. To provide reliable + mail transmission, the SMTP client MUST be able to try (and retry) + each of the relevant addresses in this list in order, until a + delivery attempt succeeds. However, there MAY also be a configurable + limit on the number of alternate addresses that can be tried. In any + case, the SMTP client SHOULD try at least two addresses. + + Two types of information are used to rank the host addresses: + multiple MX records, and multihomed hosts. + + MX records contain a preference indication that MUST be used in + sorting if more than one such record appears (see below). Lower + numbers are more preferred than higher ones. If there are multiple + destinations with the same preference and there is no clear reason to + favor one (e.g., by recognition of an easily reached address), then + the sender-SMTP MUST randomize them to spread the load across + multiple mail exchangers for a specific organization. + + The destination host (perhaps taken from the preferred MX record) may + be multihomed, in which case the domain name resolver will return a + list of alternative IP addresses. It is the responsibility of the + domain name resolver interface to have ordered this list by + decreasing preference if necessary, and the SMTP sender MUST try them + in the order presented. + + Although the capability to try multiple alternative addresses is + required, specific installations may want to limit or disable the use + of alternative addresses. The question of whether a sender should + attempt retries using the different addresses of a multihomed host + has been controversial. The main argument for using the multiple + addresses is that it maximizes the probability of timely delivery, + and indeed sometimes the probability of any delivery; the counter- + argument is that it may result in unnecessary resource use. Note + that resource use is also strongly determined by the sending strategy + discussed in Section 4.5.4.1. + + If an SMTP server receives a message with a destination for which it + is a designated Mail eXchanger, it MAY relay the message (potentially + after having rewritten the MAIL FROM and/or RCPT TO addresses), make + final delivery of the message, or hand it off using some mechanism + outside the SMTP-provided transport environment. Of course, neither + of the latter require that the list of MX records be examined + further. + + If it determines that it should relay the message without rewriting + the address, it MUST sort the MX records to determine candidates for + + + +Klensin Standards Track [Page 70] + +RFC 5321 SMTP October 2008 + + + delivery. The records are first ordered by preference, with the + lowest-numbered records being most preferred. The relay host MUST + then inspect the list for any of the names or addresses by which it + might be known in mail transactions. If a matching record is found, + all records at that preference level and higher-numbered ones MUST be + discarded from consideration. If there are no records left at that + point, it is an error condition, and the message MUST be returned as + undeliverable. If records do remain, they SHOULD be tried, best + preference first, as described above. + +5.2. IPv6 and MX Records + + In the contemporary Internet, SMTP clients and servers may be hosted + on IPv4 systems, IPv6 systems, or dual-stack systems that are + compatible with either version of the Internet Protocol. The host + domains to which MX records point may, consequently, contain "A RR"s + (IPv4), "AAAA RR"s (IPv6), or any combination of them. While RFC + 3974 [39] discusses some operational experience in mixed + environments, it was not comprehensive enough to justify + standardization, and some of its recommendations appear to be + inconsistent with this specification. The appropriate actions to be + taken either will depend on local circumstances, such as performance + of the relevant networks and any conversions that might be necessary, + or will be obvious (e.g., an IPv6-only client need not attempt to + look up A RRs or attempt to reach IPv4-only servers). Designers of + SMTP implementations that might run in IPv6 or dual-stack + environments should study the procedures above, especially the + comments about multihomed hosts, and, preferably, provide mechanisms + to facilitate operational tuning and mail interoperability between + IPv4 and IPv6 systems while considering local circumstances. + +6. Problem Detection and Handling + +6.1. Reliable Delivery and Replies by Email + + When the receiver-SMTP accepts a piece of mail (by sending a "250 OK" + message in response to DATA), it is accepting responsibility for + delivering or relaying the message. It must take this responsibility + seriously. It MUST NOT lose the message for frivolous reasons, such + as because the host later crashes or because of a predictable + resource shortage. Some reasons that are not considered frivolous + are discussed in the next subsection and in Section 7.8. + + If there is a delivery failure after acceptance of a message, the + receiver-SMTP MUST formulate and mail a notification message. This + notification MUST be sent using a null ("<>") reverse-path in the + envelope. The recipient of this notification MUST be the address + from the envelope return path (or the Return-Path: line). However, + + + +Klensin Standards Track [Page 71] + +RFC 5321 SMTP October 2008 + + + if this address is null ("<>"), the receiver-SMTP MUST NOT send a + notification. Obviously, nothing in this section can or should + prohibit local decisions (i.e., as part of the same system + environment as the receiver-SMTP) to log or otherwise transmit + information about null address events locally if that is desired. If + the address is an explicit source route, it MUST be stripped down to + its final hop. + + For example, suppose that an error notification must be sent for a + message that arrived with: + + MAIL FROM:<@a,@b:user@d> + + The notification message MUST be sent using: + + RCPT TO: + + Some delivery failures after the message is accepted by SMTP will be + unavoidable. For example, it may be impossible for the receiving + SMTP server to validate all the delivery addresses in RCPT command(s) + due to a "soft" domain system error, because the target is a mailing + list (see earlier discussion of RCPT), or because the server is + acting as a relay and has no immediate access to the delivering + system. + + To avoid receiving duplicate messages as the result of timeouts, a + receiver-SMTP MUST seek to minimize the time required to respond to + the final . end of data indicator. See RFC 1047 [40] for + a discussion of this problem. + +6.2. Unwanted, Unsolicited, and "Attack" Messages + + Utility and predictability of the Internet mail system requires that + messages that can be delivered should be delivered, regardless of any + syntax or other faults associated with those messages and regardless + of their content. If they cannot be delivered, and cannot be + rejected by the SMTP server during the SMTP transaction, they should + be "bounced" (returned with non-delivery notification messages) as + described above. In today's world, in which many SMTP server + operators have discovered that the quantity of undesirable bulk email + vastly exceeds the quantity of desired mail and in which accepting a + message may trigger additional undesirable traffic by providing + verification of the address, those principles may not be practical. + + As discussed in Section 7.8 and Section 7.9 below, dropping mail + without notification of the sender is permitted in practice. + However, it is extremely dangerous and violates a long tradition and + community expectations that mail is either delivered or returned. If + + + +Klensin Standards Track [Page 72] + +RFC 5321 SMTP October 2008 + + + silent message-dropping is misused, it could easily undermine + confidence in the reliability of the Internet's mail systems. So + silent dropping of messages should be considered only in those cases + where there is very high confidence that the messages are seriously + fraudulent or otherwise inappropriate. + + To stretch the principle of delivery if possible even further, it may + be a rational policy to not deliver mail that has an invalid return + address, although the history of the network is that users are + typically better served by delivering any message that can be + delivered. Reliably determining that a return address is invalid can + be a difficult and time-consuming process, especially if the putative + sending system is not directly accessible or does not fully and + accurately support VRFY and, even if a "drop messages with invalid + return addresses" policy is adopted, it SHOULD be applied only when + there is near-certainty that the return addresses are, in fact, + invalid. + + Conversely, if a message is rejected because it is found to contain + hostile content (a decision that is outside the scope of an SMTP + server as defined in this document), rejection ("bounce") messages + SHOULD NOT be sent unless the receiving site is confident that those + messages will be usefully delivered. The preference and default in + these cases is to avoid sending non-delivery messages when the + incoming message is determined to contain hostile content. + +6.3. Loop Detection + + Simple counting of the number of "Received:" header fields in a + message has proven to be an effective, although rarely optimal, + method of detecting loops in mail systems. SMTP servers using this + technique SHOULD use a large rejection threshold, normally at least + 100 Received entries. Whatever mechanisms are used, servers MUST + contain provisions for detecting and stopping trivial loops. + +6.4. Compensating for Irregularities + + Unfortunately, variations, creative interpretations, and outright + violations of Internet mail protocols do occur; some would suggest + that they occur quite frequently. The debate as to whether a well- + behaved SMTP receiver or relay should reject a malformed message, + attempt to pass it on unchanged, or attempt to repair it to increase + the odds of successful delivery (or subsequent reply) began almost + with the dawn of structured network mail and shows no signs of + abating. Advocates of rejection claim that attempted repairs are + rarely completely adequate and that rejection of bad messages is the + only way to get the offending software repaired. Advocates of + "repair" or "deliver no matter what" argue that users prefer that + + + +Klensin Standards Track [Page 73] + +RFC 5321 SMTP October 2008 + + + mail go through it if at all possible and that there are significant + market pressures in that direction. In practice, these market + pressures may be more important to particular vendors than strict + conformance to the standards, regardless of the preference of the + actual developers. + + The problems associated with ill-formed messages were exacerbated by + the introduction of the split-UA mail reading protocols (Post Office + Protocol (POP) version 2 [15], Post Office Protocol (POP) version 3 + [16], IMAP version 2 [41], and PCMAIL [42]). These protocols + encouraged the use of SMTP as a posting (message submission) + protocol, and SMTP servers as relay systems for these client hosts + (which are often only intermittently connected to the Internet). + Historically, many of those client machines lacked some of the + mechanisms and information assumed by SMTP (and indeed, by the mail + format protocol, RFC 822 [28]). Some could not keep adequate track + of time; others had no concept of time zones; still others could not + identify their own names or addresses; and, of course, none could + satisfy the assumptions that underlay RFC 822's conception of + authenticated addresses. + + In response to these weak SMTP clients, many SMTP systems now + complete messages that are delivered to them in incomplete or + incorrect form. This strategy is generally considered appropriate + when the server can identify or authenticate the client, and there + are prior agreements between them. By contrast, there is at best + great concern about fixes applied by a relay or delivery SMTP server + that has little or no knowledge of the user or client machine. Many + of these issues are addressed by using a separate protocol, such as + that defined in RFC 4409 [18], for message submission, rather than + using originating SMTP servers for that purpose. + + The following changes to a message being processed MAY be applied + when necessary by an originating SMTP server, or one used as the + target of SMTP as an initial posting (message submission) protocol: + + o Addition of a message-id field when none appears + + o Addition of a date, time, or time zone when none appears + + o Correction of addresses to proper FQDN format + + The less information the server has about the client, the less likely + these changes are to be correct and the more caution and conservatism + should be applied when considering whether or not to perform fixes + and how. These changes MUST NOT be applied by an SMTP server that + provides an intermediate relay function. + + + + +Klensin Standards Track [Page 74] + +RFC 5321 SMTP October 2008 + + + In all cases, properly operating clients supplying correct + information are preferred to corrections by the SMTP server. In all + cases, documentation SHOULD be provided in trace header fields and/or + header field comments for actions performed by the servers. + +7. Security Considerations + +7.1. Mail Security and Spoofing + + SMTP mail is inherently insecure in that it is feasible for even + fairly casual users to negotiate directly with receiving and relaying + SMTP servers and create messages that will trick a naive recipient + into believing that they came from somewhere else. Constructing such + a message so that the "spoofed" behavior cannot be detected by an + expert is somewhat more difficult, but not sufficiently so as to be a + deterrent to someone who is determined and knowledgeable. + Consequently, as knowledge of Internet mail increases, so does the + knowledge that SMTP mail inherently cannot be authenticated, or + integrity checks provided, at the transport level. Real mail + security lies only in end-to-end methods involving the message + bodies, such as those that use digital signatures (see RFC 1847 [43] + and, e.g., Pretty Good Privacy (PGP) in RFC 4880 [44] or Secure/ + Multipurpose Internet Mail Extensions (S/MIME) in RFC 3851 [45]). + + Various protocol extensions and configuration options that provide + authentication at the transport level (e.g., from an SMTP client to + an SMTP server) improve somewhat on the traditional situation + described above. However, in general, they only authenticate one + server to another rather than a chain of relays and servers, much + less authenticating users or user machines. Consequently, unless + they are accompanied by careful handoffs of responsibility in a + carefully designed trust environment, they remain inherently weaker + than end-to-end mechanisms that use digitally signed messages rather + than depending on the integrity of the transport system. + + Efforts to make it more difficult for users to set envelope return + path and header "From" fields to point to valid addresses other than + their own are largely misguided: they frustrate legitimate + applications in which mail is sent by one user on behalf of another, + in which error (or normal) replies should be directed to a special + address, or in which a single message is sent to multiple recipients + on different hosts. (Systems that provide convenient ways for users + to alter these header fields on a per-message basis should attempt to + establish a primary and permanent mailbox address for the user so + that Sender header fields within the message data can be generated + sensibly.) + + + + + +Klensin Standards Track [Page 75] + +RFC 5321 SMTP October 2008 + + + This specification does not further address the authentication issues + associated with SMTP other than to advocate that useful functionality + not be disabled in the hope of providing some small margin of + protection against a user who is trying to fake mail. + +7.2. "Blind" Copies + + Addresses that do not appear in the message header section may appear + in the RCPT commands to an SMTP server for a number of reasons. The + two most common involve the use of a mailing address as a "list + exploder" (a single address that resolves into multiple addresses) + and the appearance of "blind copies". Especially when more than one + RCPT command is present, and in order to avoid defeating some of the + purpose of these mechanisms, SMTP clients and servers SHOULD NOT copy + the full set of RCPT command arguments into the header section, + either as part of trace header fields or as informational or private- + extension header fields. Since this rule is often violated in + practice, and cannot be enforced, sending SMTP systems that are aware + of "bcc" use MAY find it helpful to send each blind copy as a + separate message transaction containing only a single RCPT command. + + There is no inherent relationship between either "reverse" (from + MAIL, SAML, etc., commands) or "forward" (RCPT) addresses in the SMTP + transaction ("envelope") and the addresses in the header section. + Receiving systems SHOULD NOT attempt to deduce such relationships and + use them to alter the header section of the message for delivery. + The popular "Apparently-to" header field is a violation of this + principle as well as a common source of unintended information + disclosure and SHOULD NOT be used. + +7.3. VRFY, EXPN, and Security + + As discussed in Section 3.5, individual sites may want to disable + either or both of VRFY or EXPN for security reasons (see below). As + a corollary to the above, implementations that permit this MUST NOT + appear to have verified addresses that are not, in fact, verified. + If a site disables these commands for security reasons, the SMTP + server MUST return a 252 response, rather than a code that could be + confused with successful or unsuccessful verification. + + Returning a 250 reply code with the address listed in the VRFY + command after having checked it only for syntax violates this rule. + Of course, an implementation that "supports" VRFY by always returning + 550 whether or not the address is valid is equally not in + conformance. + + On the public Internet, the contents of mailing lists have become + popular as an address information source for so-called "spammers." + + + +Klensin Standards Track [Page 76] + +RFC 5321 SMTP October 2008 + + + The use of EXPN to "harvest" addresses has increased as list + administrators have installed protections against inappropriate uses + of the lists themselves. However, VRFY and EXPN are still useful for + authenticated users and within an administrative domain. For + example, VRFY and EXPN are useful for performing internal audits of + how email gets routed to check and to make sure no one is + automatically forwarding sensitive mail outside the organization. + Sites implementing SMTP authentication may choose to make VRFY and + EXPN available only to authenticated requestors. Implementations + SHOULD still provide support for EXPN, but sites SHOULD carefully + evaluate the tradeoffs. + + Whether disabling VRFY provides any real marginal security depends on + a series of other conditions. In many cases, RCPT commands can be + used to obtain the same information about address validity. On the + other hand, especially in situations where determination of address + validity for RCPT commands is deferred until after the DATA command + is received, RCPT may return no information at all, while VRFY is + expected to make a serious attempt to determine validity before + generating a response code (see discussion above). + +7.4. Mail Rerouting Based on the 251 and 551 Response Codes + + Before a client uses the 251 or 551 reply codes from a RCPT command + to automatically update its future behavior (e.g., updating the + user's address book), it should be certain of the server's + authenticity. If it does not, it may be subject to a man in the + middle attack. + +7.5. Information Disclosure in Announcements + + There has been an ongoing debate about the tradeoffs between the + debugging advantages of announcing server type and version (and, + sometimes, even server domain name) in the greeting response or in + response to the HELP command and the disadvantages of exposing + information that might be useful in a potential hostile attack. The + utility of the debugging information is beyond doubt. Those who + argue for making it available point out that it is far better to + actually secure an SMTP server rather than hope that trying to + conceal known vulnerabilities by hiding the server's precise identity + will provide more protection. Sites are encouraged to evaluate the + tradeoff with that issue in mind; implementations SHOULD minimally + provide for making type and version information available in some way + to other network hosts. + + + + + + + +Klensin Standards Track [Page 77] + +RFC 5321 SMTP October 2008 + + +7.6. Information Disclosure in Trace Fields + + In some circumstances, such as when mail originates from within a LAN + whose hosts are not directly on the public Internet, trace + ("Received") header fields produced in conformance with this + specification may disclose host names and similar information that + would not normally be available. This ordinarily does not pose a + problem, but sites with special concerns about name disclosure should + be aware of it. Also, the optional FOR clause should be supplied + with caution or not at all when multiple recipients are involved lest + it inadvertently disclose the identities of "blind copy" recipients + to others. + +7.7. Information Disclosure in Message Forwarding + + As discussed in Section 3.4, use of the 251 or 551 reply codes to + identify the replacement address associated with a mailbox may + inadvertently disclose sensitive information. Sites that are + concerned about those issues should ensure that they select and + configure servers appropriately. + +7.8. Resistance to Attacks + + In recent years, there has been an increase of attacks on SMTP + servers, either in conjunction with attempts to discover addresses + for sending unsolicited messages or simply to make the servers + inaccessible to others (i.e., as an application-level denial of + service attack). While the means of doing so are beyond the scope of + this Standard, rational operational behavior requires that servers be + permitted to detect such attacks and take action to defend + themselves. For example, if a server determines that a large number + of RCPT TO commands are being sent, most or all with invalid + addresses, as part of such an attack, it would be reasonable for the + server to close the connection after generating an appropriate number + of 5yz (normally 550) replies. + +7.9. Scope of Operation of SMTP Servers + + It is a well-established principle that an SMTP server may refuse to + accept mail for any operational or technical reason that makes sense + to the site providing the server. However, cooperation among sites + and installations makes the Internet possible. If sites take + excessive advantage of the right to reject traffic, the ubiquity of + email availability (one of the strengths of the Internet) will be + threatened; considerable care should be taken and balance maintained + if a site decides to be selective about the traffic it will accept + and process. + + + + +Klensin Standards Track [Page 78] + +RFC 5321 SMTP October 2008 + + + In recent years, use of the relay function through arbitrary sites + has been used as part of hostile efforts to hide the actual origins + of mail. Some sites have decided to limit the use of the relay + function to known or identifiable sources, and implementations SHOULD + provide the capability to perform this type of filtering. When mail + is rejected for these or other policy reasons, a 550 code SHOULD be + used in response to EHLO (or HELO), MAIL, or RCPT as appropriate. + +8. IANA Considerations + + IANA maintains three registries in support of this specification, all + of which were created for RFC 2821 or earlier. This document expands + the third one as specified below. The registry references listed are + as of the time of publication; IANA does not guarantee the locations + associated with the URLs. The registries are as follows: + + o The first, "Simple Mail Transfer Protocol (SMTP) Service + Extensions" [46], consists of SMTP service extensions with the + associated keywords, and, as needed, parameters and verbs. As + specified in Section 2.2.2, no entry may be made in this registry + that starts in an "X". Entries may be made only for service + extensions (and associated keywords, parameters, or verbs) that + are defined in Standards-Track or Experimental RFCs specifically + approved by the IESG for this purpose. + + o The second registry, "Address Literal Tags" [47], consists of + "tags" that identify forms of domain literals other than those for + IPv4 addresses (specified in RFC 821 and in this document). The + initial entry in that registry is for IPv6 addresses (specified in + this document). Additional literal types require standardization + before being used; none are anticipated at this time. + + o The third, "Mail Transmission Types" [46], established by RFC 821 + and renewed by this specification, is a registry of link and + protocol identifiers to be used with the "via" and "with" + subclauses of the time stamp ("Received:" header field) described + in Section 4.4. Link and protocol identifiers in addition to + those specified in this document may be registered only by + standardization or by way of an RFC-documented, IESG-approved, + Experimental protocol extension. This name space is for + identification and not limited in size: the IESG is encouraged to + approve on the basis of clear documentation and a distinct method + rather than preferences about the properties of the method itself. + + An additional subsection has been added to the "VIA link types" + and "WITH protocol types" subsections of this registry to contain + registrations of "Additional-registered-clauses" as described + above. The registry will contain clause names, a description, a + + + +Klensin Standards Track [Page 79] + +RFC 5321 SMTP October 2008 + + + summary of the syntax of the associated String, and a reference. + As new clauses are defined, they may, in principle, specify + creation of their own registries if the Strings consist of + reserved terms or keywords rather than less restricted strings. + As with link and protocol identifiers, additional clauses may be + registered only by standardization or by way of an RFC-documented, + IESG-approved, Experimental protocol extension. The additional + clause name space is for identification and is not limited in + size: the IESG is encouraged to approve on the basis of clear + documentation, actual use or strong signs that the clause will be + used, and a distinct requirement rather than preferences about the + properties of the clause itself. + + In addition, if additional trace header fields (i.e., in addition to + Return-path and Received) are ever created, those trace fields MUST + be added to the IANA registry established by BCP 90 (RFC 3864) [11] + for use with RFC 5322 [4]. + +9. Acknowledgments + + Many people contributed to the development of RFC 2821. That + document should be consulted for those acknowledgments. For the + present document, the editor and the community owe thanks to Dawn + Mann and Tony Hansen who assisted in the very painful process of + editing and converting the internal format of the document from one + system to another. + + Neither this document nor RFC 2821 would have been possible without + the many contribution and insights of the late Jon Postel. Those + contributions of course include the original specification of SMTP in + RFC 821. A considerable quantity of text from RFC 821 still appears + in this document as do several of Jon's original examples that have + been updated only as needed to reflect other changes in the + specification. + + Many people made comments or suggestions on the mailing list or in + notes to the author. Important corrections or clarifications were + suggested by several people, including Matti Aarnio, Glenn Anderson, + Derek J. Balling, Alex van den Bogaerdt, Stephane Bortzmeyer, Vint + Cerf, Jutta Degener, Steve Dorner, Lisa Dusseault, Frank Ellerman, + Ned Freed, Randy Gellens, Sabahattin Gucukoglu, Philip Guenther, Arnt + Gulbrandsen, Eric Hall, Richard O. Hammer, Tony Hansen, Peter J. + Holzer, Kari Hurtta, Bryon Roche Kain, Valdis Kletnieks, Mathias + Koerber, John Leslie, Bruce Lilly, Jeff Macdonald, Mark E. Mallett, + Mark Martinec, S. Moonesamy, Lyndon Nerenberg, Chris Newman, Douglas + Otis, Pete Resnick, Robert A. Rosenberg, Vince Sabio, Hector Santos, + David F. Skoll, Paul Smith, and Brett Watson. + + + + +Klensin Standards Track [Page 80] + +RFC 5321 SMTP October 2008 + + + The efforts of the Area Directors -- Lisa Dusseault, Ted Hardie, and + Chris Newman -- to get this effort restarted and keep it moving, and + of an ad hoc committee with the same purpose, are gratefully + acknowledged. The members of that committee were (in alphabetical + order) Dave Crocker, Cyrus Daboo, Tony Finch, Ned Freed, Randall + Gellens, Tony Hansen, the author, and Alexey Melnikov. Tony Hansen + also acted as ad hoc chair on the mailing list reviewing this + document; without his efforts, sense of balance and fairness, and + patience, it clearly would not have been possible. + +10. References + +10.1. Normative References + + [1] Postel, J., "Simple Mail Transfer Protocol", STD 10, RFC 821, + August 1982. + + [2] Mockapetris, P., "Domain names - implementation and + specification", STD 13, RFC 1035, November 1987. + + [3] Braden, R., "Requirements for Internet Hosts - Application and + Support", STD 3, RFC 1123, October 1989. + + [4] Resnick, P., "Internet Message Format", RFC 5322, October 2008. + + [5] Bradner, S., "Key words for use in RFCs to Indicate Requirement + Levels", BCP 14, RFC 2119, March 1997. + + [6] American National Standards Institute (formerly United States + of America Standards Institute), "USA Code for Information + Interchange", ANSI X3.4-1968, 1968. + + ANSI X3.4-1968 has been replaced by newer versions with slight + modifications, but the 1968 version remains definitive for the + Internet. + + [7] Crocker, D. and P. Overell, "Augmented BNF for Syntax + Specifications: ABNF", STD 68, RFC 5234, January 2008. + + [8] Hinden, R. and S. Deering, "IP Version 6 Addressing + Architecture", RFC 4291, February 2006. + + [9] Newman, C., "ESMTP and LMTP Transmission Types Registration", + RFC 3848, July 2004. + + [10] Klensin, J., Freed, N., and K. Moore, "SMTP Service Extension + for Message Size Declaration", STD 10, RFC 1870, November 1995. + + + + +Klensin Standards Track [Page 81] + +RFC 5321 SMTP October 2008 + + + [11] Klyne, G., Nottingham, M., and J. Mogul, "Registration + Procedures for Message Header Fields", BCP 90, RFC 3864, + September 2004. + +10.2. Informative References + + [12] Partridge, C., "Mail routing and the domain system", RFC 974, + January 1986. + + [13] Klensin, J., Freed, N., Rose, M., Stefferud, E., and D. + Crocker, "SMTP Service Extensions", STD 10, RFC 1869, + November 1995. + + [14] Klensin, J., "Simple Mail Transfer Protocol", RFC 2821, + April 2001. + + [15] Butler, M., Postel, J., Chase, D., Goldberger, J., and J. + Reynolds, "Post Office Protocol: Version 2", RFC 937, + February 1985. + + [16] Myers, J. and M. Rose, "Post Office Protocol - Version 3", + STD 53, RFC 1939, May 1996. + + [17] Crispin, M., "INTERNET MESSAGE ACCESS PROTOCOL - VERSION + 4rev1", RFC 3501, March 2003. + + [18] Gellens, R. and J. Klensin, "Message Submission for Mail", + RFC 4409, April 2006. + + [19] Freed, N., "SMTP Service Extension for Command Pipelining", + STD 60, RFC 2920, September 2000. + + [20] Vaudreuil, G., "SMTP Service Extensions for Transmission of + Large and Binary MIME Messages", RFC 3030, December 2000. + + [21] Freed, N. and N. Borenstein, "Multipurpose Internet Mail + Extensions (MIME) Part One: Format of Internet Message Bodies", + RFC 2045, November 1996. + + [22] Klensin, J., Freed, N., Rose, M., Stefferud, E., and D. + Crocker, "SMTP Service Extension for 8bit-MIMEtransport", + RFC 1652, July 1994. + + [23] Moore, K., "MIME (Multipurpose Internet Mail Extensions) Part + Three: Message Header Extensions for Non-ASCII Text", RFC 2047, + November 1996. + + + + + +Klensin Standards Track [Page 82] + +RFC 5321 SMTP October 2008 + + + [24] Freed, N. and K. Moore, "MIME Parameter Value and Encoded Word + Extensions: Character Sets, Languages, and Continuations", + RFC 2231, November 1997. + + [25] Vaudreuil, G., "Enhanced Mail System Status Codes", RFC 3463, + January 2003. + + [26] Hansen, T. and J. Klensin, "A Registry for SMTP Enhanced Mail + System Status Codes", BCP 138, RFC 5248, June 2008. + + [27] Freed, N., "Behavior of and Requirements for Internet + Firewalls", RFC 2979, October 2000. + + [28] Crocker, D., "Standard for the format of ARPA Internet text + messages", STD 11, RFC 822, August 1982. + + [29] Wong, M. and W. Schlitt, "Sender Policy Framework (SPF) for + Authorizing Use of Domains in E-Mail, Version 1", RFC 4408, + April 2006. + + [30] Fenton, J., "Analysis of Threats Motivating DomainKeys + Identified Mail (DKIM)", RFC 4686, September 2006. + + [31] Allman, E., Callas, J., Delany, M., Libbey, M., Fenton, J., and + M. Thomas, "DomainKeys Identified Mail (DKIM) Signatures", + RFC 4871, May 2007. + + [32] Moore, K., "Simple Mail Transfer Protocol (SMTP) Service + Extension for Delivery Status Notifications (DSNs)", RFC 3461, + January 2003. + + [33] Moore, K. and G. Vaudreuil, "An Extensible Message Format for + Delivery Status Notifications", RFC 3464, January 2003. + + [34] Postel, J. and J. Reynolds, "File Transfer Protocol", STD 9, + RFC 959, October 1985. + + [35] Kille, S., "MIXER (Mime Internet X.400 Enhanced Relay): Mapping + between X.400 and RFC 822/MIME", RFC 2156, January 1998. + + [36] De Winter, J., "SMTP Service Extension for Remote Message Queue + Starting", RFC 1985, August 1996. + + [37] Hansen, T. and G. Vaudreuil, "Message Disposition + Notification", RFC 3798, May 2004. + + [38] Elz, R. and R. Bush, "Clarifications to the DNS Specification", + RFC 2181, July 1997. + + + +Klensin Standards Track [Page 83] + +RFC 5321 SMTP October 2008 + + + [39] Nakamura, M. and J. Hagino, "SMTP Operational Experience in + Mixed IPv4/v6 Environments", RFC 3974, January 2005. + + [40] Partridge, C., "Duplicate messages and SMTP", RFC 1047, + February 1988. + + [41] Crispin, M., "Interactive Mail Access Protocol: Version 2", + RFC 1176, August 1990. + + [42] Lambert, M., "PCMAIL: A distributed mail system for personal + computers", RFC 1056, June 1988. + + [43] Galvin, J., Murphy, S., Crocker, S., and N. Freed, "Security + Multiparts for MIME: Multipart/Signed and Multipart/Encrypted", + RFC 1847, October 1995. + + [44] Callas, J., Donnerhacke, L., Finney, H., Shaw, D., and R. + Thayer, "OpenPGP Message Format", RFC 4880, November 2007. + + [45] Ramsdell, B., "Secure/Multipurpose Internet Mail Extensions + (S/MIME) Version 3.1 Message Specification", RFC 3851, + July 2004. + + [46] Internet Assigned Number Authority (IANA), "IANA Mail + Parameters", 2007, + . + + [47] Internet Assigned Number Authority (IANA), "Address Literal + Tags", 2007, + . + + + + + + + + + + + + + + + + + + + + + +Klensin Standards Track [Page 84] + +RFC 5321 SMTP October 2008 + + +Appendix A. TCP Transport Service + + The TCP connection supports the transmission of 8-bit bytes. The + SMTP data is 7-bit ASCII characters. Each character is transmitted + as an 8-bit byte with the high-order bit cleared to zero. Service + extensions may modify this rule to permit transmission of full 8-bit + data bytes as part of the message body, or, if specifically designed + to do so, in SMTP commands or responses. + +Appendix B. Generating SMTP Commands from RFC 822 Header Fields + + Some systems use an RFC 822 header section (only) in a mail + submission protocol, or otherwise generate SMTP commands from RFC 822 + header fields when such a message is handed to an MTA from a UA. + While the MTA-UA protocol is a private matter, not covered by any + Internet Standard, there are problems with this approach. For + example, there have been repeated problems with proper handling of + "bcc" copies and redistribution lists when information that + conceptually belongs to the mail envelope is not separated early in + processing from header field information (and kept separate). + + It is recommended that the UA provide its initial ("submission + client") MTA with an envelope separate from the message itself. + However, if the envelope is not supplied, SMTP commands SHOULD be + generated as follows: + + 1. Each recipient address from a TO, CC, or BCC header field SHOULD + be copied to a RCPT command (generating multiple message copies + if that is required for queuing or delivery). This includes any + addresses listed in a RFC 822 "group". Any BCC header fields + SHOULD then be removed from the header section. Once this + process is completed, the remaining header fields SHOULD be + checked to verify that at least one TO, CC, or BCC header field + remains. If none do, then a BCC header field with no additional + information SHOULD be inserted as specified in [4]. + + 2. The return address in the MAIL command SHOULD, if possible, be + derived from the system's identity for the submitting (local) + user, and the "From:" header field otherwise. If there is a + system identity available, it SHOULD also be copied to the Sender + header field if it is different from the address in the From + header field. (Any Sender header field that was already there + SHOULD be removed.) Systems may provide a way for submitters to + override the envelope return address, but may want to restrict + its use to privileged users. This will not prevent mail forgery, + but may lessen its incidence; see Section 7.1. + + + + + +Klensin Standards Track [Page 85] + +RFC 5321 SMTP October 2008 + + + When an MTA is being used in this way, it bears responsibility for + ensuring that the message being transmitted is valid. The mechanisms + for checking that validity, and for handling (or returning) messages + that are not valid at the time of arrival, are part of the MUA-MTA + interface and not covered by this specification. + + A submission protocol based on Standard RFC 822 information alone + MUST NOT be used to gateway a message from a foreign (non-SMTP) mail + system into an SMTP environment. Additional information to construct + an envelope must come from some source in the other environment, + whether supplemental header fields or the foreign system's envelope. + + Attempts to gateway messages using only their header "To" and "Cc" + fields have repeatedly caused mail loops and other behavior adverse + to the proper functioning of the Internet mail environment. These + problems have been especially common when the message originates from + an Internet mailing list and is distributed into the foreign + environment using envelope information. When these messages are then + processed by a header-section-only remailer, loops back to the + Internet environment (and the mailing list) are almost inevitable. + +Appendix C. Source Routes + + Historically, the was a reverse source routing list of + hosts and a source mailbox. The first host in the was + historically the host sending the MAIL command; today, source routes + SHOULD NOT appear in the reverse-path. Similarly, the + may be a source routing lists of hosts and a destination mailbox. + However, in general, the SHOULD contain only a mailbox + and domain name, relying on the domain name system to supply routing + information if required. The use of source routes is deprecated (see + Appendix F.2); while servers MUST be prepared to receive and handle + them as discussed in Section 3.3 and Appendix F.2, clients SHOULD NOT + transmit them and this section is included in the current + specification only to provide context. It has been modified somewhat + from the material in RFC 821 to prevent server actions that might + confuse clients or subsequent servers that do not expect a full + source route implementation. + + For relay purposes, the forward-path may be a source route of the + form "@ONE,@TWO:JOE@THREE", where ONE, TWO, and THREE MUST be fully- + qualified domain names. This form is used to emphasize the + distinction between an address and a route. The mailbox (here, JOE@ + THREE) is an absolute address, and the route is information about how + to get there. The two concepts should not be confused. + + If source routes are used, RFC 821 and the text below should be + consulted for the mechanisms for constructing and updating the + + + +Klensin Standards Track [Page 86] + +RFC 5321 SMTP October 2008 + + + forward-path. A server that is reached by means of a source route + (e.g., its domain name appears first in the list in the forward-path) + MUST remove its domain name from any forward-paths in which that + domain name appears before forwarding the message and MAY remove all + other source routing information. The reverse-path SHOULD NOT be + updated by servers conforming to this specification. + + Notice that the forward-path and reverse-path appear in the SMTP + commands and replies, but not necessarily in the message. That is, + there is no need for these paths and especially this syntax to appear + in the "To:" , "From:", "CC:", etc. fields of the message header + section. Conversely, SMTP servers MUST NOT derive final message + routing information from message header fields. + + When the list of hosts is present despite the recommendations above, + it is a "reverse" source route and indicates that the mail was + relayed through each host on the list (the first host in the list was + the most recent relay). This list is used as a source route to + return non-delivery notices to the sender. If, contrary to the + recommendations here, a relay host adds itself to the beginning of + the list, it MUST use its name as known in the transport environment + to which it is relaying the mail rather than that of the transport + environment from which the mail came (if they are different). Note + that a situation could easily arise in which some relay hosts add + their names to the reverse source route and others do not, generating + discontinuities in the routing list. This is another reason why + servers needing to return a message SHOULD ignore the source route + entirely and simply use the domain as specified in the Mailbox. + +Appendix D. Scenarios + + This section presents complete scenarios of several types of SMTP + sessions. In the examples, "C:" indicates what is said by the SMTP + client, and "S:" indicates what is said by the SMTP server. + + + + + + + + + + + + + + + + + +Klensin Standards Track [Page 87] + +RFC 5321 SMTP October 2008 + + +D.1. A Typical SMTP Transaction Scenario + + This SMTP example shows mail sent by Smith at host bar.com, and to + Jones, Green, and Brown at host foo.com. Here we assume that host + bar.com contacts host foo.com directly. The mail is accepted for + Jones and Brown. Green does not have a mailbox at host foo.com. + + S: 220 foo.com Simple Mail Transfer Service Ready + C: EHLO bar.com + S: 250-foo.com greets bar.com + S: 250-8BITMIME + S: 250-SIZE + S: 250-DSN + S: 250 HELP + C: MAIL FROM: + S: 250 OK + C: RCPT TO: + S: 250 OK + C: RCPT TO: + S: 550 No such user here + C: RCPT TO: + S: 250 OK + C: DATA + S: 354 Start mail input; end with . + C: Blah blah blah... + C: ...etc. etc. etc. + C: . + S: 250 OK + C: QUIT + S: 221 foo.com Service closing transmission channel + + + + + + + + + + + + + + + + + + + + + +Klensin Standards Track [Page 88] + +RFC 5321 SMTP October 2008 + + +D.2. Aborted SMTP Transaction Scenario + + S: 220 foo.com Simple Mail Transfer Service Ready + C: EHLO bar.com + S: 250-foo.com greets bar.com + S: 250-8BITMIME + S: 250-SIZE + S: 250-DSN + S: 250 HELP + C: MAIL FROM: + S: 250 OK + C: RCPT TO: + S: 250 OK + C: RCPT TO: + S: 550 No such user here + C: RSET + S: 250 OK + C: QUIT + S: 221 foo.com Service closing transmission channel + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +Klensin Standards Track [Page 89] + +RFC 5321 SMTP October 2008 + + +D.3. Relayed Mail Scenario + + Step 1 -- Source Host to Relay Host + + The source host performs a DNS lookup on XYZ.COM (the destination + address) and finds DNS MX records specifying xyz.com as the best + preference and foo.com as a lower preference. It attempts to open a + connection to xyz.com and fails. It then opens a connection to + foo.com, with the following dialogue: + + S: 220 foo.com Simple Mail Transfer Service Ready + C: EHLO bar.com + S: 250-foo.com greets bar.com + S: 250-8BITMIME + S: 250-SIZE + S: 250-DSN + S: 250 HELP + C: MAIL FROM: + S: 250 OK + C: RCPT TO: + S: 250 OK + C: DATA + S: 354 Start mail input; end with . + C: Date: Thu, 21 May 1998 05:33:29 -0700 + C: From: John Q. Public + C: Subject: The Next Meeting of the Board + C: To: Jones@xyz.com + C: + C: Bill: + C: The next meeting of the board of directors will be + C: on Tuesday. + C: John. + C: . + S: 250 OK + C: QUIT + S: 221 foo.com Service closing transmission channel + + + + + + + + + + + + + + + +Klensin Standards Track [Page 90] + +RFC 5321 SMTP October 2008 + + + Step 2 -- Relay Host to Destination Host + + foo.com, having received the message, now does a DNS lookup on + xyz.com. It finds the same set of MX records, but cannot use the one + that points to itself (or to any other host as a worse preference). + It tries to open a connection to xyz.com itself and succeeds. Then + we have: + + S: 220 xyz.com Simple Mail Transfer Service Ready + C: EHLO foo.com + S: 250 xyz.com is on the air + C: MAIL FROM: + S: 250 OK + C: RCPT TO: + S: 250 OK + C: DATA + S: 354 Start mail input; end with . + C: Received: from bar.com by foo.com ; Thu, 21 May 1998 + C: 05:33:29 -0700 + C: Date: Thu, 21 May 1998 05:33:22 -0700 + C: From: John Q. Public + C: Subject: The Next Meeting of the Board + C: To: Jones@xyz.com + C: + C: Bill: + C: The next meeting of the board of directors will be + C: on Tuesday. + C: John. + C: . + S: 250 OK + C: QUIT + S: 221 foo.com Service closing transmission channel + + + + + + + + + + + + + + + + + + + +Klensin Standards Track [Page 91] + +RFC 5321 SMTP October 2008 + + +D.4. Verifying and Sending Scenario + + S: 220 foo.com Simple Mail Transfer Service Ready + C: EHLO bar.com + S: 250-foo.com greets bar.com + S: 250-8BITMIME + S: 250-SIZE + S: 250-DSN + S: 250-VRFY + S: 250 HELP + C: VRFY Crispin + S: 250 Mark Crispin + C: MAIL FROM: + S: 250 OK + C: RCPT TO: + S: 250 OK + C: DATA + S: 354 Start mail input; end with . + C: Blah blah blah... + C: ...etc. etc. etc. + C: . + S: 250 OK + C: QUIT + S: 221 foo.com Service closing transmission channel + +Appendix E. Other Gateway Issues + + In general, gateways between the Internet and other mail systems + SHOULD attempt to preserve any layering semantics across the + boundaries between the two mail systems involved. Gateway- + translation approaches that attempt to take shortcuts by mapping + (such as mapping envelope information from one system to the message + header section or body of another) have generally proven to be + inadequate in important ways. Systems translating between + environments that do not support both envelopes and a header section + and Internet mail must be written with the understanding that some + information loss is almost inevitable. + + + + + + + + + + + + + + +Klensin Standards Track [Page 92] + +RFC 5321 SMTP October 2008 + + +Appendix F. Deprecated Features of RFC 821 + + A few features of RFC 821 have proven to be problematic and SHOULD + NOT be used in Internet mail. + +F.1. TURN + + This command, described in RFC 821, raises important security issues + since, in the absence of strong authentication of the host requesting + that the client and server switch roles, it can easily be used to + divert mail from its correct destination. Its use is deprecated; + SMTP systems SHOULD NOT use it unless the server can authenticate the + client. + +F.2. Source Routing + + RFC 821 utilized the concept of explicit source routing to get mail + from one host to another via a series of relays. The requirement to + utilize source routes in regular mail traffic was eliminated by the + introduction of the domain name system "MX" record and the last + significant justification for them was eliminated by the + introduction, in RFC 1123, of a clear requirement that addresses + following an "@" must all be fully-qualified domain names. + Consequently, the only remaining justifications for the use of source + routes are support for very old SMTP clients or MUAs and in mail + system debugging. They can, however, still be useful in the latter + circumstance and for routing mail around serious, but temporary, + problems such as problems with the relevant DNS records. + + SMTP servers MUST continue to accept source route syntax as specified + in the main body of this document and in RFC 1123. They MAY, if + necessary, ignore the routes and utilize only the target domain in + the address. If they do utilize the source route, the message MUST + be sent to the first domain shown in the address. In particular, a + server MUST NOT guess at shortcuts within the source route. + + Clients SHOULD NOT utilize explicit source routing except under + unusual circumstances, such as debugging or potentially relaying + around firewall or mail system configuration errors. + +F.3. HELO + + As discussed in Sections 3.1 and 4.1.1, EHLO SHOULD be used rather + than HELO when the server will accept the former. Servers MUST + continue to accept and process HELO in order to support older + clients. + + + + + +Klensin Standards Track [Page 93] + +RFC 5321 SMTP October 2008 + + +F.4. #-literals + + RFC 821 provided for specifying an Internet address as a decimal + integer host number prefixed by a pound sign, "#". In practice, that + form has been obsolete since the introduction of TCP/IP. It is + deprecated and MUST NOT be used. + +F.5. Dates and Years + + When dates are inserted into messages by SMTP clients or servers + (e.g., in trace header fields), four-digit years MUST BE used. Two- + digit years are deprecated; three-digit years were never permitted in + the Internet mail system. + +F.6. Sending versus Mailing + + In addition to specifying a mechanism for delivering messages to + user's mailboxes, RFC 821 provided additional, optional, commands to + deliver messages directly to the user's terminal screen. These + commands (SEND, SAML, SOML) were rarely implemented, and changes in + workstation technology and the introduction of other protocols may + have rendered them obsolete even where they are implemented. + + Clients SHOULD NOT provide SEND, SAML, or SOML as services. Servers + MAY implement them. If they are implemented by servers, the + implementation model specified in RFC 821 MUST be used and the + command names MUST be published in the response to the EHLO command. + +Author's Address + + John C. Klensin + 1770 Massachusetts Ave, Suite 322 + Cambridge, MA 02140 + USA + + EMail: john+smtp@jck.com + + + + + + + + + + + + + + + +Klensin Standards Track [Page 94] + +RFC 5321 SMTP October 2008 + + +Full Copyright Statement + + Copyright (C) The IETF Trust (2008). + + This document is subject to the rights, licenses and restrictions + contained in BCP 78, and except as set forth therein, the authors + retain all their rights. + + This document and the information contained herein are provided on an + "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS + OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND + THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS + OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF + THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED + WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. + +Intellectual Property + + The IETF takes no position regarding the validity or scope of any + Intellectual Property Rights or other rights that might be claimed to + pertain to the implementation or use of the technology described in + this document or the extent to which any license under such rights + might or might not be available; nor does it represent that it has + made any independent effort to identify any such rights. Information + on the procedures with respect to rights in RFC documents can be + found in BCP 78 and BCP 79. + + Copies of IPR disclosures made to the IETF Secretariat and any + assurances of licenses to be made available, or the result of an + attempt made to obtain a general license or permission for the use of + such proprietary rights by implementers or users of this + specification can be obtained from the IETF on-line IPR repository at + http://www.ietf.org/ipr. + + The IETF invites any interested party to bring to its attention any + copyrights, patents or patent applications, or other proprietary + rights that may cover technology that may be required to implement + this standard. Please address the information to the IETF at + ietf-ipr@ietf.org. + + + + + + + + + + + + +Klensin Standards Track [Page 95] + diff --git a/example/gmail_xoauth2/README.md b/example/gmail_xoauth2/README.md index bf760b5..ceb98e5 100644 --- a/example/gmail_xoauth2/README.md +++ b/example/gmail_xoauth2/README.md @@ -1,6 +1,6 @@ -# How to use XOAUTH2 authentication in the [mailer](https://github.com/kaisellgren/mailer) lib (version ^3.0.0) +# How to use XOAUTH2 authentication in the [mailer](https://github.com/kaisellgren/mailer) lib -This example uses the [googleapis_auth](https://github.com/dart-lang/googleapis_auth) library. +This example uses the [googleapis_auth](https://github.com/google/googleapis.dart/tree/master/googleapis_auth) library. OAuth2 google credentials are explained [here](https://developers.google.com/identity/protocols/OAuth2) @@ -12,34 +12,41 @@ Go to the [API & Services dashboard](https://console.developers.google.com/apis/ You will get an app-`id` and an app-`secret`. -It should also be possible to create a service account. However AFAIK only google apps accounts -are allowed to do that. For more information see [googleapis_auth → Autonomous Application / Service Account](https://github.com/dart-lang/googleapis_auth) +It should also be possible to create a service account. However, AFAIK only google apps accounts +are allowed to do that. For more information see [googleapis_auth → Autonomous Application / Service Account](https://github.com/google/googleapis.dart/tree/master/googleapis_auth) -## You want to send mails with your account. -This is acceptable if you are using `mailer` in a server (command line) app. +## Server Side / Command Line Usage -**Do not use your account in flutter apps.** It is possible to extract credentials -from apps and an attacker would be able to send spam using your account. +This is acceptable if you are using `mailer` in a server (command line) app. -I unfortunately don't know how to find out which account has been used when asking for permissions. -You therefore have to specify the username (`--username`) manually. They obviously have to match. +**See the [detailed manual](../../doc/gmail_xoauth2/README.md) for step-by-step instructions.** First retrieve the credentials using [obtain_credentials.dart](obtain_credentials.dart): -`dart bin/obtain_credentials.dart --username 'yourAddress@gmail.com' --file '/tmp/secrets.json --id 'YOUR_ID.apps.googleusercontent.com' --secret 'YOUR_SECRET'` +`dart example/gmail_xoauth2/obtain_credentials.dart --username 'yourAddress@gmail.com' --file 'secrets.json' --id 'YOUR_ID.apps.googleusercontent.com' --secret 'YOUR_SECRET'` You can then send mails using: -`dart bin/send_mail.dart --file '/tmp/secrets.json --to 'someTestAddress@test.com'` +`dart example/gmail_xoauth2/send_mail.dart --file 'secrets.json' --to 'someTestAddress@test.com'` + + +## Flutter Apps -Again don't store your credentials in any mobile app! +**Do not use the server-side method above in Flutter apps.** It requires storing your client secret, which is not secure in a mobile app. +Instead, use the [google_sign_in](https://pub.dev/packages/google_sign_in) package to authenticate the user. +This package handles the OAuth flow securely and provides the `accessToken` needed for `gmailSaslXoauth2`. +When the user authenticates, they will see a consent screen similar to this: -## Send mail in flutter apps. +![User Consent Screen](flutter_user.png) -You will need to ask the user. +After obtaining the `accessToken` from `google_sign_in`, you can use it with `mailer`: -Write your own `prompt` function ([obtain_credentials.dart](obtain_credentials.dart)) which -displays the homepage to the user. +```dart +final googleSignIn = GoogleSignIn(scopes: ['https://mail.google.com/']); +final account = await googleSignIn.signIn(); +final auth = await account.authentication; -Then ask the user for its email-address and store the credentials somewhere. +final smtpServer = gmailSaslXoauth2(account.email, auth.accessToken); +// ... send email +``` diff --git a/doc/flutter_user.png b/example/gmail_xoauth2/flutter_user.png similarity index 100% rename from doc/flutter_user.png rename to example/gmail_xoauth2/flutter_user.png diff --git a/example/gmail_xoauth2/obtain_credentials.dart b/example/gmail_xoauth2/obtain_credentials.dart index fb30f8a..309cd6a 100644 --- a/example/gmail_xoauth2/obtain_credentials.dart +++ b/example/gmail_xoauth2/obtain_credentials.dart @@ -6,8 +6,7 @@ import 'package:googleapis_auth/auth_io.dart'; const scopes = ['https://mail.google.com']; -// ignore: always_declare_return_types -main(List rawArgs) async { +Future main(List rawArgs) async { var args = parseArgs(rawArgs); final identifier = args[argId] as String; final secret = args[argSecret] as String?; @@ -18,8 +17,7 @@ main(List rawArgs) async { AccessCredentials credentials; final client = http.Client(); - credentials = await obtainAccessCredentialsViaUserConsent( - clientId, scopes, client, prompt); + credentials = await obtainAccessCredentialsViaUserConsent(clientId, scopes, client, prompt); client.close(); print('Access token data: ${credentials.accessToken.data}'); @@ -42,10 +40,18 @@ main(List rawArgs) async { } } -void prompt(String url) { +void prompt(String url) async { print('Please go to the following URL and grant access:'); print(' => $url'); print(''); + + if (Platform.isLinux) { + await Process.run('xdg-open', [url]); + } else if (Platform.isMacOS) { + await Process.run('open', [url]); + } else if (Platform.isWindows) { + await Process.run('powershell', ['start', '"$url"']); + } } const argId = 'id'; @@ -56,14 +62,11 @@ const argUsername = 'username'; ArgResults parseArgs(List rawArgs) { var parser = ArgParser() ..addOption(argId, - help: - 'The app-id from your credentials (https://console.developers.google.com/apis).') + help: 'The app-id from your credentials (https://console.developers.google.com/apis).') ..addOption(argSecret, - help: - 'The app-secret from your credentials (https://console.developers.google.com/apis).') + help: 'The app-secret from your credentials (https://console.developers.google.com/apis).') ..addOption(argUsername, - help: - 'The mail address which gives the app-id the permission to read/send mails.') + help: 'The mail address which gives the app-id the permission to read/send mails.') ..addOption(argFile, help: 'Write secrets to .'); var argResults = parser.parse(rawArgs); diff --git a/example/gmail_xoauth2/send_mail.dart b/example/gmail_xoauth2/send_mail.dart index 5a1f6f8..2425820 100644 --- a/example/gmail_xoauth2/send_mail.dart +++ b/example/gmail_xoauth2/send_mail.dart @@ -30,9 +30,7 @@ void main(List rawArgs) async { final client = http.Client(); var credentials = AccessCredentials( - AccessToken('Bearer', 'EXPIRED', DateTime.utc(2000)), - refreshToken, - scopes, + AccessToken('Bearer', 'EXPIRED', DateTime.utc(2000)), refreshToken, scopes, idToken: identifier); // Refresh credentials periodically! @@ -41,14 +39,9 @@ void main(List rawArgs) async { } client.close(); - // https://developers.google.com/gmail/imap/xoauth2-protocol - final oauth2token = base64Encode(utf8.encode( - 'user=$username\x01auth=${credentials.accessToken.type} ${credentials.accessToken.data}\x01\x01')); - print('OAuth2Token: $oauth2token'); - - final smtpClient = gmailXoauth2(oauth2token); + final smtpClient = gmailSaslXoauth2(username!, credentials.accessToken.data); final message = Message() - ..from = Address('$username', 'My name 😀') + ..from = Address(username, 'My name 😀') ..recipients.add(mailTo) ..subject = 'xoauth2' ..text = 'This is the plain text.\nThis is line 2 of the text part.' diff --git a/example/send_gmail.dart b/example/send_gmail.dart index 69841db..866a4e8 100644 --- a/example/send_gmail.dart +++ b/example/send_gmail.dart @@ -31,8 +31,7 @@ void main(List rawArgs) async { // other providers. final smtpServer = gmail(username, args.rest[1]); - Iterable
toAd(Iterable? addresses) => - (addresses ?? []).map((a) => Address(a)); + Iterable
toAd(Iterable? addresses) => (addresses ?? []).map((a) => Address(a)); Iterable toAt(Iterable? attachments) => (attachments ?? []).map((a) => FileAttachment(File(a))); @@ -48,8 +47,7 @@ void main(List rawArgs) async { ..attachments.addAll(toAt(args[attachArgs] as Iterable?)); try { - final sendReport = - await send(message, smtpServer, timeout: Duration(seconds: 15)); + final sendReport = await send(message, smtpServer, timeout: Duration(seconds: 15)); print('Message sent: $sendReport'); } on MailerException catch (e) { print('Message not sent.'); @@ -59,13 +57,11 @@ void main(List rawArgs) async { } print('Now sending using a persistent connection'); - var connection = - PersistentConnection(smtpServer, timeout: Duration(seconds: 15)); + var connection = PersistentConnection(smtpServer, timeout: Duration(seconds: 15)); // Send multiple mails on one connection: try { for (var i = 0; i < 3; i++) { - message.subject = - 'Test Dart Mailer library :: 😀 :: ${DateTime.now()} / $i'; + message.subject = 'Test Dart Mailer library :: 😀 :: ${DateTime.now()} / $i'; final sendReport = await connection.send(message); print('Message sent: $sendReport'); } diff --git a/lib/mailer.dart b/lib/mailer.dart index 92c7f2a..c7a0f58 100644 --- a/lib/mailer.dart +++ b/lib/mailer.dart @@ -1,3 +1,8 @@ -export 'src/entities.dart'; +export 'src/core/address.dart'; +export 'src/core/address_validator.dart'; +export 'src/core/attachment.dart'; +export 'src/core/message.dart'; +export 'src/core/problem.dart'; +export 'src/core/send_report.dart'; export 'src/smtp/mail_sender.dart'; export 'src/smtp/exceptions.dart'; diff --git a/lib/smtp_server.dart b/lib/smtp_server.dart index fa77b20..983cea5 100644 --- a/lib/smtp_server.dart +++ b/lib/smtp_server.dart @@ -1,8 +1,10 @@ export 'smtp_server/amazon.dart'; +export 'smtp_server/brevo.dart'; export 'smtp_server/gmail.dart'; export 'smtp_server/hotmail.dart'; export 'smtp_server/mailgun.dart'; export 'smtp_server/qq.dart'; +export 'smtp_server/sendgrid.dart'; export 'smtp_server/yahoo.dart'; export 'smtp_server/yandex.dart'; export 'smtp_server/zoho.dart'; @@ -11,6 +13,7 @@ class SmtpServer { final String host; final int port; final bool ignoreBadCertificate; + /// Connect to the smtp server over a secure ssl connection. /// Setting this option to false does NOT mean, that mails will be sent over /// unencrypted connections! @@ -20,6 +23,7 @@ class SmtpServer { /// connection to a secure one. If the server doesn't support /// `starttls` we will abort if `allowInsecure` is false. final bool ssl; + /// This library will always use secure connections if the server supports it, /// and will abort if unsuccessful unless `allowInsecure` is `true`. final bool allowInsecure; @@ -29,7 +33,6 @@ class SmtpServer { SmtpServer(this.host, {this.port = 587, - String? name, this.ignoreBadCertificate = false, this.ssl = false, this.allowInsecure = false, diff --git a/lib/smtp_server/amazon.dart b/lib/smtp_server/amazon.dart index 61f92a1..112a139 100644 --- a/lib/smtp_server/amazon.dart +++ b/lib/smtp_server/amazon.dart @@ -6,8 +6,7 @@ import '../smtp_server.dart'; /// Send through Amazon Simple Email Service (Amazon SES). /// /// Region is the AWS region, e.g. 'us-east-1', or 'eu-west-1'. -SmtpServer amazon(String accessKeyId, String secretKey, String region) => - SmtpServer( +SmtpServer amazon(String accessKeyId, String secretKey, String region) => SmtpServer( 'email-smtp.$region.amazonaws.com', username: accessKeyId, password: _smtpPassword(secretKey, region), diff --git a/lib/smtp_server/gmail.dart b/lib/smtp_server/gmail.dart index 194dca8..9dd6237 100644 --- a/lib/smtp_server/gmail.dart +++ b/lib/smtp_server/gmail.dart @@ -8,9 +8,8 @@ import '../smtp_server.dart'; SmtpServer gmail(String username, String password) => SmtpServer('smtp.gmail.com', username: username, password: password); -@Deprecated('Favor gmailUserXoauth2 or gmailRelayXoauth2') -SmtpServer gmailXoauth2(String token) => - SmtpServer('smtp.gmail.com', xoauth2Token: token); +@Deprecated('Favor gmailSaslXoauth2 or gmailRelaySaslXoauth2') +SmtpServer gmailXoauth2(String token) => SmtpServer('smtp.gmail.com', xoauth2Token: token); /// Send through gmail with [SASL XOAUTH2][1] authentication. /// diff --git a/lib/smtp_server/qq.dart b/lib/smtp_server/qq.dart index e774e98..597c6cf 100644 --- a/lib/smtp_server/qq.dart +++ b/lib/smtp_server/qq.dart @@ -1,4 +1,4 @@ import '../smtp_server.dart'; -SmtpServer qq(String username, String password) => SmtpServer('smtp.qq.com', - ssl: true, port: 465, username: username, password: password); +SmtpServer qq(String username, String password) => + SmtpServer('smtp.qq.com', ssl: true, port: 465, username: username, password: password); diff --git a/lib/smtp_server/sendgrid.dart b/lib/smtp_server/sendgrid.dart index a18baba..1d86cc3 100644 --- a/lib/smtp_server/sendgrid.dart +++ b/lib/smtp_server/sendgrid.dart @@ -1,5 +1,4 @@ import '../smtp_server.dart'; SmtpServer sendgrid(String username, String password) => - SmtpServer('smtp.sendgrid.net', - username: username, password: password); + SmtpServer('smtp.sendgrid.net', username: username, password: password); diff --git a/lib/smtp_server/yahoo.dart b/lib/smtp_server/yahoo.dart index db3f37c..bc6ae86 100644 --- a/lib/smtp_server/yahoo.dart +++ b/lib/smtp_server/yahoo.dart @@ -1,5 +1,4 @@ import '../smtp_server.dart'; SmtpServer yahoo(String username, String password) => - SmtpServer('smtp.mail.yahoo.com', - port: 465, username: username, password: password, ssl: true); + SmtpServer('smtp.mail.yahoo.com', port: 465, username: username, password: password, ssl: true); diff --git a/lib/smtp_server/yandex.dart b/lib/smtp_server/yandex.dart index 344afaf..a8241e7 100644 --- a/lib/smtp_server/yandex.dart +++ b/lib/smtp_server/yandex.dart @@ -1,5 +1,4 @@ import '../smtp_server.dart'; SmtpServer yandex(String username, String password) => - SmtpServer('smtp.yandex.com', - port: 465, ssl: true, username: username, password: password); + SmtpServer('smtp.yandex.com', port: 465, ssl: true, username: username, password: password); diff --git a/lib/smtp_server/zoho.dart b/lib/smtp_server/zoho.dart index c2f73ab..c3bb2fe 100644 --- a/lib/smtp_server/zoho.dart +++ b/lib/smtp_server/zoho.dart @@ -1,4 +1,4 @@ import '../smtp_server.dart'; -SmtpServer zoho(String username, String password) => SmtpServer('smtp.zoho.com', - port: 465, ssl: true, username: username, password: password); +SmtpServer zoho(String username, String password) => + SmtpServer('smtp.zoho.com', port: 465, ssl: true, username: username, password: password); diff --git a/lib/src/entities/address.dart b/lib/src/core/address.dart similarity index 71% rename from lib/src/entities/address.dart rename to lib/src/core/address.dart index d244067..81ee50a 100644 --- a/lib/src/entities/address.dart +++ b/lib/src/core/address.dart @@ -1,3 +1,5 @@ +import '../idna/idna.dart'; + final _quotableNameRegExp = RegExp(r'[",]'); class Address { @@ -20,9 +22,29 @@ class Address { return name; } - /// The address used to output to SMTP server. - /// Implementation can override it to pre-process the address before sending - String get sanitizedAddress => mailAddress; + /// Returns the mail address with the domain encoded using IDNA (Punycode). + /// + /// This properly handles internationalized domain names by: + /// 1. Normalizing Unicode to NFC + /// 2. Converting to lowercase + /// 3. Encoding non-ASCII labels with Punycode (xn-- prefix) + /// + /// The local-part (before @) is not modified, as SMTP does not support + /// UTF-8 in local-parts without the SMTPUTF8 extension. + String get encodedAddress { + try { + final lastAt = mailAddress.lastIndexOf('@'); + if (lastAt == -1) { + return mailAddress; + } + final localPart = mailAddress.substring(0, lastAt); + final domain = mailAddress.substring(lastAt + 1); + final encodedDomain = idnaEncode(domain); + return '$localPart@$encodedDomain'; + } catch (_) { + return mailAddress; + } + } @override String toString() => "${name ?? ''} <$mailAddress>"; @@ -54,8 +76,7 @@ List
parseMailboxes(String addresses) { } if (email.isNotEmpty) { - result.add(Address(String.fromCharCodes(email).trim(), - String.fromCharCodes(name).trim())); + result.add(Address(String.fromCharCodes(email).trim(), String.fromCharCodes(name).trim())); } email.clear(); diff --git a/lib/src/core/address_validator.dart b/lib/src/core/address_validator.dart new file mode 100644 index 0000000..7b5c3fe --- /dev/null +++ b/lib/src/core/address_validator.dart @@ -0,0 +1,286 @@ +import 'address.dart'; + +abstract class AddressValidator { + bool validate(Address address); +} + +/// A validator that permits any non-empty address. +class PermissiveAddressValidator implements AddressValidator { + const PermissiveAddressValidator(); + + @override + bool validate(Address address) { + return address.mailAddress.isNotEmpty; + } +} + +/// A validator that checks for simple email format (contains @). +class SimpleAddressValidator implements AddressValidator { + const SimpleAddressValidator(); + + @override + bool validate(Address address) { + return address.mailAddress.contains('@') && address.mailAddress.length > 2; + } +} + +/// A validator with sensible real-world restrictions for input validation. +/// +/// This validator is stricter than RFC 5322 but more practical for actual +/// email delivery. Many mail providers (including Gmail) reject addresses +/// that use rarely-supported RFC features. +/// +/// **Recommended for:** Validating user input in forms before accepting +/// email addresses. +/// +/// **Allowed:** +/// - Standard dot-atom local-parts (e.g., `user.name`, `user+tag`) +/// - Domain names (e.g., `example.com`, `sub.example.com`) +/// - All atext special characters: `!#$%&'*+-/=?^_\`{|}~` +/// +/// **Rejected:** +/// - Domain literals / IP addresses (e.g., `user@[192.168.1.1]`) +/// - Quoted strings in local-part (e.g., `"john doe"@example.com`) +/// - Comments (rarely supported) +/// - Empty local-parts or domains +/// - Consecutive dots or leading/trailing dots +/// - Domains without a dot (e.g., `user@localhost`) +/// +/// Use [StrictAddressValidator] if you need full RFC 5322 compliance, +/// or [PermissiveAddressValidator] if you want to accept anything. +class PracticalAddressValidator implements AddressValidator { + const PracticalAddressValidator(); + + @override + bool validate(Address address) { + try { + if (address.mailAddress.isEmpty) return false; + _AddressParser( + address.mailAddress, + allowQuotedString: false, + allowDomainLiteral: false, + requireDomainDot: true, + ).validate(); + return true; + } catch (_) { + return false; + } + } +} + +/// A validator that tries to be compliant with RFC 5322. +/// +/// This validator is based on the legacy `Address` parser from earlier versions +/// of this library. +class StrictAddressValidator implements AddressValidator { + const StrictAddressValidator(); + + @override + bool validate(Address address) { + try { + if (address.mailAddress.isEmpty) return false; + _AddressParser( + address.mailAddress, + allowQuotedString: true, + allowDomainLiteral: true, + requireDomainDot: false, + allowComments: true, + ).validate(); + return true; + } catch (_) { + return false; + } + } +} + +class _AddressParser { + final String text; + final bool allowQuotedString; + final bool allowDomainLiteral; + final bool requireDomainDot; + final bool allowComments; + int _index = 0; + + _AddressParser( + this.text, { + this.allowQuotedString = false, + this.allowDomainLiteral = false, + this.requireDomainDot = false, + this.allowComments = false, + }); + + void validate() { + _parseAddrSpec(); + if (_index < text.length) { + throw FormatException('Unexpected characters at end of address'); + } + } + + void _parseAddrSpec() { + _parseLocalPart(); + _expect('@'); + _skipCFWS(); + final domainStart = _index; + _parseDomain(); + + if (requireDomainDot) { + if (!text.substring(domainStart, _index).contains('.')) { + throw FormatException('Domain must contain at least one dot'); + } + } + } + + void _parseLocalPart() { + _skipCFWS(); + if (_peek() == '"') { + if (allowQuotedString) { + _parseQuotedString(); + _skipCFWS(); + } else { + throw FormatException('Quoted strings not allowed in local-part'); + } + } else { + if (_peek() == '(') { + throw FormatException('Comments not allowed'); + } + _parseDotAtom(); + } + } + + void _parseDomain() { + _skipCFWS(); + if (_peek() == '[') { + if (allowDomainLiteral) { + _parseDomainLiteral(); + _skipCFWS(); + } else { + throw FormatException('Domain literals (IP addresses) not allowed'); + } + } else { + if (_peek() == '(') { + throw FormatException('Comments not allowed'); + } + _parseDotAtom(); + } + } + + void _parseDotAtom() { + _skipCFWS(); + if (!_isAtext(_peek())) { + throw FormatException('Expected atom at position $_index'); + } + _parseAtom(); + _skipCFWS(); + + while (_peek() == '.') { + _advance(); + _skipCFWS(); + if (!_isAtext(_peek())) { + throw FormatException('Invalid dot position at $_index'); + } + _parseAtom(); + _skipCFWS(); + } + } + + void _parseAtom() { + if (!_isAtext(_peek())) { + throw FormatException('Expected atom at position $_index'); + } + while (_isAtext(_peek())) { + _advance(); + } + } + + void _parseQuotedString() { + _expect('"'); + while (_index < text.length) { + final char = _peek(); + if (char == '"') { + _advance(); + return; + } else if (char == '\\') { + _advance(); + if (_index >= text.length) throw FormatException('Unterminated escape'); + _advance(); + } else { + _advance(); + } + } + throw FormatException('Unterminated quoted string'); + } + + void _parseDomainLiteral() { + _expect('['); + while (_index < text.length) { + final char = _peek(); + if (char == ']') { + _advance(); + return; + } + _advance(); + } + throw FormatException('Unterminated domain literal'); + } + + void _skipCFWS() { + if (!allowComments) return; + while (true) { + final char = _peek(); + if (char == ' ' || char == '\t' || char == '\r' || char == '\n') { + _advance(); + } else if (char == '(') { + _parseComment(); + } else { + break; + } + } + } + + void _parseComment() { + _expect('('); + int depth = 1; + while (_index < text.length) { + final char = _peek(); + if (char == '(') { + depth++; + _advance(); + } else if (char == ')') { + depth--; + _advance(); + if (depth == 0) return; + } else if (char == '\\') { + _advance(); + if (_index < text.length) _advance(); + } else { + _advance(); + } + } + throw FormatException('Unterminated comment'); + } + + void _expect(String char) { + if (_peek() != char) { + throw FormatException('Expected "$char" at position $_index'); + } + _advance(); + } + + String _peek() { + if (_index >= text.length) return ''; + return text[_index]; + } + + void _advance() { + _index++; + } + + bool _isAtext(String char) { + if (char.isEmpty) return false; + final code = char.codeUnitAt(0); + return (code >= 0x41 && code <= 0x5a) || // A-Z + (code >= 0x61 && code <= 0x7a) || // a-z + (code >= 0x30 && code <= 0x39) || // 0-9 + "!#\$%&'*+-/=?^_`{|}~".contains(char); + } +} diff --git a/lib/src/entities/attachment.dart b/lib/src/core/attachment.dart similarity index 75% rename from lib/src/entities/attachment.dart rename to lib/src/core/attachment.dart index bf78152..8653134 100644 --- a/lib/src/entities/attachment.dart +++ b/lib/src/core/attachment.dart @@ -22,8 +22,14 @@ enum Location { /// can be referenced using: /// `cid:yourCid`. For instance: `` /// -/// [cid] must contain an `@` and be inside `<` and `>`. -/// The cid: `` can then be referenced inside your html as: +/// You may omit the surrounding `<` and `>` in [cid]. The library will add +/// them if they are missing. +/// +/// RFC 2392 requires [cid] to be a valid `addr-spec`, which implies it must +/// contain an `@` symbol. The library does not enforce this, but it is +/// recommended for better compatibility. +/// +/// The cid: `myImage@3.141` can then be referenced inside your html as: /// `` abstract class Attachment { String? cid; @@ -43,9 +49,7 @@ class FileAttachment extends Attachment { final File _file; FileAttachment(this._file, {String? contentType, String? fileName}) { - this.contentType = contentType ?? - mime.lookupMimeType(_file.path) ?? - 'application/octet-stream'; + this.contentType = contentType ?? mime.lookupMimeType(_file.path) ?? 'application/octet-stream'; this.fileName = fileName ?? basename(_file.path); } @@ -70,14 +74,12 @@ class StringAttachment extends Attachment { StringAttachment(this._data, {String? contentType, String? fileName}) { this.contentType = contentType ?? - mime.lookupMimeType(fileName ?? 'abc.txt', - headerBytes: convert.utf8.encode(_data)) ?? + mime.lookupMimeType(fileName ?? 'abc.txt', headerBytes: convert.utf8.encode(_data)) ?? 'text/plain'; this.fileName = fileName; } @override // There will be only one element in the stream: the utf8 encoded string. - Stream> asStream() => - Stream.fromIterable([convert.utf8.encode(_data)]); + Stream> asStream() => Stream.fromIterable([convert.utf8.encode(_data)]); } diff --git a/lib/src/entities/message.dart b/lib/src/core/message.dart similarity index 97% rename from lib/src/entities/message.dart rename to lib/src/core/message.dart index 55d3e29..95723d4 100644 --- a/lib/src/entities/message.dart +++ b/lib/src/core/message.dart @@ -1,4 +1,5 @@ import 'address.dart'; +import 'address_validator.dart'; import 'attachment.dart'; /// This class represents an e-mail that can be sent to someone/some people. @@ -51,7 +52,7 @@ class Message { /// Allowed values are String, Address, Iterable
, Iterable or /// DateTime. /// - /// Iterable is only allowed if all Strings are email-addresses . + /// Iterable is only allowed if all Strings are email-addresses. /// /// If a String contains an @ it is treated like an email-address. /// @@ -70,6 +71,7 @@ class Message { String? text; String? html; List attachments = []; + AddressValidator? validator; static Iterable
_asAddresses(Iterable adrs) => adrs.map((a) => a is String ? Address(a) : a as Address); diff --git a/lib/src/entities/problem.dart b/lib/src/core/problem.dart similarity index 100% rename from lib/src/entities/problem.dart rename to lib/src/core/problem.dart diff --git a/lib/src/entities/send_report.dart b/lib/src/core/send_report.dart similarity index 92% rename from lib/src/entities/send_report.dart rename to lib/src/core/send_report.dart index 0d71813..e0b26b5 100644 --- a/lib/src/entities/send_report.dart +++ b/lib/src/core/send_report.dart @@ -6,8 +6,7 @@ class SendReport { final DateTime messageSendingStart; final DateTime messageSendingEnd; - SendReport(this.mail, this.connectionOpened, this.messageSendingStart, - this.messageSendingEnd); + SendReport(this.mail, this.connectionOpened, this.messageSendingStart, this.messageSendingEnd); @override String toString() { diff --git a/lib/src/entities.dart b/lib/src/entities.dart deleted file mode 100644 index ab9fd6d..0000000 --- a/lib/src/entities.dart +++ /dev/null @@ -1,4 +0,0 @@ -export 'entities/address.dart'; -export 'entities/attachment.dart'; -export 'entities/message.dart'; -export 'entities/send_report.dart'; diff --git a/lib/src/idna/idna.dart b/lib/src/idna/idna.dart new file mode 100644 index 0000000..caf1a79 --- /dev/null +++ b/lib/src/idna/idna.dart @@ -0,0 +1,177 @@ +/// IDNA (Internationalized Domain Names in Applications) encoding. +/// +/// This module provides proper IDNA encoding with: +/// - NFC Unicode normalization +/// - Case folding (lowercase) +/// - Punycode encoding with ACE prefix (xn--) +/// - Label length validation (≤63 characters) +/// +/// This implementation follows IDNA2008 conventions and can be extracted +/// into a standalone library if needed. +library; + +import 'package:punycoder/punycoder.dart'; +import 'package:unorm_dart/unorm_dart.dart' as unorm; + +/// Maximum length of a single DNS label (before or after encoding). +const int maxLabelLength = 63; + +/// Maximum length of a complete domain name. +const int maxDomainLength = 253; + +/// The ACE (ASCII Compatible Encoding) prefix for Punycode labels. +const String acePrefix = 'xn--'; + +/// Exception thrown when IDNA encoding fails. +class IdnaException implements Exception { + /// A description of the error. + final String message; + + /// Creates an [IdnaException] with the given [message]. + const IdnaException(this.message); + + @override + String toString() => 'IdnaException: $message'; +} + +/// The Punycode codec instance used for encoding/decoding. +const _punycodeCodec = PunycodeCodec(); + +/// Encodes a domain name to its ASCII-compatible (Punycode) form. +/// +/// This function: +/// 1. Splits the domain into labels (parts between dots) +/// 2. Normalizes each label to NFC (Normalization Form Canonical Composition) +/// 3. Performs case folding (converts to lowercase) +/// 4. Applies Punycode encoding with 'xn--' prefix for non-ASCII labels +/// 5. Validates label lengths (≤63 characters) +/// +/// Throws [IdnaException] if: +/// - A label exceeds 63 characters after encoding +/// - The domain exceeds 253 characters +/// - A label is empty +/// - The Punycode encoding fails +/// +/// Example: +/// ```dart +/// idnaEncode('München.de'); // Returns 'xn--mnchen-3ya.de' +/// idnaEncode('日本語.jp'); // Returns 'xn--wgv71a119e.jp' +/// idnaEncode('example.com'); // Returns 'example.com' (no change) +/// ``` +String idnaEncode(String domain) { + if (domain.isEmpty) { + return domain; + } + + final labels = domain.split('.'); + final encodedLabels = []; + + for (final label in labels) { + final encoded = _encodeLabel(label); + encodedLabels.add(encoded); + } + + final result = encodedLabels.join('.'); + + // Validate total domain length + if (result.length > maxDomainLength) { + throw IdnaException('Encoded domain exceeds maximum length of $maxDomainLength characters: ' + '${result.length} characters'); + } + + return result; +} + +/// Encodes a single domain label using IDNA rules. +String _encodeLabel(String label) { + if (label.isEmpty) { + // Empty labels can occur with trailing dots (e.g., "example.com.") + // Return as-is to preserve the structure + return label; + } + + // 1. Normalize to NFC (Normalization Form Canonical Composition) + // This ensures that characters like 'ü' (U+00FC) and 'u' + '̈' (U+0308) + // are treated identically. + String normalized = unorm.nfc(label); + + // 2. Case folding: convert to lowercase + // Domain names are case-insensitive per DNS specifications. + normalized = normalized.toLowerCase(); + + // 3. Encode using PunycodeCodec + // The codec automatically: + // - Returns unchanged if already ASCII + // - Adds 'xn--' prefix for non-ASCII labels + try { + final encoded = _punycodeCodec.encode(normalized); + + // 4. Validate encoded label length + if (encoded.length > maxLabelLength) { + throw IdnaException('Encoded label exceeds maximum length of $maxLabelLength characters: ' + '"$encoded" (${encoded.length} characters)'); + } + + return encoded; + } catch (e) { + if (e is IdnaException) rethrow; + throw IdnaException('Failed to encode label "$label": $e'); + } +} + +/// Decodes a Punycode-encoded domain name back to Unicode. +/// +/// This function: +/// 1. Splits the domain into labels +/// 2. Detects 'xn--' prefixed labels and decodes them +/// 3. Returns the decoded Unicode domain +/// +/// Throws [IdnaException] if Punycode decoding fails. +/// +/// Example: +/// ```dart +/// idnaDecode('xn--mnchen-3ya.de'); // Returns 'münchen.de' +/// ``` +String idnaDecode(String domain) { + if (domain.isEmpty) { + return domain; + } + + final labels = domain.split('.'); + final decodedLabels = []; + + for (final label in labels) { + final decoded = _decodeLabel(label); + decodedLabels.add(decoded); + } + + return decodedLabels.join('.'); +} + +/// Decodes a single Punycode label. +String _decodeLabel(String label) { + if (label.isEmpty) { + return label; + } + + // PunycodeCodec.decode handles 'xn--' prefixed labels automatically + try { + return _punycodeCodec.decode(label); + } catch (e) { + throw IdnaException('Failed to decode Punycode label "$label": $e'); + } +} + +/// Checks if a domain contains any non-ASCII characters. +/// +/// Returns `true` if the domain contains characters with code points > U+007F. +bool containsNonAscii(String domain) { + return domain.codeUnits.any((unit) => unit > 0x7F); +} + +/// Checks if a domain is already Punycode-encoded. +/// +/// Returns `true` if any label starts with 'xn--'. +bool isPunycodeEncoded(String domain) { + return domain.split('.').any((label) => label.toLowerCase().startsWith(acePrefix)); +} diff --git a/lib/src/mime/encoder.dart b/lib/src/mime/encoder.dart new file mode 100644 index 0000000..d010ac7 --- /dev/null +++ b/lib/src/mime/encoder.dart @@ -0,0 +1,30 @@ +import 'dart:async'; +import 'dart:convert' as convert; +import 'mime.dart'; +import 'stream_splitter.dart'; + +abstract class ContentEncoder { + String get transferEncoding; + Stream> encode(Stream> input); +} + +class Base64ContentEncoder extends ContentEncoder { + @override + String get transferEncoding => 'base64'; + + @override + Stream> encode(Stream> input) { + return input + .transform(convert.base64.encoder) + .transform(convert.ascii.encoder) + .transform(StreamSplitter(maxBase64LineLength)); + } +} + +class BinaryContentEncoder extends ContentEncoder { + @override + String get transferEncoding => 'binary'; + + @override + Stream> encode(Stream> input) => input; +} diff --git a/lib/src/mime/mime.dart b/lib/src/mime/mime.dart new file mode 100644 index 0000000..4c8bdff --- /dev/null +++ b/lib/src/mime/mime.dart @@ -0,0 +1,36 @@ +import 'dart:async'; +import 'dart:convert' as convert; + +import 'package:intl/intl.dart'; + +import '../core/address.dart'; +import '../core/attachment.dart'; +import '../core/message.dart'; +import '../smtp/capabilities.dart'; +import '../utils.dart'; +import 'encoder.dart'; +import 'stream_splitter.dart'; + +part 'mime_header.dart'; +part 'mime_message.dart'; +part 'mime_part.dart'; + +// "An 'encoded-word' may not be more than 75 characters long, including +// 'charset', 'encoding', 'encoded-text', and delimiters." +const maxEncodedLength = 75; // as per RFC2047 +const maxLineLength = 800; +const maxBase64LineLength = 76; // as per RFC2045 +// «The encoded output stream must be represented in lines of no more +// than 76 characters each.» + +class RenderContext { + final Capabilities capabilities; + + RenderContext(this.capabilities); +} + +abstract class _MimeOutput { + // The output of the mime message is a stream of objects, which can be either + // String or List. + Stream out(RenderContext renderContext); +} diff --git a/lib/src/mime/mime_header.dart b/lib/src/mime/mime_header.dart new file mode 100644 index 0000000..fd72cc8 --- /dev/null +++ b/lib/src/mime/mime_header.dart @@ -0,0 +1,251 @@ +part of 'mime.dart'; + +abstract class Header extends _MimeOutput { + @override + Stream out(RenderContext renderContext) => Stream.value(render(renderContext)); + + String render(RenderContext renderContext); + + final String _name; + + static const _b64Length = 12; // "=?utf-8?B?".length + "?=".length + static final _nonAscii = RegExp(r'[^\x20-\x7E]'); + + String _buildValueWithParms(String value, RenderContext renderContext, + [Map? parms]) { + var buffer = StringBuffer(); + if (Header._shouldUseBase64(value, renderContext)) { + buffer.write('$_name: '); + buffer.write(_encodeBase64(value)); + } else { + buffer.write('$_name: $value'); + } + if (parms != null) { + for (var entry in parms.entries) { + if (Header._shouldUseBase64(entry.value, renderContext)) { + buffer.write('; ${entry.key}="'); + buffer.write(_encodeBase64(entry.value)); + buffer.write('"'); + } else { + buffer.write('; ${entry.key}="${entry.value}"'); + } + } + } + buffer.write(eol); + return buffer.toString(); + } + + /// Outputs the given [addresses]. + String _buildAddressesValue(Iterable
addresses, RenderContext renderContext) { + var buffer = StringBuffer(); + buffer.write('$_name: '); + + int len = 2; //2 = _$commaSpace + var second = false; + for (final address in addresses) { + final name = address.sanitizedName, mAddr = address.encodedAddress; + var addrLen = mAddr.length; + if (name != null) { + addrLen += name.length + 3; + } //not accurate but good enough + + if (second) { + if (len + addrLen > maxEncodedLength) { + len = 2; + buffer.write(', $eol '); + } else { + buffer.write(', '); + } + } else { + second = true; + } + + if (name == null) { + buffer.write(mAddr); + } else { + if (_shouldUseBase64(name, renderContext)) { + buffer.write(_encodeBase64(name)); + buffer.write(' <$mAddr>'); + } else { + buffer.write('$name <$mAddr>'); + } + } + + len += addrLen; + } + + buffer.write(eol); + return buffer.toString(); + } + + // Outputs the given [value] encoded as base64. + static String _encodeBase64(String value) { + // Encode with base64. + var availableLengthForBase64 = maxEncodedLength - _b64Length; + + // Length after base64: ceil(n / 3) * 4 + var lengthBeforeBase64 = (availableLengthForBase64 ~/ 4) * 3; + var availableLength = lengthBeforeBase64; + + // At least 10 chars (random length). + if (availableLength < 10) availableLength = 10; + + var buffer = StringBuffer(); + var first = true; + for (var d in split(convert.utf8.encode(value), availableLength)) { + if (!first) buffer.write('$eol '); + buffer.write('=?utf-8?B?${convert.base64.encode(d)}?='); + first = false; + } + return buffer.toString(); + } + + static bool _shouldUseBase64(String value, RenderContext renderContext) { + // If we have a maxLineLength is it the length of utf8 characters or + // the length of utf8 bytes? + // Just to be safe we'll check the bytes. + + // Optimization: if usage of 4 bytes per char is still not exceeding + // maxLineLength, we don't need to check the byte length. + if (value.length * 4 > maxLineLength) { + var byteLength = convert.utf8.encode(value).length; + if (byteLength > maxLineLength) return true; + } + + return (!isPrintableRegExp.hasMatch(value) || + // Make sure that text which looks like an encoded text is encoded. + value.contains('=?') || + (!renderContext.capabilities.smtpUtf8 && value.contains(_nonAscii))); + } + + Header(this._name); +} + +class TextHeader extends Header { + final String value; + final Map? parameters; + + TextHeader(super.name, this.value, [this.parameters = const {}]); + + @override + String render(RenderContext renderContext) => + _buildValueWithParms(value, renderContext, parameters); +} + +class AddressHeader extends Header { + final Address _address; + + AddressHeader(super.name, this._address); + + @override + String render(RenderContext renderContext) => _buildAddressesValue([_address], renderContext); +} + +class AddressListHeader extends Header { + final Iterable
_addresses; + + AddressListHeader(super.name, this._addresses); + + @override + String render(RenderContext renderContext) => _buildAddressesValue(_addresses, renderContext); +} + +class ContentTypeHeader extends Header { + final String _boundary; + final MultipartType _multipartType; + + ContentTypeHeader(String boundary, MultipartType multipartType, {String name = 'content-type'}) + : _boundary = boundary, + _multipartType = multipartType, + super(name); + + @override + String render(RenderContext renderContext) => + '$_name: multipart/${_multipartType.name};boundary="$_boundary"$eol'; +} + +class DateHeader extends Header { + final DateTime _dateTime; + + static final DateFormat _dateFormat = DateFormat('EEE, dd MMM yyyy HH:mm:ss +0000', 'en_US'); + + DateHeader(super.name, this._dateTime); + + @override + String render(RenderContext renderContext) => + '$_name: ${_dateFormat.format(_dateTime.toUtc())}$eol'; +} + +Iterable
_buildHeaders(Message message) { + const noCustom = ['content-type', 'mime-version']; + + final headers =
[]; + var msgHeader = message.headers; + + var msgHeaderNames = {}; + + // Add all custom headers which are not in [noCustom]. + msgHeader.forEach((name, value) { + name = name.toLowerCase(); + msgHeaderNames.add(name); + if (noCustom.contains(name)) return; + + if (value is String && value.contains('@')) { + headers.add(AddressHeader(name, Address(value))); + } else if (value is String) { + headers.add(TextHeader(name, value)); + } else if (value is DateTime) { + headers.add(DateHeader(name, value)); + } else if (value is Address) { + headers.add(AddressHeader(name, value)); + } else if (value is Iterable
) { + headers.add(AddressListHeader(name, value)); + } else if (value is Iterable && value.every((s) => (s).contains('@'))) { + headers.add(AddressListHeader(name, value.map((a) => Address(a)))); + } else { + throw InvalidHeaderException('Type of value for $name is invalid'); + } + }); + + if (!msgHeaderNames.contains('subject') && message.subject != null) { + headers.add(TextHeader('subject', message.subject!)); + } + + if (!msgHeaderNames.contains('from')) { + headers.add(AddressHeader('from', message.fromAsAddress)); + } + + if (!msgHeaderNames.contains('to')) { + var tos = message.recipientsAsAddresses; + if (tos.isNotEmpty) headers.add(AddressListHeader('to', tos)); + } + + if (!msgHeaderNames.contains('cc')) { + var ccs = message.ccsAsAddresses; + if (ccs.isNotEmpty) headers.add(AddressListHeader('cc', ccs)); + } + + if (!msgHeaderNames.contains('date')) { + headers.add(DateHeader( + 'date', + message.headers['date'] is DateTime + ? message.headers['date'] as DateTime + : DateTime.now())); + } + + if (!msgHeaderNames.contains('x-mailer')) { + headers.add(TextHeader('x-mailer', 'Dart Mailer library')); + } + + headers.add(TextHeader('mime-version', '1.0')); + + return headers; +} + +class DynamicHeader extends Header { + final String Function(RenderContext) _resolver; + DynamicHeader(super.name, this._resolver); + + @override + String render(RenderContext info) => '$_name: ${_resolver(info)}$eol'; +} diff --git a/lib/src/smtp/internal_representation/ir_message.dart b/lib/src/mime/mime_message.dart similarity index 56% rename from lib/src/smtp/internal_representation/ir_message.dart rename to lib/src/mime/mime_message.dart index 21f159a..6efd9fd 100644 --- a/lib/src/smtp/internal_representation/ir_message.dart +++ b/lib/src/mime/mime_message.dart @@ -1,14 +1,13 @@ -part of 'internal_representation.dart'; +part of 'mime.dart'; -class IRMessage { - final Logger _logger = Logger('IRMessage'); +class MimeMessage { final Message? _message; - late _IRContent _content; + late Part _content; // Possibly throws. - IRMessage(this._message) { + MimeMessage(this._message) { var headers = _buildHeaders(_message!); - _content = _IRContentPartMixed(_message!, headers); + _content = MultipartMixed(_message!, headers); } Iterable get envelopeTos { @@ -25,13 +24,17 @@ class IRMessage { return envelopeTos; } - String get envelopeFrom => - _message!.envelopeFrom ?? _message!.fromAsAddress.mailAddress; + String get envelopeFrom => _message!.envelopeFrom ?? _message!.fromAsAddress.mailAddress; Stream> data(Capabilities capabilities) => - _content.out(_IRMetaInformation(capabilities)).map((s) { - _logger.finest('«${convert.utf8.decoder.convert(s)}»'); - return s; + _content.out(RenderContext(capabilities)).map((s) { + if (s is String) { + return convert.utf8.encode(s); + } + if (s is List) { + return s; + } + throw StateError('Did not expect ${s.runtimeType} in Part stream'); }); } diff --git a/lib/src/mime/mime_part.dart b/lib/src/mime/mime_part.dart new file mode 100644 index 0000000..e1d53e6 --- /dev/null +++ b/lib/src/mime/mime_part.dart @@ -0,0 +1,210 @@ +part of 'mime.dart'; + +// We will try to build our emails using the following structure: +// (from https://stackoverflow.com/questions/3902455/mail-multipart-alternative-vs-multipart-mixed) +// mixed +// alternative +// text +// related +// html +// inline image +// inline image +// attachment +// attachment +enum MultipartType { alternative, mixed, related } + +/// A MIME entity. +/// +/// "Entity" is the technical MIME term, but we use "Part" here. +abstract class Part extends _MimeOutput { + final List
_header = []; + + String _renderHeaders(RenderContext renderContext) { + var buffer = StringBuffer(); + for (var header in _header) { + buffer.write(header.render(renderContext)); + } + return buffer.toString(); + } + + Stream _outContent(Stream> content, RenderContext renderContext) async* { + ContentEncoder encoder; + if (renderContext.capabilities.binaryMime) { + encoder = BinaryContentEncoder(); + } else { + encoder = Base64ContentEncoder(); + } + + yield _renderHeaders(renderContext); + yield eol; + yield* encoder.encode(content); + yield eol; + yield eol; + } +} + +abstract class ContentPart extends Part { + bool _active = false; + final String _boundary = _buildBoundary(); + late Iterable _content; + + String _boundaryStart(String boundary) => '--$boundary$eol'; + + String _boundaryEnd(String boundary) => '--$boundary--$eol'; + + // We don't want to expose the number of sent emails. + // Only use the counter, if milliseconds hasn't changed. + static int _counter = 0; + static int? _prevTimestamp; + + static String _buildBoundary() { + var now = DateTime.now().millisecondsSinceEpoch; + if (now != _prevTimestamp) _counter = 0; + _prevTimestamp = now; + return 'mailer-?=_${_counter++}-$now'; + } + + @override + Stream out(RenderContext renderContext) async* { + // If not active, don't output anything and output the nested content + // directly. + if (!_active) { + assert(_content.length == 1); + yield* _content.first.out(renderContext); + return; + } + + // If we are active output headers and then surround embedded contents + // with boundary lines. + yield _renderHeaders(renderContext); + yield eol; + for (var part in _content) { + yield _boundaryStart(_boundary); + yield* part.out(renderContext); + } + yield _boundaryEnd(_boundary); + yield eol; + } +} + +class MultipartMixed extends ContentPart { + MultipartMixed(Message message, Iterable
header) { + var attachments = message.attachments; + var attached = attachments.where((a) => a.location == Location.attachment); + + _active = attached.isNotEmpty; + + if (_active) { + _header.addAll(header); + _header.add(ContentTypeHeader(_boundary, MultipartType.mixed)); + Part contentAlternative = MultipartAlternative(message, []); + var contentAttachments = attached.map((a) => AttachmentPart(a)); + _content = [contentAlternative, ...contentAttachments]; + } else { + _content = [MultipartAlternative(message, header)]; + } + } +} + +class MultipartAlternative extends ContentPart { + MultipartAlternative(Message message, Iterable
header) { + var attachments = message.attachments; + var hasEmbedded = attachments.any((a) => a.location == Location.inline); + + _active = message.text != null && (message.html != null || hasEmbedded); + + if (_active) { + _header.addAll(header); + _header.add(ContentTypeHeader(_boundary, MultipartType.alternative)); + var contentTxt = TextPart(message.text, TextType.plain, []); + var contentRelated = MultipartRelated(message, []); + _content = [contentTxt, contentRelated]; + } else if (message.text != null) { + // text only + _content = [TextPart(message.text, TextType.plain, header)]; + } else { + // html only + _content = [MultipartRelated(message, header)]; + } + } +} + +class MultipartRelated extends ContentPart { + MultipartRelated(Message message, Iterable
header) { + var attachments = message.attachments; + var embedded = attachments.where((a) => a.location == Location.inline); + + _active = embedded.isNotEmpty; + + if (_active) { + _header.addAll(header); + _header.add(ContentTypeHeader(_boundary, MultipartType.related)); + Part contentHtml = TextPart(message.html, TextType.html, []); + var contentAttachments = embedded.map((a) => AttachmentPart(a)); + _content = [contentHtml, ...contentAttachments]; + } else { + _content = [TextPart(message.html, TextType.html, header)]; + } + } +} + +class AttachmentPart extends Part { + final Attachment _attachment; + + AttachmentPart(this._attachment) { + final contentType = _attachment.contentType; + final filename = _attachment.fileName; + + _header.add(TextHeader('content-type', contentType)); + _header.add(DynamicHeader( + 'content-transfer-encoding', (info) => info.capabilities.binaryMime ? 'binary' : 'base64')); + + if ((_attachment.cid ?? '').isNotEmpty) { + var cid = _attachment.cid!; + if (!cid.startsWith('<')) cid = '<$cid'; + if (!cid.endsWith('>')) cid = '$cid>'; + _header.add(TextHeader('content-id', cid)); + } + + final parms = {}; + if ((filename ?? '').isNotEmpty) parms['filename'] = filename!; + _header.add(TextHeader('content-disposition', _attachment.location.name, parms)); + + // Add additional headers set by the user. + for (final headerEntry in _attachment.additionalHeaders.entries) { + _header.add(TextHeader(headerEntry.key.toLowerCase(), headerEntry.value)); + } + } + + @override + Stream out(RenderContext renderContext) { + return _outContent(_attachment.asStream(), renderContext); + } +} + +enum TextType { plain, html } + +class TextPart extends Part { + static final _eolRegex = RegExp(r'\r\n?|\n'); + + String _text = ''; + + TextPart(String? text, TextType textType, Iterable
header) { + _header.addAll(header); + _header.add(TextHeader('content-type', 'text/${textType.name}; charset=utf-8')); + _header.add(DynamicHeader( + 'content-transfer-encoding', (info) => info.capabilities.binaryMime ? 'binary' : 'base64')); + + _text = text ?? ''; + } + + @override + Stream out(RenderContext renderContext) { + // Replace all EOLs with \r\n (canonical form) + var canonicalText = _text.split(_eolRegex).join(eol); + if (canonicalText.isNotEmpty && !canonicalText.endsWith(eol)) { + canonicalText += eol; + } + return _outContent(Stream.value(convert.utf8.encode(canonicalText)), renderContext); + } +} diff --git a/lib/src/smtp/internal_representation/conversion.dart b/lib/src/mime/stream_splitter.dart similarity index 83% rename from lib/src/smtp/internal_representation/conversion.dart rename to lib/src/mime/stream_splitter.dart index ee684af..ef762a5 100644 --- a/lib/src/smtp/internal_representation/conversion.dart +++ b/lib/src/mime/stream_splitter.dart @@ -1,10 +1,6 @@ import 'dart:async'; import 'dart:convert' as convert; -import 'package:logging/logging.dart'; - -final Logger _logger = Logger('conversion'); - const String eol = '\r\n'; List to8(String s) => convert.utf8.encode(s); @@ -36,8 +32,7 @@ bool _isMultiByteContinuationByte(int b) { // A 4 byte multi byte character for example is: // 11110000 10010000 10001101 10001000 // Note that the 2nd, 3rd and 4th byte all start with 10 -Iterable> split(List data, int maxLength, - {bool avoidUtf8Cut = true}) sync* { +Iterable> split(List data, int maxLength, {bool avoidUtf8Cut = true}) sync* { var start = 0; for (;;) { if (start >= data.length) break; @@ -72,29 +67,31 @@ Iterable> split(List data, int maxLength, } } -Stream> _splitS( - Stream> dataS, int maxLength) { +Stream> _splitS(Stream> dataS, int maxLength) { var currentLineLength = 0; var insertEol = false; var sc = StreamController>(); void processData(List data) { - _logger.finest('_splitS: <- ${data.length} bytes currentLineLength: $currentLineLength'); if (data.length + currentLineLength > maxLength) { + // calculate target length. + // We want to fill up the current line, but we also want to avoid + // very small chunks. var targetLength = maxLength ~/ 2; if (targetLength + currentLineLength > maxLength) { targetLength = maxLength - currentLineLength; } - _logger.finest('_splitS: > maxLength ($maxLength) Splitting into $targetLength parts'); + // Recursive call. + // We need to split the data into smaller chunks and process them. + // We don't care about utf8 splitting here. + // The recursive call will handle the logic of adding the EOL. split(data, targetLength, avoidUtf8Cut: false).forEach(processData); } else if (data.length + currentLineLength == maxLength) { - _logger.finest('_splitS: == maxLength ($maxLength)'); if (insertEol) sc.add(eol8); sc.add(data); currentLineLength = 0; insertEol = true; } else { - _logger.finest('_splitS: below maxLength ($maxLength).'); // We are still below maxLength if (insertEol) sc.add(eol8); insertEol = false; @@ -114,6 +111,5 @@ class StreamSplitter extends StreamTransformerBase, List> { StreamSplitter([this.maxLength = 76]); @override - Stream> bind(Stream> stream) => - _splitS(stream, maxLength); + Stream> bind(Stream> stream) => _splitS(stream, maxLength); } diff --git a/lib/src/smtp/buffering_stream_transformer.dart b/lib/src/smtp/buffering_stream_transformer.dart new file mode 100644 index 0000000..299b2fe --- /dev/null +++ b/lib/src/smtp/buffering_stream_transformer.dart @@ -0,0 +1,40 @@ +import 'dart:async'; +import 'dart:typed_data'; + +class BufferingStreamTransformer extends StreamTransformerBase, List> { + final int bufferSize; + + BufferingStreamTransformer(this.bufferSize); + + @override + Stream> bind(Stream> stream) { + var controller = StreamController>(); + var buffer = BytesBuilder(); + + stream.listen( + (data) { + if (data.length >= bufferSize) { + if (buffer.isNotEmpty) { + controller.add(buffer.takeBytes()); + } + controller.add(data); + } else { + buffer.add(data); + if (buffer.length >= bufferSize) { + controller.add(buffer.takeBytes()); + } + } + }, + onError: controller.addError, + onDone: () { + if (buffer.isNotEmpty) { + controller.add(buffer.takeBytes()); + } + controller.close(); + }, + cancelOnError: true, + ); + + return controller.stream; + } +} diff --git a/lib/src/smtp/capabilities.dart b/lib/src/smtp/capabilities.dart index 51354e0..93aa38d 100644 --- a/lib/src/smtp/capabilities.dart +++ b/lib/src/smtp/capabilities.dart @@ -7,9 +7,11 @@ Capabilities capabilitiesForTesting( bool authPlain = true, bool authLogin = false, bool authXoauth2 = false, + bool chunking = false, + bool binaryMime = false, List all = const []}) { return Capabilities._values( - startTls, smtpUtf8, authPlain, authLogin, authXoauth2, all); + startTls, smtpUtf8, authPlain, authLogin, authXoauth2, chunking, binaryMime, all); } class Capabilities { @@ -18,6 +20,8 @@ class Capabilities { final bool authPlain; final bool authLogin; final bool authXoauth2; + final bool chunking; + final bool binaryMime; final List all; const Capabilities() @@ -26,20 +30,23 @@ class Capabilities { authPlain = true, authLogin = false, authXoauth2 = false, + chunking = false, + binaryMime = false, all = const []; - const Capabilities._values(this.startTls, this.smtpUtf8, this.authPlain, - this.authLogin, this.authXoauth2, this.all); + const Capabilities._values(this.startTls, this.smtpUtf8, this.authPlain, this.authLogin, + this.authXoauth2, this.chunking, this.binaryMime, this.all); factory Capabilities.fromResponse(Iterable ehloMessage) { - final capabilities = - List.unmodifiable(ehloMessage.map((m) => m.toUpperCase())); + final capabilities = List.unmodifiable(ehloMessage.map((m) => m.toUpperCase())); var startTls = false; var smtpUtf8 = false; var plain = false; var login = false; var xoauth2 = false; + var chunking = false; + var binaryMime = false; for (var cap in capabilities) { if (cap.contains('STARTTLS')) { @@ -51,10 +58,14 @@ class Capabilities { plain = authMethods.contains('PLAIN'); login = authMethods.contains('LOGIN'); xoauth2 = authMethods.contains('XOAUTH2'); + } else if (cap.contains('CHUNKING')) { + chunking = true; + } else if (cap.contains('BINARYMIME')) { + binaryMime = true; } } return Capabilities._values( - startTls, smtpUtf8, plain, login, xoauth2, capabilities); + startTls, smtpUtf8, plain, login, xoauth2, chunking, binaryMime, capabilities); } } diff --git a/lib/src/smtp/connection.dart b/lib/src/smtp/connection.dart index 1801d36..28feadd 100644 --- a/lib/src/smtp/connection.dart +++ b/lib/src/smtp/connection.dart @@ -4,8 +4,8 @@ import 'dart:io'; import 'package:async/async.dart'; import 'package:logging/logging.dart'; -import 'package:mailer/smtp_server.dart'; -import 'package:mailer/src/smtp/exceptions.dart'; +import '../../smtp_server.dart'; +import 'exceptions.dart'; import 'capabilities.dart'; @@ -53,9 +53,14 @@ class Connection { Future send(String command, {List? acceptedRespCodes = const ['2'], String? expect, - bool waitForResponse = true}) async { + bool waitForResponse = true, + bool private = false}) async { // Send the new command. - _logger.fine('> $command'); + if (private) { + _logger.fine('> *******'); + } else { + _logger.fine('> $command'); + } if (command.isNotEmpty) { _socket!.write('$command\r\n'); } @@ -76,8 +81,7 @@ class Connection { // for the _last_ line of a response. // Multi-line responses have '-' as 4th character except for the last // line. - while (currentLine == null || - (currentLine.length > 3 && currentLine[3] != ' ')) { + while (currentLine == null || (currentLine.length > 3 && currentLine[3] != ' ')) { var hasNext = await _socketIn!.hasNext.timeout(timeout); if (!hasNext) { throw SmtpClientCommunicationException( @@ -101,8 +105,7 @@ class Connection { if (acceptedRespCodes != null && acceptedRespCodes.isNotEmpty && !acceptedRespCodes.any((start) => responseCode.startsWith(start))) { - var msg = - 'After sending $command, response did not start with any of: $acceptedRespCodes.'; + var msg = 'After sending $command, response did not start with any of: $acceptedRespCodes.'; msg += '\nResponse from server: $mString'; _logger.warning(msg); throw SmtpClientCommunicationException(msg); @@ -116,8 +119,8 @@ class Connection { // SecureSocket.secure suggests to call socketSubscription.pause(). // A StreamQueue always pauses unless we explicitly call next(). // So we don't need to call pause() ourselves. - _socket = await SecureSocket.secure(_socket!, - onBadCertificate: (_) => server.ignoreBadCertificate); + _socket = + await SecureSocket.secure(_socket!, onBadCertificate: (_) => server.ignoreBadCertificate); _setSocketIn(); } @@ -129,11 +132,9 @@ class Connection { // Secured connection was demanded by the user. if (server.ssl) { _socket = await SecureSocket.connect(server.host, server.port, - onBadCertificate: (_) => server.ignoreBadCertificate, - timeout: timeout); + onBadCertificate: (_) => server.ignoreBadCertificate, timeout: timeout); } else { - _socket = - await Socket.connect(server.host, server.port, timeout: timeout); + _socket = await Socket.connect(server.host, server.port, timeout: timeout); } _socket!.timeout(timeout); @@ -149,8 +150,7 @@ class Connection { if (_socketIn != null) { _socketIn!.cancel(); } - _socketIn = StreamQueue( - utf8.decoder.bind(_socket!).transform(const LineSplitter())); + _socketIn = StreamQueue(utf8.decoder.bind(_socket!).transform(const LineSplitter())); } void verifySecuredConnection() { diff --git a/lib/src/smtp/exceptions.dart b/lib/src/smtp/exceptions.dart index 07450e5..b2082a2 100644 --- a/lib/src/smtp/exceptions.dart +++ b/lib/src/smtp/exceptions.dart @@ -1,4 +1,4 @@ -import 'package:mailer/src/entities/problem.dart'; +import '../core/problem.dart'; abstract class MailerException implements Exception { /// A short description of the problem. @@ -14,26 +14,25 @@ abstract class MailerException implements Exception { /// This exception is thrown when the server either doesn't accept /// the authentication type or the username password is incorrect. class SmtpClientAuthenticationException extends MailerException { - SmtpClientAuthenticationException(String message) : super(message); + SmtpClientAuthenticationException(super.message); } /// This exception is thrown when the server unexpectedly returns a response /// code which differs to our accepted response codes (usually 2xx). class SmtpClientCommunicationException extends MailerException { - SmtpClientCommunicationException(String message) : super(message); + SmtpClientCommunicationException(super.message); } /// This exception is thrown when no secure connection can be established -/// and [SmtpOptions.securedOnly] is true. +/// and [SmtpServer.allowInsecure] is false. class SmtpUnsecureException extends MailerException { - SmtpUnsecureException(String message) : super(message); + SmtpUnsecureException(super.message); } class SmtpMessageValidationException extends MailerException { - SmtpMessageValidationException(String message, List problems) - : super(message, problems: problems); + SmtpMessageValidationException(super.message, List problems) : super(problems: problems); } class SmtpNoGreetingException extends MailerException { - SmtpNoGreetingException(String message) : super(message); + SmtpNoGreetingException(super.message); } diff --git a/lib/src/smtp/internal_representation/internal_representation.dart b/lib/src/smtp/internal_representation/internal_representation.dart deleted file mode 100644 index 06af8c0..0000000 --- a/lib/src/smtp/internal_representation/internal_representation.dart +++ /dev/null @@ -1,42 +0,0 @@ -import 'dart:async'; -import 'dart:convert' as convert; - -import 'package:intl/intl.dart'; -import 'package:logging/logging.dart'; -import 'package:mailer/src/utils.dart'; - -import '../../entities/address.dart'; -import '../../entities/attachment.dart'; -import '../../entities/message.dart'; -import '../capabilities.dart'; -import 'conversion.dart'; - -part 'ir_content.dart'; -part 'ir_header.dart'; -part 'ir_message.dart'; - -// "An 'encoded-word' may not be more than 75 characters long, including -// 'charset', 'encoding', 'encoded-text', and delimiters." -const maxEncodedLength = 75; // as per RFC2047 -const maxLineLength = 800; -const maxBase64LineLength = 76; // as per RFC2045 -// «The encoded output stream must be represented in lines of no more -// than 76 characters each.» - -// From https://docs.flutter.io/flutter/foundation/describeEnum.html -String _describeEnum(Object enumEntry) { - final description = enumEntry.toString(); - final indexOfDot = description.indexOf('.'); - assert(indexOfDot != -1 && indexOfDot < description.length - 1); - return description.substring(indexOfDot + 1); -} - -class _IRMetaInformation { - final Capabilities capabilities; - - _IRMetaInformation(this.capabilities); -} - -abstract class _IROutput { - Stream> out(_IRMetaInformation irMetaInformation); -} diff --git a/lib/src/smtp/internal_representation/ir_content.dart b/lib/src/smtp/internal_representation/ir_content.dart deleted file mode 100644 index e587d6b..0000000 --- a/lib/src/smtp/internal_representation/ir_content.dart +++ /dev/null @@ -1,210 +0,0 @@ -part of 'internal_representation.dart'; - -// We will try to build our emails using the following structure: -// (from https://stackoverflow.com/questions/3902455/mail-multipart-alternative-vs-multipart-mixed) -// mixed -// alternative -// text -// related -// html -// inline image -// inline image -// attachment -// attachment -enum _MultipartType { alternative, mixed, related } - -abstract class _IRContent extends _IROutput { - final List<_IRHeader> _header = []; - - Stream> _outH(_IRMetaInformation metaInformation) async* { - for (var hs in _header.map((h) => h.out(metaInformation))) { - yield* hs; - } - } - - Stream> _out64( - Stream> content, _IRMetaInformation irMetaInformation) async* { - yield* _outH(irMetaInformation); - yield eol8; - yield* convert.base64.encoder - .bind(content) - .transform(convert.ascii.encoder) - .transform(StreamSplitter(maxBase64LineLength)); - yield eol8; - yield eol8; - } -} - -abstract class _IRContentPart extends _IRContent { - bool _active = false; - final String _boundary = _buildBoundary(); - late Iterable<_IRContent> _content; - - List _boundaryStart(String boundary) => to8('--$boundary$eol'); - - List _boundaryEnd(String boundary) => to8('--$boundary--$eol'); - - // We don't want to expose the number of sent emails. - // Only use the counter, if milliseconds hasn't changed. - static int _counter = 0; - static int? _prevTimestamp; - - static String _buildBoundary() { - var now = DateTime.now().millisecondsSinceEpoch; - if (now != _prevTimestamp) _counter = 0; - _prevTimestamp = now; - return 'mailer-?=_${_counter++}-$now'; - } - - @override - Stream> out(_IRMetaInformation irMetaInformation) async* { - // If not active, don't output anything and output the nested content - // directly. - if (!_active) { - assert(_content.length == 1); - yield* _content.first.out(irMetaInformation); - return; - } - - // If we are active output headers and then surround embedded contents - // with boundary lines. - yield* _outH(irMetaInformation); - yield eol8; - for (var part in _content) { - yield _boundaryStart(_boundary); - yield* part.out(irMetaInformation); - } - yield _boundaryEnd(_boundary); - yield eol8; - } -} - -Iterable _follow(T t, Iterable ts) sync* { - yield t; - yield* ts; -} - -class _IRContentPartMixed extends _IRContentPart { - _IRContentPartMixed(Message message, Iterable<_IRHeader> header) { - var attachments = message.attachments; - var attached = attachments.where((a) => a.location == Location.attachment); - - _active = attached.isNotEmpty; - - if (_active) { - _header.addAll(header); - _header.add(_IRHeaderContentType(_boundary, _MultipartType.mixed)); - _IRContent contentAlternative = _IRContentPartAlternative(message, []); - var contentAttachments = attached.map((a) => _IRContentAttachment(a)); - _content = _follow(contentAlternative, contentAttachments); - } else { - _content = [_IRContentPartAlternative(message, header)]; - } - } -} - -class _IRContentPartAlternative extends _IRContentPart { - _IRContentPartAlternative(Message message, Iterable<_IRHeader> header) { - var attachments = message.attachments; - var hasEmbedded = attachments.any((a) => a.location == Location.inline); - - _active = message.text != null && (message.html != null || hasEmbedded); - - if (_active) { - _header.addAll(header); - _header.add(_IRHeaderContentType(_boundary, _MultipartType.alternative)); - var contentTxt = _IRContentText(message.text, _IRTextType.plain, []); - var contentRelated = _IRContentPartRelated(message, []); - _content = [contentTxt, contentRelated]; - } else if (message.text != null) { - // text only - _content = [_IRContentText(message.text, _IRTextType.plain, header)]; - } else { - // html only - _content = [_IRContentPartRelated(message, header)]; - } - } -} - -class _IRContentPartRelated extends _IRContentPart { - _IRContentPartRelated(Message message, Iterable<_IRHeader> header) { - var attachments = message.attachments; - var embedded = attachments.where((a) => a.location == Location.inline); - - _active = embedded.isNotEmpty; - - if (_active) { - _header.addAll(header); - _header.add(_IRHeaderContentType(_boundary, _MultipartType.related)); - _IRContent contentHtml = - _IRContentText(message.html, _IRTextType.html, []); - var contentAttachments = embedded.map((a) => _IRContentAttachment(a)); - _content = _follow(contentHtml, contentAttachments); - } else { - _content = [_IRContentText(message.html, _IRTextType.html, header)]; - } - } -} - -class _IRContentAttachment extends _IRContent { - final Attachment _attachment; - - _IRContentAttachment(this._attachment) { - final contentType = _attachment.contentType; - final filename = _attachment.fileName; - - _header.add(_IRHeaderText('content-type', contentType)); - _header.add(_IRHeaderText('content-transfer-encoding', 'base64')); - - if ((_attachment.cid ?? '').isNotEmpty) { - _header.add(_IRHeaderText('content-id', _attachment.cid!)); - } - - final parms = {}; - if ((filename ?? '').isNotEmpty) parms['filename'] = filename!; - _header.add(_IRHeaderText( - 'content-disposition', _describeEnum(_attachment.location), parms)); - - // Add additional headers set by the user. - for (final headerEntry in _attachment.additionalHeaders.entries) { - _header - .add(_IRHeaderText(headerEntry.key.toLowerCase(), headerEntry.value)); - } - } - - @override - Stream> out(_IRMetaInformation irMetaInformation) { - return _out64(_attachment.asStream(), irMetaInformation); - } -} - -enum _IRTextType { plain, html } - -class _IRContentText extends _IRContent { - String _text = ''; - - _IRContentText( - String? text, _IRTextType textType, Iterable<_IRHeader> header) { - _header.addAll(header); - var type = _describeEnum(textType); - _header.add(_IRHeaderText('content-type', 'text/$type; charset=utf-8')); - _header.add(_IRHeaderText('content-transfer-encoding', 'base64')); - - _text = text ?? ''; - } - - @override - Stream> out(_IRMetaInformation irMetaInformation) { - Stream addEol(String s) async* { - yield s; - yield eol; - } - - return _out64( - Stream.fromIterable([_text]) - .transform(convert.LineSplitter()) - .asyncExpand(addEol) // Replace all eols with \r\n → canonical form. - .transform(convert.utf8.encoder), - irMetaInformation); - } -} diff --git a/lib/src/smtp/internal_representation/ir_header.dart b/lib/src/smtp/internal_representation/ir_header.dart deleted file mode 100644 index 53e1a56..0000000 --- a/lib/src/smtp/internal_representation/ir_header.dart +++ /dev/null @@ -1,256 +0,0 @@ -part of 'internal_representation.dart'; - -abstract class _IRHeader extends _IROutput { - final String _name; - - static final _b64prefix = convert.utf8.encode('=?utf-8?B?'), - _b64postfix = convert.utf8.encode('?='), - _$eol = convert.utf8.encode(eol), - _$eolSpace = convert.utf8.encode('$eol '), - _$spaceLt = convert.utf8.encode(' <'), - _$gt = convert.utf8.encode('>'), - _$commaSpace = convert.utf8.encode(', '), - _$colonSpace = convert.utf8.encode(': '); - static final int _b64Length = _b64prefix.length + _b64postfix.length; - - Stream> _outValue(String? value) async* { - yield convert.utf8.encode(_name); - yield _$colonSpace; - if (value != null) yield convert.utf8.encode(value); - yield _$eol; - } - - Stream> _outValueWithParms( - String value, _IRMetaInformation irMetaInformation, - [Map? parms]) async* { - yield convert.utf8.encode(_name); - yield _$colonSpace; - if (_IRHeader._shallB64(value, irMetaInformation)) { - yield* _outB64(value); - } else { - yield convert.utf8.encode(value); - } - if (parms != null) { - for (var parm in (parms.entries)) { - yield convert.utf8.encode('; ${parm.key}="'); - if (_IRHeader._shallB64(parm.value, irMetaInformation)) { - yield* _outB64(parm.value); - } else { - yield convert.utf8.encode(parm.value); - } - yield convert.utf8.encode('"'); - } - } - yield _$eol; - } - - /// Outputs the given [addresses]. - Stream> _outAddressesValue(Iterable
addresses, - _IRMetaInformation irMetaInformation) async* { - yield convert.utf8.encode(_name); - yield _$colonSpace; - - var len = 2, //2 = _$commaSpace - second = false; - for (final address in addresses) { - final name = address.sanitizedName, maddr = address.sanitizedAddress; - var adrlen = maddr.length; - if (name != null) { - adrlen += name.length + 3; - } //not accurate but good enough - - if (second) { - yield _$commaSpace; - - if (len + adrlen > maxEncodedLength) { - len = 2; - yield _$eolSpace; - } - } else { - second = true; - } - - if (name == null) { - yield convert.utf8.encode(maddr); - } else { - if (_shallB64(name, irMetaInformation)) { - yield* _outB64(name); - } else { - yield convert.utf8.encode(name); - } - - yield _$spaceLt; - yield convert.utf8.encode(maddr); - yield _$gt; - } - - len += adrlen; - } - - yield _$eol; - } - - // Outputs the given [value] encoded as base64. - static Stream> _outB64(String value) async* { - // Encode with base64. - var availableLengthForBase64 = maxEncodedLength - _b64Length; - - // Length after base64: ceil(n / 3) * 4 - var lengthBeforeBase64 = (availableLengthForBase64 ~/ 4) * 3; - var availableLength = lengthBeforeBase64; - - // At least 10 chars (random length). - if (availableLength < 10) availableLength = 10; - - var second = false; - for (var d in split(convert.utf8.encode(value), availableLength)) { - if (second) { - yield _$eolSpace; - } else { - second = true; - } - - yield _b64prefix; - yield convert.utf8.encode(convert.base64.encode(d)); - yield _b64postfix; - } - } - - static bool _shallB64(String value, _IRMetaInformation irMetaInformation) { - // If we have a maxLineLength is it the length of utf8 characters or - // the length of utf8 bytes? - // Just to be safe we'll count the bytes. - var byteLength = convert.utf8.encode(value).length; - return (byteLength > maxLineLength || - !isPrintableRegExp.hasMatch(value) || - // Make sure that text which looks like an encoded text is encoded. - value.contains('=?') || - (!irMetaInformation.capabilities.smtpUtf8 && - value.contains(RegExp(r'[^\x20-\x7E]')))); - } - - /* - Stream> _outValue8(List value) => Stream.fromIterable( - [_name, ': '].map(utf8.encode).followedBy([value, _eol8])); - */ - - _IRHeader(this._name); -} - -class _IRHeaderText extends _IRHeader { - final String _value; - final Map? _parms; - - _IRHeaderText(String name, this._value, [this._parms]) : super(name); - - @override - Stream> out(_IRMetaInformation irMetaInformation) => - _outValueWithParms(_value, irMetaInformation, _parms); -} - -class _IRHeaderAddress extends _IRHeader { - final Address _address; - - _IRHeaderAddress(String name, this._address) : super(name); - - @override - Stream> out(_IRMetaInformation irMetaInformation) => - _outAddressesValue([_address], irMetaInformation); -} - -class _IRHeaderAddresses extends _IRHeader { - final Iterable
_addresses; - - _IRHeaderAddresses(String name, this._addresses) : super(name); - - @override - Stream> out(_IRMetaInformation irMetaInformation) => - _outAddressesValue(_addresses, irMetaInformation); -} - -class _IRHeaderContentType extends _IRHeader { - final String _boundary; - final _MultipartType _multipartType; - - _IRHeaderContentType(this._boundary, this._multipartType) - : super('content-type'); - - @override - Stream> out(_IRMetaInformation irMetaInformation) { - return _outValue( - 'multipart/${_describeEnum(_multipartType)};boundary="$_boundary"'); - } -} - -class _IRHeaderDate extends _IRHeader { - final DateTime _dateTime; - - static final DateFormat _dateFormat = - DateFormat('EEE, dd MMM yyyy HH:mm:ss +0000', 'en_US'); - - _IRHeaderDate(String name, this._dateTime) : super(name); - - @override - Stream> out(_IRMetaInformation irMetaInformation) => - _outValue(_dateFormat.format(_dateTime.toUtc())); -} - -Iterable<_IRHeader> _buildHeaders(Message message) { - const noCustom = ['content-type', 'mime-version']; - - final headers = <_IRHeader>[]; - var msgHeader = message.headers; - - // Add all custom headers which are not in [noCustom]. - msgHeader.forEach((name, value) { - name = name.toLowerCase(); - if (noCustom.contains(name)) return; - - if (value is String && value.contains('@')) { - headers.add(_IRHeaderAddress(name, Address(value))); - } else if (value is String) { - headers.add(_IRHeaderText(name, value)); - } else if (value is DateTime) { - headers.add(_IRHeaderDate(name, value)); - } else if (value is Address) { - headers.add(_IRHeaderAddress(name, value)); - } else if (value is Iterable
) { - headers.add(_IRHeaderAddresses(name, value)); - } else if (value is Iterable && - value.every((s) => (s).contains('@'))) { - headers.add(_IRHeaderAddresses(name, value.map((a) => Address(a)))); - } else { - throw InvalidHeaderException('Type of value for $name is invalid'); - } - }); - - if (!msgHeader.containsKey('subject') && message.subject != null) { - headers.add(_IRHeaderText('subject', message.subject!)); - } - - if (!msgHeader.containsKey('from')) { - headers.add(_IRHeaderAddress('from', message.fromAsAddress)); - } - - if (!msgHeader.containsKey('to')) { - var tos = message.recipientsAsAddresses; - if (tos.isNotEmpty) headers.add(_IRHeaderAddresses('to', tos)); - } - - if (!msgHeader.containsKey('cc')) { - var ccs = message.ccsAsAddresses; - if (ccs.isNotEmpty) headers.add(_IRHeaderAddresses('cc', ccs)); - } - - if (!msgHeader.containsKey('date')) { - headers.add(_IRHeaderDate('date', DateTime.now())); - } - - if (!msgHeader.containsKey('x-mailer')) { - headers.add(_IRHeaderText('x-mailer', 'Dart Mailer library')); - } - - headers.add(_IRHeaderText('mime-version', '1.0')); - - return headers; -} diff --git a/lib/src/smtp/mail_sender.dart b/lib/src/smtp/mail_sender.dart index fbab6eb..6035b30 100644 --- a/lib/src/smtp/mail_sender.dart +++ b/lib/src/smtp/mail_sender.dart @@ -1,7 +1,7 @@ import 'dart:async'; import 'package:logging/logging.dart'; -import 'package:mailer/src/smtp/validator.dart'; +import 'validator.dart'; import '../../mailer.dart'; import '../../smtp_server.dart'; @@ -87,8 +87,7 @@ class PersistentConnection { /// [SocketException] /// [SmtpMessageValidationException] /// Please report other exceptions you encounter. -Future send(Message message, SmtpServer smtpServer, - {Duration? timeout}) async { +Future send(Message message, SmtpServer smtpServer, {Duration? timeout}) async { _validate(message); final connection = await client.connect(smtpServer, timeout); try { @@ -107,8 +106,7 @@ Future send(Message message, SmtpServer smtpServer, /// [SmtpClientCommunicationException], /// [SocketException] /// others -Future checkCredentials(SmtpServer smtpServer, - {Duration? timeout}) async { +Future checkCredentials(SmtpServer smtpServer, {Duration? timeout}) async { var connection = await client.connect(smtpServer, timeout); await client.close(connection); } @@ -119,8 +117,7 @@ void _validate(Message message) { if (validationProblems.isNotEmpty) { _logger.severe('Message validation error: ' '${validationProblems.map((p) => p.msg).join('|')}'); - throw SmtpMessageValidationException( - 'Invalid message.', validationProblems); + throw SmtpMessageValidationException('Invalid message.', validationProblems); } } @@ -129,8 +126,7 @@ void _validate(Message message) { /// [SmtpClientCommunicationException], /// [SocketException] /// Please report other exceptions you encounter. -Future _send( - Message message, Connection connection, Duration? timeout) async { +Future _send(Message message, Connection connection, Duration? timeout) async { final messageSendStart = DateTime.now(); DateTime messageSendEnd; try { @@ -142,6 +138,5 @@ Future _send( } // If sending the message was successful we had to open a connection and // `connection.connectionOpenStart` can no longer be null. - return SendReport(message, connection.connectionOpenStart!, messageSendStart, - messageSendEnd); + return SendReport(message, connection.connectionOpenStart!, messageSendStart, messageSendEnd); } diff --git a/lib/src/smtp/smtp_client.dart b/lib/src/smtp/smtp_client.dart index e734905..0bab534 100644 --- a/lib/src/smtp/smtp_client.dart +++ b/lib/src/smtp/smtp_client.dart @@ -2,13 +2,14 @@ import 'dart:async'; import 'dart:convert' as convert; import 'dart:io'; -import 'package:mailer/smtp_server.dart'; +import '../../smtp_server.dart'; -import '../entities/message.dart'; +import '../core/message.dart'; import 'capabilities.dart'; import 'connection.dart'; import 'exceptions.dart'; -import 'internal_representation/internal_representation.dart'; +import '../mime/mime.dart'; +import 'buffering_stream_transformer.dart'; /// Returns if ehlo was successful. Future _doEhlo(Connection c, String clientName) async { @@ -64,8 +65,10 @@ Future _doAuthLogin(Connection c) async { // 'Username:' in base64 is: VXN... await c.send('AUTH LOGIN', acceptedRespCodes: ['334'], expect: 'VXNlcm5hbWU6'); // 'Password:' in base64 is: UGF... - await c.send(convert.base64.encode(username.codeUnits), acceptedRespCodes: ['334'], expect: 'UGFzc3dvcmQ6'); - var loginResp = await c.send(convert.base64.encode(password.codeUnits), acceptedRespCodes: []); + await c.send(convert.base64.encode(username.codeUnits), + acceptedRespCodes: ['334'], expect: 'UGFzc3dvcmQ6', private: true); + var loginResp = + await c.send(convert.base64.encode(password.codeUnits), acceptedRespCodes: [], private: true); return loginResp!; } @@ -74,7 +77,7 @@ Future _doAuthPlain(Connection c) async { var digest = _getPlainDigest(c.server.username!, c.server.password!); await c.send('AUTH PLAIN', acceptedRespCodes: ['334']); - var loginResp = await c.send(digest, acceptedRespCodes: []); + var loginResp = await c.send(digest, acceptedRespCodes: [], private: true); return loginResp!; } @@ -93,7 +96,7 @@ Future _doAuthXoauth2(Connection c) async { var token = c.server.xoauth2Token; // See https://developers.google.com/gmail/imap/xoauth2-protocol - final loginResp = await c.send('AUTH XOAUTH2 $token', acceptedRespCodes: []); + final loginResp = await c.send('AUTH XOAUTH2 $token', acceptedRespCodes: [], private: true); return loginResp!; } @@ -106,13 +109,15 @@ Future _doAuthentication(Connection c) async { } else if (c.capabilities.authPlain) { loginResp = await _doAuthPlain(c); } else { - throw SmtpClientCommunicationException('The server does not support LOGIN or PLAIN authentication method.'); + throw SmtpClientCommunicationException( + 'The server does not support LOGIN or PLAIN authentication method.'); } } else if (c.server.xoauth2Token != null) { if (c.capabilities.authXoauth2) { loginResp = await _doAuthXoauth2(c); } else { - throw SmtpClientCommunicationException('The server does not support XOAUTH2 authentication method.'); + throw SmtpClientCommunicationException( + 'The server does not support XOAUTH2 authentication method.'); } } @@ -175,7 +180,7 @@ Future close(Connection? connection) async { /// [SmtpUnsecureException], /// [SocketException], Future sendSingleMessage(Message? message, Connection c, Duration? timeout) async { - var irMessage = IRMessage(message); + var irMessage = MimeMessage(message); var envelopeTos = irMessage.envelopeTos; var capabilities = c.capabilities; @@ -190,9 +195,19 @@ Future sendSingleMessage(Message? message, Connection c, Duration? timeout await Future.forEach(envelopeTos, (dynamic recipient) => c.send('RCPT TO:<$recipient>')); // Finally send the actual mail. - await c.send('DATA', acceptedRespCodes: ['2', '3']); - - await c.sendStream(irMessage.data(capabilities)); - - await c.send('.', acceptedRespCodes: ['2', '3']); + if (capabilities.chunking) { + // STREAMING via BDAT + await for (var chunk + in irMessage.data(capabilities).transform(BufferingStreamTransformer(64 * 1024))) { + await c.send('BDAT ${chunk.length}', acceptedRespCodes: [], waitForResponse: false); + await c.sendStream(Stream.value(chunk)); + await c.send('', acceptedRespCodes: ['2']); + } + await c.send('BDAT 0 LAST', acceptedRespCodes: ['2']); + } else { + // DATA command + await c.send('DATA', acceptedRespCodes: ['2', '3']); + await c.sendStream(irMessage.data(capabilities)); + await c.send('.', acceptedRespCodes: ['2', '3']); + } } diff --git a/lib/src/smtp/validator.dart b/lib/src/smtp/validator.dart index 64c12c3..619dda9 100644 --- a/lib/src/smtp/validator.dart +++ b/lib/src/smtp/validator.dart @@ -1,33 +1,35 @@ -import 'package:mailer/src/entities/problem.dart'; -import 'package:mailer/src/smtp/internal_representation/internal_representation.dart'; -import 'package:mailer/src/utils.dart'; - -import '../entities/address.dart'; -import '../entities/message.dart'; +import '../core/address.dart'; +import '../core/address_validator.dart'; +import '../core/message.dart'; +import '../core/problem.dart'; +import '../mime/mime.dart'; +import '../utils.dart'; bool _printableCharsOnly(String s) { return isPrintableRegExp.hasMatch(s); } /// [addressIn] can either be an [Address] or String. -bool _validAddress(dynamic addressIn) { +bool _validAddress(dynamic addressIn, [AddressValidator? validator]) { if (addressIn == null) return false; - String? address; + Address address; if (addressIn is Address) { - //Don't validate [Address.name] here since it will be encoded with base64 - //if necessary - address = addressIn.mailAddress; + address = addressIn; } else { - address = addressIn as String; + address = Address(addressIn as String); + } + + if (validator != null) { + return validator.validate(address); } - return _validMailAddress(address); + + return _validMailAddress(address.mailAddress); } bool _validMailAddress(String ma) { var split = ma.split('@'); - return split.length == 2 && - split.every((part) => part.isNotEmpty && _printableCharsOnly(part)); + return split.length == 2 && split.every((part) => part.isNotEmpty && _printableCharsOnly(part)); } List validate(Message message) { @@ -40,20 +42,19 @@ List validate(Message message) { } validate( - _validMailAddress( - message.envelopeFrom ?? message.fromAsAddress.mailAddress), + _validAddress( + Address(message.envelopeFrom ?? message.fromAsAddress.mailAddress), message.validator), 'ENV_FROM', 'Envelope mail address is invalid. ${message.envelopeFrom}'); var counter = 0; for (var a in (message.envelopeTos ?? [])) { counter++; - validate((a.isNotEmpty), 'ENV_TO_EMPTY', - 'Envelope to address (pos: $counter) is null or empty'); validate( - _validMailAddress(a), 'ENV_TO', 'Envelope to address is invalid. $a'); + (a.isNotEmpty), 'ENV_TO_EMPTY', 'Envelope to address (pos: $counter) is null or empty'); + validate(_validAddress(a, message.validator), 'ENV_TO', 'Envelope to address is invalid. $a'); } - validate(_validAddress(message.from), 'FROM_ADDRESS', + validate(_validAddress(message.from, message.validator), 'FROM_ADDRESS', 'The from address is invalid. (${message.from})'); counter = 0; for (var aIn in message.recipients) { @@ -62,25 +63,22 @@ List validate(Message message) { a = aIn is String ? Address(aIn) : aIn as Address?; - validate( - a != null && (a.mailAddress).isNotEmpty, - 'TO_ADDRESS_EMPTY', + validate(a != null && (a.mailAddress).isNotEmpty, 'TO_ADDRESS_EMPTY', 'A recipient address is null or empty. (pos: $counter).'); if (a != null) { - validate(_validAddress(a), 'FROM_ADDRESS', + validate(_validAddress(a, message.validator), 'TO_ADDRESS', 'A recipient address is invalid. ($a).'); } } try { - var irMessage = IRMessage(message); + var irMessage = MimeMessage(message); if (irMessage.envelopeTos.isEmpty) { res.add(Problem('NO_RECIPIENTS', 'Mail does not have any recipients.')); } } on InvalidHeaderException catch (e) { res.add(Problem('INVALID_HEADER', e.message)); } catch (e) { - res.add( - Problem('INVALID_MESSAGE', 'Could not build internal representation.')); + res.add(Problem('INVALID_MESSAGE', 'Could not build internal representation.')); } return res; } diff --git a/pubspec.yaml b/pubspec.yaml index 3e48780..a9ab599 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,22 +1,26 @@ name: mailer -version: 6.6.0 +version: 7.0.0 description: > Compose and send emails from Dart. - Supports file attachments and HTML emails + Supports file attachments and HTML emails. homepage: https://github.com/kaisellgren/mailer environment: - sdk: '>=2.12.0 <3.0.0' + sdk: '>=3.0.0 <4.0.0' + dependencies: - async: '^2.5.0' - crypto: '^3.0.0' - logging: '^1.0.0' - intl: '>=0.17.0 <1.0.0' - mime: '>=1.0.0 <3.0.0' - path: '^1.7.0' - meta: '^1.3.0' + async: '^2.11.0' + crypto: '^3.0.3' + logging: '^1.2.0' + intl: '^0.19.0' + mime: '^1.0.5' + path: '^1.8.3' + meta: '^1.11.0' + punycoder: '^0.2.2' + unorm_dart: '^0.3.2' dev_dependencies: - args: '^2.0.0' - test: '^1.5.1' - googleapis_auth: '^1.0.0' - lints: '^2.0.1' + args: '^2.4.2' + test: '^1.25.0' + googleapis_auth: '^1.4.1' + http: '^1.2.0' + lints: '^3.0.0' diff --git a/test/address_test.dart b/test/address_test.dart index cc9102c..c3cefe8 100644 --- a/test/address_test.dart +++ b/test/address_test.dart @@ -1,5 +1,5 @@ import 'package:test/test.dart'; -import 'package:mailer/mailer.dart'; +import 'package:mailer/src/core/address.dart'; void main() { final parseMailboxesCases = [ @@ -33,10 +33,7 @@ void main() { }, { 'test': 'bob@example.com,jim@example.com', - 'values': [ - Address('bob@example.com', ''), - Address('jim@example.com', '') - ], + 'values': [Address('bob@example.com', ''), Address('jim@example.com', '')], }, { 'test': r''' @@ -57,14 +54,13 @@ void main() { ]; for (var t in parseMailboxesCases) { - test('parseMailboxes: ${t['test']}', () { + test('parseMailboxes: ${(t['test'] as String).replaceAll(RegExp(r'\s+'), ' ')}', () { final addresses = parseMailboxes(t['test'] as String); final expected = t['values'] as List
; expect(addresses.length, expected.length); for (var i = 0; i < expected.length; i++) { expect(addresses[i].name, expected[i].name, reason: '[$i].name'); - expect(addresses[i].mailAddress, expected[i].mailAddress, - reason: '[$i].mailAddress'); + expect(addresses[i].mailAddress, expected[i].mailAddress, reason: '[$i].mailAddress'); } }); } @@ -73,7 +69,6 @@ void main() { expect('Regular Name', Address('x@x.com', 'Regular Name').sanitizedName); expect(null, Address('x@x.com').sanitizedName); expect('"Smith, Bob"', Address('x@x.com', 'Smith, Bob').sanitizedName); - expect(r'"Robert \"Bob\" Smith"', - Address('x@x.com', r'Robert "Bob" Smith').sanitizedName); + expect(r'"Robert \"Bob\" Smith"', Address('x@x.com', r'Robert "Bob" Smith').sanitizedName); }); } diff --git a/test/binarymime_test.dart b/test/binarymime_test.dart new file mode 100644 index 0000000..393359b --- /dev/null +++ b/test/binarymime_test.dart @@ -0,0 +1,125 @@ +import 'dart:convert'; + +import 'package:mailer/mailer.dart'; +import 'package:mailer/smtp_server.dart'; +import 'package:test/test.dart'; + +import 'mock_smtp_server.dart'; + +void main() { + group('BINARYMIME Support', () { + late MockSmtpServer mockServer; + + setUp(() async { + mockServer = MockSmtpServer(); + await mockServer.start(); + }); + + tearDown(() async { + await mockServer.stop(); + }); + + test('Sends binary content when BINARYMIME is supported', () async { + final smtpServer = SmtpServer('localhost', port: mockServer.port, allowInsecure: true); + final message = Message() + ..from = 'sender@example.com' + ..recipients.add('recipient@example.com') + ..subject = 'Binary Test' + ..text = 'Hello World'; + + await send(message, smtpServer); + + // Check headers capture in BDAT + var fullData = utf8.decode(mockServer.bdatData); + expect(fullData, contains('content-transfer-encoding: binary')); + expect(fullData, contains('Hello World')); // Not base64 encoded + }); + + test('Falls back to Base64 when BINARYMIME is NOT supported', () async { + mockServer.advertiseBinaryMime = false; + final smtpServer = SmtpServer('localhost', port: mockServer.port, allowInsecure: true); + final message = Message() + ..from = 'sender@example.com' + ..recipients.add('recipient@example.com') + ..subject = 'Base64 Test' + ..text = 'Hello World'; + + await send(message, smtpServer); + + var fullData = utf8.decode(mockServer.bdatData); + expect(fullData, contains('content-transfer-encoding: base64')); + expect(fullData, contains('SGVsbG8gV29ybGQNCg==')); // "Hello World" in base64 + }); + + test('Handles single dot on a line correctly in BINARYMIME', () async { + final smtpServer = SmtpServer('localhost', port: mockServer.port, allowInsecure: true); + final message = Message() + ..from = 'sender@example.com' + ..recipients.add('recipient@example.com') + ..subject = 'Dot Test' + ..text = 'Line 1\r\n.\r\nLine 2'; + + await send(message, smtpServer); + + var fullData = utf8.decode(mockServer.bdatData); + expect(fullData, contains('content-transfer-encoding: binary')); + // Should contain the dot exactly as is, without stuffing (..), because it's BDAT + expect(fullData, contains('\r\n.\r\n')); + }); + + test('Handles SMTP keywords in content correctly in BINARYMIME', () async { + final smtpServer = SmtpServer('localhost', port: mockServer.port, allowInsecure: true); + final message = Message() + ..from = 'sender@example.com' + ..recipients.add('recipient@example.com') + ..subject = 'Keyword Test' + ..text = 'QUIT\r\nEHLO examples.com\r\nDATA'; + + await send(message, smtpServer); + + var fullData = utf8.decode(mockServer.bdatData); + expect(fullData, contains('content-transfer-encoding: binary')); + expect(fullData, contains('QUIT\r\nEHLO examples.com\r\nDATA')); + }); + + // Using base64 would be allowed, but is not necessary as per RFC 3030. + test('Does not split long lines in BINARYMIME (RFC 3030 compliance)', () async { + // RFC 3030, Section 3: + // "Once a receiver-SMTP supporting the BINARYMIME service extension accepts a + // message containing binary material, the receiver-SMTP MUST deliver or + // relay the message in such a way as to preserve all bits in each octet." + // + // "If the receiver-SMTP does not support BINARYMIME ... a sender-SMTP has + // three options ... Second, it may implement a gateway transformation to + // convert the message into valid 7bit-encoded MIME." + // + // This implies that if we (the client) send BINARYMIME to a server that + // supports it, WE do not need to wrap lines or encode to Base64. If that + // server needs to relay to a non-BINARYMIME server, IT is responsible for + // the downgrade (encoding/wrapping). + + final smtpServer = SmtpServer('localhost', port: mockServer.port, allowInsecure: true); + + // Create a line longer than the standard 76/78 character limit + var longLine = 'a' * 1000; + + final message = Message() + ..from = 'sender@example.com' + ..recipients.add('recipient@example.com') + ..subject = 'Long Line Test' + ..text = longLine; + + await send(message, smtpServer); + + var fullData = utf8.decode(mockServer.bdatData); + + // Verify appropriate header + expect(fullData, contains('content-transfer-encoding: binary')); + + // Verify the long line was sent intact, without splitting or encoding + expect(fullData, contains(longLine)); + expect(fullData, isNot(contains('=\r\n'))); // No quoted-printable soft breaks + expect(fullData, isNot(contains('\r\n '))); // No header folding (though this is body) + }); + }); +} diff --git a/test/idna_test.dart b/test/idna_test.dart new file mode 100644 index 0000000..4c50a87 --- /dev/null +++ b/test/idna_test.dart @@ -0,0 +1,127 @@ +import 'package:test/test.dart'; +import 'package:mailer/src/idna/idna.dart'; + +void main() { + group('IDNA Encoder', () { + group('Basic encoding', () { + test('encodes German umlaut domain', () { + expect(idnaEncode('münchen.de'), equals('xn--mnchen-3ya.de')); + }); + + test('returns ASCII domain unchanged', () { + expect(idnaEncode('example.com'), equals('example.com')); + }); + + test('encodes Chinese domain', () { + expect(idnaEncode('日本語.jp'), equals('xn--wgv71a119e.jp')); + }); + + test('returns empty string unchanged', () { + expect(idnaEncode(''), equals('')); + }); + }); + + group('Case folding', () { + test('converts uppercase to lowercase', () { + expect(idnaEncode('EXAMPLE.COM'), equals('example.com')); + }); + + test('handles mixed case', () { + expect(idnaEncode('ExAmPlE.CoM'), equals('example.com')); + }); + + test('converts uppercase IDN to lowercase', () { + expect(idnaEncode('MÜNCHEN.DE'), equals('xn--mnchen-3ya.de')); + }); + }); + + group('NFC normalization', () { + test('NFC form (precomposed) encodes correctly', () { + // ü as U+00FC (precomposed) + expect(idnaEncode('münchen.de'), equals('xn--mnchen-3ya.de')); + }); + + test('NFD form (decomposed) normalizes to same output', () { + // ü as u + U+0308 (decomposed) + final nfdMuenchen = 'mu\u0308nchen.de'; + expect(idnaEncode(nfdMuenchen), equals('xn--mnchen-3ya.de')); + }); + + test('NFC and NFD produce identical results', () { + final nfc = 'mü.de'; // U+00FC + final nfd = 'mu\u0308.de'; // u + U+0308 + expect(idnaEncode(nfc), equals(idnaEncode(nfd))); + }); + + test('é in NFC and NFD produce identical results', () { + final nfc = 'café.fr'; // U+00E9 + final nfd = 'cafe\u0301.fr'; // e + U+0301 + expect(idnaEncode(nfc), equals(idnaEncode(nfd))); + }); + }); + + group('Multi-label domains', () { + test('encodes single IDN subdomain', () { + expect(idnaEncode('sub.münchen.de'), equals('sub.xn--mnchen-3ya.de')); + }); + + test('encodes multiple IDN labels', () { + expect(idnaEncode('münchen.münchen.de'), equals('xn--mnchen-3ya.xn--mnchen-3ya.de')); + }); + + test('preserves mixed ASCII and IDN labels', () { + expect(idnaEncode('mail.münchen.example.com'), equals('mail.xn--mnchen-3ya.example.com')); + }); + + test('handles deep subdomains', () { + expect(idnaEncode('a.b.c.d.münchen.de'), equals('a.b.c.d.xn--mnchen-3ya.de')); + }); + }); + + group('Already encoded domains', () { + test('does not double-encode Punycode', () { + // Already encoded domain should pass through unchanged + expect(idnaEncode('xn--mnchen-3ya.de'), equals('xn--mnchen-3ya.de')); + }); + }); + + group('Error handling', () { + test('throws on label exceeding max length', () { + final longLabel = 'a' * 64; + expect(() => idnaEncode('$longLabel.com'), throwsA(isA())); + }); + }); + }); + + group('IDNA Decoder', () { + test('decodes Punycode domain', () { + expect(idnaDecode('xn--mnchen-3ya.de'), equals('münchen.de')); + }); + + test('returns ASCII domain unchanged', () { + expect(idnaDecode('example.com'), equals('example.com')); + }); + + test('decodes multiple Punycode labels', () { + expect(idnaDecode('xn--mnchen-3ya.xn--mnchen-3ya.de'), equals('münchen.münchen.de')); + }); + + test('returns empty string unchanged', () { + expect(idnaDecode(''), equals('')); + }); + }); + + group('Utility functions', () { + test('containsNonAscii detects non-ASCII', () { + expect(containsNonAscii('münchen'), isTrue); + expect(containsNonAscii('example'), isFalse); + expect(containsNonAscii('日本語'), isTrue); + }); + + test('isPunycodeEncoded detects xn-- prefix', () { + expect(isPunycodeEncoded('xn--mnchen-3ya.de'), isTrue); + expect(isPunycodeEncoded('example.com'), isFalse); + expect(isPunycodeEncoded('sub.xn--mnchen-3ya.de'), isTrue); + }); + }); +} diff --git a/test/message_out_test.dart b/test/message_out_test.dart index f316744..2282f7b 100644 --- a/test/message_out_test.dart +++ b/test/message_out_test.dart @@ -6,7 +6,7 @@ import 'dart:io'; import 'package:logging/logging.dart'; import 'package:mailer/mailer.dart'; import 'package:mailer/src/smtp/capabilities.dart'; -import 'package:mailer/src/smtp/internal_representation/internal_representation.dart'; +import 'package:mailer/src/mime/mime.dart'; import 'package:test/test.dart'; part 'messages/message_helpers.dart'; @@ -28,8 +28,7 @@ class MessageTest { final String messageRegExpWithoutUtf8; final Map stringReplacements; - MessageTest(this.name, this.message, this.messageRegExpWithUtf8, - this.messageRegExpWithoutUtf8, + MessageTest(this.name, this.message, this.messageRegExpWithUtf8, this.messageRegExpWithoutUtf8, {this.stringReplacements = const {}}); } @@ -44,9 +43,8 @@ final testCases = [ ]; Future testMessage(Message message, String expectedRegExp, - {bool smtpUtf8 = true, - Map stringReplacements = const {}}) async { - var irContent = IRMessage(message); + {bool smtpUtf8 = true, Map stringReplacements = const {}}) async { + var irContent = MimeMessage(message); var capabilities = capabilitiesForTesting(smtpUtf8: smtpUtf8); var data = irContent.data(capabilities); var m = await data.fold>([], (previous, element) { @@ -57,11 +55,10 @@ Future testMessage(Message message, String expectedRegExp, stringReplacements.forEach((replaceThis, withThis) { mUtf8 = mUtf8.replaceAll(replaceThis, withThis); }); - //print('Testing: $mUtf8 against $expectedRegExp'); return RegExp(expectedRegExp, multiLine: true).hasMatch(mUtf8); } -void main() async { +void main() { Logger.root.level = Level.ALL; // Logger.root.onRecord.listen((LogRecord rec) => // print('${rec.level.name}: ${rec.time}: ${rec.message}')); @@ -80,13 +77,11 @@ void main() async { ); // Recreate the testCase (for StreamAttachments) - final tcWithoutUtf8 = - (testCase is Function ? testCase() : testCase) as MessageTest; + final tcWithoutUtf8 = (testCase is Function ? testCase() : testCase) as MessageTest; test( 'message is correctly converted ${tcWithoutUtf8.name} (without utf8)', () async => expect( - testMessage( - tcWithoutUtf8.message, tcWithoutUtf8.messageRegExpWithoutUtf8, + testMessage(tcWithoutUtf8.message, tcWithoutUtf8.messageRegExpWithoutUtf8, smtpUtf8: false, stringReplacements: tcUtf8.stringReplacements), completion(equals(true)), reason: '${tcWithoutUtf8.name} (smtpUtf8 false)')); diff --git a/test/messages/message_all.dart b/test/messages/message_all.dart index 3c47748..1cc9876 100644 --- a/test/messages/message_all.dart +++ b/test/messages/message_all.dart @@ -1,4 +1,4 @@ -part of message_out_test; +part of '../message_out_test.dart'; Stream countStream(int to) async* { yield '{ "numbers": ['; @@ -24,25 +24,16 @@ void messageAll() => MessageTest( StreamAttachment(countStream(1000).map(utf8.encode), 'application/json') ..additionalHeaders['X-XYZ'] = 'XyZZy' ], - mailRegExpTextHtmlAndInlineAttachments(_subjectBelow, - [testStringAttachment], [testFileAttachment, testStreamAttachment], - fromHeader: _utf8FromHeaderRegexp, - html: _textBodyEncoded, - text: _textBodyEncoded), - mailRegExpTextHtmlAndInlineAttachments(_subjectBelowUtf8RegExp, - [testStringAttachment], [testFileAttachment, testStreamAttachment], - fromHeader: _utf8FromHeaderEncodedRegexp, - html: _textBodyEncoded, - text: _textBodyEncoded), + mailRegExpTextHtmlAndInlineAttachments( + _subjectBelow, [testStringAttachment], [testFileAttachment, testStreamAttachment], + fromHeader: _utf8FromHeaderRegexp, html: _textBodyEncoded, text: _textBodyEncoded), + mailRegExpTextHtmlAndInlineAttachments( + _subjectBelowUtf8RegExp, [testStringAttachment], [testFileAttachment, testStreamAttachment], + fromHeader: _utf8FromHeaderEncodedRegexp, html: _textBodyEncoded, text: _textBodyEncoded), stringReplacements: attachmentReplacementStrings); final attachmentReplacementStrings = { - for (var a in [ - testStringAttachment, - testFileAttachment, - testStreamAttachment - ]) - a.content: a.name + for (var a in [testStringAttachment, testFileAttachment, testStreamAttachment]) a.content: a.name }; final TestAttachment testStringAttachment = TestAttachment( diff --git a/test/messages/message_helpers.dart b/test/messages/message_helpers.dart index fef5093..53dac26 100644 --- a/test/messages/message_helpers.dart +++ b/test/messages/message_helpers.dart @@ -1,4 +1,4 @@ -part of message_out_test; +part of '../message_out_test.dart'; String e(String stringToEscape) => RegExp.escape(stringToEscape); @@ -30,34 +30,10 @@ final defaultHtml = 'utf8😀h'; String mailRegExpTextAndHtml(String subject, {String? text, String? html, String? fromHeader, String? dateHeader}) { - // ignore: prefer_interpolation_to_compose_strings - return '^' + - (dateHeader ?? - '') + // if the date header is specified it comes before the subject. + return '^${dateHeader ?? ''}' // if the date header is specified it comes before the subject. 'subject: $subject\r\n' - 'from: ${fromHeader ?? defaultFromRegExp}\r\n' + - e('to: test2@test.com\r\n') + - (dateHeader != null - ? '' - : defaultDateHeader) + // if not the date header comes after the to header - e('x-mailer: Dart Mailer library\r\n') + - e('mime-version: 1.0\r\n') + - contentTypeHeaderAlternative + - e('\r\n') + - boundaryAlternative + - e('content-type: text/plain; charset=utf-8\r\n') + - e('content-transfer-encoding: base64\r\n') + - e('\r\n') + - '${text ?? e('dXRmOPCfmIB0DQo=')}\r\n' + - e('\r\n') + - boundaryAlternative + - e('content-type: text/html; charset=utf-8\r\n') + - e('content-transfer-encoding: base64\r\n') + - e('\r\n') + - '${html ?? e('dXRmOPCfmIBoDQo=')}\r\n' + - e('\r\n') + - boundaryEndAlternative + - e('\r\n') + + 'from: ${fromHeader ?? defaultFromRegExp}\r\n${e('to: test2@test.com\r\n')}${dateHeader != null ? '' : defaultDateHeader}' // if not the date header comes after the to header + '${e('x-mailer: Dart Mailer library\r\n')}${e('mime-version: 1.0\r\n')}$contentTypeHeaderAlternative${e('\r\n')}$boundaryAlternative${e('content-type: text/plain; charset=utf-8\r\n')}${e('content-transfer-encoding: base64\r\n')}${e('\r\n')}${text ?? e('dXRmOPCfmIB0DQo=')}\r\n${e('\r\n')}$boundaryAlternative${e('content-type: text/html; charset=utf-8\r\n')}${e('content-transfer-encoding: base64\r\n')}${e('\r\n')}${html ?? e('dXRmOPCfmIBoDQo=')}\r\n${e('\r\n')}$boundaryEndAlternative${e('\r\n')}' r'$'; } @@ -68,41 +44,15 @@ class TestAttachment { final String content; final String? customHeader; - TestAttachment(this.name, this.type, this.disposition, this.content, - {this.customHeader}); + TestAttachment(this.name, this.type, this.disposition, this.content, {this.customHeader}); } -String mailRegExpTextHtmlAndInlineAttachments(String subject, - List inlineAttachments, List attachments, +String mailRegExpTextHtmlAndInlineAttachments( + String subject, List inlineAttachments, List attachments, {String? text, String? html, String? fromHeader}) { - // ignore: prefer_interpolation_to_compose_strings var result = '^' - 'subject: $subject\r\n' - 'from: ${fromHeader ?? defaultFromRegExp}\r\n' + - e('to: test2@test.com\r\n') + - defaultDateHeader + - e('x-mailer: Dart Mailer library\r\n') + - e('mime-version: 1.0\r\n') + - contentTypeHeaderMixed + - e('\r\n') + - boundaryMixed + - contentTypeHeaderAlternative + - e('\r\n') + - boundaryAlternative + - e('content-type: text/plain; charset=utf-8\r\n') + - e('content-transfer-encoding: base64\r\n') + - e('\r\n') + - '${text ?? e('dXRmOPCfmIB0DQo=')}\r\n' + - e('\r\n') + - boundaryAlternative + - contentTypeHeaderRelated + - e('\r\n') + - boundaryRelated + - e('content-type: text/html; charset=utf-8\r\n') + - e('content-transfer-encoding: base64\r\n') + - e('\r\n') + - '${html ?? e('dXRmOPCfmIBoDQo=')}\r\n' + - e('\r\n'); + 'subject: $subject\r\n' + 'from: ${fromHeader ?? defaultFromRegExp}\r\n${e('to: test2@test.com\r\n')}$defaultDateHeader${e('x-mailer: Dart Mailer library\r\n')}${e('mime-version: 1.0\r\n')}$contentTypeHeaderMixed${e('\r\n')}$boundaryMixed$contentTypeHeaderAlternative${e('\r\n')}$boundaryAlternative${e('content-type: text/plain; charset=utf-8\r\n')}${e('content-transfer-encoding: base64\r\n')}${e('\r\n')}${text ?? e('dXRmOPCfmIB0DQo=')}\r\n${e('\r\n')}$boundaryAlternative$contentTypeHeaderRelated${e('\r\n')}$boundaryRelated${e('content-type: text/html; charset=utf-8\r\n')}${e('content-transfer-encoding: base64\r\n')}${e('\r\n')}${html ?? e('dXRmOPCfmIBoDQo=')}\r\n${e('\r\n')}'; for (var a in inlineAttachments) { result += boundaryRelated + e('content-type: ${a.type}\r\n') + @@ -130,21 +80,10 @@ String mailRegExpTextHtmlAndInlineAttachments(String subject, return result; } -String mailRegExpTextOrHtml(String subject, - {String? text, String? html, String? fromHeader}) { - // ignore: prefer_interpolation_to_compose_strings +String mailRegExpTextOrHtml(String subject, {String? text, String? html, String? fromHeader}) { return '^' - 'subject: $subject\r\n' - 'from: ${fromHeader ?? defaultFromRegExp}\r\n' + - e('to: test2@test.com\r\n') + - defaultDateHeader + - e('x-mailer: Dart Mailer library\r\n') + - e('mime-version: 1.0\r\n') + - e('content-type: text/${text != null ? 'plain' : 'html'}; charset=utf-8\r\n') + - e('content-transfer-encoding: base64\r\n') + - e('\r\n') + - '${text ?? html}\r\n' + - e('\r\n') + + 'subject: $subject\r\n' + 'from: ${fromHeader ?? defaultFromRegExp}\r\n${e('to: test2@test.com\r\n')}$defaultDateHeader${e('x-mailer: Dart Mailer library\r\n')}${e('mime-version: 1.0\r\n')}${e('content-type: text/${text != null ? 'plain' : 'html'}; charset=utf-8\r\n')}${e('content-transfer-encoding: base64\r\n')}${e('\r\n')}${text ?? html}\r\n${e('\r\n')}' r'$'; } diff --git a/test/messages/message_simple_utf8.dart b/test/messages/message_simple_utf8.dart index 44440d0..e9464a4 100644 --- a/test/messages/message_simple_utf8.dart +++ b/test/messages/message_simple_utf8.dart @@ -1,4 +1,4 @@ -part of message_out_test; +part of '../message_out_test.dart'; final _dateHeader = 'date: Thu, 31 Mar 2022 00:00:00 \\+0000\r\n'; @@ -12,5 +12,4 @@ final messageSimpleUtf8 = MessageTest( ..text = defaultText ..headers = {'date': DateTime.utc(2022, 3, 31)}, mailRegExpTextAndHtml(defaultSubjectRegExpUtf8, dateHeader: _dateHeader), - mailRegExpTextAndHtml(defaultSubjectRegExpNotUtf8, - dateHeader: _dateHeader)); + mailRegExpTextAndHtml(defaultSubjectRegExpNotUtf8, dateHeader: _dateHeader)); diff --git a/test/messages/message_text_html_only.dart b/test/messages/message_text_html_only.dart index a2fca24..d82716b 100644 --- a/test/messages/message_text_html_only.dart +++ b/test/messages/message_text_html_only.dart @@ -1,4 +1,4 @@ -part of message_out_test; +part of '../message_out_test.dart'; final messageTextOnly = MessageTest( 'Message with utf8 subject and text', @@ -13,9 +13,9 @@ final messageTextOnly = MessageTest( final messageHtmlOnly = MessageTest( 'Message with utf8 subject and html', Message() - ..from = Address('test1@test.com', 'Name') - ..recipients = ['test2@test.com'] - ..subject = defaultSubject - ..html = defaultHtml, + ..from = Address('test1@test.com', 'Name') + ..recipients = ['test2@test.com'] + ..subject = defaultSubject + ..html = defaultHtml, mailRegExpHtml(defaultSubjectRegExpUtf8), mailRegExpHtml(defaultSubjectRegExpNotUtf8)); diff --git a/test/messages/message_utf8_from_header.dart b/test/messages/message_utf8_from_header.dart index bd3ecb9..d58b9d9 100644 --- a/test/messages/message_utf8_from_header.dart +++ b/test/messages/message_utf8_from_header.dart @@ -1,9 +1,8 @@ -part of message_out_test; +part of '../message_out_test.dart'; final _utf8Address = Address('test1@test.com', 'Name😀1'); final _utf8FromHeaderRegexp = e('Name😀1 '); -final _utf8FromHeaderEncodedRegexp = - e('=?utf-8?B?TmFtZfCfmIAx?= '); +final _utf8FromHeaderEncodedRegexp = e('=?utf-8?B?TmFtZfCfmIAx?= '); final messageUtf8FromHeader = MessageTest( 'Message with utf8 subject, html and text and utf8 (address) name', @@ -13,7 +12,5 @@ final messageUtf8FromHeader = MessageTest( ..subject = defaultSubject ..html = defaultHtml ..text = defaultText, - mailRegExpTextAndHtml(defaultSubjectRegExpUtf8, - fromHeader: _utf8FromHeaderRegexp), - mailRegExpTextAndHtml(defaultSubjectRegExpNotUtf8, - fromHeader: _utf8FromHeaderEncodedRegexp)); + mailRegExpTextAndHtml(defaultSubjectRegExpUtf8, fromHeader: _utf8FromHeaderRegexp), + mailRegExpTextAndHtml(defaultSubjectRegExpNotUtf8, fromHeader: _utf8FromHeaderEncodedRegexp)); diff --git a/test/messages/message_utf8_long_subject_long_body.dart b/test/messages/message_utf8_long_subject_long_body.dart index f9f03ca..0ddc73c 100644 --- a/test/messages/message_utf8_long_subject_long_body.dart +++ b/test/messages/message_utf8_long_subject_long_body.dart @@ -1,74 +1,74 @@ -part of message_out_test; +part of '../message_out_test.dart'; final _subjectBelow = 's${'\u{1f596}' * 199}'; final _subjectAbove = 's${'\u{1f596}' * 200}'; final _textBody = 't${'\u{1f596}' * 300}'; -final _subjectBelowUtf8RegExp = e( - '=?utf-8?B?c/Cflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+Wlg==?='); +final _subjectBelowUtf8RegExp = + e('=?utf-8?B?c/Cflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+Wlg==?='); -final _textBodyEncoded = e( - 'dPCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW\r\n' - '8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbw\r\n' - 'n5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCf\r\n' - 'lpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+W\r\n' - 'lvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW\r\n' - '8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbw\r\n' - 'n5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCf\r\n' - 'lpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+W\r\n' - 'lvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW\r\n' - '8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbw\r\n' - 'n5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCf\r\n' - 'lpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+W\r\n' - 'lvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW\r\n' - '8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbw\r\n' - 'n5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCf\r\n' - 'lpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+W\r\n' - 'lvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW\r\n' - '8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbw\r\n' - 'n5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCf\r\n' - 'lpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+W\r\n' - 'lvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW\r\n' - '8J+Wlg0K'); +final _textBodyEncoded = + e('dPCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW\r\n' + '8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbw\r\n' + 'n5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCf\r\n' + 'lpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+W\r\n' + 'lvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW\r\n' + '8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbw\r\n' + 'n5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCf\r\n' + 'lpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+W\r\n' + 'lvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW\r\n' + '8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbw\r\n' + 'n5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCf\r\n' + 'lpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+W\r\n' + 'lvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW\r\n' + '8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbw\r\n' + 'n5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCf\r\n' + 'lpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+W\r\n' + 'lvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW\r\n' + '8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbw\r\n' + 'n5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCf\r\n' + 'lpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+W\r\n' + 'lvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW\r\n' + '8J+Wlg0K'); -final _subjectAboveUtf8RegExp = e( - '=?utf-8?B?c/Cflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' - ' =?utf-8?B?8J+WlvCflpY=?='); +final _subjectAboveUtf8RegExp = + e('=?utf-8?B?c/Cflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpbwn5aW8J+WlvCflpY=?=\r\n' + ' =?utf-8?B?8J+WlvCflpY=?='); final messageUtf8LongSubjectLongBodyBelowLineLength = MessageTest( 'Message with utf8 subject, html and text', diff --git a/test/mock_smtp_server.dart b/test/mock_smtp_server.dart new file mode 100644 index 0000000..d168e3e --- /dev/null +++ b/test/mock_smtp_server.dart @@ -0,0 +1,100 @@ +import 'dart:convert'; +import 'dart:io'; + +class MockSmtpServer { + late ServerSocket _serverSocket; + int get port => _serverSocket.port; + final List serverLog = []; + final List bdatData = []; + bool advertiseBinaryMime = true; + bool advertiseChunking = true; + + Future start() async { + _serverSocket = await ServerSocket.bind(InternetAddress.loopbackIPv4, 0); + _serverSocket.listen(_handleClient); + } + + Future stop() async { + await _serverSocket.close(); + } + + void _handleClient(Socket socket) { + socket.write('220 Simple Mock Server Service Ready\r\n'); + + var buffer = []; + var bdatBytesExpected = 0; + var inBdatData = false; + + socket.listen((data) { + buffer.addAll(data); + + while (true) { + if (inBdatData) { + if (buffer.length >= bdatBytesExpected) { + bdatData.addAll(buffer.sublist(0, bdatBytesExpected)); + buffer.removeRange(0, bdatBytesExpected); + inBdatData = false; + bdatBytesExpected = 0; + socket.write('250 OK\r\n'); + } else { + break; + } + } else { + var idx = -1; + for (var i = 0; i < buffer.length; i++) { + if (buffer[i] == 10) { + // \n + idx = i; + break; + } + } + + if (idx != -1) { + var lineBytes = buffer.sublist(0, idx + 1); + var line = utf8.decode(lineBytes).trim(); + buffer.removeRange(0, idx + 1); + + serverLog.add(line); + + if (line.startsWith('EHLO')) { + var caps = '250-localhost\r\n'; + if (advertiseChunking) { + caps += '250-CHUNKING\r\n'; + } + if (advertiseBinaryMime) { + caps += '250-BINARYMIME\r\n'; + } + caps += '250 AUTH PLAIN\r\n'; + socket.write(caps); + } else if (line.startsWith('MAIL FROM') || line.startsWith('RCPT TO')) { + socket.write('250 OK\r\n'); + } else if (line.toUpperCase().startsWith('BDAT')) { + var parts = line.split(' '); + if (parts.length > 1) { + try { + bdatBytesExpected = int.parse(parts[1]); + // If size is 0, we still need to handle it. + if (bdatBytesExpected > 0) { + inBdatData = true; + } else { + socket.write('250 OK\r\n'); + } + } catch (_) {} + } + } else if (line == 'QUIT') { + socket.write('221 Bye\r\n'); + socket.close(); + break; + } else if (line == 'DATA') { + socket.write('354 End data with .\r\n'); + } else if (line == '.') { + socket.write('250 OK\r\n'); + } + } else { + break; + } + } + } + }); + } +} diff --git a/test/punycode_test.dart b/test/punycode_test.dart new file mode 100644 index 0000000..9269d32 --- /dev/null +++ b/test/punycode_test.dart @@ -0,0 +1,215 @@ +import 'package:test/test.dart'; +import 'package:mailer/src/core/address.dart'; + +void main() { + group('Punycode Address', () { + test('Encodes IDN domain correctly', () { + final address = Address('test@münchen.de'); + expect(address.encodedAddress, equals('test@xn--mnchen-3ya.de')); + }); + + test('Does not encode ASCII domain', () { + final address = Address('test@example.com'); + expect(address.encodedAddress, equals('test@example.com')); + }); + + test('Handles invalid address gracefully', () { + final address = Address('invalid-address'); + expect(address.encodedAddress, equals('invalid-address')); + }); + + test('Handles multiple @ correctly', () { + // The current implementation uses lastIndexOf('@') + final address = Address('user@sub.domain@example.com'); + expect(address.encodedAddress, equals('user@sub.domain@example.com')); + }); + }); + + group('Punycode Edge Cases', () { + test('IDN in subdomain', () { + final address = Address('user@sub.münchen.de'); + expect(address.encodedAddress, equals('user@sub.xn--mnchen-3ya.de')); + }); + + test('Multiple IDN labels', () { + final address = Address('user@münchen.münchen.de'); + expect(address.encodedAddress, equals('user@xn--mnchen-3ya.xn--mnchen-3ya.de')); + }); + + test('CJK domain (Japanese)', () { + // 日本語.jp -> xn--wgv71a119e.jp + final address = Address('user@日本語.jp'); + expect(address.encodedAddress, contains('xn--')); + expect(address.encodedAddress, endsWith('.jp')); + }); + + test('CJK domain (Chinese)', () { + // 中文.cn + final address = Address('user@中文.cn'); + expect(address.encodedAddress, contains('xn--')); + expect(address.encodedAddress, endsWith('.cn')); + }); + + test('Cyrillic domain', () { + // россия.рф -> xn--h1alffa9f.xn--p1ai + final address = Address('user@россия.рф'); + expect(address.encodedAddress, contains('xn--')); + }); + + test('Arabic domain', () { + // مثال.مصر + final address = Address('user@مثال.مصر'); + expect(address.encodedAddress, contains('xn--')); + }); + + test('Japanese Hiragana domain', () { + // 例え.jp -> xn--r8jz45g.jp + final address = Address('user@例え.jp'); + expect(address.encodedAddress, contains('xn--')); + expect(address.encodedAddress, endsWith('.jp')); + }); + + test('Mixed ASCII and IDN labels', () { + final address = Address('user@mail.münchen.example.com'); + expect(address.encodedAddress, equals('user@mail.xn--mnchen-3ya.example.com')); + }); + + test('Already punycode-encoded domain passes through', () { + final address = Address('user@xn--mnchen-3ya.de'); + expect(address.encodedAddress, equals('user@xn--mnchen-3ya.de')); + }); + + test('IDN only in TLD', () { + final address = Address('user@example.рф'); + expect(address.encodedAddress, contains('xn--')); + expect(address.encodedAddress, startsWith('user@example.')); + }); + + test('Long IDN domain', () { + // Test a longer IDN label + final address = Address('user@bücherregal.de'); + expect(address.encodedAddress, contains('xn--')); + expect(address.encodedAddress, endsWith('.de')); + }); + }); + + group('UTF-8 Normalization', () { + test('NFC form (precomposed) encodes correctly', () { + // "München" with ü as U+00FC (NFC - precomposed) + final nfcAddress = Address('user@münchen.de'); + final nfcResult = nfcAddress.encodedAddress; + expect(nfcResult, equals('user@xn--mnchen-3ya.de')); + }); + + test('NFD form (decomposed) encodes correctly', () { + // "München" with ü as u + U+0308 (NFD - decomposed) + // The u followed by combining diaeresis + final nfdMuenchen = 'mu\u0308nchen'; // u + combining umlaut + final nfdAddress = Address('user@$nfdMuenchen.de'); + final nfdResult = nfdAddress.encodedAddress; + + // Both forms should produce the same Punycode output + // if the library normalizes to NFC internally + expect(nfdResult, contains('xn--')); + expect(nfdResult, endsWith('.de')); + }); + + test('NFC and NFD produce SAME Punycode with normalization', () { + // NFC: ü = U+00FC + final nfcDomain = 'mü.de'; + final nfcAddress = Address('user@$nfcDomain'); + + // NFD: ü = u + U+0308 + final nfdDomain = 'mu\u0308.de'; + final nfdAddress = Address('user@$nfdDomain'); + + // With NFC normalization, both forms produce the SAME Punycode output. + // This is the correct IDNA behavior. + expect(nfcAddress.encodedAddress, equals(nfdAddress.encodedAddress), + reason: 'With NFC normalization, NFC and NFD should produce identical Punycode'); + + // Both should be valid Punycode + expect(nfcAddress.encodedAddress, contains('xn--')); + expect(nfdAddress.encodedAddress, contains('xn--')); + }); + + test('NFC and NFD produce SAME Punycode for é', () { + // NFC: é = U+00E9 + final nfcDomain = 'café.fr'; + final nfcAddress = Address('user@$nfcDomain'); + + // NFD: é = e + U+0301 (combining acute accent) + final nfdDomain = 'cafe\u0301.fr'; + final nfdAddress = Address('user@$nfdDomain'); + + // With NFC normalization, both forms produce the SAME Punycode. + expect(nfcAddress.encodedAddress, equals(nfdAddress.encodedAddress), + reason: 'With NFC normalization, NFC and NFD should produce identical Punycode'); + }); + + test('Complex combining characters', () { + // Vietnamese: ệ = e + combining circumflex + combining dot below + // Or as a precomposed character + final complexChar = 'e\u0302\u0323'; // e + circumflex + dot below + final domain = 'vi${complexChar}t.vn'; + final address = Address('user@$domain'); + + // Should encode without crashing + expect(address.encodedAddress, isNotEmpty); + expect(() => address.encodedAddress, returnsNormally); + }); + + test('Zero-width characters in domain', () { + // Zero-width joiner U+200D (should be handled or rejected) + final domain = 'exam\u200Dple.com'; + final address = Address('user@$domain'); + + // Should handle gracefully (either strip or encode) + expect(() => address.encodedAddress, returnsNormally); + }); + + test('Right-to-left override characters', () { + // U+202E Right-to-Left Override (potential security issue) + final domain = 'exam\u202Eple.com'; + final address = Address('user@$domain'); + + // Should handle gracefully + expect(() => address.encodedAddress, returnsNormally); + }); + }); + + group('Edge Case: IDN in local-part', () { + test('IDN local-part is not encoded (SMTP limitation)', () { + // SMTP (RFC 5321) does not support UTF-8 in local-part without SMTPUTF8 + // The Address class only encodes the domain, not local-part + final address = Address('münchen@example.com'); + // Local-part remains as-is; only domain is encoded + expect(address.encodedAddress, equals('münchen@example.com')); + }); + + test('IDN in both local-part and domain', () { + final address = Address('münchen@münchen.de'); + // Local-part unchanged, domain encoded + expect(address.encodedAddress, equals('münchen@xn--mnchen-3ya.de')); + }); + }); + + group('Edge Case: Emoji domains', () { + test('Single emoji in domain', () { + // Many registrars don't allow emoji domains, but test encoding + final address = Address('user@🔥.com'); + // Should attempt to encode (may produce xn-- or throw) + expect(() => address.encodedAddress, returnsNormally); + }); + + test('Emoji in subdomain', () { + final address = Address('user@mail.🔥.example.com'); + expect(() => address.encodedAddress, returnsNormally); + }); + + test('Mixed emoji and text', () { + final address = Address('user@fire🔥domain.com'); + expect(() => address.encodedAddress, returnsNormally); + }); + }); +} diff --git a/test/rfc3030_test.dart b/test/rfc3030_test.dart new file mode 100644 index 0000000..4934067 --- /dev/null +++ b/test/rfc3030_test.dart @@ -0,0 +1,51 @@ +import 'package:mailer/mailer.dart'; +import 'package:mailer/smtp_server.dart'; +import 'package:test/test.dart'; + +import 'mock_smtp_server.dart'; + +void main() { + group('RFC 3030 Support', () { + late MockSmtpServer mockServer; + + setUp(() async { + mockServer = MockSmtpServer(); + await mockServer.start(); + }); + + tearDown(() async { + await mockServer.stop(); + }); + + test('Uses BDAT when CHUNKING is supported', () async { + final smtpServer = SmtpServer('localhost', port: mockServer.port, allowInsecure: true); + final message = Message() + ..from = 'sender@example.com' + ..recipients.add('recipient@example.com') + ..subject = 'Test BDAT' + ..text = 'This is a test message for BDAT support.'; + + await send(message, smtpServer); + + // Verify log contains BDAT commands. + expect(mockServer.serverLog.any((l) => l.startsWith('BDAT')), isTrue); + // Depending on implementation, it might send 'LAST' or not in the same line or separate BDATs. + // mailer implementation sends "BDAT LAST" + expect(mockServer.serverLog.any((l) => l.startsWith('BDAT') && l.contains('LAST')), isTrue); + }); + + test('Does NOT use DATA when CHUNKING available (preferred)', () async { + // Ideally we prefer BDAT if available. + final smtpServer = SmtpServer('localhost', port: mockServer.port, allowInsecure: true); + final message = Message() + ..from = 'sender@example.com' + ..recipients.add('recipient@example.com') + ..subject = 'Test BDAT Preference' + ..text = 'Prefer BDAT'; + + await send(message, smtpServer); + + expect(mockServer.serverLog, isNot(contains('DATA'))); + }); + }); +} diff --git a/test/send_test.dart b/test/send_test.dart index 3ec418f..1436e44 100644 --- a/test/send_test.dart +++ b/test/send_test.dart @@ -9,16 +9,12 @@ import 'package:test/test.dart'; SmtpServer? correctSmtpServer; SmtpServer incorrectCredentials = gmail('mister@gmail.com', 'wrongpass'); -void main() async { - correctSmtpServer = await configureCorrectSmtpServer(); +void main() { + setUpAll(() async { + correctSmtpServer = await configureCorrectSmtpServer(); + }); - test('Sending email', () async { - // TODO: what should be tested here - //expect(report. != null, true); - }, skip: true); - - test('SmtpClient.checkCredentials() throws SmtpClientAuthenticationException', - () async { + test('SmtpClient.checkCredentials() throws SmtpClientAuthenticationException', () async { expect(checkCredentials(incorrectCredentials, timeout: const Duration(seconds: 5)), throwsA(TypeMatcher())); }, skip: false); diff --git a/test/split_test.dart b/test/split_test.dart index 08acf09..65d157f 100644 --- a/test/split_test.dart +++ b/test/split_test.dart @@ -1,6 +1,6 @@ import 'dart:convert'; -import 'package:mailer/src/smtp/internal_representation/conversion.dart'; +import 'package:mailer/src/mime/stream_splitter.dart'; import 'package:test/test.dart'; class _TestCase { @@ -12,8 +12,7 @@ class _TestCase { factory _TestCase(String testString, int splitAt, List splitStrings) { var testStringBytes = utf8.encode(testString); - var splitStringBytes = - splitStrings.map(utf8.encode).toList(growable: false); + var splitStringBytes = splitStrings.map(utf8.encode).toList(growable: false); return _TestCase._(testStringBytes, splitAt, splitStringBytes); } } @@ -36,7 +35,7 @@ final List<_TestCase> _testCases = [ _TestCase('aaa𠜎𠜱𠝹𠱓𠱸b', 6, ['aaa', '𠜎', '𠜱', '𠝹', '𠱓', '𠱸b']), ]; -void main() async { +void main() { var i = 0; for (var tc in _testCases) { test('Split on utf8-borders (${i++})', diff --git a/test/stream_splitter_test.dart b/test/stream_splitter_test.dart new file mode 100644 index 0000000..2a7bef9 --- /dev/null +++ b/test/stream_splitter_test.dart @@ -0,0 +1,91 @@ +import 'dart:async'; +import 'package:mailer/src/mime/stream_splitter.dart'; +import 'package:test/test.dart'; + +void main() { + group('StreamSplitter', () { + test('Splits simple long chunk', () async { + var transformer = StreamSplitter(5); + var data = [1, 2, 3, 4, 5, 6, 7]; + var stream = Stream.fromIterable([data]); + var result = await transformer.bind(stream).toList(); + + // Produces smaller chunks than necessary due to recursive splitting with + // target = max ~/ 2 + expect( + result, + equals([ + [1, 2], + [3, 4], + [5], + [13, 10], + [6], + [7] + ])); + }); + + test('Splits across multiple chunks', () async { + var transformer = StreamSplitter(5); + // 1,2,3 + // 4,5,6 + var stream = Stream.fromIterable([ + [1, 2, 3], + [4, 5, 6] + ]); + var result = await transformer.bind(stream).toList(); + + // [1,2,3] -> current=3 + // [4,5,6] -> len 3 + current 3 = 6 > 5. + // target = 5 ~/ 2 = 2. 2+3=5 <= 5. target=2. + // split([4,5,6], 2) -> [4,5], [6] + // process([4,5]) -> len 2 + current 3 = 5. Add [4,5]. EOL next. current=0. + // process([6]) -> len 1 + current 0 = 1. EOL added. Add [6]. current=1. + + expect( + result, + equals([ + [1, 2, 3], + [4, 5], + [13, 10], + [6] + ])); + }); + + test('Exact multiple of maxLength', () async { + var transformer = StreamSplitter(5); + var stream = Stream.fromIterable([ + [1, 2, 3, 4, 5], + [6, 7, 8, 9, 10] + ]); + var result = await transformer.bind(stream).toList(); + + expect( + result, + equals([ + [1, 2, 3, 4, 5], + [13, 10], + [6, 7, 8, 9, 10] + ])); + }); + + test('Exact multiple in one chunk', () async { + var transformer = StreamSplitter(5); + var stream = Stream.fromIterable([ + [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] + ]); + var result = await transformer.bind(stream).toList(); + + expect( + result, + equals([ + [1, 2], + [3, 4], + [5], + [13, 10], + [6], + [7, 8], + [9, 10] + ])); + }); + }); +} diff --git a/test/test.dart b/test/test.dart new file mode 100644 index 0000000..f175f30 --- /dev/null +++ b/test/test.dart @@ -0,0 +1,25 @@ +import 'address_test.dart' as address_test; +import 'binarymime_test.dart' as binarymime_test; +import 'idna_test.dart' as idna_test; +import 'message_out_test.dart' as message_out_test; +import 'punycode_test.dart' as punycode_test; +import 'rfc3030_test.dart' as rfc3030_test; +import 'send_test.dart' as send_test; +import 'split_test.dart' as split_test; +import 'stream_splitter_test.dart' as stream_splitter_test; +import 'validator_test.dart' as validator_test; + +import 'package:test/test.dart'; + +void main() { + group('address_test', address_test.main); + group('binarymime_test', binarymime_test.main); + group('idna_test', idna_test.main); + group('message_out_test', message_out_test.main); + group('punycode_test', punycode_test.main); + group('rfc3030_test', rfc3030_test.main); + group('send_test', send_test.main); + group('split_test', split_test.main); + group('stream_splitter_test', stream_splitter_test.main); + group('validator_test', validator_test.main); +} diff --git a/test/validator_test.dart b/test/validator_test.dart new file mode 100644 index 0000000..4f7a79c --- /dev/null +++ b/test/validator_test.dart @@ -0,0 +1,390 @@ +import 'package:mailer/src/core/address.dart'; +import 'package:mailer/src/core/address_validator.dart'; +import 'package:mailer/src/core/message.dart'; +import 'package:mailer/src/smtp/validator.dart'; +import 'package:test/test.dart'; + +void main() { + group('PracticalAddressValidator', () { + const validator = PracticalAddressValidator(); + + group('accepts valid addresses', () { + test('simple address', () { + expect(validator.validate(Address('test@example.com')), isTrue); + }); + + test('with subdomain', () { + expect(validator.validate(Address('test@mail.example.com')), isTrue); + }); + + test('with plus tag', () { + expect(validator.validate(Address('user+tag@example.com')), isTrue); + }); + + test('with dots in local-part', () { + expect(validator.validate(Address('first.last@example.com')), isTrue); + }); + + test('with underscore', () { + expect(validator.validate(Address('user_name@example.com')), isTrue); + }); + + test('with hyphen', () { + expect(validator.validate(Address('user-name@example.com')), isTrue); + }); + + test('deep subdomain', () { + expect(validator.validate(Address('user@a.b.c.example.com')), isTrue); + }); + + test('all atext specials', () { + // These are all valid in the local-part per RFC 5322 + expect(validator.validate(Address('user!def@example.com')), isTrue); + expect(validator.validate(Address('user#def@example.com')), isTrue); + expect(validator.validate(Address(r'user$def@example.com')), isTrue); + expect(validator.validate(Address('user%def@example.com')), isTrue); + expect(validator.validate(Address('user&def@example.com')), isTrue); + expect(validator.validate(Address("user'def@example.com")), isTrue); + expect(validator.validate(Address('user*def@example.com')), isTrue); + expect(validator.validate(Address('user+def@example.com')), isTrue); + expect(validator.validate(Address('user-def@example.com')), isTrue); + expect(validator.validate(Address('user/def@example.com')), isTrue); + expect(validator.validate(Address('user=def@example.com')), isTrue); + expect(validator.validate(Address('user?def@example.com')), isTrue); + expect(validator.validate(Address('user^def@example.com')), isTrue); + expect(validator.validate(Address('user_def@example.com')), isTrue); + expect(validator.validate(Address('user`def@example.com')), isTrue); + expect(validator.validate(Address('user{def@example.com')), isTrue); + expect(validator.validate(Address('user|def@example.com')), isTrue); + expect(validator.validate(Address('user}def@example.com')), isTrue); + expect(validator.validate(Address('user~def@example.com')), isTrue); + }); + }); + + group('rejects domain literals (IP addresses)', () { + test('IPv4 literal', () { + expect(validator.validate(Address('user@[192.168.1.1]')), isFalse); + }); + + test('IPv6 literal', () { + expect(validator.validate(Address('user@[IPv6:2001:db8::1]')), isFalse); + }); + + test('localhost IP', () { + expect(validator.validate(Address('user@[127.0.0.1]')), isFalse); + }); + }); + + group('rejects quoted strings', () { + test('quoted local-part', () { + expect(validator.validate(Address('"john doe"@example.com')), isFalse); + }); + + test('quoted with special chars', () { + expect(validator.validate(Address('"john@doe"@example.com')), isFalse); + }); + + test('empty quoted string', () { + expect(validator.validate(Address('""@example.com')), isFalse); + }); + }); + + group('rejects domains without dot', () { + test('localhost', () { + expect(validator.validate(Address('user@localhost')), isFalse); + }); + + test('single label domain', () { + expect(validator.validate(Address('user@intranet')), isFalse); + }); + }); + + group('rejects malformed addresses', () { + test('empty address', () { + expect(validator.validate(Address('')), isFalse); + }); + + test('no @', () { + expect(validator.validate(Address('userexample.com')), isFalse); + }); + + test('no domain', () { + expect(validator.validate(Address('user@')), isFalse); + }); + + test('no local-part', () { + expect(validator.validate(Address('@example.com')), isFalse); + }); + + test('leading dot in local-part', () { + expect(validator.validate(Address('.user@example.com')), isFalse); + }); + + test('trailing dot in local-part', () { + expect(validator.validate(Address('user.@example.com')), isFalse); + }); + + test('consecutive dots in local-part', () { + expect(validator.validate(Address('user..name@example.com')), isFalse); + }); + + test('leading dot in domain', () { + expect(validator.validate(Address('user@.example.com')), isFalse); + }); + + test('trailing dot in domain', () { + expect(validator.validate(Address('user@example.com.')), isFalse); + }); + + test('space in local-part', () { + expect(validator.validate(Address('user name@example.com')), isFalse); + }); + + test('comment in address', () { + // Comments start with ( + expect(validator.validate(Address('(comment)user@example.com')), isFalse); + }); + }); + }); + + group('StrictAddressValidator', () { + const validator = StrictAddressValidator(); + + test('accepts valid addresses', () { + expect(validator.validate(Address('test@example.com')), isTrue); + expect(validator.validate(Address('first.last@example.com')), isTrue); + expect(validator.validate(Address('"quoted name"@example.com')), isTrue); + }); + + test('rejects invalid addresses', () { + expect(validator.validate(Address('plainstring')), isFalse); + expect(validator.validate(Address('test@')), isFalse); + expect(validator.validate(Address('@example.com')), isFalse); + expect(validator.validate(Address('test@example@com')), isFalse); + expect(validator.validate(Address('test space@example.com')), isFalse); + }); + }); + + group('RFC 5322 Edge Cases', () { + const validator = StrictAddressValidator(); + + group('Valid unusual addresses', () { + test('quoted local-part with specials', () { + // RFC 5322 §3.2.4: quoted-string allows special characters + expect(validator.validate(Address('"john.doe"@example.com')), isTrue); + expect(validator.validate(Address('"john@doe"@example.com')), isTrue); + expect(validator.validate(Address('"john doe"@example.com')), isTrue); + }); + + test('quoted local-part with escaped characters', () { + // Quoted-pair: backslash-escaped characters + expect(validator.validate(Address(r'"john\"doe"@example.com')), isTrue); + expect(validator.validate(Address(r'"john\\doe"@example.com')), isTrue); + }); + + test('all atext special characters', () { + // RFC 5322 §3.2.3: atext includes !#$%&'*+-/=?^_`{|}~ + expect(validator.validate(Address('user!def@example.com')), isTrue); + expect(validator.validate(Address('user#def@example.com')), isTrue); + expect(validator.validate(Address(r'user$def@example.com')), isTrue); + expect(validator.validate(Address('user%def@example.com')), isTrue); + expect(validator.validate(Address('user&def@example.com')), isTrue); + expect(validator.validate(Address("user'def@example.com")), isTrue); + expect(validator.validate(Address('user*def@example.com')), isTrue); + expect(validator.validate(Address('user+def@example.com')), isTrue); + expect(validator.validate(Address('user-def@example.com')), isTrue); + expect(validator.validate(Address('user/def@example.com')), isTrue); + expect(validator.validate(Address('user=def@example.com')), isTrue); + expect(validator.validate(Address('user?def@example.com')), isTrue); + expect(validator.validate(Address('user^def@example.com')), isTrue); + expect(validator.validate(Address('user_def@example.com')), isTrue); + expect(validator.validate(Address('user`def@example.com')), isTrue); + expect(validator.validate(Address('user{def@example.com')), isTrue); + expect(validator.validate(Address('user|def@example.com')), isTrue); + expect(validator.validate(Address('user}def@example.com')), isTrue); + expect(validator.validate(Address('user~def@example.com')), isTrue); + }); + + test('combined atext specials', () { + expect(validator.validate(Address("!#\$%&'*+-/=?^_`{|}~@example.com")), isTrue); + }); + + test('domain literal (IPv4)', () { + // RFC 5322 §3.4.1: domain-literal allows IP addresses + expect(validator.validate(Address('user@[192.168.1.1]')), isTrue); + expect(validator.validate(Address('user@[127.0.0.1]')), isTrue); + }); + + test('domain literal (IPv6)', () { + expect(validator.validate(Address('user@[IPv6:2001:db8::1]')), isTrue); + expect(validator.validate(Address('user@[IPv6:2001:db8:85a3::8a2e:370:7334]')), isTrue); + }); + + test('deep subdomain', () { + expect(validator.validate(Address('user@sub.sub.sub.example.com')), isTrue); + }); + + test('minimal valid address', () { + expect(validator.validate(Address('a@b.c')), isTrue); + }); + + test('numeric local-part', () { + expect(validator.validate(Address('123@example.com')), isTrue); + expect(validator.validate(Address('1@2.3')), isTrue); + }); + + test('very long but valid local-part', () { + // RFC 5321 limits local-part to 64 characters + final longLocal = 'a' * 64; + expect(validator.validate(Address('$longLocal@example.com')), isTrue); + }); + + test('comments', () { + // Comments are allowed in strict mode + expect(validator.validate(Address('(comment)user@example.com')), isTrue); + expect(validator.validate(Address('user(comment)@example.com')), isTrue); + expect(validator.validate(Address('user@(comment)example.com')), isTrue); + expect(validator.validate(Address('user@example.com(comment)')), isTrue); + expect(validator.validate(Address('user.(comment)name@example.com')), isTrue); + expect(validator.validate(Address('user(nested(comment))@example.com')), isTrue); + }); + }); + + group('Invalid addresses', () { + test('unquoted space in local-part', () { + expect(validator.validate(Address('test user@example.com')), isFalse); + }); + + test('missing domain', () { + expect(validator.validate(Address('test@')), isFalse); + }); + + test('missing local-part', () { + expect(validator.validate(Address('@example.com')), isFalse); + }); + + test('multiple unquoted @', () { + expect(validator.validate(Address('test@example@com')), isFalse); + }); + + test('empty string', () { + expect(validator.validate(Address('')), isFalse); + }); + + test('only @', () { + expect(validator.validate(Address('@')), isFalse); + }); + + test('unquoted special characters', () { + // These specials require quoting + expect(validator.validate(Address('test<>@example.com')), isFalse); + expect(validator.validate(Address('test,user@example.com')), isFalse); + expect(validator.validate(Address('test;user@example.com')), isFalse); + expect(validator.validate(Address('test:user@example.com')), isFalse); + }); + + test('trailing dot in domain', () { + // While technically valid in DNS, SMTP requires no trailing dot + expect(validator.validate(Address('test@example.com.')), isFalse); + }); + + test('leading dot in local-part', () { + expect(validator.validate(Address('.test@example.com')), isFalse); + }); + + test('consecutive dots in local-part', () { + expect(validator.validate(Address('test..user@example.com')), isFalse); + }); + + test('unterminated quoted string', () { + expect(validator.validate(Address('"unclosed@example.com')), isFalse); + }); + + test('unterminated domain literal', () { + expect(validator.validate(Address('user@[192.168.1.1')), isFalse); + }); + }); + }); + + group('Message Validation', () { + test('uses default validator by default', () { + final message = Message() + ..from = 'test@example.com' + ..recipients.add('valid@example.com'); + + final problems = validate(message); + expect(problems, isEmpty); + }); + + test('uses custom validator', () { + final message = Message() + ..from = 'test@example.com' + ..recipients.add('invalid-for-strict'); + + message.validator = const StrictAddressValidator(); + + final problems = validate(message); + expect(problems, isNotEmpty); + expect(problems.any((p) => p.msg.contains('invalid-for-strict')), isTrue); + }); + + test('allows permissive validator', () { + final message = Message() + ..from = 'test@example.com' + ..recipients.add('anything-goes'); + + message.validator = const PermissiveAddressValidator(); + + final problems = validate(message); + expect(problems, isEmpty); + }); + }); + + group('Validator comparison', () { + const practicalV = PracticalAddressValidator(); + const strictV = StrictAddressValidator(); + + test('PracticalAddressValidator is stricter than StrictAddressValidator', () { + // These pass Strict but fail Default + final strictOnlyAddresses = [ + '"quoted"@example.com', + 'user@[192.168.1.1]', + 'user@localhost', + ]; + + for (final addr in strictOnlyAddresses) { + expect(strictV.validate(Address(addr)), isTrue, reason: 'Strict should accept: $addr'); + expect(practicalV.validate(Address(addr)), isFalse, reason: 'Default should reject: $addr'); + } + }); + + test('Both accept standard addresses', () { + final standardAddresses = [ + 'user@example.com', + 'user.name@example.com', + 'user+tag@mail.example.com', + ]; + + for (final addr in standardAddresses) { + expect(strictV.validate(Address(addr)), isTrue, reason: 'Strict should accept: $addr'); + expect(practicalV.validate(Address(addr)), isTrue, reason: 'Default should accept: $addr'); + } + }); + }); + + group('Validate Error Codes', () { + test('invalid recipient returns TO_ADDRESS error', () { + final message = Message() + ..from = 'sender@example.com' + ..recipients.add('invalid-recipient'); + + // Use a strict validator to ensure 'invalid-recipient' is considered invalid + message.validator = const StrictAddressValidator(); + + final problems = validate(message); + expect(problems, isNotEmpty); + expect(problems.map((p) => p.code), contains('TO_ADDRESS')); + expect(problems.map((p) => p.code), isNot(contains('FROM_ADDRESS'))); + }); + }); +} From 145915d5c67c3aeb17ff56cb2f32f6d570712b52 Mon Sep 17 00:00:00 2001 From: Christian Loitsch Date: Sun, 15 Feb 2026 18:32:44 +0100 Subject: [PATCH 2/8] doc: mention that mailer is "only" an SMTP client --- README.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/README.md b/README.md index 375b6b4..67d44fc 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,11 @@ **mailer** is an easy-to-use library for composing and sending emails in Dart. +> [!WARNING] +> This is an **SMTP client** library. It is designed to send emails by connecting to an **existing SMTP server** (like Gmail, SendGrid, Mailgun, or your own Postfix/Exim server). +> +> It is **not** an SMTP server and cannot receive emails or accept incoming connections from other mail clients. + It supports: * **Plaintext and HTML** emails. * **Attachments** (files, streams, etc.). From b7cd56a51f198425581a1e9efe78c87d64c13848 Mon Sep 17 00:00:00 2001 From: Christian Loitsch Date: Sun, 15 Feb 2026 18:35:00 +0100 Subject: [PATCH 3/8] git: trigger tests on all branches --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 49fd597..159a39b 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -2,7 +2,7 @@ name: Dart on: push: - branches: [ master ] + branches: [ '**' ] pull_request: branches: [ master ] From 165e2d26868ebe4a01f26a9d16980e31a0164234 Mon Sep 17 00:00:00 2001 From: Christian Loitsch Date: Sun, 15 Feb 2026 18:42:17 +0100 Subject: [PATCH 4/8] feat: simplify and rename test/send_test.dart --- test/send_test.dart | 44 -------------------------------------- test/smtp_client_test.dart | 15 +++++++++++++ 2 files changed, 15 insertions(+), 44 deletions(-) delete mode 100644 test/send_test.dart create mode 100644 test/smtp_client_test.dart diff --git a/test/send_test.dart b/test/send_test.dart deleted file mode 100644 index 1436e44..0000000 --- a/test/send_test.dart +++ /dev/null @@ -1,44 +0,0 @@ -import 'dart:async'; -import 'dart:convert' as convert; -import 'dart:io'; - -import 'package:mailer/mailer.dart'; -import 'package:mailer/smtp_server.dart'; -import 'package:test/test.dart'; - -SmtpServer? correctSmtpServer; -SmtpServer incorrectCredentials = gmail('mister@gmail.com', 'wrongpass'); - -void main() { - setUpAll(() async { - correctSmtpServer = await configureCorrectSmtpServer(); - }); - - test('SmtpClient.checkCredentials() throws SmtpClientAuthenticationException', () async { - expect(checkCredentials(incorrectCredentials, timeout: const Duration(seconds: 5)), - throwsA(TypeMatcher())); - }, skip: false); -} - -Future configureCorrectSmtpServer() async { - var config = File('test/smtpserver.json'); - final json = convert.json.decode(await config.readAsString()); - - return SmtpServer( - json['host'] as String, - username: json['username'] as String, - password: json['password'] as String, - port: json['port'] as int, - ssl: json['ssl'] as bool, - allowInsecure: json['allowInsecure'] as bool, - ); -} - -Message createMessage(SmtpServer smtpServer) { - // Message to myself - return Message() - ..from = Address(smtpServer.username!) - ..recipients.add(smtpServer.username) - ..subject = 'Test Dart Mailer library :: 😀 :: ${DateTime.now()}' - ..text = 'This is the plain text.\nThis is line 2 of the text part.'; -} diff --git a/test/smtp_client_test.dart b/test/smtp_client_test.dart new file mode 100644 index 0000000..352e0ce --- /dev/null +++ b/test/smtp_client_test.dart @@ -0,0 +1,15 @@ + + +import 'package:mailer/mailer.dart'; +import 'package:mailer/smtp_server.dart'; +import 'package:test/test.dart'; + + +SmtpServer incorrectCredentials = gmail('mister@gmail.com', 'wrongpass'); + +void main() { + test('SmtpClient.checkCredentials() throws SmtpClientAuthenticationException', () async { + expect(checkCredentials(incorrectCredentials, timeout: const Duration(seconds: 5)), + throwsA(TypeMatcher())); + }); // Removed skip: false as it's default +} From 262d5ccd7a8aac596d08d6960af2c750d41af8c6 Mon Sep 17 00:00:00 2001 From: Christian Loitsch Date: Mon, 16 Feb 2026 08:02:44 +0100 Subject: [PATCH 5/8] . --- test/smtp_client_test.dart | 3 --- 1 file changed, 3 deletions(-) diff --git a/test/smtp_client_test.dart b/test/smtp_client_test.dart index 352e0ce..9bad090 100644 --- a/test/smtp_client_test.dart +++ b/test/smtp_client_test.dart @@ -1,10 +1,7 @@ - - import 'package:mailer/mailer.dart'; import 'package:mailer/smtp_server.dart'; import 'package:test/test.dart'; - SmtpServer incorrectCredentials = gmail('mister@gmail.com', 'wrongpass'); void main() { From aea3abd8fa0806177bb7001c0591ff0ccfa53d10 Mon Sep 17 00:00:00 2001 From: Christian Loitsch Date: Mon, 16 Feb 2026 08:08:30 +0100 Subject: [PATCH 6/8] fix test.dart --- test/test.dart | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/test.dart b/test/test.dart index f175f30..e2e1787 100644 --- a/test/test.dart +++ b/test/test.dart @@ -4,7 +4,7 @@ import 'idna_test.dart' as idna_test; import 'message_out_test.dart' as message_out_test; import 'punycode_test.dart' as punycode_test; import 'rfc3030_test.dart' as rfc3030_test; -import 'send_test.dart' as send_test; +import 'smtp_client_test.dart' as client_test; import 'split_test.dart' as split_test; import 'stream_splitter_test.dart' as stream_splitter_test; import 'validator_test.dart' as validator_test; @@ -18,7 +18,7 @@ void main() { group('message_out_test', message_out_test.main); group('punycode_test', punycode_test.main); group('rfc3030_test', rfc3030_test.main); - group('send_test', send_test.main); + group('client_test', client_test.main); group('split_test', split_test.main); group('stream_splitter_test', stream_splitter_test.main); group('validator_test', validator_test.main); From 96aa546a43fbaae3c8404f2f61855a763fb25ec2 Mon Sep 17 00:00:00 2001 From: Christian Loitsch Date: Tue, 24 Feb 2026 01:19:25 +0100 Subject: [PATCH 7/8] feat: move to community repo --- CHANGELOG.md | 1 + pubspec.yaml | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 40b9284..df07495 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,7 @@ - Renamed internal `IR` classes to `Mime`. - Moved files into `core`, `mime`, and `smtp` directories. - Standardized on relative imports within the package. + - Moved to community repository (github.com/dart-mailer/mailer) * Feature: Added support for RFC 3030 (CHUNKING and BINARYMIME). * Feature: Implemented Custom Address Validation API. - Added `PracticalAddressValidator` (recommended for input validation). diff --git a/pubspec.yaml b/pubspec.yaml index a9ab599..96005eb 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -3,7 +3,9 @@ version: 7.0.0 description: > Compose and send emails from Dart. Supports file attachments and HTML emails. -homepage: https://github.com/kaisellgren/mailer +homepage: https://github.com/dart-mailer/mailer#readme +repository: https://github.com/dart-mailer/mailer +issue_tracker: https://github.com/dart-mailer/mailer/issues environment: sdk: '>=3.0.0 <4.0.0' From b9914ab85de1fd0cc17ba727a83fd9b8e2d07354 Mon Sep 17 00:00:00 2001 From: Christian Loitsch Date: Tue, 24 Feb 2026 01:39:14 +0100 Subject: [PATCH 8/8] improve test workflow; create publish workflow --- .github/workflows/publish.yml | 32 ++++++++++++++++++++++++++++++++ .github/workflows/test.yml | 9 +++++++-- 2 files changed, 39 insertions(+), 2 deletions(-) create mode 100644 .github/workflows/publish.yml diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml new file mode 100644 index 0000000..1524603 --- /dev/null +++ b/.github/workflows/publish.yml @@ -0,0 +1,32 @@ +name: Publish to pub.dev + +on: + push: + tags: + - 'v[0-9]+.[0-9]+.[0-9]+*' # Triggers on tags like v1.2.3 or v1.2.3+1 + workflow_dispatch: # Allows you to manually trigger a retry from the Actions tab + +jobs: + publish: + permissions: + id-token: write # Required for OIDC authentication + contents: read + + runs-on: ubuntu-latest + + environment: pub.dev + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Setup Dart + uses: dart-lang/setup-dart@v1 + + - name: Install dependencies + run: dart pub get + + - name: Publish to pub.dev + # The '--force' is safe here because the tag and + # environment approval act as your confirmation. + run: dart pub publish --force \ No newline at end of file diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 159a39b..d7112eb 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -1,4 +1,4 @@ -name: Dart +name: Dart CI on: push: @@ -24,7 +24,12 @@ jobs: run: dart format --output=none --set-exit-if-changed . - name: Analyze project source - run: dart analyze + # Adding --fatal-infos ensures the highest code quality standards + run: dart analyze --fatal-infos - name: Run tests run: dart test + + - name: Publish Dry Run + # This ensures every PR is actually "publishable" to pub.dev + run: dart pub publish --dry-run \ No newline at end of file