/* Dynamic loading of the database backend.
* We use GLib's multiplatform dl() wrapper
* to open up sort_sieve.so and
* populate the global 'sort' structure.
*
* (c) 2005 Aaron Stone <aaron@serendipity.cx>
*/
#ifndef SORTMODULE_H
#define SORTMODULE_H
/* Prototypes must match with those in sort.h
* and in the sorting drivers. */
typedef struct {
sort_result_t *(* process)(u64_t user_idnr, struct DbmailMessage *message);
sort_result_t *(* validate)(u64_t user_idnr, char *scriptname);
void (* free_result)(sort_result_t *result);
const char *(* listextensions)(void);
int (* get_cancelkeep)(sort_result_t *result);
int (* get_reject)(sort_result_t *result);
const char *(* get_mailbox)(sort_result_t *result);
const char *(* get_errormsg)(sort_result_t *result);
int (* get_error)(sort_result_t *result);
} sort_func_t;
#endif
syntax highlighted by Code2HTML, v. 0.9.1