Lines Matching defs:heap
186 if ((clnt->heap = ndr_heap_create()) == NULL) {
226 ndr_heap_destroy(clnt->heap);
241 * If the heap has been preserved we need to go through an xa release.
242 * The heap is preserved during an RPC call because that's where data
245 * Otherwise we destroy the heap directly.
256 ndr_heap_destroy(clnt->heap);
270 * ndr_rpc_release to release the heap. Otherwise, we release the
271 * heap here.
353 ndr_heap_t *heap;
355 if ((heap = ndr_rpc_get_heap(handle)) == NULL)
358 return (ndr_heap_malloc(heap, size));
366 if (clnt->heap == NULL)
367 clnt->heap = ndr_heap_create();
369 return (clnt->heap);
373 * Must be called by RPC clients to free the heap after a successful RPC
376 * returned data is in the heap.
386 ndr_heap_destroy(clnt->heap);
388 clnt->heap = NULL;
462 * If the caller hasn't provided a heap, create one here.
469 ndr_heap_t *heap = clnt->heap;
472 if (heap == NULL) {
473 if ((heap = ndr_heap_create()) == NULL)
476 clnt->heap = heap;
479 mxa->heap = heap;
481 rc = nds_initialize(send_nds, 0, NDR_MODE_CALL_SEND, heap);
484 NDR_MODE_RETURN_RECV, heap);
489 ndr_heap_destroy(mxa->heap);
490 mxa->heap = NULL;
491 clnt->heap = NULL;
565 * Preserve the heap so that the client application has access to data
571 assert(clnt->heap == mxa->heap);
574 mxa->heap = NULL;
578 * Dispose of the transaction streams. If the heap has not been
588 ndr_heap_destroy(mxa->heap);
589 mxa->heap = NULL;
590 clnt->heap = NULL;
595 * Dispose of a preserved heap.
601 ndr_heap_destroy(clnt->heap);
602 clnt->heap = NULL;