Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package multipath-tools for openSUSE:Factory checked in at 2022-10-27 13:52:21 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/multipath-tools (Old) and /work/SRC/openSUSE:Factory/.multipath-tools.new.2275 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "multipath-tools" Thu Oct 27 13:52:21 2022 rev:148 rq:1031265 version:0.9.2+59+suse.ac8942d Changes: -------- --- /work/SRC/openSUSE:Factory/multipath-tools/multipath-tools.changes 2022-10-25 11:18:26.929929377 +0200 +++ /work/SRC/openSUSE:Factory/.multipath-tools.new.2275/multipath-tools.changes 2022-10-27 13:52:27.504045478 +0200 @@ -1,0 +2,6 @@ +Wed Oct 26 06:50:35 UTC 2022 - Martin Wilck <mwi...@suse.com> + +- Update to version 0.9.2+59+suse.ac8942d: + * Fix segfault in "multipath -t" command (boo#1204731) + +------------------------------------------------------------------- Old: ---- multipath-tools-0.9.2+57+suse.cf3c1e9.obscpio New: ---- multipath-tools-0.9.2+59+suse.ac8942d.obscpio ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ multipath-tools.spec ++++++ --- /var/tmp/diff_new_pack.sgc4xQ/_old 2022-10-27 13:52:29.216054051 +0200 +++ /var/tmp/diff_new_pack.sgc4xQ/_new 2022-10-27 13:52:29.220054071 +0200 @@ -34,7 +34,7 @@ %define libdmmp_version %(echo %{_libdmmp_version} | tr . _) Name: multipath-tools -Version: 0.9.2+57+suse.cf3c1e9 +Version: 0.9.2+59+suse.ac8942d Release: 0 Summary: Tools to Manage Multipathed Devices with the device-mapper License: GPL-2.0-only AND GPL-3.0-or-later ++++++ _servicedata ++++++ --- /var/tmp/diff_new_pack.sgc4xQ/_old 2022-10-27 13:52:29.320054572 +0200 +++ /var/tmp/diff_new_pack.sgc4xQ/_new 2022-10-27 13:52:29.324054592 +0200 @@ -1,6 +1,6 @@ <servicedata> <service name="tar_scm"> <param name="url">https://github.com/openSUSE/multipath-tools.git</param> - <param name="changesrevision">cf3c1e964c0cf482cce2a32b8835be688f46841c</param></service></servicedata> + <param name="changesrevision">ac8942d3635fb8e7fcd4d6c046aa699f192e16a6</param></service></servicedata> (No newline at EOF) ++++++ multipath-tools-0.9.2+57+suse.cf3c1e9.obscpio -> multipath-tools-0.9.2+59+suse.ac8942d.obscpio ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/multipath-tools-0.9.2+57+suse.cf3c1e9/libmpathutil/globals.c new/multipath-tools-0.9.2+59+suse.ac8942d/libmpathutil/globals.c --- old/multipath-tools-0.9.2+57+suse.cf3c1e9/libmpathutil/globals.c 2022-10-24 10:15:31.000000000 +0200 +++ new/multipath-tools-0.9.2+59+suse.ac8942d/libmpathutil/globals.c 2022-10-26 08:26:57.000000000 +0200 @@ -2,11 +2,10 @@ #include <libudev.h> #include "globals.h" -struct udev __attribute__((weak)) *udev; -struct config __attribute__((weak)) *get_multipath_config(void) +struct config *get_multipath_config(void) { return NULL; } -void __attribute__((weak)) put_multipath_config(void *p __attribute__((unused))) +void put_multipath_config(void *p __attribute__((unused))) {} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/multipath-tools-0.9.2+57+suse.cf3c1e9/libmpathutil/globals.h new/multipath-tools-0.9.2+59+suse.ac8942d/libmpathutil/globals.h --- old/multipath-tools-0.9.2+57+suse.cf3c1e9/libmpathutil/globals.h 2022-10-24 10:15:31.000000000 +0200 +++ new/multipath-tools-0.9.2+59+suse.ac8942d/libmpathutil/globals.h 2022-10-26 08:26:57.000000000 +0200 @@ -3,25 +3,6 @@ struct config; -/** - * extern variable: udev - * - * A &struct udev instance used by libmultipath. libmultipath expects - * a valid, initialized &struct udev in this variable. - * An application can define this variable itself, in which case - * the applications's instance will take precedence. - * The application can initialize and destroy this variable by - * calling libmultipath_init() and libmultipath_exit(), respectively, - * whether or not it defines the variable itself. - * An application can initialize udev with udev_new() before calling - * libmultipath_init(), e.g. if it has to make libudev calls before - * libmultipath calls. If an application wants to keep using the - * udev variable after calling libmultipath_exit(), it should have taken - * an additional reference on it beforehand. This is the case e.g. - * after initializing udev with udev_new(). - */ -extern struct udev *udev; - /* * libmultipath provides default implementations of * get_multipath_config() and put_multipath_config(). diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/multipath-tools-0.9.2+57+suse.cf3c1e9/libmpathutil/libmpathutil.version new/multipath-tools-0.9.2+59+suse.ac8942d/libmpathutil/libmpathutil.version --- old/multipath-tools-0.9.2+57+suse.cf3c1e9/libmpathutil/libmpathutil.version 2022-10-24 10:15:31.000000000 +0200 +++ new/multipath-tools-0.9.2+59+suse.ac8942d/libmpathutil/libmpathutil.version 2022-10-26 08:26:57.000000000 +0200 @@ -31,6 +31,18 @@ * The new version inherits the previous ones. */ +/* + * Symbols exported by both libmpathutil and libmultipath + * libmpathutil exports just dummy symbols, intended to be overriden + * by those in libmultipath. + * CAUTION - the version in libmpathutil.version and libmultipath.version + * must be THE SAME, otherwise the overriding will fail! + */ +LIBMPATHCOMMON_1.0.0 { + get_multipath_config; + put_multipath_config; +}; + /* symbols referenced by multipath and multipathd */ LIBMULTIPATH_16.0.0 { global: @@ -46,7 +58,6 @@ free_scandir_result; free_strvec; get_monotonic_time; - get_multipath_config; get_next_string; get_strbuf_len; get_strbuf_str; @@ -59,7 +70,6 @@ normalize_timespec; print_strbuf; pthread_cond_init_mono; - put_multipath_config; recv_packet; reset_strbuf; send_packet; @@ -70,7 +80,6 @@ timespeccmp; timespecsub; truncate_strbuf; - udev; ux_socket_listen; vector_alloc; vector_alloc_slot; @@ -90,7 +99,6 @@ append_strbuf_quoted; basenamecpy; cleanup_free_ptr; - devt2devname; filepresent; find_keyword; free_keywords; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/multipath-tools-0.9.2+57+suse.cf3c1e9/libmpathutil/util.c new/multipath-tools-0.9.2+59+suse.ac8942d/libmpathutil/util.c --- old/multipath-tools-0.9.2+57+suse.cf3c1e9/libmpathutil/util.c 2022-10-24 10:15:31.000000000 +0200 +++ new/multipath-tools-0.9.2+59+suse.ac8942d/libmpathutil/util.c 2022-10-26 08:26:57.000000000 +0200 @@ -163,32 +163,6 @@ return bytes; } -int devt2devname(char *devname, int devname_len, const char *devt) -{ - struct udev_device *u_dev; - const char * dev_name; - int r; - - if (!devname || !devname_len || !devt) - return 1; - - u_dev = udev_device_new_from_devnum(udev, 'b', parse_devt(devt)); - if (!u_dev) { - condlog(0, "\"%s\": invalid major/minor numbers, not found in sysfs", devt); - return 1; - } - - dev_name = udev_device_get_sysname(u_dev); - if (!dev_name) { - udev_device_unref(u_dev); - return 1; - } - r = strlcpy(devname, dev_name, devname_len); - udev_device_unref(u_dev); - - return !(r < devname_len); -} - /* This function returns a pointer inside of the supplied pathname string. * If is_path_device is true, it may also modify the supplied string */ char *convert_dev(char *name, int is_path_device) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/multipath-tools-0.9.2+57+suse.cf3c1e9/libmpathutil/util.h new/multipath-tools-0.9.2+59+suse.ac8942d/libmpathutil/util.h --- old/multipath-tools-0.9.2+57+suse.cf3c1e9/libmpathutil/util.h 2022-10-24 10:15:31.000000000 +0200 +++ new/multipath-tools-0.9.2+59+suse.ac8942d/libmpathutil/util.h 2022-10-26 08:26:57.000000000 +0200 @@ -18,7 +18,6 @@ int get_word (const char * sentence, char ** word); size_t strlcpy(char * restrict dst, const char * restrict src, size_t size); size_t strlcat(char * restrict dst, const char * restrict src, size_t size); -int devt2devname (char *, int, const char *); dev_t parse_devt(const char *dev_t); char *convert_dev(char *dev, int is_path_device); void setup_thread_attr(pthread_attr_t *attr, size_t stacksize, int detached); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/multipath-tools-0.9.2+57+suse.cf3c1e9/libmultipath/libmultipath.version new/multipath-tools-0.9.2+59+suse.ac8942d/libmultipath/libmultipath.version --- old/multipath-tools-0.9.2+57+suse.cf3c1e9/libmultipath/libmultipath.version 2022-10-24 10:15:31.000000000 +0200 +++ new/multipath-tools-0.9.2+59+suse.ac8942d/libmultipath/libmultipath.version 2022-10-26 08:26:57.000000000 +0200 @@ -31,6 +31,18 @@ * The new version inherits the previous ones. */ +/* + * Symbols exported by both libmpathutil and libmultipath + * libmpathutil exports just dummy symbols, intended to be overriden + * by those in libmultipath. + * CAUTION - the version in libmpathutil.version and libmultipath.version + * must be THE SAME, otherwise the overriding will fail! + */ +LIBMPATHCOMMON_1.0.0 { + get_multipath_config; + put_multipath_config; +}; + LIBMULTIPATH_17.0.0 { global: /* symbols referenced by multipath and multipathd */ @@ -98,7 +110,6 @@ free_multipathvec; free_path; free_pathvec; - get_multipath_config; get_multipath_layout; get_path_layout; get_pgpolicy_id; @@ -122,7 +133,6 @@ libmp_dm_task_run; libmp_put_multipath_config; libmp_udev_set_sync_support; - libmp_verbosity; libmultipath_exit; libmultipath_init; load_config; @@ -137,7 +147,6 @@ print_all_paths; print_foreign_topology; _print_multipath_topology; - put_multipath_config; reinstate_paths; remember_wwid; remove_map; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/multipath-tools-0.9.2+57+suse.cf3c1e9/libmultipath/sysfs.c new/multipath-tools-0.9.2+59+suse.ac8942d/libmultipath/sysfs.c --- old/multipath-tools-0.9.2+57+suse.cf3c1e9/libmultipath/sysfs.c 2022-10-24 10:15:31.000000000 +0200 +++ new/multipath-tools-0.9.2+59+suse.ac8942d/libmultipath/sysfs.c 2022-10-26 08:26:57.000000000 +0200 @@ -38,6 +38,7 @@ #include "util.h" #include "debug.h" #include "devmapper.h" +#include "config.h" /* * When we modify an attribute value we cannot rely on libudev for now, @@ -181,6 +182,32 @@ return 0; } +int devt2devname(char *devname, int devname_len, const char *devt) +{ + struct udev_device *u_dev; + const char * dev_name; + int r; + + if (!devname || !devname_len || !devt) + return 1; + + u_dev = udev_device_new_from_devnum(udev, 'b', parse_devt(devt)); + if (!u_dev) { + condlog(0, "\"%s\": invalid major/minor numbers, not found in sysfs", devt); + return 1; + } + + dev_name = udev_device_get_sysname(u_dev); + if (!dev_name) { + udev_device_unref(u_dev); + return 1; + } + r = strlcpy(devname, dev_name, devname_len); + udev_device_unref(u_dev); + + return !(r < devname_len); +} + int sysfs_check_holders(char * check_devt, char * new_devt) { unsigned int major, new_minor, table_minor; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/multipath-tools-0.9.2+57+suse.cf3c1e9/libmultipath/sysfs.h new/multipath-tools-0.9.2+59+suse.ac8942d/libmultipath/sysfs.h --- old/multipath-tools-0.9.2+57+suse.cf3c1e9/libmultipath/sysfs.h 2022-10-24 10:15:31.000000000 +0200 +++ new/multipath-tools-0.9.2+59+suse.ac8942d/libmultipath/sysfs.h 2022-10-26 08:26:57.000000000 +0200 @@ -7,6 +7,7 @@ #include <stdbool.h> #include "strbuf.h" +int devt2devname (char *, int, const char *); ssize_t sysfs_attr_set_value(struct udev_device *dev, const char *attr_name, const char * value, size_t value_len); ssize_t sysfs_attr_get_value(struct udev_device *dev, const char *attr_name, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/multipath-tools-0.9.2+57+suse.cf3c1e9/tests/devt.c new/multipath-tools-0.9.2+59+suse.ac8942d/tests/devt.c --- old/multipath-tools-0.9.2+57+suse.cf3c1e9/tests/devt.c 2022-10-24 10:15:31.000000000 +0200 +++ new/multipath-tools-0.9.2+59+suse.ac8942d/tests/devt.c 2022-10-26 08:26:57.000000000 +0200 @@ -19,6 +19,9 @@ #include "util.h" #include "debug.h" +struct path; +#include "sysfs.h" + #include "globals.c" static bool sys_dev_block_exists(void) ++++++ multipath-tools.obsinfo ++++++ --- /var/tmp/diff_new_pack.sgc4xQ/_old 2022-10-27 13:52:29.752056735 +0200 +++ /var/tmp/diff_new_pack.sgc4xQ/_new 2022-10-27 13:52:29.760056775 +0200 @@ -1,5 +1,5 @@ name: multipath-tools -version: 0.9.2+57+suse.cf3c1e9 -mtime: 1666599331 -commit: cf3c1e964c0cf482cce2a32b8835be688f46841c +version: 0.9.2+59+suse.ac8942d +mtime: 1666765617 +commit: ac8942d3635fb8e7fcd4d6c046aa699f192e16a6