From f838cf6dc212c779562984e8a16a4cedfc1d6daf Mon Sep 17 00:00:00 2001 From: Nikias Bassen Date: Fri, 5 Oct 2018 05:22:29 +0200 Subject: usb: Add hyphen to new style UDIDs introduced with iPhone XS/XR --- src/usb.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/usb.c b/src/usb.c index 0977c24..44c33ce 100644 --- a/src/usb.c +++ b/src/usb.c @@ -277,12 +277,19 @@ static void get_serial_callback(struct libusb_transfer *transfer) else usbdev->serial[di++] = data[si]; } - usbdev->serial[di] = 0; + usbdev->serial[di] = '\0'; usbmuxd_log(LL_INFO, "Got serial '%s' for device %d-%d", usbdev->serial, usbdev->bus, usbdev->address); libusb_free_transfer(transfer); + /* new style UDID: add hyphen between first 8 and following 16 digits */ + if (di == 24) { + memmove(&usbdev->serial[9], &usbdev->serial[8], 16); + usbdev->serial[8] = '-'; + usbdev->serial[di+1] = '\0'; + } + /* Finish setup now */ if(device_add(usbdev) < 0) { usb_disconnect(usbdev); -- cgit v1.1-32-gdbae