Может ли сокет send / recv возвращать errno 27 (EFBIG) в Solaris? - PullRequest
0 голосов
/ 21 сентября 2010

Может ли сокет send / recv установить errno 27 (EFBIG) на Solaris? При каких условиях это происходит?

1 Ответ

2 голосов
/ 21 сентября 2010

man recv не документирует EFBIG, что означает, что если вы его видите, вы столкнулись с ошибкой в ​​ОС. Обратитесь в службу поддержки Sun Oracle Solaris.

Если вы находитесь в OpenSolaris, немой поиск показывает, что сами сокеты не возвращают EFBIG (нет совпадений при sys/common/inet/; сравните, например, с поиском ENOBUFS). Для меня это говорит о том, что вы могли бы:

  • имеет параметр, превышающий некоторый предел безопасности. например классические -1u байтов, которые будут перехвачены еще до достижения API сокетов. (вряд ли для этого используются другие коды ошибок.)
  • использовать send / recv с неверным сокетом / дескриптором файла.
...