return 0;
}
+
+char **
+do_available_all_groups (void)
+{
+ size_t i;
+ char **groups = NULL;
+ int size = 0, alloc = 0;
+
+ for (i = 0; optgroups[i].group != NULL; ++i) {
+ if (add_string (&groups, &size, &alloc, optgroups[i].group) == -1)
+ return NULL;
+ }
+
+ if (add_string (&groups, &size, &alloc, NULL) == -1)
+ return NULL;
+
+ return groups; /* caller frees */
+}
The libguestfs groups, and the functions that those
groups correspond to, are listed in L<guestfs(3)/AVAILABILITY>.
+You can also fetch this list at runtime by calling
+C<guestfs_available_all_groups>.
The argument C<groups> is a list of group names, eg:
C<[\"inotify\", \"augeas\"]> would check for the availability of
This command is the same as C<guestfs_ntfsresize> except that it
allows you to specify the new size (in bytes) explicitly.");
+ ("available_all_groups", (RStringList "groups", []), 251, [],
+ [],
+ "return a list of all optional groups",
+ "\
+This command returns a list of all optional groups that this
+daemon knows about. Note this returns both supported and unsupported
+groups. To find out which ones the daemon can actually support
+you have to call C<guestfs_available> on each member of the
+returned list.
+
+See also C<guestfs_available> and L<guestfs(3)/AVAILABILITY>.");
+
]
let all_functions = non_daemon_functions @ daemon_functions