dat_ep_free - destroy an instance of the Endpoint
cc [ flag... ] file... -ldat [ library... ] #include <dat/udat.h> DAT_RETURN dat_ep_free ( IN DAT_EP_HANDLE ep_handle )
ep_handle
The dat_ep_free() function destroys an instance of the Endpoint.
The Endpoint can be destroyed in any Endpoint state except Reserved, Passive Connection Pending, and Tentative Connection Pending. The destruction of the Endpoint can also cause the destruction of DTOs and RMRs posted to the Endpoint and not dequeued yet. This includes completions for all outstanding and in-progress DTOs/RMRs. The Consumer must be ready for all completions that are not dequeued yet either still being on the Endpoint recv_evd_handle and request_evd_handle or not being there.
The destruction of the Endpoint during connection setup aborts connection establishment.
If the Endpoint is in the Reserved state, the Consumer shall first destroy the associated Reserved Service Point that transitions the Endpoint into the Unconnected state where the Endpoint can be destroyed. If the Endpoint is in the Passive Connection Pending state, the Consumer shall first reject the associated Connection Request that transitions the Endpoint into the Unconnected state where the Endpoint can be destroyed. If the Endpoint is in the Tentative Connection Pending state, the Consumer shall reject the associated Connection Request that transitions the Endpoint back to Provider control, and the Endpoint is destroyed as far as the Consumer is concerned.
The freeing of an Endpoint also destroys an Event Stream for each of the associated Event Dispatchers.
Use of the handle of the destroyed Endpoint in any subsequent operation except for the dat_ep_free() fails.
DAT_SUCCESS
DAT_INVALID_HANDLE
DAT_INVALID_STATE
See attributes(5) for descriptions of the following attributes:
|
libdat(3LIB), attributes(5)
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |