Lines Matching defs:da
485 door_arg_t da;
487 da.data_ptr = cmd;
488 da.data_size = len;
489 da.desc_ptr = NULL;
490 da.desc_num = 0;
491 da.rbuf = result == NULL ? NULL : *result;
492 da.rsize = rlen == NULL ? 0 : *rlen;
494 if (door_call(srv->door, &da) != 0) {
500 if (da.desc_ptr != NULL) {
503 *fd = da.desc_ptr[i++].d_data.d_desc.d_descriptor;
504 for (; i < da.desc_num; i++)
505 (void) close(da.desc_ptr[i].d_data.d_desc.d_descriptor);
508 if (da.data_size == sizeof (int)) {
509 int x = *(int *)da.data_ptr;
511 if (result == NULL || da.rbuf != *result)
512 (void) munmap(da.rbuf, da.rsize);
520 if (da.data_ptr != NULL && da.rbuf != da.data_ptr)
521 (void) memmove(da.rbuf, da.data_ptr, da.data_size);
522 *result = da.rbuf;
523 *rlen = da.data_size;
524 } else if (da.rbuf != NULL) {
525 (void) munmap(da.rbuf, da.rsize);