История изменений
Исправление iliyap, (текущая версия) :
connect может использоваться на дейтаграмных сокетах, в частности, на UDP сокетах. После connect можно использовать send (без коннект только sendto) и recv (без connect только recvfrom).
После connect в сокет доставляются ошибки, полученные по ICMP. Например, целевой порт на целевом хосте никто не открыл. При получении UDP дейтаграммы на целевой порт целевой хост отправит ICMP port unreachable на исходный хост. Если на исходном хосте connect на сокет не вызывали, этот ICMP port unreachable будет выброшен в пропасть. Если вызывали, ошибка будет сохранена в сокет, и её оттуда можно будет взять с помощью getsockopt(SOL_SOCKET, SO_ERROR). В частности, при доставке ошибки в сокет он становится readable (в терминах select и poll).
Исходная версия iliyap, :
connect может использоваться на дейтаграмных сокетах, в частности, на UDP сокетах. После connect можно использовать send (без коннект только sendto) и recv (без connect только recvfrom).
После connect в сокет доставляются ошибки, полученные по ICMP. Например, целевой порт на целевом хосте никто не открыл. При получении UDP дейтаграммы на целевой порт целевой хост отправит ICMP port unreachable на исходный хост. Если на исходном хосте connect на сокет не вызывали, этот ICMP port unreachable будет выброшен в пропасть. Если вызывали, ошибка будет сохранена в сокет, и её оттуда можно будет взять с помощью getsockopt(SOL_SOCKET, SO_ERROR).