-typedef struct Z_HTTP_Header Z_HTTP_Header;
-
-struct Z_HTTP_Header {
- char *name;
- char *value;
- Z_HTTP_Header *next;
-};
-
-typedef struct {
- char *method;
- char *version;
- char *path;
- Z_HTTP_Header *headers;
- char *content_buf;
- int content_len;
-} Z_HTTP_Request;
-
-typedef struct {
- int code;
- char *version;
- Z_HTTP_Header *headers;
- char *content_buf;
- int content_len;
-} Z_HTTP_Response;
-
-#define Z_GDU_Z3950 1
-#define Z_GDU_HTTP_Request 2
-#define Z_GDU_HTTP_Response 3
-typedef struct {
- int which;
- union {
- Z_APDU *z3950;
- Z_HTTP_Request *HTTP_Request;
- Z_HTTP_Response *HTTP_Response;
- } u;
-} Z_GDU ;
-YAZ_EXPORT int z_GDU (ODR o, Z_GDU **p, int opt, const char *name);
-YAZ_EXPORT void z_HTTP_header_add(ODR o, Z_HTTP_Header **hp, const char *n,
- const char *v);
-YAZ_EXPORT const char *z_HTTP_header_lookup(Z_HTTP_Header *hp, const char *n);
-
-YAZ_EXPORT const char *z_HTTP_errmsg(int code);
-
-YAZ_EXPORT Z_GDU *z_get_HTTP_Response(ODR o, int code);
+/** \brief Encodes Z39.50 Init OPtions based on string mnemonics */
+YAZ_EXPORT int yaz_init_opt_encode(Z_Options *opt, const char *opt_str,
+ int *error_pos);
+
+/** \brief Decodes Z39.50 Init Options - for printing */
+YAZ_EXPORT void yaz_init_opt_decode(Z_Options *opt,
+ void (*pr)(const char *name,
+ void *clientData),
+ void *clientData);
+/** \brief Creates Default Diag Format Diagnostic */
+YAZ_EXPORT
+Z_DefaultDiagFormat *zget_DefaultDiagFormat(ODR o, int error,
+ const char *addinfo);
+
+/** \brief Creates Surrogate Diagnostic Records */
+YAZ_EXPORT
+Z_NamePlusRecord *zget_surrogateDiagRec(ODR o, const char *dbname,
+ int error, const char *addinfo);
+
+/** \brief Creates Initialize Response diagnostics */
+YAZ_EXPORT
+Z_External *zget_init_diagnostics(ODR odr, int error, const char *addinfo);
+
+/** \brief Creates Initialize Response diagnostics (Octet-aligned EXTERNAL) */
+YAZ_EXPORT
+Z_External *zget_init_diagnostics_octet(ODR odr, int error, const char *addinfo);
+
+/** \brief Creates Diagnostic record - Z_DiagRecs type */
+YAZ_EXPORT
+Z_DiagRecs *zget_DiagRecs(ODR o, int error, const char *addinfo);
+
+/** \brief Creates Diagnostic record - Z_DiagRecs type */
+YAZ_EXPORT
+Z_DiagRec *zget_DiagRec(ODR o, int error, const char *addinfo);
+
+/** \brief get element set name from RecordComposition
+ \param comp record composition
+ \returns element set name or NULL if no element set name was given
+*/
+YAZ_EXPORT
+const char *yaz_get_esn(Z_RecordComposition *comp);
+
+/** \brief set element set name in RecordComposition struct
+ \param comp_p record composition ptr
+ \param esn element set name string
+ \param nmem memory for result composition
+*/
+YAZ_EXPORT
+void yaz_set_esn(Z_RecordComposition **comp_p, const char *esn, NMEM nmem);
+