libwebsockets
Lightweight C library for HTML5 websockets
Loading...
Searching...
No Matches
lws-smtp.h File Reference

Go to the source code of this file.

Data Structures

struct  lws_smtp_email
struct  lws_smtp_session

Macros

#define LWS_SMTP_ADDR_MAX   254 /* an address, without the <> */
#define LWS_SMTP_LOCAL_MAX   64 /* the part before the @ */
#define LWS_SMTP_SUBJECT_MAX   512 /* bytes of UTF-8 */
#define LWS_SMTP_MSGID_MAX   128 /* without the <> */
#define LWS_SMTP_LINE_MAX   998 /* a body line as sent, RFC 5322 2.1.1 */
#define LWS_SMTP_TX_MIN   512

Typedefs

typedef struct lws_smtp_email lws_smtp_email_t
typedef enum lws_smtp_ev lws_smtp_ev_t
typedef struct lws_smtp_session lws_smtp_session_t

Enumerations

enum  lws_smtp_ev {
  LWS_SMTP_EV_NONE , LWS_SMTP_EV_TX , LWS_SMTP_EV_STARTTLS , LWS_SMTP_EV_READY ,
  LWS_SMTP_EV_MAIL_DONE , LWS_SMTP_EV_CLOSE , LWS_SMTP_EV_FAILED
}

Functions

LWS_VISIBLE LWS_EXTERN int lws_smtp_email_check (const lws_smtp_email_t *e)
LWS_VISIBLE LWS_EXTERN int lws_smtp_addr_check (const char *addr)
LWS_VISIBLE LWS_EXTERN void lws_smtp_session_init (lws_smtp_session_t *s, const char *helo, int starttls)
LWS_VISIBLE LWS_EXTERN lws_smtp_ev_t lws_smtp_session_rx (lws_smtp_session_t *s, const uint8_t *buf, size_t len, size_t *used)
LWS_VISIBLE LWS_EXTERN int lws_smtp_session_tx (lws_smtp_session_t *s, uint8_t *buf, size_t max, size_t *produced)
LWS_VISIBLE LWS_EXTERN void lws_smtp_session_tls_up (lws_smtp_session_t *s)
LWS_VISIBLE LWS_EXTERN int lws_smtp_session_mail (lws_smtp_session_t *s, const lws_smtp_email_t *mail)