CVSROOT: /cvs
Module name: src
Changes by: [email protected] 2009/05/18 14:23:35
Modified files:
usr.sbin/smtpd : smtp.c smtp_session.c smtpctl.c smtpd.h ssl.c
Log message:
Complete rework of bufferevent event masking allowing for more
strictness:
- Drop clients attempting command pipelining; protects the daemon
from all kinds of abuse.
- Replace F_EVLOCKED flag with F_WRITEONLY which has cleaner sematics:
when up, session must not be destroyed nor read from, but may be
written to.
- Write callback becomes a central place for enabling EV_READ.
- Delay bufferevent creation until after ssl handshake is completed.
A bunch of session error stats were added to smtpctl's "show stats".
These could help spotting event masking errors in the future.
ok gilles@