module Guestfs
Constants
- EVENT_ALL
- EVENT_APPLIANCE
- EVENT_CLOSE
- EVENT_ENTER
- EVENT_LAUNCH_DONE
- EVENT_LIBRARY
- EVENT_LIBVIRT_AUTH
- EVENT_PROGRESS
- EVENT_SUBPROCESS_QUIT
- EVENT_TRACE
- EVENT_WARNING
Public Class Methods
Guestfs::Guestfs.new([{:environment => false, :close_on_exit => false}]) → Guestfs::Guestfs
click to toggle source
Call
guestfs_create[http://libguestfs.org/guestfs.3.html#guestfs_create]
to create a new libguestfs handle. The handle is represented in Ruby as an
instance of the Guestfs::Guestfs class.
static VALUE ruby_guestfs_create (int argc, VALUE *argv, VALUE m) { guestfs_h *g; if (argc > 1) rb_raise (rb_eArgError, "expecting 0 or 1 arguments"); volatile VALUE optargsv = argc == 1 ? argv[0] : rb_hash_new (); Check_Type (optargsv, T_HASH); unsigned flags = 0; volatile VALUE v; v = rb_hash_lookup (optargsv, ID2SYM (rb_intern ("environment"))); if (v != Qnil && !RTEST (v)) flags |= GUESTFS_CREATE_NO_ENVIRONMENT; v = rb_hash_lookup (optargsv, ID2SYM (rb_intern ("close_on_exit"))); if (v != Qnil && !RTEST (v)) flags |= GUESTFS_CREATE_NO_CLOSE_ON_EXIT; g = guestfs_create_flags (flags); if (!g) rb_raise (e_Error, "failed to create guestfs handle"); /* Don't print error messages to stderr by default. */ guestfs_set_error_handler (g, NULL, NULL); /* Wrap it, and make sure the close function is called when the * handle goes away. */ return Data_Wrap_Struct (c_guestfs, NULL, ruby_guestfs_free, g); }
Guestfs::Guestfs.event_to_string(events) → string
click to toggle source
Call
guestfs_event_to_string[http://libguestfs.org/guestfs.3.html#guestfs_event_to_string]
to convert an event or event bitmask into a printable string.
static VALUE ruby_event_to_string (VALUE modulev, VALUE eventsv) { uint64_t events; char *str; events = NUM2ULL (eventsv); str = guestfs_event_to_string (events); if (str == NULL) rb_raise (e_Error, "%s", strerror (errno)); volatile VALUE rv = rb_str_new2 (str); free (str); return rv; }