Compare commits

..

No commits in common. "ab09b12770200d9a5d884a7e13ccfa0abcbfd6af" and "7f4628150319c42ca40c4c3559db17424e89ab57" have entirely different histories.

10 changed files with 120 additions and 101 deletions

View File

@ -0,0 +1,48 @@
From 7f54d304149f405dc70ac924471df0d5e3e5ea09 Mon Sep 17 00:00:00 2001
From: Gavin Li <gavinli@thegavinli.com>
Date: Sun, 14 Jan 2018 02:10:18 -0800
Subject: [PATCH 1/2] udev: ensure that all events relating to device are
tagged systemd
systemd will not restart the usbmuxd service the after the first time it
is plugged in if it does not receive the "remove" events, which also
happen to lack the idVendor and idProduct attributes, so use
ENV{PRODUCT} instead.
---
configure.ac | 2 +-
udev/39-usbmuxd.rules.in | 7 +++++--
2 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/configure.ac b/configure.ac
index b836f45..1ce46d8 100644
--- a/configure.ac
+++ b/configure.ac
@@ -74,7 +74,7 @@ fi
AM_CONDITIONAL(WANT_SYSTEMD, [test -n "$with_systemdsystemunitdir" -a "x$with_systemdsystemunitdir" != xno -a "x$with_systemd" = "xyes" ])
if test "x$with_systemd" = xyes; then
- udev_activation_rule="TAG+=\"systemd\", ENV{SYSTEMD_WANTS}=\"usbmuxd.service\""
+ udev_activation_rule="ENV{SYSTEMD_WANTS}=\"usbmuxd.service\""
else
udev_activation_rule="RUN+=\"@sbindir@/usbmuxd --user usbmux --udev\""
fi
diff --git a/udev/39-usbmuxd.rules.in b/udev/39-usbmuxd.rules.in
index 91b14db..7d14d22 100644
--- a/udev/39-usbmuxd.rules.in
+++ b/udev/39-usbmuxd.rules.in
@@ -1,7 +1,10 @@
# usbmuxd (Apple Mobile Device Muxer listening on /var/run/usbmuxd)
+# systemd should receive all events relating to device
+SUBSYSTEM=="usb", ENV{PRODUCT}=="5ac/12[9a][0-9a-f]/*", TAG+="systemd"
+
# Initialize iOS devices into "deactivated" USB configuration state and activate usbmuxd
-ACTION=="add", SUBSYSTEM=="usb", ATTR{idVendor}=="05ac", ATTR{idProduct}=="12[9a][0-9a-f]", ENV{USBMUX_SUPPORTED}="1", ATTR{bConfigurationValue}="0", OWNER="usbmux", @udev_activation_rule@
+SUBSYSTEM=="usb", ENV{PRODUCT}=="5ac/12[9a][0-9a-f]/*", ACTION=="add", ENV{USBMUX_SUPPORTED}="1", ATTR{bConfigurationValue}="0", OWNER="usbmux", @udev_activation_rule@
# Exit usbmuxd when the last device is removed
-ACTION=="remove", SUBSYSTEM=="usb", ENV{PRODUCT}=="5ac/12[9a][0-9a-f]/*", ENV{INTERFACE}=="255/*", RUN+="@sbindir@/usbmuxd -x"
+SUBSYSTEM=="usb", ENV{PRODUCT}=="5ac/12[9a][0-9a-f]/*", ACTION=="remove", RUN+="@sbindir@/usbmuxd -x"
--
2.17.0

View File

@ -1,25 +0,0 @@
From e2cd81c05f26fa243be4acf316d2e8766427f2ce Mon Sep 17 00:00:00 2001
From: Martin Szulecki <martin.szulecki@libimobiledevice.org>
Date: Thu, 30 Jul 2020 11:59:10 +0200
Subject: [PATCH] Fix typo in NEWS for last release notes
---
NEWS | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/NEWS b/NEWS
index bc5479d..b2ba013 100644
--- a/NEWS
+++ b/NEWS
@@ -28,7 +28,7 @@ Version 1.1.1
- Fix USB reconnection issues on virtual machines with iOS 11+ devices
- Add support for connecting with T2 chip
- Various memory leak, deadlock and invalid free fixes
- - Show actualy libusb version in debug message on startup
+ - Show actual libusb version in debug message on startup
- Enable libusb debugging output
- Log client process name alongside pid if possible on Linux
- Unify and improve log message output
--
2.33.0

View File

@ -1,26 +0,0 @@
From ecb81751f14af6699aef2ea03d54ec08401a40d5 Mon Sep 17 00:00:00 2001
From: Nikias Bassen <nikias@gmx.li>
Date: Sat, 9 Jan 2021 04:22:41 +0100
Subject: [PATCH] Fix typo in usbmuxd-proto.h
Thanks to @timgates32 for spotting this.
---
src/usbmuxd-proto.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/usbmuxd-proto.h b/src/usbmuxd-proto.h
index 9416416..93df00e 100644
--- a/src/usbmuxd-proto.h
+++ b/src/usbmuxd-proto.h
@@ -19,7 +19,7 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
-/* Protocol defintion for usbmuxd proxy protocol */
+/* Protocol definition for usbmuxd proxy protocol */
#ifndef USBMUXD_PROTO_H
#define USBMUXD_PROTO_H
--
2.33.0

View File

@ -1,25 +0,0 @@
From 4eb83b705fe9cfe3cdb1de158182bddd988ae07b Mon Sep 17 00:00:00 2001
From: Nikias Bassen <nikias@gmx.li>
Date: Wed, 30 Jun 2021 02:33:04 +0200
Subject: [PATCH] README: Fix typo
---
README.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/README.md b/README.md
index 53d9cf5..cf85997 100644
--- a/README.md
+++ b/README.md
@@ -122,7 +122,7 @@ ticket first to discuss the idea upfront to ensure less effort for everyone.
Please make sure your contribution adheres to:
* Try to follow the code style of the project
-* Commit messages should describe the change well without being to short
+* Commit messages should describe the change well without being too short
* Try to split larger changes into individual commits of a common domain
* Use your real name and a valid email address for your commits
--
2.33.0

View File

@ -0,0 +1,33 @@
From b888970f68fb16961a7cc3a526065fab7a5d96ca Mon Sep 17 00:00:00 2001
From: Rudolf Tammekivi <rtammekivi@gmail.com>
Date: Wed, 31 Jan 2018 01:10:54 +0100
Subject: [PATCH 2/2] udev: Handle all events only once
This fixes spontaneous USB reconfiguration causing "remove" event to be sent to
the daemon, which causes it to close itself if it did not have enough time to
connect to phone.
---
udev/39-usbmuxd.rules.in | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/udev/39-usbmuxd.rules.in b/udev/39-usbmuxd.rules.in
index 7d14d22..140869e 100644
--- a/udev/39-usbmuxd.rules.in
+++ b/udev/39-usbmuxd.rules.in
@@ -1,10 +1,10 @@
# usbmuxd (Apple Mobile Device Muxer listening on /var/run/usbmuxd)
# systemd should receive all events relating to device
-SUBSYSTEM=="usb", ENV{PRODUCT}=="5ac/12[9a][0-9a-f]/*", TAG+="systemd"
+SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ENV{PRODUCT}=="5ac/12[9a][0-9a-f]/*", TAG+="systemd"
# Initialize iOS devices into "deactivated" USB configuration state and activate usbmuxd
-SUBSYSTEM=="usb", ENV{PRODUCT}=="5ac/12[9a][0-9a-f]/*", ACTION=="add", ENV{USBMUX_SUPPORTED}="1", ATTR{bConfigurationValue}="0", OWNER="usbmux", @udev_activation_rule@
+SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ENV{PRODUCT}=="5ac/12[9a][0-9a-f]/*", ACTION=="add", ENV{USBMUX_SUPPORTED}="1", ATTR{bConfigurationValue}="0", OWNER="usbmux", @udev_activation_rule@
# Exit usbmuxd when the last device is removed
-SUBSYSTEM=="usb", ENV{PRODUCT}=="5ac/12[9a][0-9a-f]/*", ACTION=="remove", RUN+="@sbindir@/usbmuxd -x"
+SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ENV{PRODUCT}=="5ac/12[9a][0-9a-f]/*", ACTION=="remove", RUN+="@sbindir@/usbmuxd -x"
--
2.17.0

View File

@ -0,0 +1,30 @@
From a4c34c493e5d40395b55871b52b75f33550b9590 Mon Sep 17 00:00:00 2001
From: Bastien Nocera <hadess@hadess.net>
Date: Wed, 18 Apr 2018 15:00:25 +0200
Subject: [PATCH] udev: Work around systemd bug related to bind events
Make sure that udev doesn't lose our properties when bind events come
in, as implemented in kernels 4.12+.
See https://github.com/systemd/systemd/issues/8221
and https://github.com/systemd/systemd/issues/7109
---
udev/39-usbmuxd.rules.in | 3 +++
1 file changed, 3 insertions(+)
diff --git a/udev/39-usbmuxd.rules.in b/udev/39-usbmuxd.rules.in
index 140869e..4e84755 100644
--- a/udev/39-usbmuxd.rules.in
+++ b/udev/39-usbmuxd.rules.in
@@ -6,5 +6,8 @@ SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ENV{PRODUCT}=="5ac/12[9a][0-9a-f]/
# Initialize iOS devices into "deactivated" USB configuration state and activate usbmuxd
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ENV{PRODUCT}=="5ac/12[9a][0-9a-f]/*", ACTION=="add", ENV{USBMUX_SUPPORTED}="1", ATTR{bConfigurationValue}="0", OWNER="usbmux", @udev_activation_rule@
+# Make sure properties don't get lost when bind action is called
+SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ENV{PRODUCT}=="5ac/12[9a][0-9a-f]/*", ACTION=="bind", ENV{USBMUX_SUPPORTED}="1", OWNER="usbmux", @udev_activation_rule@
+
# Exit usbmuxd when the last device is removed
SUBSYSTEM=="usb", ENV{DEVTYPE}=="usb_device", ENV{PRODUCT}=="5ac/12[9a][0-9a-f]/*", ACTION=="remove", RUN+="@sbindir@/usbmuxd -x"
--
2.17.0

BIN
usbmuxd-1.1.0.tar.bz2 Normal file

Binary file not shown.

Binary file not shown.

View File

@ -1,14 +1,14 @@
Name: usbmuxd
Version: 1.1.1
Release: 4
Version: 1.1.0
Release: 16
Summary: Daemon for communicating with Apple's iOS devices
License: GPLv3+ or GPLv2+
URL: http://www.libimobiledevice.org/
Source0: https://github.com/libimobiledevice/usbmuxd/releases/download/%{version}/usbmuxd-%{version}.tar.bz2
Source0: http://www.libimobiledevice.org/downloads/%{name}-%{version}.tar.bz2
Patch1: 0001-Fix-typo-in-NEWS-for-last-release-notes.patch
Patch2: 0001-Fix-typo-in-usbmuxd-proto.h.patch
Patch3: 0001-README-Fix-typo.patch
Patch0000: 0000-udev-ensure-that-all-events-relating-to-device-are-t.patch
Patch0001: 0001-udev-Handle-all-events-only-once.patch
Patch0002: 0002-udev-Work-around-systemd-bug-related-to-bind-events.patch
BuildRequires: gcc libimobiledevice-devel libplist-devel libusbx-devel systemd autoconf libtool automake
Requires(pre): shadow-utils
@ -34,7 +34,7 @@ sed -i 's/--user usbmux/--user usbmuxd/' systemd/usbmuxd.service.in
%build
%configure
%make_build
%make_build V=1
%install
%make_install
@ -54,26 +54,14 @@ exit 0
%systemd_postun_with_restart usbmuxd.service
%files
%doc AUTHORS README.md COPYING.GPLv2 COPYING.GPLv3
%doc AUTHORS README COPYING.GPLv2 COPYING.GPLv3
%{_unitdir}/usbmuxd.service
%{_udevrulesdir}/39-usbmuxd.rules
%{_sbindir}/usbmuxd
%files help
%{_datadir}/man/man8/usbmuxd.8.gz
%{_datadir}/man/man1/usbmuxd.1.gz
%changelog
* Mon Jan 9 2023 caofei <caofei@xfusion.com> - 1.1.1-4
- README: Fix typo
* Sat Jan 7 2023 caofei <caofei@xfusion.com> - 1.1.1-3
- Fix typo in usbmuxd-proto.h
* Fri Jan 6 2023 lingsheng <lingsheng@huawei.com> - 1.1.1-2
- Fix typo in NEWS for last release notes
* Tue Aug 11 2020 lingsheng <lingsheng@huawei.com> - 1.1.1-1
- Update to 1.1.1
* Fri Nov 29 2019 lingsheng <lingsheng@huawei.com> - 1.1.0-16
- Package init

View File

@ -1,4 +0,0 @@
version_control: github
src_repo: libimobiledevice/usbmuxd
tag_prefix: "^"
separator: "."