Используя сокет TCP, в Unix-системе python, похоже, полностью игнорирует мой ancbufsize.
data, ancdata, msg_flags, address = sock.recvmsg(1, socket.CMSG_LEN(4))
Со страницы руководства Linux для recvmsg:
size_t msg_controllen;/ * буфер вспомогательных данных len * /
Если я выпрямляю свою программу, я вижу, что msg_controllen равен 0, я, похоже, не могу ничего сделать, чтобы получить ненулевое значение.Есть ли какой-то другой пакет, который мне нужно установить?Выполнение довольно скромного centos7
Вот мой вызов recvmsg в моем выводе strace:
recvmsg(3, {msg_name(0)=0x7ffcc97e2c90, msg_iov(1)=[{"\360", 1}], msg_controllen=0, msg_flags=0}, 0) = 1
Возвращает только msg_iov и не имеет вспомогательных данных, предположительно потому, что msg_controllen равен 0.
вышеупомянутый возвращает "360"