X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=daemon%2Fdaemon.h;h=70a235194747f040e251fa0495acb8725184edf2;hp=553973d9d19fe603d4606859e0734ce81adee16c;hb=e05ddc70f1fa6d1e8253d69c5d17e69bfad2be90;hpb=99e28249d52ca5495b636e14ae3e4387ee62c8fe diff --git a/daemon/daemon.h b/daemon/daemon.h index 553973d..70a2351 100644 --- a/daemon/daemon.h +++ b/daemon/daemon.h @@ -29,6 +29,13 @@ #include "../src/guestfs_protocol.h" /*-- in guestfsd.c --*/ +extern int verbose; + +extern const char *sysroot; +extern int sysroot_len; + +extern char *sysroot_path (const char *path); + extern int xwrite (int sock, const void *buf, size_t len); extern int xread (int sock, void *buf, size_t len); @@ -41,19 +48,34 @@ extern void free_stringslen (char **argv, int len); extern int command (char **stdoutput, char **stderror, const char *name, ...); extern int commandr (char **stdoutput, char **stderror, const char *name, ...); extern int commandv (char **stdoutput, char **stderror, - char * const* const argv); + char * const* const argv); extern int commandrv (char **stdoutput, char **stderror, - char * const* const argv); + char * const* const argv); extern char **split_lines (char *str); -extern int shell_quote (char *out, int len, const char *in); - extern int device_name_translation (char *device, const char *func); extern void udev_settle (void); -extern int verbose; +/* This just stops gcc from giving a warning about our custom + * printf formatters %Q and %R. See HACKING file for more + * info about these. + */ +static inline int +asprintf_nowarn (char **strp, const char *fmt, ...) +{ + int r; + va_list args; + + va_start (args, fmt); + r = vasprintf (strp, fmt, args); + va_end (args); + return r; +} + +/*-- in names.c (auto-generated) --*/ +extern const char *function_names[]; /*-- in proto.c --*/ extern int proc_nr; @@ -64,9 +86,9 @@ extern int root_mounted; /*-- in stubs.c (auto-generated) --*/ extern void dispatch_incoming_message (XDR *); -extern guestfs_lvm_int_pv_list *parse_command_line_pvs (void); -extern guestfs_lvm_int_vg_list *parse_command_line_vgs (void); -extern guestfs_lvm_int_lv_list *parse_command_line_lvs (void); +extern guestfs_int_lvm_pv_list *parse_command_line_pvs (void); +extern guestfs_int_lvm_vg_list *parse_command_line_vgs (void); +extern guestfs_int_lvm_lv_list *parse_command_line_lvs (void); /*-- in proto.c --*/ extern void main_loop (int sock); @@ -169,7 +191,7 @@ extern void reply (xdrproc_t xdrp, char *ret); #define CHROOT_IN \ do { \ int __old_errno = errno; \ - if (chroot ("/sysroot") == -1) \ + if (chroot (sysroot) == -1) \ perror ("CHROOT_IN: sysroot"); \ errno = __old_errno; \ } while (0)