Discussion:
[Xen-changelog] [xen master] tools/libfsimage: Bump soname to 4.12
p***@xen.org
2018-11-04 04:57:06 UTC
Permalink
commit c69a6aca8522c7f676953e56191584381adf2c06
Author: Ian Jackson <***@eu.citrix.com>
AuthorDate: Tue Oct 9 17:02:34 2018 +0100
Commit: Ian Jackson <***@eu.citrix.com>
CommitDate: Mon Oct 15 14:49:33 2018 +0100

tools/libfsimage: Bump soname to 4.12

This library does not have a stable ABI promise. As far as we know it
is used only by pygrub. Bump its soname to the Xen version (and
intend to change it each time).

Signed-off-by: Ian Jackson <***@eu.citrix.com>
Acked-by: Wei Liu <***@citrix.com>
---
tools/libfsimage/common/Makefile | 4 +-
tools/libfsimage/common/fsimage.c | 2 +-
tools/libfsimage/common/fsimage.h | 56 ---------------
tools/libfsimage/common/fsimage_grub.h | 102 ----------------------------
tools/libfsimage/common/fsimage_plugin.h | 64 -----------------
tools/libfsimage/common/xenfsimage.h | 56 +++++++++++++++
tools/libfsimage/common/xenfsimage_grub.h | 102 ++++++++++++++++++++++++++++
tools/libfsimage/common/xenfsimage_plugin.h | 64 +++++++++++++++++
8 files changed, 225 insertions(+), 225 deletions(-)

diff --git a/tools/libfsimage/common/Makefile b/tools/libfsimage/common/Makefile
index a4655c421c..beda8f5f3a 100644
--- a/tools/libfsimage/common/Makefile
+++ b/tools/libfsimage/common/Makefile
@@ -1,8 +1,8 @@
XEN_ROOT = $(CURDIR)/../../..
include $(XEN_ROOT)/tools/libfsimage/Rules.mk

-MAJOR = 1.0
-MINOR = 0
+MAJOR = 0
+MINOR = 4.12

LDFLAGS-$(CONFIG_SunOS) = -Wl,-M -Wl,mapfile-SunOS
LDFLAGS-$(CONFIG_Linux) = -Wl,mapfile-GNU
diff --git a/tools/libfsimage/common/fsimage.c b/tools/libfsimage/common/fsimage.c
index 21d6c38ac6..5cfa56a84d 100644
--- a/tools/libfsimage/common/fsimage.c
+++ b/tools/libfsimage/common/fsimage.c
@@ -31,7 +31,7 @@
#include <errno.h>
#include <pthread.h>

-#include "fsimage_plugin.h"
+#include "xenfsimage_plugin.h"
#include "fsimage_priv.h"

static pthread_mutex_t fsi_lock = PTHREAD_MUTEX_INITIALIZER;
diff --git a/tools/libfsimage/common/fsimage.h b/tools/libfsimage/common/fsimage.h
deleted file mode 100644
index 201abd54f2..0000000000
--- a/tools/libfsimage/common/fsimage.h
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
- * Copyright 2008 Sun Microsystems, Inc. All rights reserved.
- * Use is subject to license terms.
- */
-
-#ifndef _FSIMAGE_H
-#define _FSIMAGE_H
-
-#ifdef __cplusplus
-extern C {
-#endif
-
-#include <sys/types.h>
-#include <stdint.h>
-#include <unistd.h>
-
-typedef struct fsi fsi_t;
-typedef struct fsi_file fsi_file_t;
-
-fsi_t *fsi_open_fsimage(const char *, uint64_t, const char *);
-void fsi_close_fsimage(fsi_t *);
-
-int fsi_file_exists(fsi_t *, const char *);
-fsi_file_t *fsi_open_file(fsi_t *, const char *);
-int fsi_close_file(fsi_file_t *);
-
-ssize_t fsi_read_file(fsi_file_t *, void *, size_t);
-ssize_t fsi_pread_file(fsi_file_t *, void *, size_t, uint64_t);
-
-char *fsi_bootstring_alloc(fsi_t *, size_t);
-void fsi_bootstring_free(fsi_t *);
-char *fsi_fs_bootstring(fsi_t *);
-
-#ifdef __cplusplus
-};
-#endif
-
-#endif /* _FSIMAGE_H */
diff --git a/tools/libfsimage/common/fsimage_grub.h b/tools/libfsimage/common/fsimage_grub.h
deleted file mode 100644
index 534c346b23..0000000000
--- a/tools/libfsimage/common/fsimage_grub.h
+++ /dev/null
@@ -1,102 +0,0 @@
-/*
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
- * Copyright 2008 Sun Microsystems, Inc. All rights reserved.
- * Use is subject to license terms.
- */
-
-#ifndef _FSIMAGE_GRUB_H
-#define _FSIMAGE_GRUB_H
-
-#ifdef __cplusplus
-extern C {
-#endif
-
-#include <sys/types.h>
-#include <string.h>
-#include <stdlib.h>
-#include <ctype.h>
-
-#include "fsimage.h"
-#include "fsimage_plugin.h"
-
-typedef struct fsig_plugin_ops {
- int fpo_version;
- int (*fpo_mount)(fsi_file_t *, const char *);
- int (*fpo_dir)(fsi_file_t *, char *);
- int (*fpo_read)(fsi_file_t *, char *, int);
-} fsig_plugin_ops_t;
-
-#define STAGE1_5
-#define FSYS_BUFLEN 0x40000
-#define SECTOR_BITS 9
-#define SECTOR_SIZE 0x200
-
-#define FSYS_BUF (fsig_file_buf(ffi))
-#define filepos (*fsig_filepos(ffi))
-#define filemax (*fsig_filemax(ffi))
-#define devread fsig_devread
-#define substring fsig_substring
-#define errnum (*fsig_errnum(ffi))
-#define disk_read_func (*fsig_disk_read_junk())
-#define disk_read_hook (*fsig_disk_read_junk())
-#define print_possibilities 0
-#define noisy_printf(fmt...)
-
-#define grub_memset memset
-#define grub_memmove memmove
-#define grub_log2 fsig_log2
-
-extern char **fsig_disk_read_junk(void);
-unsigned long fsig_log2(unsigned long);
-
-#define ERR_FSYS_CORRUPT 1
-#define ERR_OUTSIDE_PART 1
-#define ERR_SYMLINK_LOOP 1
-#define ERR_FILELENGTH 1
-#define ERR_BAD_FILETYPE 1
-#define ERR_FILE_NOT_FOUND 1
-#define ERR_BAD_ARGUMENT 1
-#define ERR_FILESYSTEM_NOT_FOUND 1
-#define ERR_NO_BOOTPATH 1
-#define ERR_DEV_VALUES 1
-#define ERR_WONT_FIT 1
-#define ERR_READ 1
-#define ERR_NEWER_VERSION 1
-
-fsi_plugin_ops_t *fsig_init(fsi_plugin_t *, fsig_plugin_ops_t *);
-
-int fsig_devread(fsi_file_t *, unsigned int, unsigned int, unsigned int, char *);
-int fsig_substring(const char *, const char *);
-
-void *fsig_fs_buf(fsi_t *);
-
-fsi_file_t *fsig_file_alloc(fsi_t *);
-void *fsig_file_buf(fsi_file_t *);
-uint64_t *fsig_filepos(fsi_file_t *);
-uint64_t *fsig_filemax(fsi_file_t *);
-int *fsig_int1(fsi_file_t *);
-int *fsig_int2(fsi_file_t *);
-int *fsig_errnum(fsi_file_t *);
-
-#ifdef __cplusplus
-};
-#endif
-
-#endif /* _FSIMAGE_GRUB_H */
diff --git a/tools/libfsimage/common/fsimage_plugin.h b/tools/libfsimage/common/fsimage_plugin.h
deleted file mode 100644
index a682719a63..0000000000
--- a/tools/libfsimage/common/fsimage_plugin.h
+++ /dev/null
@@ -1,64 +0,0 @@
-/*
- * Permission is hereby granted, free of charge, to any person obtaining a copy
- * of this software and associated documentation files (the "Software"), to
- * deal in the Software without restriction, including without limitation the
- * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
- * sell copies of the Software, and to permit persons to whom the Software is
- * furnished to do so, subject to the following conditions:
- *
- * The above copyright notice and this permission notice shall be included in
- * all copies or substantial portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
- * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
- * Copyright 2006 Sun Microsystems, Inc. All rights reserved.
- * Use is subject to license terms.
- */
-
-#ifndef _FSIMAGE_PLUGIN_H
-#define _FSIMAGE_PLUGIN_H
-
-#ifdef __cplusplus
-extern C {
-#endif
-
-#include <sys/types.h>
-
-#include "fsimage.h"
-
-#define FSIMAGE_PLUGIN_VERSION 1
-
-typedef struct fsi_plugin fsi_plugin_t;
-
-typedef struct fsi_plugin_ops {
- int fpo_version;
- int (*fpo_mount)(fsi_t *, const char *, const char *);
- int (*fpo_umount)(fsi_t *);
- fsi_file_t *(*fpo_open)(fsi_t *, const char *);
- ssize_t (*fpo_read)(fsi_file_t *, void *, size_t);
- ssize_t (*fpo_pread)(fsi_file_t *, void *, size_t, uint64_t);
- int (*fpo_close)(fsi_file_t *);
-} fsi_plugin_ops_t;
-
-typedef fsi_plugin_ops_t *
- (*fsi_plugin_init_t)(int, fsi_plugin_t *, const char **);
-
-void fsip_fs_set_data(fsi_t *, void *);
-fsi_file_t *fsip_file_alloc(fsi_t *, void *);
-void fsip_file_free(fsi_file_t *);
-fsi_t *fsip_fs(fsi_file_t *);
-uint64_t fsip_fs_offset(fsi_t *);
-void *fsip_fs_data(fsi_t *);
-void *fsip_file_data(fsi_file_t *);
-
-#ifdef __cplusplus
-};
-#endif
-
-#endif /* _FSIMAGE_PLUGIN_H */
diff --git a/tools/libfsimage/common/xenfsimage.h b/tools/libfsimage/common/xenfsimage.h
new file mode 100644
index 0000000000..201abd54f2
--- /dev/null
+++ b/tools/libfsimage/common/xenfsimage.h
@@ -0,0 +1,56 @@
+/*
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to
+ * deal in the Software without restriction, including without limitation the
+ * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+ * sell copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
+ *
+ * Copyright 2008 Sun Microsystems, Inc. All rights reserved.
+ * Use is subject to license terms.
+ */
+
+#ifndef _FSIMAGE_H
+#define _FSIMAGE_H
+
+#ifdef __cplusplus
+extern C {
+#endif
+
+#include <sys/types.h>
+#include <stdint.h>
+#include <unistd.h>
+
+typedef struct fsi fsi_t;
+typedef struct fsi_file fsi_file_t;
+
+fsi_t *fsi_open_fsimage(const char *, uint64_t, const char *);
+void fsi_close_fsimage(fsi_t *);
+
+int fsi_file_exists(fsi_t *, const char *);
+fsi_file_t *fsi_open_file(fsi_t *, const char *);
+int fsi_close_file(fsi_file_t *);
+
+ssize_t fsi_read_file(fsi_file_t *, void *, size_t);
+ssize_t fsi_pread_file(fsi_file_t *, void *, size_t, uint64_t);
+
+char *fsi_bootstring_alloc(fsi_t *, size_t);
+void fsi_bootstring_free(fsi_t *);
+char *fsi_fs_bootstring(fsi_t *);
+
+#ifdef __cplusplus
+};
+#endif
+
+#endif /* _FSIMAGE_H */
diff --git a/tools/libfsimage/common/xenfsimage_grub.h b/tools/libfsimage/common/xenfsimage_grub.h
new file mode 100644
index 0000000000..534c346b23
--- /dev/null
+++ b/tools/libfsimage/common/xenfsimage_grub.h
@@ -0,0 +1,102 @@
+/*
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to
+ * deal in the Software without restriction, including without limitation the
+ * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+ * sell copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
+ *
+ * Copyright 2008 Sun Microsystems, Inc. All rights reserved.
+ * Use is subject to license terms.
+ */
+
+#ifndef _FSIMAGE_GRUB_H
+#define _FSIMAGE_GRUB_H
+
+#ifdef __cplusplus
+extern C {
+#endif
+
+#include <sys/types.h>
+#include <string.h>
+#include <stdlib.h>
+#include <ctype.h>
+
+#include "fsimage.h"
+#include "fsimage_plugin.h"
+
+typedef struct fsig_plugin_ops {
+ int fpo_version;
+ int (*fpo_mount)(fsi_file_t *, const char *);
+ int (*fpo_dir)(fsi_file_t *, char *);
+ int (*fpo_read)(fsi_file_t *, char *, int);
+} fsig_plugin_ops_t;
+
+#define STAGE1_5
+#define FSYS_BUFLEN 0x40000
+#define SECTOR_BITS 9
+#define SECTOR_SIZE 0x200
+
+#define FSYS_BUF (fsig_file_buf(ffi))
+#define filepos (*fsig_filepos(ffi))
+#define filemax (*fsig_filemax(ffi))
+#define devread fsig_devread
+#define substring fsig_substring
+#define errnum (*fsig_errnum(ffi))
+#define disk_read_func (*fsig_disk_read_junk())
+#define disk_read_hook (*fsig_disk_read_junk())
+#define print_possibilities 0
+#define noisy_printf(fmt...)
+
+#define grub_memset memset
+#define grub_memmove memmove
+#define grub_log2 fsig_log2
+
+extern char **fsig_disk_read_junk(void);
+unsigned long fsig_log2(unsigned long);
+
+#define ERR_FSYS_CORRUPT 1
+#define ERR_OUTSIDE_PART 1
+#define ERR_SYMLINK_LOOP 1
+#define ERR_FILELENGTH 1
+#define ERR_BAD_FILETYPE 1
+#define ERR_FILE_NOT_FOUND 1
+#define ERR_BAD_ARGUMENT 1
+#define ERR_FILESYSTEM_NOT_FOUND 1
+#define ERR_NO_BOOTPATH 1
+#define ERR_DEV_VALUES 1
+#define ERR_WONT_FIT 1
+#define ERR_READ 1
+#define ERR_NEWER_VERSION 1
+
+fsi_plugin_ops_t *fsig_init(fsi_plugin_t *, fsig_plugin_ops_t *);
+
+int fsig_devread(fsi_file_t *, unsigned int, unsigned int, unsigned int, char *);
+int fsig_substring(const char *, const char *);
+
+void *fsig_fs_buf(fsi_t *);
+
+fsi_file_t *fsig_file_alloc(fsi_t *);
+void *fsig_file_buf(fsi_file_t *);
+uint64_t *fsig_filepos(fsi_file_t *);
+uint64_t *fsig_filemax(fsi_file_t *);
+int *fsig_int1(fsi_file_t *);
+int *fsig_int2(fsi_file_t *);
+int *fsig_errnum(fsi_file_t *);
+
+#ifdef __cplusplus
+};
+#endif
+
+#endif /* _FSIMAGE_GRUB_H */
diff --git a/tools/libfsimage/common/xenfsimage_plugin.h b/tools/libfsimage/common/xenfsimage_plugin.h
new file mode 100644
index 0000000000..a682719a63
--- /dev/null
+++ b/tools/libfsimage/common/xenfsimage_plugin.h
@@ -0,0 +1,64 @@
+/*
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to
+ * deal in the Software without restriction, including without limitation the
+ * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+ * sell copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in
+ * all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
+ *
+ * Copyright 2006 Sun Microsystems, Inc. All rights reserved.
+ * Use is subject to license terms.
+ */
+
+#ifndef _FSIMAGE_PLUGIN_H
+#define _FSIMAGE_PLUGIN_H
+
+#ifdef __cplusplus
+extern C {
+#endif
+
+#include <sys/types.h>
+
+#include "fsimage.h"
+
+#define FSIMAGE_PLUGIN_VERSION 1
+
+typedef struct fsi_plugin fsi_plugin_t;
+
+typedef struct fsi_plugin_ops {
+ int fpo_version;
+ int (*fpo_mount)(fsi_t *, const char *, const char *);
+ int (*fpo_umount)(fsi_t *);
+ fsi_file_t *(*fpo_open)(fsi_t *, const char *);
+ ssize_t (*fpo_read)(fsi_file_t *, void *, size_t);
+ ssize_t (*fpo_pread)(fsi_file_t *, void *, size_t, uint64_t);
+ int (*fpo_close)(fsi_file_t *);
+} fsi_plugin_ops_t;
+
+typedef fsi_plugin_ops_t *
+ (*fsi_plugin_init_t)(int, fsi_plugin_t *, const char **);
+
+void fsip_fs_set_data(fsi_t *, void *);
+fsi_file_t *fsip_file_alloc(fsi_t *, void *);
+void fsip_file_free(fsi_file_t *);
+fsi_t *fsip_fs(fsi_file_t *);
+uint64_t fsip_fs_offset(fsi_t *);
+void *fsip_fs_data(fsi_t *);
+void *fsip_file_data(fsi_file_t *);
+
+#ifdef __cplusplus
+};
+#endif
+
+#endif /* _FSIMAGE_PLUGIN_H */
--
generated by git-patchbot for /home/xen/git/xen.git#master

Loading...