typedef struct tagCUNBAPRM {
long Version; /* Structure version number */
long Length; /* Length of structure */
long Res1; /* Reserved */
void * Src_Buf_Ptr; /* Pointer to Source */
unsigned long Src_Buf_ALET; /* ALET of source buffer */
unsigned long Src_Buf_Len; /* Length of source data */
long Res2; /* Reserved */
void * Targ_Buf_Ptr; /* Pointer to Target */
unsigned long Targ_Buf_ALET; /* ALET of target buffer */
unsigned long Targ_Buf_Len; /* Length of target buffer */
char Conv_Handle[64]; /* conversion handle */
unsigned char Conv_Type; /* conversion type */
char Res3[3]; /* Reserved */
char Locale[32]; /* LOCALE */
long Res4; /* Reserved */
void * DDA_Buf_Ptr; /* Pointer to dynamic data area*/
unsigned long DDA_Buf_ALET; /* ALET of DDA */
unsigned long DDA_Buf_Len; /* Length of DDA */
struct {
int Inv_Handle : 1, /* Invalid handle action: */
/* 0 = Terminate with error */
/* 1 = Get new handle and */
Not_Last_Buf : 1, /* Buffer contains last */
/* Source Character */
/* 0 = Src_Buffer is last/only */
/* Buffer of complete src data */
/* 1 = Another buffer follows */
Page_Fix : 1, /* Page fixing: */
/* 0=System storage */
/* 1=Page Fixing. */
: 5;
} Flag1; /* FLAG Byte 1 set by caller */
struct {
int Locale_Support : 1, /* Locale support: */
/* When RC/RS <> 8/4 meaning: */
/* 0 = Locale supported */
/* When RC/RS = 8/4 meaning: */
/* 1 = Invalid Locale name */
/* When RC/RS <> 8/4 meaning: */
/* 1 = Locale Not supported */
/* (locale name is valid) */
: 7; /* Padding */
} Flag2; /* Flag2 - set by the service */
unsigned char Res5[2]; /* Reserved */
long Return_Code;
long Reason_Code;
unsigned char Res6[3]; /* Reserved */
unsigned char UniVersion; /* Unicode Data version */
} CUNBAPRM;
Note: C constants for the parameter area are defined in
the header file cunhc.h.