72 #include <sys/socket.h>
73 #include <netinet/in.h>
74 #include <arpa/inet.h>
101 #define SMTP_REUSE_KEY_DELIM_NA "\n*"
157 const char *myname =
"smtp_reuse_common";
167 msg_panic(
"%s: unexpected plain-text cached session to %s",
177 msg_warn(
"%s: bad cached session attribute for %s", myname, label);
182 session->
state = state;
235 session = smtp_reuse_common(state, fd,
STR(state->
dest_label));
271 session = smtp_reuse_common(state, fd,
STR(state->
endp_label));
SMTP_SESSION * smtp_session_activate(int, SMTP_ITERATOR *, VSTRING *, VSTRING *)
SMTP_ITERATOR iterator[1]
struct SMTP_SESSION * session
NORETURN msg_panic(const char *fmt,...)
#define scache_find_dest(scache, dest_label, dest_prop, endp_prop)
int smtp_rset(SMTP_STATE *)
#define VSTRING_TERMINATE(vp)
void smtp_save_session(SMTP_STATE *state, int name_key_flags, int endp_key_flags)
#define VSTRING_RESET(vp)
void msg_warn(const char *fmt,...)
#define scache_save_endp(scache, ttl, endp_label, endp_prop, fd)
SMTP_SESSION * smtp_reuse_nexthop(SMTP_STATE *state, int name_key_flags)
#define scache_find_endp(scache, endp_label, endp_prop)
int vstream_tweak_sock(VSTREAM *)
#define scache_save_dest(scache, ttl, dest_label, dest_prop, endp_label)
int smtp_session_passivate(SMTP_SESSION *, VSTRING *, VSTRING *)
void smtp_session_free(SMTP_SESSION *)
#define HAVE_NEXTHOP_STATE(state)
#define SMTP_FEATURE_RSET_REJECTED
char * smtp_key_prefix(VSTRING *, const char *, SMTP_ITERATOR *, int)
SMTP_SESSION * smtp_reuse_addr(SMTP_STATE *state, int endp_key_flags)
HTABLE_INFO * htable_enter(HTABLE *table, const char *key, void *value)
#define SMTP_REUSE_KEY_DELIM_NA