2010-09-21 12 views

Répondre

2

man recv ne documente pas EFBIG ce qui signifie que si vous le voyez, vous avez rencontré un bogue dans le système d'exploitation. Contactez le Sun Prise en charge d'Oracle Solaris.

Si vous êtes sur la OpenSolaris, the dumb search révèle que les prises elles-mêmes ne reviennent pas EFBIG (sans résultat sous sys/common/inet/, comparer par exemple avec recherche ENOBUFS). Pour moi, cela dit que vous pourriez:

  • avoir un paramètre dépassant certaines limites de sécurité. par exemple. classique -1u octets qui seraient interceptés avant même d'atteindre l'API sockets. (peu probable que d'autres codes d'erreur soient utilisés.)
  • utilisez send/recv sur un mauvais descripteur de socket/fichier.