summaryrefslogtreecommitdiffstats
path: root/usr.sbin/smtpd/queue_backend.c
diff options
context:
space:
mode:
Diffstat (limited to 'usr.sbin/smtpd/queue_backend.c')
-rw-r--r--usr.sbin/smtpd/queue_backend.c34
1 files changed, 9 insertions, 25 deletions
diff --git a/usr.sbin/smtpd/queue_backend.c b/usr.sbin/smtpd/queue_backend.c
index 94c6a4b4b59..7c5dd7e3ef0 100644
--- a/usr.sbin/smtpd/queue_backend.c
+++ b/usr.sbin/smtpd/queue_backend.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: queue_backend.c,v 1.14 2011/11/15 23:06:39 gilles Exp $ */
+/* $OpenBSD: queue_backend.c,v 1.15 2011/12/14 17:55:55 eric Exp $ */
/*
* Copyright (c) 2011 Gilles Chehade <gilles@openbsd.org>
@@ -39,37 +39,21 @@
static int envelope_validate(struct envelope *);
/* fsqueue backend */
-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 *);
-void *fsqueue_qwalk_new(enum queue_kind, u_int32_t);
-int fsqueue_qwalk(void *, u_int64_t *);
-void fsqueue_qwalk_close(void *);
-
-
-struct queue_backend queue_backends[] = {
- { QT_FS,
- fsqueue_init,
- fsqueue_message,
- fsqueue_envelope,
- fsqueue_qwalk_new,
- fsqueue_qwalk,
- fsqueue_qwalk_close }
-};
+extern struct queue_backend queue_backend_fs;
+
struct queue_backend *
queue_backend_lookup(enum queue_type type)
{
- u_int8_t i;
-
- for (i = 0; i < nitems(queue_backends); ++i)
- if (queue_backends[i].type == type)
- break;
+ switch (type) {
+ case QT_FS:
+ return &queue_backend_fs;
- if (i == nitems(queue_backends))
+ default:
fatalx("invalid queue type");
+ }
- return &queue_backends[i];
+ return (NULL);
}
int