Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package libusb-1_0 for openSUSE:Factory checked in at 2021-01-19 16:00:40 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libusb-1_0 (Old) and /work/SRC/openSUSE:Factory/.libusb-1_0.new.28504 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libusb-1_0" Tue Jan 19 16:00:40 2021 rev:43 rq:863914 version:1.0.24 Changes: -------- --- /work/SRC/openSUSE:Factory/libusb-1_0/libusb-1_0.changes 2021-01-08 17:32:25.861160994 +0100 +++ /work/SRC/openSUSE:Factory/.libusb-1_0.new.28504/libusb-1_0.changes 2021-01-19 16:00:49.247255393 +0100 @@ -1,0 +2,5 @@ +Sun Jan 17 11:38:45 UTC 2021 - Simon Vogl <simon.v...@gmx.net> + +- Add 0001-fix-descriptor-parsing.patch to fix detection of some devices. + +------------------------------------------------------------------- New: ---- 0001-fix-descriptor-parsing.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libusb-1_0.spec ++++++ --- /var/tmp/diff_new_pack.pIr63M/_old 2021-01-19 16:00:49.983256506 +0100 +++ /var/tmp/diff_new_pack.pIr63M/_new 2021-01-19 16:00:49.987256512 +0100 @@ -1,7 +1,7 @@ # # spec file for package libusb-1_0 # -# Copyright (c) 2020 SUSE LLC +# Copyright (c) 2021 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -27,6 +27,8 @@ URL: http://libusb.info/ Source: https://github.com/libusb/libusb/releases/download/v%{version}/libusb-%{version}.tar.bz2 Source1: baselibs.conf +# PATCH-FIX-UPSTREAM +Patch1: 0001-fix-descriptor-parsing.patch BuildRequires: dos2unix BuildRequires: pkgconfig BuildRequires: pkgconfig(libudev) @@ -51,7 +53,7 @@ Libusb is a library that allows userspace access to USB devices. %prep -%setup -q -n %{_name}-%{version} +%autosetup -p1 -n %{_name}-%{version} dos2unix NEWS %build ++++++ 0001-fix-descriptor-parsing.patch ++++++ >From f6d2cb561402c3b6d3627c0eb89e009b503d9067 Sun 17 01 11:38:45 2021 From: Simon Vogl <simon.v...@gmx.net> Date: Sun, 17 Jan 2021 11:38:45 UTC Subject: [PATCH] Fix USB Device enumeration This patch fixes a regression introduced in libusb 1.0.24 that prevents certain devices like smartphones from being detected. diff --git a/libusb/os/linux_usbfs.c b/libusb/os/linux_usbfs.c index fb2ed53a..4d2dc8d6 100644 --- a/libusb/os/linux_usbfs.c +++ b/libusb/os/linux_usbfs.c @@ -641,7 +641,12 @@ static int seek_to_next_config(struct libusb_context *ctx, uint8_t *buffer, size_t len) { struct usbi_descriptor_header *header; - int offset = 0; + int offset; + + /* Start seeking past the config descriptor */ + offset = LIBUSB_DT_CONFIG_SIZE; + buffer += LIBUSB_DT_CONFIG_SIZE; + len -= LIBUSB_DT_CONFIG_SIZE; while (len > 0) { if (len < 2) { @@ -718,7 +723,7 @@ static int parse_config_descriptors(struct libusb_device *dev) } if (priv->sysfs_dir) { - /* + /* * In sysfs wTotalLength is ignored, instead the kernel returns a * config descriptor with verified bLength fields, with descriptors * with an invalid bLength removed. @@ -727,8 +732,7 @@ static int parse_config_descriptors(struct libusb_device *dev) int offset; if (num_configs > 1 && idx < num_configs - 1) { - offset = seek_to_next_config(ctx, buffer + LIBUSB_DT_CONFIG_SIZE, - remaining - LIBUSB_DT_CONFIG_SIZE); + offset = seek_to_next_config(ctx, buffer, remaining); if (offset < 0) return offset; sysfs_config_len = (uint16_t)offset;