- if (g->verbose)
- fprintf (stderr, "sock_write_event: wrote %d bytes\n", n);
-
- g->msg_out_pos += n;
-
- /* More to write? */
- if (g->msg_out_pos < g->msg_out_size)
- return;
-
- if (g->verbose)
- fprintf (stderr, "sock_write_event: done writing, calling send_cb\n");
-
- free (g->msg_out);
- g->msg_out = NULL;
- g->msg_out_pos = g->msg_out_size = 0;
-
- /* Done writing, call the higher layer. */
- if (g->send_cb)
- g->send_cb (g, g->send_cb_data);
-}
-
-void
-guestfs_set_send_callback (guestfs_h *g,
- guestfs_send_cb cb, void *opaque)
-{
- g->send_cb = cb;
- g->send_cb_data = opaque;
-}
-
-void
-guestfs_set_reply_callback (guestfs_h *g,
- guestfs_reply_cb cb, void *opaque)
-{
- g->reply_cb = cb;
- g->reply_cb_data = opaque;
-}
-
-void
-guestfs_set_log_message_callback (guestfs_h *g,
- guestfs_log_message_cb cb, void *opaque)
-{
- g->log_message_cb = cb;
- g->log_message_cb_data = opaque;
-}
-
-void
-guestfs_set_subprocess_quit_callback (guestfs_h *g,
- guestfs_subprocess_quit_cb cb, void *opaque)
-{
- g->subprocess_quit_cb = cb;
- g->subprocess_quit_cb_data = opaque;
-}
-
-void
-guestfs_set_launch_done_callback (guestfs_h *g,
- guestfs_launch_done_cb cb, void *opaque)
-{
- g->launch_done_cb = cb;
- g->launch_done_cb_data = opaque;
-}
-
-/* Access to the handle's main loop and the default main loop. */
-void
-guestfs_set_main_loop (guestfs_h *g, guestfs_main_loop *main_loop)
-{
- g->main_loop = main_loop;
-}
-
-guestfs_main_loop *
-guestfs_get_main_loop (guestfs_h *g)
-{
- return g->main_loop;
-}
-
-guestfs_main_loop *
-guestfs_get_default_main_loop (void)
-{
- return (guestfs_main_loop *) &default_main_loop;
-}
-
-/* Change the daemon socket handler so that we are now writing.
- * This sets the handle to sock_write_event.
- */
-int
-guestfs__switch_to_sending (guestfs_h *g)
-{
- if (g->sock_watch >= 0) {
- if (g->main_loop->remove_handle (g->main_loop, g, g->sock_watch) == -1) {
- error (g, _("remove_handle failed"));
- g->sock_watch = -1;
- return -1;