Sunday, Feb 05th

Last update12:13:00 PM GMT

Вы находитесь на: FreeBSD Сетевые протоколы Управляющие операции

Управляющие операции

Протокол UDP не поддерживает управляющих операций и перенаправляет вызовы своему элементу pr_ctloutput() непосредственно в протокол IP. У него есть простая процедура pr_ctlinput(), которая получает уведомление о любых асинхронных ошибках. Ошибки передаются любому сокету дейтаграмм с указанным местом назначения.

Лишь сокеты с местом назначения, зафиксированным вызовом connect, могут получить асинхронные уведомления об ошибках. Такие ошибки просто записываются в соответствующем сокете, и, если процесс выполняет системный вызов select или находится в состоянии сна в ожидании ввода, он пробуждается.

 

Когда сокет дейтаграмм UDP закрывается, вызывается процедура udp_detach(). Управляющий блок протокола и его содержимое просто удаляются функцией in_pcbdetach(); другой обработки не требуется.


Похожие:
Еще по теме:
Советуем прочитать:

Сейчас 21 гостей онлайн