Учитывая, что цель сокета AF_NETLINK
заключается в связи с ядром, теоретически для вызова send
может произойти сбой, поскольку ядро будет проверять данные, передаваемыеон может решить, что указанные данные являются бессмысленными, и отклонить send
(с любым ошибочным значением).
Практически, поскольку вы предоставляете указатель данных, вы можете указать недопустимый указатель (как и для любого send
или recv
вызов) и сразу же получит ошибку EFAULT
.
При условии, что буфер recv
является допустимым и достаточно большим, recv
обычно не должен завершаться ошибкой (за исключением таких вещей, как EINTR
).
Я полагаю, вы можете получить более конкретный ответ с более конкретным кодом.