From 625ec52d1c53a282ec4fcf52f05f036acf6d4e5524ac622fb4ff1d28fed2a015 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrian=20Schr=C3=B6ter?= Date: Sat, 4 May 2024 01:39:50 +0200 Subject: [PATCH] Sync from SUSE:SLFO:Main usbredir revision 04d12a1d34097c7dee8cea3f92400739 --- .gitattributes | 23 +++ usbredir-0.13.0.tar.xz | 3 + usbredir-0.13.0.tar.xz.sig | Bin 0 -> 566 bytes usbredir.changes | 286 +++++++++++++++++++++++++++++++++++++ usbredir.keyring | 153 ++++++++++++++++++++ usbredir.spec | 118 +++++++++++++++ 6 files changed, 583 insertions(+) create mode 100644 .gitattributes create mode 100644 usbredir-0.13.0.tar.xz create mode 100644 usbredir-0.13.0.tar.xz.sig create mode 100644 usbredir.changes create mode 100644 usbredir.keyring create mode 100644 usbredir.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/usbredir-0.13.0.tar.xz b/usbredir-0.13.0.tar.xz new file mode 100644 index 0000000..889494e --- /dev/null +++ b/usbredir-0.13.0.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ba6faa02c0ae6deeb4c53883d66ab54b3a5899bead42ce4ded9568b9a7dc46e +size 69580 diff --git a/usbredir-0.13.0.tar.xz.sig b/usbredir-0.13.0.tar.xz.sig new file mode 100644 index 0000000000000000000000000000000000000000000000000000000000000000..da3e7a0472074df01fbd2a234c0c072896ca6402742b289a422350331ed33356 GIT binary patch literal 566 zcmV-60?GY}0y6{v0SEvc79j*6Z96qDR&P5FWpe44*%CeDdPq+N0%Gbj(f|qx5SQ5! zJ>z;vPoz5!|6rJ@?SMOYzgkuA9z@sbh2~UrIV~WKO{l)62Dg>M6W^ZC@k9#`m{+J) zb;WRTF0>-8XFHafUBGa;jwz;aKsBtn^HMY##uyc@2-=&Ojn@N8mhH!j=Txod z7H&E1@s24GQ~=d|P(M};huF#!Y+Qf*Zj&VZ%v1GUsUA5pf0>iLExtoWNN~8K(!P^O z_l*Jw6~r&H9tQzxgli{}>6?negeO*yrrB|}vQx#)U3v=s&H&*5lPVhBY!K@Y&GwpJ zU9 zVMh-c0`nOB*|~nTB7GMH(to>sQQzp`7btrFr68mNrS|DlZ$31_jmO|GmW zo0ZqgyK^nNbM1t1v(veSTH + +- Update to version 0.13.0: + + Fix regression on unserialize data + + Removes usbredirserver + + Improved header length checks when unserialising data + + Fix usage of command line argument in usbredirect + + Fix small memory leak on usbredirect +- Drop 9426fdb1.patch and dffc41c3.patch: fixed upstream. +- Drop + 0001-Use-D_FORTIFY_SOURCE-instead-of-Wp-D_FORTIFY_SOURCE.patch: + fixed upstream. +- Add keyring to validate source signature. + +------------------------------------------------------------------- +Wed Jun 8 10:13:43 UTC 2022 - Dominique Leuenberger + +- Add upstream backported patches (boo#1199354): + + 9426fdb1.patch: Check header length unserialising data. + + dffc41c3.patch: usbredirect: fix leak on bad input. + +------------------------------------------------------------------- +Tue Apr 12 08:40:50 UTC 2022 - Martin Liška + +- Add 0001-Use-D_FORTIFY_SOURCE-instead-of-Wp-D_FORTIFY_SOURCE.patch + that enables future switch to -D_FORTIFY_SOURCE=3 + (gl#spice/usbredir#60). + +------------------------------------------------------------------- +Wed Jan 5 11:20:04 UTC 2022 - Dominique Leuenberger + +- Drop unknown llvm-fuzz meson paramerter: meson 0.60 is strict and + fails when unknown parameters are being passed. + +------------------------------------------------------------------- +Mon Dec 20 23:10:25 UTC 2021 - Dirk Müller + +- update to 0.12.0: + * Implement dropping packets from isochronous devices + when buffer is owned by usbredirparser library + * Use packet size limit on deserialization + * Fix possible bad state in deserialization logic + * Fix possible memory leak in serialization logic + * Fix (un)serialization with empty write buffers + * Improvements to usbredirparserfuzz + +------------------------------------------------------------------- +Tue Aug 24 12:36:57 UTC 2021 - Michal Suchanek + +- Update to version 0.11.0 + - Avoid use-after-free in serialization (CVE-2021-3700, bsc#1189491) + - Add local directory to include search path for meson + - Fix generated by meson libusbredirhost.pc +- Remove upstreamed patches + - meson-Fix-include-directories-needed-to-build.patch + - meson-Fix-pkgconfig-required-library-name-reference.patch + - usbredir-CVE-2021-3700.patch + +------------------------------------------------------------------- +Tue Aug 24 13:46:46 CEST 2021 - ro@suse.de + +- add patch usbredir-CVE-2021-3700.patch + fix use-after-free in usbredirparser_serialize + (CVE-2021-3700,bsc#1189491) + +------------------------------------------------------------------- +Mon Apr 5 18:28:43 UTC 2021 - Bruce Rogers + +- Update to version 0.9.0 + + Changes noted in ChangeLog.md: + !2 Add usbredirect tool with feature parity with usbredirserver + !6 Add fuzzer for usbredirparser + !12 Add MSI installer for usbredirect tool + !11 Add meson build: autotool will be removed in a future release + !5 Limit packet's length to 65 kB + !4 Fix wrong up-cast when checking for package's length + Require LLVM's compiler-rt (optional: for fuzzer) + Require glib2 >= 2.44 (optional: for usbredirect) + Deprecate usbredirserver in favor of usbredirect + + Require libusb-1.0 >= 1.22 due to libusb_set_option() usage + + Require meson >= 0.48 due to dictionary usage + + Change docs to be in markdown format + + add usbredir TCP client + + add meson build support (which we now use to build package) +- Package the new usbredir TCP client: 'usbredirect' +- Fix meson include directory paths + + meson-Fix-include-directories-needed-to-build.patch +- Fix pkgconfig data used in meson build + + meson-Fix-pkgconfig-required-library-name-reference.patch + +------------------------------------------------------------------- +Mon Sep 17 23:13:41 UTC 2018 - Bruce Rogers + +- Update to version 0.8.0 + + usbredirfilter: + -Fix busy wait due endless recursion when interface_count is zero + + usbredirhost: + -Fix leak on error + + usbredirserver: + -Use 'busnum-devnum' instead of 'usbbus-usbaddr' + -Add support for bind specific address -4 for ipv4, -6 for ipv6 + -Reject empty vendorid from command line + -Enable TCP keepalive + +------------------------------------------------------------------- +Tue Feb 16 09:41:33 UTC 2016 - mkravec@suse.com + +- Update to version 0.7.1 + + usbredirfilter: + -force check to device which had all interfaces skipped. This fix a bug + which allow a KVM device to be redirect when it should not + + usbredirparser: + -allow missing capabilities from source host when loading a USB + redirection stream during a qemu migration + + usbredirhost: + -new callback to drop isoc packets when application's pending writes buffer + size is too big; The threshold calculation aims at 10fps as worst case to + give at least 150ms of continuous data to application. + +------------------------------------------------------------------- +Wed Oct 15 12:36:35 UTC 2014 - zaitor@opensuse.org + +- Update to version 0.7: + + usbredirproto: + - The usb_redir_ep_info_header has been extended with a + max_streams field, this is only send / received if both sides + have usb_redir_cap_bulk_streams. + - Change bulk_stream packet definitions to allow allocating/ + freeing streams on multiple endpoints in one go, technically + this is a protocol change, but no-one has implemented + usb_redir_cap_bulk_streams so far, so we can safely do this. + - Add a USBREDIR_VERSION define so applications can test + against which version they are building. + + usbredirparser: Fix a bug causing parsing breakage when + receiving a hello packet with 64 bit id capabiliy and another + packet in succession so that they both got parsed in one + usbredirparser_do_read call. + + usbredirhost: + - Use libusb_set_auto_detach_kernel_driver when available. + - Add support for bulk streams, this only gets enabled with + libusbx >= 1.0.19. + - Stop iso / bulk streams on reset. + - Make cancellation handeling more robust. + - Reset device on release. + + usbredirserver: Listen to both ipv4 and ipv6 addresses on ipv6 + capable systems. + +------------------------------------------------------------------- +Sun Dec 23 11:28:14 UTC 2012 - zaitor@opensuse.org + +- Update to version 0.6: + + usbredirproto: + - add support for bulk packets with 32 bits length + - add support for buffered bulk input + + usbredirparser: + - add support for bulk packets with 32 bits length + - add support for buffered bulk input + + usbredirhost: + - add support for bulk packets with 32 bits length + - queue multiple transfers for interrupt receiving + - add support for buffered bulk input + - only apply mult to max-packet-size for isoc high speed + endpoints + - add a do-not-reset device blacklist, populate it with + 1210:001c +- Changes from version 0.5.3: + + usbredirparser: + - add support for bulk packets longer then 65535 bytes + + usbredirhost: + - add support for bulk packets longer then 65535 bytes + +------------------------------------------------------------------- +Mon Dec 3 12:23:33 UTC 2012 - p.drouand@gmail.com + +- Rename libusbredirparser0 to libusbredirparser1: + The lib version has changed + +------------------------------------------------------------------- +Mon Dec 3 12:22:16 UTC 2012 - p.drouand@gmail.com + +- Update to version 0.5.2: + + usbredirparser: + -rename libusbredirparser.pc to libusbredirparser-0.5.pc + This should really have been done with the 0.5 release as API + compatibility with previous releases was broken there! +------------------------------------------------------------------- +Mon Dec 3 12:21:00 UTC 2012 - p.drouand@gmail.com + +- Update to version 0.5.1: + + usbredirparser: + -usbredirparser_has_data_to_write now returns the write queue depth, + instead of only 0 or 1 + + usbredirhost: + -usbredirhost_has_data_to_write now returns the write queue depth, + instead of only 0 or 1 + -when the write queue gets too large, drop isochronous input packets + +------------------------------------------------------------------- +Mon Dec 3 12:18:34 UTC 2012 - p.drouand@gmail.com + +- Update to version 0.5: + -Windows support + -Add support for 64 bit packet ids + -usbredirparser: + -Add state serialization support + -API and ABI changed to use 64 bit ids, + -usbredirhost: + -Remove bulk packets time out, this fixes various devices not working + -Ack packet cancels immediately + -Now supports 64 bits packet ids + -Use libusb_error_name instead of logging raw error codes + -usbredirfilter_check return -ENOENT rather then -EPERM if no rules match a + device, this way the caller can differentiate between a deny caused by a + matching rule, and one caused by there being no matching rules. +------------------------------------------------------------------- +Fri Apr 20 09:41:31 UTC 2012 - joop.boonen@opensuse.org + +- Update to version 0.4.3: + + usbredirhost: + - Don't crash on devices in unconfigured state + - Restore original device configuration when releasing the device + - Significantly speed up reset handling + + usbredirserver: + -Add a manpage + +------------------------------------------------------------------- +Fri Mar 9 12:40:38 UTC 2012 - dimstar@opensuse.org + +- Update to version 0.4.2: + + Add usb_redir_babble status code + + usbredirparser: + - extend the usb_redir_ep_info packet header with a + max_packet_size field + + usbredirhost: + - Ensure we always re-attach kernel drivers on cleanup + - Make set_config handling more robust + - A set_config or a reset can cause us to loose access to the + device +- Changes from version 0.4.1: + + Brown paper bag release, fix a return without value in a non + void function +- Changes from version 0.4: + + Add usb_redir_filter_reject and usb_redir_filter_filter + packets and an usb_redir_cap_filter capability flag + + Add an usb_redir_device_disconnect_ack packet and an + usb_redir_cap_device_disconnect_ack capability flag + + usbredirparser: + - Add an usbredirparser_have_peer_caps function + + usbredirhost: + - Allow re-using a host instance with multiple devices + - Quite a few bugfixes + +------------------------------------------------------------------- +Tue Jan 31 09:48:20 UTC 2012 - dimstar@opensuse.org + +- Update to version 0.3.3: + + usbredirparser: + - add usbredirfilter code, to help apps exclude certain devices + from redirection. + + usbredirhost: + - add a usbredirhost_check_device_filter helper function. +- Changes from version 0.3.2: + + Switched to automake/autoconf/libtool based make system + + usbredirparser: + - limited multi-thread safeness, see README.multi-thread + - extend the device_connect packet header with a device_version + field + - Add a hello_func callback which gets called after receiving + the hello packet from the other side. This can be used to + determine when the caps from the other side have been + received and it thus is safe to call + usbredirparser_send_device_connect. + + usbredirhost: + - limited multi-thread safeness, see README.multi-thread + - properly handle clear stalls send from the usbguest + - try to keep our iso buffer size near the target size + - implement usb_redir_cap_connect_device_version +- Call configure instead of exporting LDFLAGS and CPPFLAGS; this + is now possible as upstream switched to auto*. + +------------------------------------------------------------------- +Thu Nov 24 17:11:23 UTC 2011 - dimstar@opensuse.org + +- Initial package, version 0.3.1 + diff --git a/usbredir.keyring b/usbredir.keyring new file mode 100644 index 0000000..7285c2e --- /dev/null +++ b/usbredir.keyring @@ -0,0 +1,153 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +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 +uZkhrGKK6oQ7 +=h/5t +-----END PGP PUBLIC KEY BLOCK----- diff --git a/usbredir.spec b/usbredir.spec new file mode 100644 index 0000000..eb26726 --- /dev/null +++ b/usbredir.spec @@ -0,0 +1,118 @@ +# +# spec file for package usbredir +# +# Copyright (c) 2022 SUSE LLC +# Copyright (c) 2011 Dominique Leuenberger, Amsterdam, The Netherlands. +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +Name: usbredir +Version: 0.13.0 +Release: 0 +Summary: A protocol for redirecting USB traffic +License: GPL-2.0-or-later AND LGPL-2.1-or-later +Group: System/Libraries +URL: https://www.spice-space.org/usbredir.html +Source: https://www.spice-space.org/download/usbredir/%{name}-%{version}.tar.xz +Source1: https://www.spice-space.org/download/usbredir/%{name}-%{version}.tar.xz.sig +Source99: %{name}.keyring +BuildRequires: gcc-c++ +BuildRequires: glib2-devel >= 2.44 +BuildRequires: meson >= 0.48 +BuildRequires: pkgconfig(libusb-1.0) >= 1.0.22 +BuildRoot: %{_tmppath}/%{name}-%{version}-build + +%description +usbredir is a protocol for redirecting USB traffic from a single USB device, +to a different (virtual) machine than the one to which the USB device is +attached. See usb-redirection-protocol.md for the description / definition +of this protocol. + +%package -n libusbredirhost1 +Summary: A protocol for redirecting USB traffic - Host-side library +Group: System/Libraries + +%description -n libusbredirhost1 +usbredir is a protocol for redirecting USB traffic from a single USB device, +to a different (virtual) machine than the one to which the USB device is +attached. See usb-redirection-protocol.md for the description / definition +of this protocol. + +%package -n libusbredirparser1 +Summary: A protocol for redirecting USB traffic - Client-side library +Group: System/Libraries +Obsoletes: libusbredirparser0 < %{version} +Provides: libusbredirparser0 = %{version} + +%description -n libusbredirparser1 +usbredir is a protocol for redirecting USB traffic from a single USB device, +to a different (virtual) machine than the one to which the USB device is +attached. See usb-redirection-protocol.md for the description / definition +of this protocol. + +%package devel +Summary: A protocol for redirecting USB traffic - Development files +Group: Development/Languages/C and C++ +Requires: libusbredirhost1 = %{version} +Requires: libusbredirparser1 = %{version} + +%description devel +usbredir is a protocol for redirecting USB traffic from a single USB device, +to a different (virtual) machine than the one to which the USB device is +attached. See usb-redirection-protocol.md for the description / definition +of this protocol. + +%prep +%autosetup -n %{name}-%{version} -p1 + +%build +%meson +%meson_build + +%install +%meson_install + +%post -n libusbredirhost1 -p /sbin/ldconfig +%postun -n libusbredirhost1 -p /sbin/ldconfig +%post -n libusbredirparser1 -p /sbin/ldconfig +%postun -n libusbredirparser1 -p /sbin/ldconfig + +%files +%defattr(-,root,root) +%doc ChangeLog.md README.md +%license COPYING +%{_bindir}/usbredirect +%{_mandir}/man1/usbredirect.1.gz + +%files -n libusbredirhost1 +%defattr(-, root, root) +%{_libdir}/libusbredirhost.so.* + +%files -n libusbredirparser1 +%defattr(-, root, root) +%{_libdir}/libusbredirparser.so.* + +%files devel +%defattr(-, root, root) +%doc docs/multi-thread.md docs/usb-redirection-protocol.md +%{_includedir}/usbredirhost.h +%{_includedir}/usbredirfilter.h +%{_includedir}/usbredirparser.h +%{_includedir}/usbredirproto.h +%{_libdir}/libusbredirhost.so +%{_libdir}/libusbredirparser.so +%{_libdir}/pkgconfig/libusbredirhost.pc +%{_libdir}/pkgconfig/libusbredirparser-0.5.pc + +%changelog