-// if (r == -1) /* error ? */
-// {
-// const char *details = yaz_retrieval_get_error(
-// assoc->server->retrieval);
+ // need to construct present error package and send back
+
+ const char *details = 0;
+ if (ret_code == -1) /* error ? */
+ {
+ details = yaz_retrieval_get_error(m_retrieval);
+ std::cout << "ERROR: YAZ_BIB1_SYSTEM_ERROR_IN_PRESENTING_RECORDS"
+ << details << "\n";
+ //rr->errcode = YAZ_BIB1_SYSTEM_ERROR_IN_PRESENTING_RECORDS;
+ // if (details)
+ // rr->errstring = odr_strdup(rr->stream, details);
+ }
+ else if (ret_code == 1 || ret_code == 3)
+ {
+ details = input_schema;
+ std::cout << "ERROR: YAZ_BIB1_ELEMENT_SET_NAMES_UNSUPP"
+ << details << "\n";
+ //rr->errcode = YAZ_BIB1_ELEMENT_SET_NAMES_UNSUPP;
+ //if (details)
+ // rr->errstring = odr_strdup(rr->stream, details);
+ }
+ else if (ret_code == 2)
+ {
+ std::cout << "ERROR: YAZ_BIB1_RECORD_SYNTAX_UNSUPP"
+ << details << "\n";
+ //rr->errcode = YAZ_BIB1_RECORD_SYNTAX_UNSUPP;
+ //if (input_syntax_raw)
+ //{
+ // char oidbuf[OID_STR_MAX];
+ // oid_to_dotstring(input_syntax_raw, oidbuf);
+ // rr->errstring = odr_strdup(rr->stream, oidbuf);
+ //}
+ }
+ //package.session().close();
+ return;
+ }