Sync from SUSE:ALP:Source:Standard:1.0 usbredir revision 04d12a1d34097c7dee8cea3f92400739

This commit is contained in:
Adrian Schröter 2023-06-07 10:07:34 +02:00
commit 1d5a28d976
6 changed files with 583 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -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

BIN
usbredir-0.13.0.tar.xz (Stored with Git LFS) Normal file

Binary file not shown.

BIN
usbredir-0.13.0.tar.xz.sig Normal file

Binary file not shown.

286
usbredir.changes Normal file
View File

@ -0,0 +1,286 @@
-------------------------------------------------------------------
Tue Aug 9 08:19:29 UTC 2022 - Dominique Leuenberger <dimstar@opensuse.org>
- 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 <dimstar@opensuse.org>
- 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 <mliska@suse.cz>
- 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 <dimstar@opensuse.org>
- 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 <dmueller@suse.com>
- 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 <msuchanek@suse.de>
- 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 <brogers@suse.com>
- 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 <brogers@suse.com>
- 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

153
usbredir.keyring Normal file
View File

@ -0,0 +1,153 @@
-----BEGIN PGP PUBLIC KEY BLOCK-----
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
uZkhrGKK6oQ7
=h/5t
-----END PGP PUBLIC KEY BLOCK-----

118
usbredir.spec Normal file
View File

@ -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