History: ip_app_smtp
This page describes all changes made to the ip_app_smtp package, SMTP client, since its release.
Version
2.5 (2017-06-22, 12:22):
- Truncated messages that contained blank line.
- Version check was added to configuration header.
2.4 (2017-03-14 09:09):
- Values of month and day are converted properly. psp_template_hostname is used.
2.3:
- Updated to new IP Stack 6.02.
2.2:
- Changed psp_get_host_addr() to psp_get_host_domain ( uint8_t * p_domain, uint16_t *p_length ), user needs to define the name of device that is used in hello message.
- Outlook SMTP server does not work because it drops TLS connection (probably we use too weak a ciphersuite). Thunderbird SMTP client negotiates Cipher Suite: TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA (0xc014), which is currently not supported by TLS.
2.1:
- Added handling of incoming messages during sending of MAIL content. (Stack was running out of IP buffers because messages were not handled).
- Corrected handling of pipeline message for MAIL command (event command_abort was not sent when mail failed).
- Added checking of TLS connection state.
Known issues:
- Sending of mail to Outlook SMTP servers is difficult, because anti-spam system blocks incoming emails.
- Outlook mail account need to have POP server enabled; option POP enable must be set within account settings. In order to turn it on, login to your account, choose Options->'Connect devices and apps with POP' and enable POP
- Some SMTP servers (active24) require a correct time to be set in an email. So psp_rtc functions must return a correct date. Gmail/Yahoo/Outlook modifies time in an email.
- Timeout test is executed only when no TLS connection is active. This is done because TLS connections are usually tear-down on timeout without notifying the client.
2.0:
- Added STARTTLS.
- Updated to work with new IP Stack (4.11).
- Added extra commands: Verify and ETRN
- Mail message now has a real date and time sent.
- Added new recipients CC, BCC, REPLY-TO.
- Added sending of /attachments.
- Added delivery status notification.
- Added Chunking support.
- Added Pipelining support.
- Added SIZE support.
- New Authentication methods: CRAM-MD5, PLAIN and ANONYMOUS
- MISRA check and code review done.
1.0:
- Initial release.