| lwIP
    2.1.2
    Lightweight IP stack | 
#include "lwip/apps/smtp.h"#include "lwip/sys.h"#include "lwip/sockets.h"#include "lwip/altcp.h"#include "lwip/dns.h"#include "lwip/mem.h"#include "lwip/altcp_tcp.h"#include "lwip/altcp_tls.h"#include <string.h>#include <stdlib.h>| Data Structures | |
| struct | smtp_session | 
| Macros | |
| #define | SMTP_POLL_INTERVAL 4 | 
| #define | SMTP_TIMEOUT_DATABLOCK ( 3 * 60 * SMTP_POLL_INTERVAL / 2) | 
| #define | SMTP_TIMEOUT_DATATERM (10 * 60 * SMTP_POLL_INTERVAL / 2) | 
| #define | SMTP_TIMEOUT ( 2 * 60 * SMTP_POLL_INTERVAL / 2) | 
| Enumerations | |
| enum | smtp_session_state | 
| Functions | |
| err_t | smtp_set_server_addr (const char *server) | 
| void | smtp_set_server_port (u16_t port) | 
| void | smtp_set_tls_config (struct altcp_tls_config *tls_config) | 
| err_t | smtp_set_auth (const char *username, const char *pass) | 
| err_t | smtp_send_mail (const char *from, const char *to, const char *subject, const char *body, smtp_result_fn callback_fn, void *callback_arg) | 
| err_t | smtp_send_mail_static (const char *from, const char *to, const char *subject, const char *body, smtp_result_fn callback_fn, void *callback_arg) | 
| void | smtp_send_mail_int (void *arg) | 
SMTP client module
Author: Simon Goldschmidt
| #define SMTP_POLL_INTERVAL 4 | 
TCP poll interval. Unit is 0.5 sec.
| #define SMTP_TIMEOUT ( 2 * 60 * SMTP_POLL_INTERVAL / 2) | 
TCP poll timeout while not sending the body. This is somewhat lower than the RFC states (5 minutes for initial, MAIL and RCPT) but still OK for us here. 2 minutes
| #define SMTP_TIMEOUT_DATABLOCK ( 3 * 60 * SMTP_POLL_INTERVAL / 2) | 
TCP poll timeout while sending message body, reset after every successful write. 3 minutes
| #define SMTP_TIMEOUT_DATATERM (10 * 60 * SMTP_POLL_INTERVAL / 2) | 
TCP poll timeout while waiting for confirmation after sending the body. 10 minutes
| enum smtp_session_state | 
State for SMTP client state machine