The door_return() function returns
from a door invocation. It returns control to the thread that issued the associated door_call() and blocks waiting for the next door invocation. See door_call(3DOOR).
Results, if any, from the door invocation are passed back to the client in the buffers pointed to by data_prt and desc_ptr. If there is not a client associated with the door_return(), the calling thread discards the results, releases any
passed descriptors with the DOOR_RELEASE attribute, and blocks waiting for the next door invocation.