+typedef struct bend_sortrequest
+{
+ int num_input_setnames;
+ char **input_setnames;
+ char *output_setname;
+ Z_SortKeySpecList *sort_sequence;
+ ODR stream;
+} bend_sortrequest;
+
+typedef struct bend_sortresult
+{
+ int sort_status;
+ int errcode;
+ char *errstring;
+} bend_sortresult;
+
+typedef struct bend_initrequest
+{
+ char *configname;
+ Z_IdAuthentication *auth;
+ ODR stream; /* encoding stream */
+
+ int (*bend_sort) (void *handle, bend_sortrequest *req,
+ bend_sortresult *res);
+} bend_initrequest;
+
+typedef struct bend_initresult
+{
+ int errcode; /* 0==OK */
+ char *errstring; /* system error string or NULL */
+ void *handle; /* private handle to the backend module */
+} bend_initresult;
+
+YAZ_EXPORT bend_initresult MDF *bend_init(bend_initrequest *r);
+