diff options
| author | 2011-05-01 12:57:11 +0000 | |
|---|---|---|
| committer | 2011-05-01 12:57:11 +0000 | |
| commit | e4d36f12c77b5517d277efac10ee776cbc4580c3 (patch) | |
| tree | d0d7b357920c858f51d713f4274b484361386282 /usr.sbin/smtpd/queue_fsqueue.c | |
| parent | On reload the filtersets attached to a network need to be moved to the (diff) | |
| download | wireguard-openbsd-e4d36f12c77b5517d277efac10ee776cbc4580c3.tar.xz wireguard-openbsd-e4d36f12c77b5517d277efac10ee776cbc4580c3.zip | |
the smtpd env is meant to be global, so do not pass it all around.
discussed with and ok gilles@
Diffstat (limited to 'usr.sbin/smtpd/queue_fsqueue.c')
| -rw-r--r-- | usr.sbin/smtpd/queue_fsqueue.c | 82 |
1 files changed, 37 insertions, 45 deletions
diff --git a/usr.sbin/smtpd/queue_fsqueue.c b/usr.sbin/smtpd/queue_fsqueue.c index 4b4f80c44a8..4b3f131ab34 100644 --- a/usr.sbin/smtpd/queue_fsqueue.c +++ b/usr.sbin/smtpd/queue_fsqueue.c @@ -1,4 +1,4 @@ -/* $OpenBSD: queue_fsqueue.c,v 1.10 2011/04/17 11:39:22 gilles Exp $ */ +/* $OpenBSD: queue_fsqueue.c,v 1.11 2011/05/01 12:57:11 eric Exp $ */ /* * Copyright (c) 2011 Gilles Chehade <gilles@openbsd.org> @@ -41,22 +41,20 @@ static char *fsqueue_getpath(enum queue_kind); /*static*/ u_int16_t fsqueue_hash(u_int32_t); -static int fsqueue_envelope_load(struct smtpd *, enum queue_kind, struct envelope *); -static int fsqueue_envelope_update(struct smtpd *, enum queue_kind, struct envelope *); -static int fsqueue_envelope_delete(struct smtpd *, enum queue_kind, struct envelope *); +static int fsqueue_envelope_load(enum queue_kind, struct envelope *); +static int fsqueue_envelope_update(enum queue_kind, struct envelope *); +static int fsqueue_envelope_delete(enum queue_kind, struct envelope *); -static int fsqueue_message_create(struct smtpd *, enum queue_kind, u_int32_t *); -static int fsqueue_message_commit(struct smtpd *, enum queue_kind, u_int32_t); -static int fsqueue_message_fd_r(struct smtpd *, enum queue_kind, u_int32_t); -static int fsqueue_message_fd_rw(struct smtpd *, enum queue_kind, u_int32_t); -static int fsqueue_message_delete(struct smtpd *, enum queue_kind, u_int32_t); -static int fsqueue_message_purge(struct smtpd *, enum queue_kind, u_int32_t); +static int fsqueue_message_create(enum queue_kind, u_int32_t *); +static int fsqueue_message_commit(enum queue_kind, u_int32_t); +static int fsqueue_message_fd_r(enum queue_kind, u_int32_t); +static int fsqueue_message_fd_rw(enum queue_kind, u_int32_t); +static int fsqueue_message_delete(enum queue_kind, u_int32_t); +static int fsqueue_message_purge(enum queue_kind, u_int32_t); -int fsqueue_init(struct smtpd *); -int fsqueue_message(struct smtpd *, enum queue_kind, - enum queue_op, u_int32_t *); -int fsqueue_envelope(struct smtpd *, enum queue_kind, - enum queue_op , struct envelope *); +int fsqueue_init(void); +int fsqueue_message(enum queue_kind, enum queue_op, u_int32_t *); +int fsqueue_envelope(enum queue_kind, enum queue_op , struct envelope *); static char * fsqueue_getpath(enum queue_kind kind) @@ -93,8 +91,7 @@ fsqueue_hash(u_int32_t h) } static int -fsqueue_envelope_create(struct smtpd *env, enum queue_kind qkind, - struct envelope *m) +fsqueue_envelope_create(enum queue_kind qkind, struct envelope *m) { char evpname[MAXPATHLEN]; FILE *fp; @@ -164,8 +161,7 @@ tempfail: } static int -fsqueue_envelope_load(struct smtpd *env, enum queue_kind qkind, - struct envelope *m) +fsqueue_envelope_load(enum queue_kind qkind, struct envelope *m) { char pathname[MAXPATHLEN]; FILE *fp; @@ -190,8 +186,7 @@ fsqueue_envelope_load(struct smtpd *env, enum queue_kind qkind, } static int -fsqueue_envelope_update(struct smtpd *env, enum queue_kind qkind, - struct envelope *m) +fsqueue_envelope_update(enum queue_kind qkind, struct envelope *m) { char temp[MAXPATHLEN]; char dest[MAXPATHLEN]; @@ -245,8 +240,7 @@ tempfail: } static int -fsqueue_envelope_delete(struct smtpd *env, enum queue_kind qkind, - struct envelope *m) +fsqueue_envelope_delete(enum queue_kind qkind, struct envelope *m) { char pathname[MAXPATHLEN]; u_int16_t hval; @@ -269,13 +263,13 @@ fsqueue_envelope_delete(struct smtpd *env, enum queue_kind qkind, fatal("fsqueue_envelope_delete: snprintf"); if (rmdir(pathname) != -1) - fsqueue_message_delete(env, qkind, evpid_to_msgid(m->evpid)); + fsqueue_message_delete(qkind, evpid_to_msgid(m->evpid)); return 1; } static int -fsqueue_message_create(struct smtpd *env, enum queue_kind qkind, u_int32_t *msgid) +fsqueue_message_create(enum queue_kind qkind, u_int32_t *msgid) { char rootdir[MAXPATHLEN]; char evpdir[MAXPATHLEN]; @@ -335,7 +329,7 @@ again: } static int -fsqueue_message_commit(struct smtpd *env, enum queue_kind qkind, u_int32_t msgid) +fsqueue_message_commit(enum queue_kind qkind, u_int32_t msgid) { char rootdir[MAXPATHLEN]; char queuedir[MAXPATHLEN]; @@ -370,7 +364,7 @@ fsqueue_message_commit(struct smtpd *env, enum queue_kind qkind, u_int32_t msgid } static int -fsqueue_message_fd_r(struct smtpd *env, enum queue_kind qkind, u_int32_t msgid) +fsqueue_message_fd_r(enum queue_kind qkind, u_int32_t msgid) { int fd; char pathname[MAXPATHLEN]; @@ -395,7 +389,7 @@ fsqueue_message_fd_r(struct smtpd *env, enum queue_kind qkind, u_int32_t msgid) } static int -fsqueue_message_fd_rw(struct smtpd *env, enum queue_kind qkind, u_int32_t msgid) +fsqueue_message_fd_rw(enum queue_kind qkind, u_int32_t msgid) { char pathname[MAXPATHLEN]; @@ -408,7 +402,7 @@ fsqueue_message_fd_rw(struct smtpd *env, enum queue_kind qkind, u_int32_t msgid) } static int -fsqueue_message_delete(struct smtpd *env, enum queue_kind qkind, u_int32_t msgid) +fsqueue_message_delete(enum queue_kind qkind, u_int32_t msgid) { char rootdir[MAXPATHLEN]; char evpdir[MAXPATHLEN]; @@ -451,7 +445,7 @@ fsqueue_message_delete(struct smtpd *env, enum queue_kind qkind, u_int32_t msgid } static int -fsqueue_message_purge(struct smtpd *env, enum queue_kind qkind, u_int32_t msgid) +fsqueue_message_purge(enum queue_kind qkind, u_int32_t msgid) { char rootdir[MAXPATHLEN]; char purgedir[MAXPATHLEN]; @@ -472,7 +466,7 @@ fsqueue_message_purge(struct smtpd *env, enum queue_kind qkind, u_int32_t msgid) int -fsqueue_init(struct smtpd *env) +fsqueue_init(void) { unsigned int n; char *paths[] = { PATH_INCOMING, PATH_ENQUEUE, PATH_QUEUE, @@ -601,27 +595,26 @@ fsqueue_init(struct smtpd *env) } int -fsqueue_message(struct smtpd *env, enum queue_kind qkind, - enum queue_op qop, u_int32_t *msgid) +fsqueue_message(enum queue_kind qkind, enum queue_op qop, u_int32_t *msgid) { switch (qop) { case QOP_CREATE: - return fsqueue_message_create(env, qkind, msgid); + return fsqueue_message_create(qkind, msgid); case QOP_DELETE: - return fsqueue_message_delete(env, qkind, *msgid); + return fsqueue_message_delete(qkind, *msgid); case QOP_COMMIT: - return fsqueue_message_commit(env, qkind, *msgid); + return fsqueue_message_commit(qkind, *msgid); case QOP_FD_R: - return fsqueue_message_fd_r(env, qkind, *msgid); + return fsqueue_message_fd_r(qkind, *msgid); case QOP_FD_RW: - return fsqueue_message_fd_rw(env, qkind, *msgid); + return fsqueue_message_fd_rw(qkind, *msgid); case QOP_PURGE: - return fsqueue_message_purge(env, qkind, *msgid); + return fsqueue_message_purge(qkind, *msgid); default: fatalx("queue_fsqueue_message: unsupported operation."); @@ -631,21 +624,20 @@ fsqueue_message(struct smtpd *env, enum queue_kind qkind, } int -fsqueue_envelope(struct smtpd *env, enum queue_kind qkind, - enum queue_op qop, struct envelope *m) +fsqueue_envelope(enum queue_kind qkind, enum queue_op qop, struct envelope *m) { switch (qop) { case QOP_CREATE: - return fsqueue_envelope_create(env, qkind, m); + return fsqueue_envelope_create(qkind, m); case QOP_DELETE: - return fsqueue_envelope_delete(env, qkind, m); + return fsqueue_envelope_delete(qkind, m); case QOP_LOAD: - return fsqueue_envelope_load(env, qkind, m); + return fsqueue_envelope_load(qkind, m); case QOP_UPDATE: - return fsqueue_envelope_update(env, qkind, m); + return fsqueue_envelope_update(qkind, m); default: fatalx("queue_fsqueue_envelope: unsupported operation."); |
