summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--usr.sbin/smtpd/mfa.c4
-rw-r--r--usr.sbin/smtpd/smtp_session.c8
-rw-r--r--usr.sbin/smtpd/smtpd.h9
3 files changed, 8 insertions, 13 deletions
diff --git a/usr.sbin/smtpd/mfa.c b/usr.sbin/smtpd/mfa.c
index 52187013c6a..03081ea9c0d 100644
--- a/usr.sbin/smtpd/mfa.c
+++ b/usr.sbin/smtpd/mfa.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: mfa.c,v 1.16 2009/03/08 17:54:20 gilles Exp $ */
+/* $OpenBSD: mfa.c,v 1.17 2009/03/08 19:11:22 gilles Exp $ */
/*
* Copyright (c) 2008 Gilles Chehade <gilles@openbsd.org>
@@ -587,5 +587,3 @@ strip_source_route(char *buf, size_t len)
return 0;
}
-
-SPLAY_GENERATE(msgtree, message, nodes, msg_cmp);
diff --git a/usr.sbin/smtpd/smtp_session.c b/usr.sbin/smtpd/smtp_session.c
index e34f3d7e232..9a42a8d70dc 100644
--- a/usr.sbin/smtpd/smtp_session.c
+++ b/usr.sbin/smtpd/smtp_session.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: smtp_session.c,v 1.58 2009/02/22 11:59:12 jacekm Exp $ */
+/* $OpenBSD: smtp_session.c,v 1.59 2009/03/08 19:11:22 gilles Exp $ */
/*
* Copyright (c) 2008 Gilles Chehade <gilles@openbsd.org>
@@ -384,8 +384,8 @@ session_rfc5321_mail_handler(struct session *s, char *args)
}
session_cleanup(s);
+ s->rcptcount = 0;
s->s_state = S_MAILREQUEST;
- s->s_msg.rcptcount = 0;
s->s_msg.id = s->s_id;
s->s_msg.session_id = s->s_id;
s->s_msg.session_ss = s->s_ss;
@@ -660,7 +660,7 @@ session_pickup(struct session *s, struct submit_status *ss)
/* recipient was not accepted */
if (ss->code != 250) {
/* We do not have a valid recipient, downgrade state */
- if (s->s_msg.rcptcount == 0)
+ if (s->rcptcount == 0)
s->s_state = S_MAIL;
else
s->s_state = S_RCPT;
@@ -669,7 +669,7 @@ session_pickup(struct session *s, struct submit_status *ss)
}
s->s_state = S_RCPT;
- s->s_msg.rcptcount++;
+ s->rcptcount++;
s->s_msg.recipient = ss->u.path;
case S_RCPT:
diff --git a/usr.sbin/smtpd/smtpd.h b/usr.sbin/smtpd/smtpd.h
index 23ad369074f..fcffac6333b 100644
--- a/usr.sbin/smtpd/smtpd.h
+++ b/usr.sbin/smtpd/smtpd.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: smtpd.h,v 1.84 2009/03/08 17:54:20 gilles Exp $ */
+/* $OpenBSD: smtpd.h,v 1.85 2009/03/08 19:11:22 gilles Exp $ */
/*
* Copyright (c) 2008 Gilles Chehade <gilles@openbsd.org>
@@ -424,7 +424,6 @@ enum message_flags {
};
struct message {
- SPLAY_ENTRY(message) nodes;
TAILQ_ENTRY(message) entry;
enum message_type type;
@@ -444,15 +443,13 @@ struct message {
struct path sender;
struct path recipient;
- TAILQ_HEAD(pathlist,path) recipients;
-
- u_int16_t rcptcount;
time_t creation;
time_t lasttry;
u_int8_t retry;
enum message_flags flags;
enum message_status status;
+
FILE *datafp;
int mboxfd;
int messagefd;
@@ -609,6 +606,7 @@ struct session {
int s_buflen;
struct timeval s_tv;
struct message s_msg;
+ u_int32_t rcptcount;
struct session_auth_req s_auth;
@@ -808,7 +806,6 @@ SPLAY_PROTOTYPE(lkatree, lkasession, nodes, lkasession_cmp);
/* mfa.c */
pid_t mfa(struct smtpd *);
int msg_cmp(struct message *, struct message *);
-SPLAY_PROTOTYPE(msgtree, message, nodes, msg_cmp);
/* queue.c */
pid_t queue(struct smtpd *);