MCPcopy Create free account
hub / github.com/SFML/SFML / handleSend

Method handleSend

src/SFML/Network/Sftp.cpp:411–436  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

409 }
410
411 static ssize_t handleSend(libssh2_socket_t, const void* buffer, size_t length, int, void** implPtr)
412 {
413 auto& impl = *static_cast<Impl*>(*implPtr);
414 std::size_t sent{};
415 const auto result = impl.socket.send(buffer, length, sent);
416
417 // Map SFML-specific return values back to POSIX return values
418 if (result == Socket::Status::Done)
419 return static_cast<ssize_t>(sent);
420
421 if (result == Socket::Status::Partial)
422 {
423 if (sent > 0)
424 return static_cast<ssize_t>(sent);
425 return -EAGAIN;
426 }
427
428 if (result == Socket::Status::NotReady)
429 return -EAGAIN;
430
431 if (result == Socket::Status::Disconnected)
432 return 0;
433
434 // Socket::Status::Error
435 return -1;
436 }
437
438 static ssize_t handleReceive(libssh2_socket_t, void* buffer, size_t length, int, void** implPtr)
439 {

Callers

nothing calls this directly

Calls 1

sendMethod · 0.45

Tested by

no test coverage detected