osmo_io: Factor out and use common send function from backend

This handles reenqueuing a message on EAGAIN and incomplete write

Change-Id: I6da2653d32aedd0e7872be0cf90a841b56462e59
diff --git a/src/core/osmo_io_internal.h b/src/core/osmo_io_internal.h
index 73a81e1..e8f4ea2 100644
--- a/src/core/osmo_io_internal.h
+++ b/src/core/osmo_io_internal.h
@@ -146,6 +146,7 @@
 struct msgb *iofd_msgb_pending_or_alloc(struct osmo_io_fd *iofd);
 
 void iofd_handle_recv(struct osmo_io_fd *iofd, struct msgb *msg, int rc, struct iofd_msghdr *msghdr);
+void iofd_handle_send_completion(struct osmo_io_fd *iofd, int rc, struct iofd_msghdr *msghdr);
 void iofd_handle_segmented_read(struct osmo_io_fd *iofd, struct msgb *msg, int rc);
 
 int iofd_txqueue_enqueue(struct osmo_io_fd *iofd, struct iofd_msghdr *msghdr);