## The User Interface

The recommended, standardized backing store IDL interface for a server looks like the following, where XXX is the server name:

interface XXX_convert

{

import "dce/database.idl"

typedef XXX_data_s_t {

dce_db_header_t header; /* Header must be first! */

/* (server-specific data goes here) */

} XXX_data_t;

void XXX_data_convert(

[in] handle_t h,

[in, out] XXX_data_t *data

[out] error_status_t *st

);

}

It should be compiled with the following Attribute Configuration File (ACF), which instructs the idl compiler to write the data conversion routine into the XXX _cstub.c file:

interface XXX

{

[encode, decode] XXX_data_convert([comm_status] st);

}

##