mirror of
https://github.com/xemu-project/xemu.git
synced 2024-11-23 11:39:53 +00:00
util: replace qemu_get_local_state_pathname()
Simplify the function to only return the directory path. Callers are adjusted to use the GLib function to build paths, g_build_filename(). Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Message-Id: <20220420132624.2439741-39-marcandre.lureau@redhat.com>
This commit is contained in:
parent
1b34d08f0b
commit
1fbf2665e6
@ -556,16 +556,13 @@ void qemu_set_cloexec(int fd);
|
|||||||
void fips_set_state(bool requested);
|
void fips_set_state(bool requested);
|
||||||
bool fips_get_state(void);
|
bool fips_get_state(void);
|
||||||
|
|
||||||
/* Return a dynamically allocated pathname denoting a file or directory that is
|
/* Return a dynamically allocated directory path that is appropriate for storing
|
||||||
* appropriate for storing local state.
|
* local state.
|
||||||
*
|
|
||||||
* @relative_pathname need not start with a directory separator; one will be
|
|
||||||
* added automatically.
|
|
||||||
*
|
*
|
||||||
* The caller is responsible for releasing the value returned with g_free()
|
* The caller is responsible for releasing the value returned with g_free()
|
||||||
* after use.
|
* after use.
|
||||||
*/
|
*/
|
||||||
char *qemu_get_local_state_pathname(const char *relative_pathname);
|
char *qemu_get_local_state_dir(void);
|
||||||
|
|
||||||
/* Find program directory, and save it for later usage with
|
/* Find program directory, and save it for later usage with
|
||||||
* qemu_get_exec_dir().
|
* qemu_get_exec_dir().
|
||||||
|
@ -129,12 +129,12 @@ static void stop_agent(GAState *s, bool requested);
|
|||||||
static void
|
static void
|
||||||
init_dfl_pathnames(void)
|
init_dfl_pathnames(void)
|
||||||
{
|
{
|
||||||
|
g_autofree char *state = qemu_get_local_state_dir();
|
||||||
|
|
||||||
g_assert(dfl_pathnames.state_dir == NULL);
|
g_assert(dfl_pathnames.state_dir == NULL);
|
||||||
g_assert(dfl_pathnames.pidfile == NULL);
|
g_assert(dfl_pathnames.pidfile == NULL);
|
||||||
dfl_pathnames.state_dir = qemu_get_local_state_pathname(
|
dfl_pathnames.state_dir = g_build_filename(state, QGA_STATE_RELATIVE_DIR, NULL);
|
||||||
QGA_STATE_RELATIVE_DIR);
|
dfl_pathnames.pidfile = g_build_filename(state, QGA_STATE_RELATIVE_DIR, "qemu-ga.pid", NULL);
|
||||||
dfl_pathnames.pidfile = qemu_get_local_state_pathname(
|
|
||||||
QGA_STATE_RELATIVE_DIR G_DIR_SEPARATOR_S "qemu-ga.pid");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void quit_handler(int sig)
|
static void quit_handler(int sig)
|
||||||
|
@ -77,8 +77,10 @@ static int gid = -1;
|
|||||||
|
|
||||||
static void compute_default_paths(void)
|
static void compute_default_paths(void)
|
||||||
{
|
{
|
||||||
socket_path = qemu_get_local_state_pathname("run/qemu-pr-helper.sock");
|
g_autofree char *state = qemu_get_local_state_dir();
|
||||||
pidfile = qemu_get_local_state_pathname("run/qemu-pr-helper.pid");
|
|
||||||
|
socket_path = g_build_filename(state, "run", "qemu-pr-helper.sock", NULL);
|
||||||
|
pidfile = g_build_filename(state, "run", "qemu-pr-helper.pid", NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void usage(const char *name)
|
static void usage(const char *name)
|
||||||
|
@ -901,10 +901,12 @@ static bool fv_socket_lock(struct fuse_session *se)
|
|||||||
{
|
{
|
||||||
g_autofree gchar *sk_name = NULL;
|
g_autofree gchar *sk_name = NULL;
|
||||||
g_autofree gchar *pidfile = NULL;
|
g_autofree gchar *pidfile = NULL;
|
||||||
|
g_autofree gchar *state = NULL;
|
||||||
g_autofree gchar *dir = NULL;
|
g_autofree gchar *dir = NULL;
|
||||||
Error *local_err = NULL;
|
Error *local_err = NULL;
|
||||||
|
|
||||||
dir = qemu_get_local_state_pathname("run/virtiofsd");
|
state = qemu_get_local_state_dir();
|
||||||
|
dir = g_build_filename(state, "run", "virtiofsd", NULL);
|
||||||
|
|
||||||
if (g_mkdir_with_parents(dir, S_IRWXU) < 0) {
|
if (g_mkdir_with_parents(dir, S_IRWXU) < 0) {
|
||||||
fuse_log(FUSE_LOG_ERR, "%s: Failed to create directory %s: %s\n",
|
fuse_log(FUSE_LOG_ERR, "%s: Failed to create directory %s: %s\n",
|
||||||
|
@ -297,12 +297,9 @@ int qemu_pipe(int pipefd[2])
|
|||||||
}
|
}
|
||||||
|
|
||||||
char *
|
char *
|
||||||
qemu_get_local_state_pathname(const char *relative_pathname)
|
qemu_get_local_state_dir(void)
|
||||||
{
|
{
|
||||||
g_autofree char *dir = g_strdup_printf("%s/%s",
|
return get_relocated_path(CONFIG_QEMU_LOCALSTATEDIR);
|
||||||
CONFIG_QEMU_LOCALSTATEDIR,
|
|
||||||
relative_pathname);
|
|
||||||
return get_relocated_path(dir);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void qemu_set_tty_echo(int fd, bool echo)
|
void qemu_set_tty_echo(int fd, bool echo)
|
||||||
|
@ -235,7 +235,7 @@ int qemu_get_thread_id(void)
|
|||||||
}
|
}
|
||||||
|
|
||||||
char *
|
char *
|
||||||
qemu_get_local_state_pathname(const char *relative_pathname)
|
qemu_get_local_state_dir(void)
|
||||||
{
|
{
|
||||||
HRESULT result;
|
HRESULT result;
|
||||||
char base_path[MAX_PATH+1] = "";
|
char base_path[MAX_PATH+1] = "";
|
||||||
@ -247,8 +247,7 @@ qemu_get_local_state_pathname(const char *relative_pathname)
|
|||||||
g_critical("CSIDL_COMMON_APPDATA unavailable: %ld", (long)result);
|
g_critical("CSIDL_COMMON_APPDATA unavailable: %ld", (long)result);
|
||||||
abort();
|
abort();
|
||||||
}
|
}
|
||||||
return g_strdup_printf("%s" G_DIR_SEPARATOR_S "%s", base_path,
|
return g_strdup(base_path);
|
||||||
relative_pathname);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void qemu_set_tty_echo(int fd, bool echo)
|
void qemu_set_tty_echo(int fd, bool echo)
|
||||||
|
Loading…
Reference in New Issue
Block a user