* Sebastian Hammer, Adam Dickmeiss
*
* $Log: seshigh.c,v $
- * Revision 1.50 1995-10-25 16:58:32 quinn
+ * Revision 1.55 1995-11-08 17:41:37 quinn
+ * Smallish.
+ *
+ * Revision 1.54 1995/11/08 15:11:29 quinn
+ * Log of close transmit.
+ *
+ * Revision 1.53 1995/11/01 13:54:58 quinn
+ * Minor adjustments
+ *
+ * Revision 1.52 1995/11/01 12:19:13 quinn
+ * Second attempt to fix same bug.
+ *
+ * Revision 1.50 1995/10/25 16:58:32 quinn
* Simple.
*
* Revision 1.49 1995/10/16 13:51:53 quinn
#include <assert.h>
#include <sys/time.h>
-#include <dmalloc.h>
+#include <xmalloc.h>
#include <comstack.h>
#include <eventl.h>
#include <session.h>
if (!control_block)
control_block = statserv_getcontrol();
- if (!(new = malloc(sizeof(*new))))
+ if (!(new = xmalloc(sizeof(*new))))
return 0;
new->client_chan = channel;
new->client_link = link;
if (h->print)
odr_destroy(h->print);
if (h->input_buffer)
- free(h->input_buffer);
+ xfree(h->input_buffer);
if (h->backend)
bend_close(h->backend);
while (request_deq(&h->incoming));
while (request_deq(&h->outgoing));
- free(h);
+ xfree(h);
}
static void do_close(association *a, int reason, char *message)
while (request_deq(&a->outgoing));
if (a->version >= 3)
{
- logf(LOG_DEBUG, "Generating Close PDU");
+ logf(LOG_LOG, "Sending Close PDU, reason=%d, message=%s",
+ reason, message ? message : "none");
apdu.which = Z_APDU_close;
apdu.u.close = cls;
*cls->closeReason = reason;
break;
case 0: /* all sent - release the request structure */
logf(LOG_DEBUG, "Wrote PDU, %d bytes", req->len_response);
- odr_release_mem(req->request_mem);
+ nmem_destroy(req->request_mem);
request_deq(&assoc->outgoing);
request_release(req);
if (!request_head(&assoc->outgoing))
}
req->response = odr_getbuf(assoc->encode, &req->len_response,
&req->size_response);
- odr_setbuf(assoc->encode, 0, 0, 0); /* don't free if we abort later */
+ odr_setbuf(assoc->encode, 0, 0, 0); /* don'txfree if we abort later */
odr_reset(assoc->encode);
if (assoc->print && !z_APDU(assoc->print, &res, 0))
{
else
{
static int toget;
- Z_RecordComposition comp;
+ Z_RecordComposition comp, *compp = 0;
static int presst = 0;
resp.records = 0;
if (bsrt->hits <= *req->smallSetUpperBound)
{
toget = bsrt->hits;
- comp.u.simple = req->smallSetElementSetNames;
+ if ((comp.u.simple = req->smallSetElementSetNames))
+ compp = ∁
}
else if (bsrt->hits < *req->largeSetLowerBound)
{
toget = *req->mediumSetPresentNumber;
if (toget > bsrt->hits)
toget = bsrt->hits;
- comp.u.simple = req->mediumSetElementSetNames;
+ if ((comp.u.simple = req->mediumSetElementSetNames))
+ compp = ∁
}
else
toget = 0;
else
form = prefformat->value;
resp.records = pack_records(assoc, req->resultSetName, 1,
- &toget, &comp, &next, &presst, form);
+ &toget, compp, &next, &presst, form);
if (!resp.records)
return 0;
resp.numberOfRecordsReturned = &toget;