+extern int alloc_disk (const char *filename, const char *size,
+ int add, int sparse);
+extern int parse_size (const char *str, off_t *size_rtn);
+
+/* in help.c */
+extern void display_help (void);
+
+/* in prep.c */
+struct prep_data {
+ const struct prep *prep;
+ const char *orig_type_string;
+ char **params;
+};
+typedef struct prep_data prep_data;
+extern void list_prepared_drives (void);
+extern prep_data *create_prepared_file (const char *type_string,
+ const char *filename);
+extern void prepare_drive (const char *filename, prep_data *data,
+ const char *device);
+extern void prep_error (prep_data *data, const char *filename, const char *fs, ...) __attribute__((noreturn, format (printf,3,4)));
+extern void free_prep_data (void *data);
+
+/* in prep_lv.c */
+extern int vg_lv_parse (const char *device, char **vg, char **lv);
+
+/* in progress.c */
+extern void reset_progress_bar (void);
+extern void progress_callback (guestfs_h *g, void *data, uint64_t event, int event_handle, int flags, const char *buf, size_t buf_len, const uint64_t *array, size_t array_len);
+
+/* in rc.c (remote control) */
+extern void rc_listen (void) __attribute__((noreturn));
+extern int rc_remote (int pid, const char *cmd, size_t argc, char *argv[],
+ int exit_on_error);
+
+/* in tilde.c */
+extern char *try_tilde_expansion (char *path);
+
+/* This should just list all the built-in commands so they can
+ * be added to the generated auto-completion code.
+ */
+#define BUILTIN_COMMANDS_FOR_COMPLETION \
+ "help", \
+ "quit", "exit", "q"