Comportement de libssh2_channel_write lorsque le canal ne bloque pas
-
12-11-2019 - |
Question
De libssh2_channel_write_ex
Page de l'homme:
Nombre réel d'octets écrits ou négatifs sur l'échec. Libssh2_error_eagain quand il bloquerait autrement. Bien que LiBSSH2_ERROR_EAGAIN soit un nombre négatif, ce n'est pas vraiment un échec en soi.
Maintenant, j'ai un problème avec ça. Quand je reçois LIBSSH2_ERROR_EAGAIN
Cela signifie-t-il que rien n'a été envoyé et que je dois renvoyer toutes les données? Ou cela signifie-t-il que certaines données ont été envoyées
Mon problème est que si j'essaie d'envoyer plus de données que la prise sous-jacente peut contenir, write()
devrait bloquer de toute façon, désormais comment puis-je espérer envoyer un gros bloc de données sans obtenir LIBSSH2_ERROR_EAGAIN
à chaque fois?
Pas de solution correcte