aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIan Campbell <ian.campbell@citrix.com>2012-05-29 16:44:06 +0100
committerIan Campbell <ian.campbell@citrix.com>2012-05-29 16:44:06 +0100
commit98c0339ead4c24ebe993e0693d354cdcbb166ec6 (patch)
tree534aedfc256bef95efd4c9381ff7910b0e04bb9f
parentbb86668db55fa24f275c8f56ddd4dcb44cd413fe (diff)
downloadxen-98c0339ead4c24ebe993e0693d354cdcbb166ec6.tar.gz
xen-98c0339ead4c24ebe993e0693d354cdcbb166ec6.tar.bz2
xen-98c0339ead4c24ebe993e0693d354cdcbb166ec6.zip
libxl: remove lockdir and config dir from the API
These are only used by xl. Rename _libxl_paths.h -> _paths.h, these are not actually "libxl" paths but rather are part of the Xen build time configuration. It is fine for xl to also consume them. Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Acked-by: Ian Jackson <ian.jackson@eu.citrix.com> Committed-by: Ian Campbell <ian.campbell@citrix.com>
-rw-r--r--tools/libxl/Makefile8
-rw-r--r--tools/libxl/libxl.h4
-rw-r--r--tools/libxl/libxl_internal.h2
-rw-r--r--tools/libxl/libxl_paths.c10
-rw-r--r--tools/libxl/xl.c26
-rw-r--r--tools/libxl/xl.h4
6 files changed, 18 insertions, 36 deletions
diff --git a/tools/libxl/Makefile b/tools/libxl/Makefile
index 5d9227ec8c..1e8933b257 100644
--- a/tools/libxl/Makefile
+++ b/tools/libxl/Makefile
@@ -103,10 +103,10 @@ $(LIBXL_OBJS) $(LIBXLU_OBJS) $(XL_OBJS): $(AUTOINCS)
@rm -f $*.[ch]
$(FLEX) --header-file=$*.h --outfile=$*.c $<
-genpath-target = $(call buildmakevars2file,_libxl_paths.h.tmp)
+genpath-target = $(call buildmakevars2file,_paths.h.tmp)
$(eval $(genpath-target))
-_libxl_paths.h: genpath
+_paths.h: genpath
sed -e "s/\([^=]*\)=\(.*\)/#define \1 \2/g" $@.tmp >$@.2.tmp
rm -f $@.tmp
$(call move-if-changed,$@.2.tmp,$@)
@@ -117,7 +117,7 @@ _libxl_list.h: $(XEN_INCLUDE)/xen-external/bsd-sys-queue-h-seddery $(XEN_INCLUDE
libxl.h: _libxl_types.h
libxl_json.h: _libxl_types_json.h
-libxl_internal.h: _libxl_types_internal.h _libxl_paths.h
+libxl_internal.h: _libxl_types_internal.h _paths.h
libxl_internal_json.h: _libxl_types_internal_json.h
$(LIBXL_OBJS) $(LIBXLU_OBJS) $(XL_OBJS): libxl.h
@@ -181,7 +181,7 @@ install: all
.PHONY: clean
clean:
$(RM) -f _*.h *.o *.so* *.a $(CLIENTS) $(DEPS)
- $(RM) -f _*.c *.pyc _libxl_paths.*.tmp
+ $(RM) -f _*.c *.pyc _paths.*.tmp
$(RM) -f testidl.c.new testidl.c
# $(RM) -f $(AUTOSRCS) $(AUTOINCS)
diff --git a/tools/libxl/libxl.h b/tools/libxl/libxl.h
index 3a0d71dc69..934b993102 100644
--- a/tools/libxl/libxl.h
+++ b/tools/libxl/libxl.h
@@ -833,10 +833,6 @@ int libxl_flask_getenforce(libxl_ctx *ctx);
int libxl_flask_setenforce(libxl_ctx *ctx, int mode);
int libxl_flask_loadpolicy(libxl_ctx *ctx, void *policy, uint32_t size);
-/* common paths */
-const char *libxl_xen_config_dir_path(void);
-const char *libxl_lock_dir_path(void);
-
/* misc */
/* Each of these sets or clears the flag according to whether the
diff --git a/tools/libxl/libxl_internal.h b/tools/libxl/libxl_internal.h
index a5edea4bbc..06e682621b 100644
--- a/tools/libxl/libxl_internal.h
+++ b/tools/libxl/libxl_internal.h
@@ -52,7 +52,7 @@
#include <xen/io/xenbus.h>
#include "libxl.h"
-#include "_libxl_paths.h"
+#include "_paths.h"
#if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 1)
#define _hidden __attribute__((visibility("hidden")))
diff --git a/tools/libxl/libxl_paths.c b/tools/libxl/libxl_paths.c
index 54a02b7e3d..14b28d1982 100644
--- a/tools/libxl/libxl_paths.c
+++ b/tools/libxl/libxl_paths.c
@@ -30,21 +30,11 @@ const char *libxl__xenfirmwaredir_path(void)
return XENFIRMWAREDIR;
}
-const char *libxl_xen_config_dir_path(void)
-{
- return XEN_CONFIG_DIR;
-}
-
const char *libxl__xen_script_dir_path(void)
{
return XEN_SCRIPT_DIR;
}
-const char *libxl_lock_dir_path(void)
-{
- return XEN_LOCK_DIR;
-}
-
const char *libxl__run_dir_path(void)
{
return XEN_RUN_DIR;
diff --git a/tools/libxl/xl.c b/tools/libxl/xl.c
index 492153f29f..a5ada035e0 100644
--- a/tools/libxl/xl.c
+++ b/tools/libxl/xl.c
@@ -73,11 +73,12 @@ static void parse_global_config(const char *configfile,
if (!xlu_cfg_get_string (config, "lockfile", &buf, 0))
lockfile = strdup(buf);
else {
- e = asprintf(&lockfile, "%s/xl", (char *)libxl_lock_dir_path());
- if (e < 0) {
- fprintf(stderr, "asprintf memory allocation failed\n");
- exit(1);
- }
+ lockfile = strdup(XL_LOCK_FILE);
+ }
+
+ if (!lockfile < 0) {
+ fprintf(stderr, "failed to allocate lockdir \n");
+ exit(1);
}
if (!xlu_cfg_get_string (config, "vifscript", &buf, 0))
@@ -192,7 +193,6 @@ int main(int argc, char **argv)
char *cmd = 0;
struct cmd_spec *cspec;
int ret;
- char *config_file;
void *config_data = 0;
int config_len = 0;
const char *locks[] = XEND_LOCK;
@@ -227,20 +227,12 @@ int main(int argc, char **argv)
xl_ctx_alloc();
- /* Read global config file options */
- ret = asprintf(&config_file, "%s/xl.conf", libxl_xen_config_dir_path());
- if (ret < 0) {
- fprintf(stderr, "memory allocation failed ret=%d, errno=%d\n", ret, errno);
- exit(1);
- }
-
- ret = libxl_read_file_contents(ctx, config_file,
+ ret = libxl_read_file_contents(ctx, XL_GLOBAL_CONFIG,
&config_data, &config_len);
if (ret)
fprintf(stderr, "Failed to read config file: %s: %s\n",
- config_file, strerror(errno));
- parse_global_config(config_file, config_data, config_len);
- free(config_file);
+ XL_GLOBAL_CONFIG, strerror(errno));
+ parse_global_config(XL_GLOBAL_CONFIG, config_data, config_len);
free(config_data);
/* Reset options for per-command use of getopt. */
diff --git a/tools/libxl/xl.h b/tools/libxl/xl.h
index 7169ed0c59..59556b5244 100644
--- a/tools/libxl/xl.h
+++ b/tools/libxl/xl.h
@@ -17,6 +17,7 @@
#include <assert.h>
+#include "_paths.h"
#include "xentoollog.h"
struct cmd_spec {
@@ -153,6 +154,9 @@ extern enum output_format default_output_format;
extern void printf_info_sexp(int domid, libxl_domain_config *d_config);
+#define XL_GLOBAL_CONFIG XEN_CONFIG_DIR "/xl.conf"
+#define XL_LOCK_FILE XEN_LOCK_DIR "/xl"
+
#endif /* XL_H */
/*