From f570d66da9eabd667ffe0385606c310a4de39fe5 Mon Sep 17 00:00:00 2001 From: Benjamin Berg Date: Thu, 1 Jul 2021 17:11:22 +0200 Subject: [PATCH 01/32] Update to 1.92.0 (#1977842) --- .gitignore | 1 + 306.patch | 300 +++++++++++++++++++++++++++++++++++++++++++++++++ libfprint.spec | 12 +- sources | 2 +- 4 files changed, 311 insertions(+), 4 deletions(-) create mode 100644 306.patch diff --git a/.gitignore b/.gitignore index 7961d6f..86703ff 100644 --- a/.gitignore +++ b/.gitignore @@ -15,3 +15,4 @@ libfprint-0.3.0.tar.bz2 /libfprint-v1.90.5.tar.gz /libfprint-v1.90.6.tar.gz /libfprint-v1.90.7.tar.gz +/libfprint-v1.92.0.tar.gz diff --git a/306.patch b/306.patch new file mode 100644 index 0000000..40ca308 --- /dev/null +++ b/306.patch @@ -0,0 +1,300 @@ +From 96afb4577986451eb41df39e4eea2b9d8f96cd7c Mon Sep 17 00:00:00 2001 +From: Benjamin Berg +Date: Thu, 1 Jul 2021 17:37:53 +0200 +Subject: [PATCH 1/8] spi: Fix pointer cast on 32bit architectures + +--- + libfprint/fpi-spi-transfer.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/libfprint/fpi-spi-transfer.c b/libfprint/fpi-spi-transfer.c +index f820c53d..f5d2617d 100644 +--- a/libfprint/fpi-spi-transfer.c ++++ b/libfprint/fpi-spi-transfer.c +@@ -323,7 +323,7 @@ transfer_chunk (FpiSpiTransfer *transfer, gsize full_length, gsize *transferred) + { + if (skip < transfer->length_wr && len < block_size) + { +- xfer[transfers].tx_buf = (guint64) transfer->buffer_wr + skip; ++ xfer[transfers].tx_buf = (gsize) transfer->buffer_wr + skip; + xfer[transfers].len = MIN (block_size, transfer->length_wr - skip); + + len += xfer[transfers].len; +@@ -340,7 +340,7 @@ transfer_chunk (FpiSpiTransfer *transfer, gsize full_length, gsize *transferred) + { + if (skip < transfer->length_rd && len < block_size) + { +- xfer[transfers].rx_buf = (guint64) transfer->buffer_rd + skip; ++ xfer[transfers].rx_buf = (gsize) transfer->buffer_rd + skip; + xfer[transfers].len = MIN (block_size, transfer->length_rd - skip); + + len += xfer[transfers].len; +-- +GitLab + + +From 9e5cf81ef8355b1c267a883b496e580080cbf1c6 Mon Sep 17 00:00:00 2001 +From: Benjamin Berg +Date: Thu, 1 Jul 2021 17:51:07 +0200 +Subject: [PATCH 2/8] upektc_img: Fix warnings in debug format strings + +--- + libfprint/drivers/upektc_img.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/libfprint/drivers/upektc_img.c b/libfprint/drivers/upektc_img.c +index 34e3b9de..19bc4158 100644 +--- a/libfprint/drivers/upektc_img.c ++++ b/libfprint/drivers/upektc_img.c +@@ -221,7 +221,7 @@ capture_read_data_cb (FpiUsbTransfer *transfer, FpDevice *device, + if (response_size > transfer->actual_length) + { + fp_dbg ("response_size is %lu, actual_length is %d", +- response_size, (gint) transfer->actual_length); ++ (gulong) response_size, (gint) transfer->actual_length); + fp_dbg ("Waiting for rest of transfer"); + BUG_ON (self->response_rest); + self->response_rest = response_size - transfer->actual_length; +@@ -309,7 +309,7 @@ capture_read_data_cb (FpiUsbTransfer *transfer, FpDevice *device, + data); + BUG_ON (self->image_size != IMAGE_SIZE); + fp_dbg ("Image size is %lu", +- self->image_size); ++ (gulong) self->image_size); + img = fp_image_new (IMAGE_WIDTH, IMAGE_HEIGHT); + img->flags |= FPI_IMAGE_PARTIAL; + memcpy (img->data, self->image_bits, +-- +GitLab + + +From 8edfd4203c72924e9dd3377a2f3e19174339e6fc Mon Sep 17 00:00:00 2001 +From: Benjamin Berg +Date: Thu, 1 Jul 2021 18:27:13 +0200 +Subject: [PATCH 3/8] upektc: Fix format string on architectures where 64bit is + not long + +--- + libfprint/drivers/upektc.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/libfprint/drivers/upektc.c b/libfprint/drivers/upektc.c +index c8113f6c..115e6b60 100644 +--- a/libfprint/drivers/upektc.c ++++ b/libfprint/drivers/upektc.c +@@ -411,7 +411,7 @@ dev_init (FpImageDevice *dev) + break; + + default: +- fp_err ("Device variant %lu is not known", driver_data); ++ fp_err ("Device variant %" G_GUINT64_FORMAT " is not known", driver_data); + g_assert_not_reached (); + fpi_image_device_open_complete (dev, fpi_device_error_new (FP_DEVICE_ERROR_GENERAL)); + return; +-- +GitLab + + +From 78b1b679d79e0af0c17f8450b034b267ba837783 Mon Sep 17 00:00:00 2001 +From: Benjamin Berg +Date: Tue, 6 Jul 2021 20:48:12 +0200 +Subject: [PATCH 4/8] upeksonly: Fix format string warning by using unsigned + +There is no need to use size_t for num_rows as it is capped to NUM_ROWS +which is defined to 2048. +--- + libfprint/drivers/upeksonly.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/libfprint/drivers/upeksonly.c b/libfprint/drivers/upeksonly.c +index 5b2ffdf5..9d93cc76 100644 +--- a/libfprint/drivers/upeksonly.c ++++ b/libfprint/drivers/upeksonly.c +@@ -79,7 +79,7 @@ struct _FpiDeviceUpeksonly + int num_flying; + + GSList *rows; +- size_t num_rows; ++ unsigned num_rows; + unsigned char *rowbuf; + int rowbuf_offset; + +@@ -215,7 +215,7 @@ handoff_img (FpImageDevice *dev) + + self->rows = g_slist_reverse (self->rows); + +- fp_dbg ("%lu rows", self->num_rows); ++ fp_dbg ("%u rows", self->num_rows); + img = fpi_assemble_lines (&self->assembling_ctx, self->rows, self->num_rows); + + g_slist_free_full (self->rows, g_free); +@@ -295,7 +295,7 @@ row_complete (FpImageDevice *dev) + if (self->num_blank > FINGER_REMOVED_THRESHOLD) + { + self->finger_state = FINGER_REMOVED; +- fp_dbg ("detected finger removal. Blank rows: %d, Full rows: %lu", ++ fp_dbg ("detected finger removal. Blank rows: %d, Full rows: %u", + self->num_blank, self->num_rows); + handoff_img (dev); + return; +-- +GitLab + + +From 90b466f122aa74b58807e56720cd49f3b317a709 Mon Sep 17 00:00:00 2001 +From: Benjamin Berg +Date: Tue, 6 Jul 2021 20:55:00 +0200 +Subject: [PATCH 5/8] upekts: Fix format strings + +--- + libfprint/drivers/upekts.c | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/libfprint/drivers/upekts.c b/libfprint/drivers/upekts.c +index 1f1b1810..3d82cb33 100644 +--- a/libfprint/drivers/upekts.c ++++ b/libfprint/drivers/upekts.c +@@ -366,7 +366,7 @@ read_msg_cb (FpiUsbTransfer *transfer, FpDevice *device, + fp_err ("async msg read too short (%d)", + (gint) transfer->actual_length); + error = fpi_device_error_new_msg (FP_DEVICE_ERROR_PROTO, +- "Packet from device was too short (%lu)", ++ "Packet from device was too short (%" G_GSSIZE_FORMAT ")", + transfer->actual_length); + goto err; + } +@@ -993,7 +993,7 @@ e_handle_resp00 (FpDevice *dev, unsigned char *data, + + if (data_len != 14) + { +- fp_err ("received 3001 poll response of %lu bytes?", data_len); ++ fp_err ("received 3001 poll response of %" G_GSIZE_FORMAT " bytes?", data_len); + do_enroll_stop (dev, NULL, + fpi_device_error_new_msg (FP_DEVICE_ERROR_PROTO, + "received 3001 response with wrong length")); +@@ -1090,7 +1090,7 @@ e_handle_resp02 (FpDevice *dev, unsigned char *data, + + if (data_len < sizeof (scan_comp)) + { +- fp_err ("fingerprint data too short (%lu bytes)", data_len); ++ fp_err ("fingerprint data too short (%" G_GSIZE_FORMAT "u bytes)", data_len); + error = fpi_device_error_new_msg (FP_DEVICE_ERROR_PROTO, "fingerprint data too short"); + } + else if (memcmp (data, scan_comp, sizeof (scan_comp)) != 0) +@@ -1318,7 +1318,7 @@ v_handle_resp00 (FpDevice *dev, unsigned char *data, + + if (data_len != 14) + { +- fp_warn ("received 3001 poll response of %lu bytes?", data_len); ++ fp_warn ("received 3001 poll response of %" G_GSIZE_FORMAT "u bytes?", data_len); + error = fpi_device_error_new (FP_DEVICE_ERROR_PROTO); + goto out; + } +-- +GitLab + + +From b872367aff0c0580318c9159c105a06ea849e613 Mon Sep 17 00:00:00 2001 +From: Benjamin Berg +Date: Tue, 6 Jul 2021 20:55:23 +0200 +Subject: [PATCH 6/8] virtual-device: Fix format strings + +--- + libfprint/drivers/virtual-device.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/libfprint/drivers/virtual-device.c b/libfprint/drivers/virtual-device.c +index effcd593..1743692b 100644 +--- a/libfprint/drivers/virtual-device.c ++++ b/libfprint/drivers/virtual-device.c +@@ -192,7 +192,7 @@ process_cmds (FpDeviceVirtualDevice * self, + { + guint64 sleep_ms = g_ascii_strtoull (cmd + strlen (SLEEP_CMD_PREFIX), NULL, 10); + +- g_debug ("Sleeping %lums", sleep_ms); ++ g_debug ("Sleeping %" G_GUINT64_FORMAT "ms", sleep_ms); + self->sleep_timeout_id = g_timeout_add (sleep_ms, sleep_timeout_cb, self); + + return FALSE; +@@ -275,7 +275,7 @@ recv_instruction_cb (GObject *source_object, + gsize bytes; + + bytes = fpi_device_virtual_listener_read_finish (listener, res, &error); +- fp_dbg ("Got instructions of length %ld", bytes); ++ fp_dbg ("Got instructions of length %" G_GSIZE_FORMAT, bytes); + + if (error) + { +-- +GitLab + + +From 7bdb96f3df16e80432c7d0488762d0551cddc252 Mon Sep 17 00:00:00 2001 +From: Benjamin Berg +Date: Tue, 6 Jul 2021 22:49:15 +0200 +Subject: [PATCH 7/8] aesx660: Fix format strings + +--- + libfprint/drivers/aesx660.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/libfprint/drivers/aesx660.c b/libfprint/drivers/aesx660.c +index fb786600..dc0bc0de 100644 +--- a/libfprint/drivers/aesx660.c ++++ b/libfprint/drivers/aesx660.c +@@ -365,7 +365,7 @@ capture_read_stripe_data_cb (FpiUsbTransfer *transfer, + return; + } + +- fp_dbg ("Got %lu bytes of data", actual_length); ++ fp_dbg ("Got %" G_GSIZE_FORMAT " bytes of data", actual_length); + while (actual_length) + { + gssize payload_length; +@@ -386,7 +386,7 @@ capture_read_stripe_data_cb (FpiUsbTransfer *transfer, + (priv->stripe_packet->data[AESX660_RESPONSE_SIZE_MSB_OFFSET] << 8); + fp_dbg ("Got frame, type %.2x payload of size %.4lx", + priv->stripe_packet->data[AESX660_RESPONSE_TYPE_OFFSET], +- payload_length); ++ (long) payload_length); + + still_needed_len = MAX (0, AESX660_HEADER_SIZE + payload_length - (gssize) priv->stripe_packet->len); + copy_len = MIN (actual_length, still_needed_len); +@@ -441,7 +441,7 @@ capture_run_state (FpiSsm *ssm, FpDevice *_dev) + break; + + case CAPTURE_SET_IDLE: +- fp_dbg ("Got %lu frames", priv->strips_len); ++ fp_dbg ("Got %" G_GSIZE_FORMAT " frames", priv->strips_len); + aesX660_send_cmd (ssm, _dev, set_idle_cmd, sizeof (set_idle_cmd), + capture_set_idle_cmd_cb); + break; +-- +GitLab + + +From 94dbcc3d0da5e121a59f8fe634bae3d56a070464 Mon Sep 17 00:00:00 2001 +From: Benjamin Berg +Date: Tue, 6 Jul 2021 22:49:23 +0200 +Subject: [PATCH 8/8] elanspi: Fix format string + +--- + libfprint/drivers/elanspi.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/libfprint/drivers/elanspi.c b/libfprint/drivers/elanspi.c +index fab958b6..daea67c3 100644 +--- a/libfprint/drivers/elanspi.c ++++ b/libfprint/drivers/elanspi.c +@@ -1219,7 +1219,7 @@ elanspi_guess_image (FpiDeviceElanSpi *self, guint16 *raw_image) + + sq_stddev /= (frame_width * frame_height); + +- fp_dbg (" stddev=%ld, ip=%d, is_fp=%d, is_empty=%d", sq_stddev, invalid_percent, is_fp, is_empty); ++ fp_dbg (" stddev=%" G_GUINT64_FORMAT "d, ip=%d, is_fp=%d, is_empty=%d", sq_stddev, invalid_percent, is_fp, is_empty); + + if (invalid_percent < ELANSPI_MAX_REAL_INVALID_PERCENT) + is_fp += 1; +-- +GitLab + diff --git a/libfprint.spec b/libfprint.spec index 9f7cda6..c8597f0 100644 --- a/libfprint.spec +++ b/libfprint.spec @@ -1,7 +1,7 @@ Name: libfprint -Version: 1.90.7 -Release: 2%{?dist} +Version: 1.92.0 +Release: 1%{?dist} Summary: Toolkit for fingerprint scanner License: LGPLv2+ @@ -19,6 +19,7 @@ BuildRequires: pkgconfig(gusb) >= 0.3.0 BuildRequires: pkgconfig(nss) BuildRequires: pkgconfig(pixman-1) BuildRequires: gtk-doc +BuildRequires: libgudev-devel # For the udev.pc to install the rules BuildRequires: systemd BuildRequires: gobject-introspection-devel @@ -26,6 +27,7 @@ BuildRequires: gobject-introspection-devel BuildRequires: python3-cairo python3-gobject cairo-devel BuildRequires: umockdev >= 0.13.2 +Patch0000: https://gitlab.freedesktop.org/libfprint/libfprint/-/merge_requests/306.patch %description libfprint offers support for consumer fingerprint reader devices. @@ -59,7 +61,8 @@ developing applications that use %{name}. %doc NEWS TODO THANKS AUTHORS README %{_libdir}/*.so.* %{_libdir}/girepository-1.0/*.typelib -%{_udevrulesdir}/60-libfprint-2-autosuspend.rules +%{_udevhwdbdir}/60-autosuspend-libfprint-2.hwdb +%{_udevrulesdir}/70-libfprint-2.rules %files devel %doc HACKING.md @@ -70,6 +73,9 @@ developing applications that use %{name}. %{_datadir}/gtk-doc/html/libfprint-2/ %changelog +* Thu Jul 01 2021 Benjamin Berg - 1.92.0-1 +- Update to 1.92.0 (#1977842) + * Tue Jan 26 2021 Fedora Release Engineering - 1.90.7-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild diff --git a/sources b/sources index 9e5f821..5b180a7 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libfprint-v1.90.7.tar.gz) = 07803315c89000db4caae5ae64e19042d83638a866fb3d8bcc5e1efcc44424d321974021a9a43db362baa85f0c52fd40dc97ec186eee0954671ddb04f5dfaf2d +SHA512 (libfprint-v1.92.0.tar.gz) = 8993c550c38f3f7d5d50afe6d55414791bdb18e13600fa88d6ad85087e6c1ca664503a0969143c82a1f2fc3e2dbacb93e044fe9ebbb4d5835462d0d3ca03104f From d660bfe29d97b29c7636cbc902e477c2884bebf8 Mon Sep 17 00:00:00 2001 From: Benjamin Berg Date: Thu, 8 Jul 2021 18:01:39 +0200 Subject: [PATCH 02/32] Pull in some upstream libfprint fixes for goodix --- libfprint.spec | 6 +- update-goodix.patch | 1353 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 1358 insertions(+), 1 deletion(-) create mode 100644 update-goodix.patch diff --git a/libfprint.spec b/libfprint.spec index 9f7cda6..c171c67 100644 --- a/libfprint.spec +++ b/libfprint.spec @@ -1,7 +1,7 @@ Name: libfprint Version: 1.90.7 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Toolkit for fingerprint scanner License: LGPLv2+ @@ -26,6 +26,7 @@ BuildRequires: gobject-introspection-devel BuildRequires: python3-cairo python3-gobject cairo-devel BuildRequires: umockdev >= 0.13.2 +Patch0000: update-goodix.patch %description libfprint offers support for consumer fingerprint reader devices. @@ -70,6 +71,9 @@ developing applications that use %{name}. %{_datadir}/gtk-doc/html/libfprint-2/ %changelog +* Thu Jul 08 2021 Benjamin Berg - 1.90.7-3 +- Pull in some upstream libfprint fixes for goodix + * Tue Jan 26 2021 Fedora Release Engineering - 1.90.7-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild diff --git a/update-goodix.patch b/update-goodix.patch new file mode 100644 index 0000000..1c6e2ce --- /dev/null +++ b/update-goodix.patch @@ -0,0 +1,1353 @@ +From 97efb6653ddba5843748365abd76917a740c2bae Mon Sep 17 00:00:00 2001 +From: fengqiangguo +Date: Wed, 16 Dec 2020 10:31:46 +0800 +Subject: [PATCH 1/6] goodixmoc: Fix some big/little endian support issues + +Goodix driver is not working fine in BigEndian architectures. This +commit fixes some of these issues. + +Related: #236 +--- + libfprint/drivers/goodixmoc/goodix.c | 2 +- + libfprint/drivers/goodixmoc/goodix_proto.c | 85 ++++++++++++++-------- + libfprint/drivers/goodixmoc/goodix_proto.h | 4 +- + 3 files changed, 58 insertions(+), 33 deletions(-) + +diff --git a/libfprint/drivers/goodixmoc/goodix.c b/libfprint/drivers/goodixmoc/goodix.c +index af64d81..82913d7 100644 +--- a/libfprint/drivers/goodixmoc/goodix.c ++++ b/libfprint/drivers/goodixmoc/goodix.c +@@ -127,7 +127,7 @@ fp_cmd_receive_cb (FpiUsbTransfer *transfer, + } + + gx_proto_crc32_calc (transfer->buffer, PACKAGE_HEADER_SIZE + header.len, (uint8_t *) &crc32_calc); +- if(crc32_calc != *(uint32_t *) (transfer->buffer + PACKAGE_HEADER_SIZE + header.len)) ++ if(crc32_calc != GUINT32_FROM_LE (*(uint32_t *) (transfer->buffer + PACKAGE_HEADER_SIZE + header.len))) + { + fpi_ssm_mark_failed (transfer->ssm, + fpi_device_error_new_msg (FP_DEVICE_ERROR_PROTO, +diff --git a/libfprint/drivers/goodixmoc/goodix_proto.c b/libfprint/drivers/goodixmoc/goodix_proto.c +index e30d23d..962fd6e 100644 +--- a/libfprint/drivers/goodixmoc/goodix_proto.c ++++ b/libfprint/drivers/goodixmoc/goodix_proto.c +@@ -141,8 +141,11 @@ crc32_update (gf_crc32_context *ctx, const uint8_t *message, uint32_t n_bytes) + static void + crc32_final (gf_crc32_context *ctx, uint8_t *md) + { ++ uint32_t crc = 0; ++ + ctx->crc = (REFLECT_REMAINDER (ctx->crc) ^ FINAL_XOR_VALUE); +- memcpy (md, &ctx->crc, 4); ++ crc = GUINT32_TO_LE (ctx->crc); ++ memcpy (md, &crc, 4); + } + + uint8_t +@@ -184,7 +187,7 @@ init_pack_header ( + pheader->cmd1 = LOBYTE (cmd); + pheader->packagenum = packagenum; + pheader->reserved = dump_seq++; +- pheader->len = len + PACKAGE_CRC_SIZE; ++ pheader->len = GUINT16_TO_LE (len + PACKAGE_CRC_SIZE); + pheader->crc8 = gx_proto_crc8_calc ((uint8_t *) pheader, 6); + pheader->rev_crc8 = ~pheader->crc8; + } +@@ -224,14 +227,14 @@ gx_proto_parse_header ( + { + if (!buffer || !pheader) + return -1; +- if (buffer_len < PACKAGE_HEADER_SIZE) ++ if (buffer_len < PACKAGE_HEADER_SIZE + PACKAGE_CRC_SIZE) + return -1; + + memcpy (pheader, buffer, sizeof (pack_header)); +- +- pheader->len = GUINT16_FROM_LE ( *(uint16_t *) (buffer + 4)); ++ pheader->len = GUINT16_FROM_LE (pheader->len); ++ if (buffer_len < pheader->len + PACKAGE_HEADER_SIZE) ++ return -1; + pheader->len -= PACKAGE_CRC_SIZE; +- + return 0; + } + +@@ -248,7 +251,7 @@ gx_proto_parse_fingerid ( + if (!template || !fid_buffer) + return -1; + +- if (fid_buffer_size < 70) ++ if (fid_buffer_size < G_STRUCT_OFFSET (template_format_t, payload) + sizeof (uint32_t)) + return -1; + + buffer = fid_buffer; +@@ -256,28 +259,30 @@ gx_proto_parse_fingerid ( + + if (buffer[Offset++] != 67) + return -1; ++ fid_buffer_size--; + + template->type = buffer[Offset++]; ++ fid_buffer_size--; + template->finger_index = buffer[Offset++]; ++ fid_buffer_size--; + Offset++; +- +- memcpy (template->accountid, &buffer[Offset], 32); +- Offset += 32; +- +- memcpy (template->tid, &buffer[Offset], 32); +- Offset += 32; // Offset == 68 +- ++ memcpy (template->accountid, &buffer[Offset], sizeof (template->accountid)); ++ Offset += sizeof (template->accountid); ++ memcpy (template->tid, &buffer[Offset], sizeof (template->tid)); ++ Offset += sizeof (template->tid); // Offset == 68 + template->payload.size = buffer[Offset++]; +- memset (template->payload.data, 0, 56); ++ if (template->payload.size > sizeof (template->payload.data)) ++ return -1; ++ memset (template->payload.data, 0, template->payload.size); + memcpy (template->payload.data, &buffer[Offset], template->payload.size); + + return 0; + } + + int +-gx_proto_parse_body (uint16_t cmd, uint8_t *buffer, uint32_t buffer_len, pgxfp_cmd_response_t presp) ++gx_proto_parse_body (uint16_t cmd, uint8_t *buffer, uint16_t buffer_len, pgxfp_cmd_response_t presp) + { +- uint32_t offset = 0; ++ uint16_t offset = 0; + uint8_t *fingerlist = NULL; + + if (!buffer || !presp) +@@ -289,6 +294,8 @@ gx_proto_parse_body (uint16_t cmd, uint8_t *buffer, uint32_t buffer_len, pgxfp_c + { + case RESPONSE_PACKAGE_CMD: + { ++ if (buffer_len < sizeof (gxfp_parse_msg_t) + 1) ++ return -1; + presp->parse_msg.ack_cmd = buffer[1]; + } + break; +@@ -296,32 +303,46 @@ gx_proto_parse_body (uint16_t cmd, uint8_t *buffer, uint32_t buffer_len, pgxfp_c + case MOC_CMD0_UPDATE_CONFIG: + { + presp->finger_config.status = buffer[0]; +- presp->finger_config.max_stored_prints = buffer[2]; ++ if (buffer_len >= 3) ++ presp->finger_config.max_stored_prints = buffer[2]; ++ else ++ /* to compatiable old version firmware */ ++ presp->finger_config.max_stored_prints = FP_MAX_FINGERNUM; ++ + } + break; + + case MOC_CMD0_COMMITENROLLMENT: + case MOC_CMD0_DELETETEMPLATE: ++ /* just check result */ + break; + + case MOC_CMD0_GET_VERSION: ++ if (buffer_len < sizeof (gxfp_version_info_t) + 1) ++ return -1; + memcpy (&presp->version_info, buffer + 1, sizeof (gxfp_version_info_t)); + break; + + case MOC_CMD0_CAPTURE_DATA: + if (LOBYTE (cmd) == MOC_CMD1_DEFAULT) + { ++ if (buffer_len < sizeof (gxfp_capturedata_t) + 1) ++ return -1; + presp->capture_data_resp.img_quality = buffer[1]; + presp->capture_data_resp.img_coverage = buffer[2]; + } + break; + + case MOC_CMD0_ENROLL_INIT: ++ if (buffer_len < sizeof (gxfp_enroll_init_t) + 1) ++ return -1; + if (presp->result == GX_SUCCESS) + memcpy (&presp->enroll_init.tid, &buffer[1], TEMPLATE_ID_SIZE); + break; + + case MOC_CMD0_ENROLL: ++ if (buffer_len < sizeof (gxfp_enroll_update_t)) ++ return -1; + presp->enroll_update.rollback = (buffer[0] < 0x80) ? false : true; + presp->enroll_update.img_overlay = buffer[1]; + presp->enroll_update.img_preoverlay = buffer[2]; +@@ -331,7 +352,11 @@ gx_proto_parse_body (uint16_t cmd, uint8_t *buffer, uint32_t buffer_len, pgxfp_c + presp->check_duplicate_resp.duplicate = (presp->result == 0) ? false : true; + if (presp->check_duplicate_resp.duplicate) + { +- uint16_t tid_size = GUINT16_FROM_LE (*(buffer + 1)); ++ if (buffer_len < 3) ++ return -1; ++ uint16_t tid_size = GUINT16_FROM_LE (*(uint16_t *) (buffer + 1)); ++ if ((buffer_len < tid_size + 3) || (buffer_len > sizeof (template_format_t)) + 3) ++ return -1; + memcpy (&presp->check_duplicate_resp.template, buffer + 3, tid_size); + } + break; +@@ -339,18 +364,16 @@ gx_proto_parse_body (uint16_t cmd, uint8_t *buffer, uint32_t buffer_len, pgxfp_c + case MOC_CMD0_GETFINGERLIST: + if (presp->result != GX_SUCCESS) + break; ++ if (buffer_len < 2) ++ return -1; + presp->finger_list_resp.finger_num = buffer[1]; +- if (presp->finger_list_resp.finger_num > FP_MAX_FINGERNUM) +- { +- presp->finger_list_resp.finger_num = 0; +- presp->result = GX_ERROR_NO_AVAILABLE_SPACE; +- break; +- } + fingerlist = buffer + 2; + for(uint8_t num = 0; num < presp->finger_list_resp.finger_num; num++) + { +- uint16_t fingerid_length = GUINT16_FROM_LE (*(fingerlist + offset)); ++ uint16_t fingerid_length = GUINT16_FROM_LE (*(uint16_t *) (fingerlist + offset)); + offset += 2; ++ if (buffer_len < fingerid_length + offset + 2) ++ return -1; + if (gx_proto_parse_fingerid (fingerlist + offset, + fingerid_length, + &presp->finger_list_resp.finger_list[num]) != 0) +@@ -372,14 +395,16 @@ gx_proto_parse_body (uint16_t cmd, uint8_t *buffer, uint32_t buffer_len, pgxfp_c + presp->verify.match = (buffer[0] == 0) ? true : false; + if (presp->verify.match) + { ++ if (buffer_len < sizeof (template_format_t) + 10) ++ return -1; + offset += 1; +- presp->verify.rejectdetail = GUINT16_FROM_LE (*(buffer + offset)); ++ presp->verify.rejectdetail = GUINT16_FROM_LE (*(uint16_t *) (buffer + offset)); + offset += 2; +- score = GUINT32_FROM_LE (*(buffer + offset)); ++ score = GUINT32_FROM_LE (*(uint32_t *) (buffer + offset)); + offset += 4; +- study = GUINT16_FROM_LE (*(buffer + offset)); ++ study = buffer[offset]; + offset += 1; +- fingerid_size = GUINT16_FROM_LE (*(buffer + offset)); ++ fingerid_size = GUINT16_FROM_LE (*(uint16_t *) (buffer + offset)); + offset += 2; + if (gx_proto_parse_fingerid (buffer + offset, fingerid_size, &presp->verify.template) != 0) + { +diff --git a/libfprint/drivers/goodixmoc/goodix_proto.h b/libfprint/drivers/goodixmoc/goodix_proto.h +index 53eea04..e98e4e4 100644 +--- a/libfprint/drivers/goodixmoc/goodix_proto.h ++++ b/libfprint/drivers/goodixmoc/goodix_proto.h +@@ -89,7 +89,7 @@ typedef struct _gxfp_version_info + uint8_t interface[GX_VERSION_LEN]; + uint8_t protocol[GX_VERSION_LEN]; + uint8_t flashVersion[GX_VERSION_LEN]; +- uint8_t reserved[62]; ++ uint8_t reserved[38]; + } gxfp_version_info_t, *pgxfp_version_info_t; + + +@@ -225,7 +225,7 @@ int gx_proto_parse_header (uint8_t *buffer, + + int gx_proto_parse_body (uint16_t cmd, + uint8_t *buffer, +- uint32_t buffer_len, ++ uint16_t buffer_len, + pgxfp_cmd_response_t presponse); + + int gx_proto_init_sensor_config (pgxfp_sensor_cfg_t pconfig); +-- +2.31.1 + + +From fc59b2d365cb59dde2bed3bd48445b4353eae1e0 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= +Date: Fri, 29 Jan 2021 20:02:15 +0100 +Subject: [PATCH 2/6] goodix: Consume the retry errors during verify/identify + reports + +We should not pass such kind of errors to complete functions, or we'll +fail the identification without ability to retry immediately. +--- + libfprint/drivers/goodixmoc/goodix.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/libfprint/drivers/goodixmoc/goodix.c b/libfprint/drivers/goodixmoc/goodix.c +index 82913d7..81cdb67 100644 +--- a/libfprint/drivers/goodixmoc/goodix.c ++++ b/libfprint/drivers/goodixmoc/goodix.c +@@ -468,9 +468,9 @@ fp_verify_ssm_done (FpiSsm *ssm, FpDevice *dev, GError *error) + if (error && error->domain == FP_DEVICE_RETRY) + { + if (fpi_device_get_current_action (dev) == FPI_DEVICE_ACTION_VERIFY) +- fpi_device_verify_report (dev, FPI_MATCH_ERROR, NULL, error); ++ fpi_device_verify_report (dev, FPI_MATCH_ERROR, NULL, g_steal_pointer (&error)); + else +- fpi_device_identify_report (dev, NULL, NULL, error); ++ fpi_device_identify_report (dev, NULL, NULL, g_steal_pointer (&error)); + } + + if (fpi_device_get_current_action (dev) == FPI_DEVICE_ACTION_VERIFY) +-- +2.31.1 + + +From 3f54df16e31ca67e40e088786350e97576f3a47d Mon Sep 17 00:00:00 2001 +From: fengqiangguo +Date: Tue, 19 Jan 2021 03:00:07 -0500 +Subject: [PATCH 3/6] goodixmoc: support power button shield feature + +Some OEM will integrate fingerprint device with powerButton. It's +possible that a user may press the power button during fingerprint +enroll or identify. This would lead to unintended PC shutdown or +hibernation. We add pwr_btn_shield cmd and related process to shield +the power button function when the fingerprint functionality (enroll and +identify) is used and restore power button function afterwards. +--- + libfprint/drivers/goodixmoc/goodix.c | 121 ++++++- + libfprint/drivers/goodixmoc/goodix.h | 8 +- + libfprint/drivers/goodixmoc/goodix_proto.c | 10 + + libfprint/drivers/goodixmoc/goodix_proto.h | 11 + + tests/goodixmoc/custom.ioctl | 346 ++++++++------------- + tests/goodixmoc/device | 105 ++++--- + 6 files changed, 321 insertions(+), 280 deletions(-) + +diff --git a/libfprint/drivers/goodixmoc/goodix.c b/libfprint/drivers/goodixmoc/goodix.c +index 81cdb67..9cfdbe6 100644 +--- a/libfprint/drivers/goodixmoc/goodix.c ++++ b/libfprint/drivers/goodixmoc/goodix.c +@@ -58,6 +58,7 @@ struct _FpiDeviceGoodixMoc + GPtrArray *list_result; + guint8 template_id[TEMPLATE_ID_SIZE]; + gboolean is_enroll_identify; ++ gboolean is_power_button_shield_on; + + }; + +@@ -309,6 +310,35 @@ goodix_sensor_cmd (FpiDeviceGoodixMoc *self, + + + } ++ ++/****************************************************************************** ++ * ++ * fp_pwr_btn_shield_cb Function ++ * ++ *****************************************************************************/ ++static void ++fp_pwr_btn_shield_cb (FpiDeviceGoodixMoc *self, ++ gxfp_cmd_response_t *resp, ++ GError *error) ++{ ++ if (error) ++ { ++ fpi_ssm_mark_failed (self->task_ssm, error); ++ return; ++ } ++ if (resp->result >= GX_FAILED) ++ { ++ fp_dbg ("Setting power button shield failed, result: 0x%x", resp->result); ++ fpi_ssm_mark_failed (self->task_ssm, ++ fpi_device_retry_new (FP_DEVICE_RETRY_GENERAL)); ++ return; ++ } ++ if (resp->power_button_shield_resp.resp_cmd1 == MOC_CMD1_PWR_BTN_SHIELD_ON) ++ self->is_power_button_shield_on = true; ++ else ++ self->is_power_button_shield_on = false; ++ fpi_ssm_next_state (self->task_ssm); ++} + /****************************************************************************** + * + * fp_verify_xxxx Function +@@ -419,7 +449,7 @@ fp_verify_cb (FpiDeviceGoodixMoc *self, + fpi_device_identify_report (device, NULL, NULL, error); + } + +- fpi_ssm_mark_completed (self->task_ssm); ++ fpi_ssm_next_state (self->task_ssm); + + } + +@@ -436,6 +466,14 @@ fp_verify_sm_run_state (FpiSsm *ssm, FpDevice *device) + + switch (fpi_ssm_get_cur_state (ssm)) + { ++ case FP_VERIFY_PWR_BTN_SHIELD_ON: ++ goodix_sensor_cmd (self, MOC_CMD0_PWR_BTN_SHIELD, MOC_CMD1_PWR_BTN_SHIELD_ON, ++ false, ++ NULL, ++ 0, ++ fp_pwr_btn_shield_cb); ++ break; ++ + case FP_VERIFY_CAPTURE: + fpi_device_report_finger_status_changes (device, + FP_FINGER_STATUS_NEEDED, +@@ -454,6 +492,14 @@ fp_verify_sm_run_state (FpiSsm *ssm, FpDevice *device) + TEMPLATE_ID_SIZE, + fp_verify_cb); + break; ++ ++ case FP_VERIFY_PWR_BTN_SHIELD_OFF: ++ goodix_sensor_cmd (self, MOC_CMD0_PWR_BTN_SHIELD, MOC_CMD1_PWR_BTN_SHIELD_OFF, ++ false, ++ NULL, ++ 0, ++ fp_pwr_btn_shield_cb); ++ break; + } + + } +@@ -812,6 +858,16 @@ fp_enroll_sm_run_state (FpiSsm *ssm, FpDevice *device) + } + break; + ++ case FP_ENROLL_PWR_BTN_SHIELD_ON: ++ { ++ goodix_sensor_cmd (self, MOC_CMD0_PWR_BTN_SHIELD, MOC_CMD1_PWR_BTN_SHIELD_ON, ++ false, ++ NULL, ++ 0, ++ fp_pwr_btn_shield_cb); ++ } ++ break; ++ + case FP_ENROLL_IDENTIFY: + { + dummy[0] = 0x01; +@@ -926,9 +982,17 @@ fp_enroll_sm_run_state (FpiSsm *ssm, FpDevice *device) + + } + break; +- } +- + ++ case FP_ENROLL_PWR_BTN_SHIELD_OFF: ++ { ++ goodix_sensor_cmd (self, MOC_CMD0_PWR_BTN_SHIELD, MOC_CMD1_PWR_BTN_SHIELD_OFF, ++ false, ++ NULL, ++ 0, ++ fp_pwr_btn_shield_cb); ++ } ++ break; ++ } + } + + static void +@@ -1282,6 +1346,7 @@ gx_fp_init (FpDevice *device) + int ret = 0; + + self->max_stored_prints = FP_MAX_FINGERNUM; ++ self->is_power_button_shield_on = false; + + self->cancellable = g_cancellable_new (); + +@@ -1317,20 +1382,59 @@ gx_fp_init (FpDevice *device) + } + + static void +-gx_fp_exit (FpDevice *device) ++gx_fp_release_interface (FpiDeviceGoodixMoc *self, ++ GError *error) + { +- FpiDeviceGoodixMoc *self = FPI_DEVICE_GOODIXMOC (device); +- GError *error = NULL; ++ g_autoptr(GError) release_error = NULL; + + g_clear_object (&self->cancellable); + g_clear_pointer (&self->sensorcfg, g_free); + + /* Release usb interface */ +- g_usb_device_release_interface (fpi_device_get_usb_device (FP_DEVICE (device)), +- 0, 0, &error); ++ g_usb_device_release_interface (fpi_device_get_usb_device (FP_DEVICE (self)), ++ 0, 0, &release_error); ++ /* Retain passed error if set, otherwise propagate error from release. */ ++ if (error == NULL) ++ error = g_steal_pointer (&release_error); + + /* Notify close complete */ + fpi_device_close_complete (FP_DEVICE (self), error); ++ ++} ++ ++static void ++gx_fp_exit_cb (FpiDeviceGoodixMoc *self, ++ gxfp_cmd_response_t *resp, ++ GError *error) ++{ ++ ++ ++ if (resp->result >= GX_FAILED) ++ fp_dbg ("Setting power button shield failed, result: 0x%x", resp->result); ++ self->is_power_button_shield_on = false; ++ gx_fp_release_interface (self, error); ++} ++ ++static void ++gx_fp_exit (FpDevice *device) ++{ ++ FpiDeviceGoodixMoc *self = FPI_DEVICE_GOODIXMOC (device); ++ ++ if (self->is_power_button_shield_on) ++ { ++ goodix_sensor_cmd (self, ++ MOC_CMD0_PWR_BTN_SHIELD, ++ MOC_CMD1_PWR_BTN_SHIELD_OFF, ++ false, ++ NULL, ++ 0, ++ gx_fp_exit_cb); ++ } ++ else ++ { ++ gx_fp_release_interface (self, NULL); ++ } ++ + } + + +@@ -1432,7 +1536,6 @@ fpi_device_goodixmoc_init (FpiDeviceGoodixMoc *self) + static void + gx_fp_cancel (FpDevice *device) + { +- + FpiDeviceGoodixMoc *self = FPI_DEVICE_GOODIXMOC (device); + + /* Cancel any current interrupt transfer (resulting us to go into +diff --git a/libfprint/drivers/goodixmoc/goodix.h b/libfprint/drivers/goodixmoc/goodix.h +index c38bf9b..23e142a 100644 +--- a/libfprint/drivers/goodixmoc/goodix.h ++++ b/libfprint/drivers/goodixmoc/goodix.h +@@ -40,7 +40,8 @@ typedef enum { + + + typedef enum { +- FP_ENROLL_ENUM = 0, ++ FP_ENROLL_PWR_BTN_SHIELD_ON = 0, ++ FP_ENROLL_ENUM, + FP_ENROLL_IDENTIFY, + FP_ENROLL_CREATE, + FP_ENROLL_CAPTURE, +@@ -48,11 +49,14 @@ typedef enum { + FP_ENROLL_WAIT_FINGER_UP, + FP_ENROLL_CHECK_DUPLICATE, + FP_ENROLL_COMMIT, ++ FP_ENROLL_PWR_BTN_SHIELD_OFF, + FP_ENROLL_NUM_STATES, + } FpEnrollState; + + typedef enum { +- FP_VERIFY_CAPTURE = 0, ++ FP_VERIFY_PWR_BTN_SHIELD_ON = 0, ++ FP_VERIFY_CAPTURE, + FP_VERIFY_IDENTIFY, ++ FP_VERIFY_PWR_BTN_SHIELD_OFF, + FP_VERIFY_NUM_STATES, + } FpVerifyState; +diff --git a/libfprint/drivers/goodixmoc/goodix_proto.c b/libfprint/drivers/goodixmoc/goodix_proto.c +index 962fd6e..01044a9 100644 +--- a/libfprint/drivers/goodixmoc/goodix_proto.c ++++ b/libfprint/drivers/goodixmoc/goodix_proto.c +@@ -317,6 +317,16 @@ gx_proto_parse_body (uint16_t cmd, uint8_t *buffer, uint16_t buffer_len, pgxfp_c + /* just check result */ + break; + ++ case MOC_CMD0_PWR_BTN_SHIELD: ++ presp->power_button_shield_resp.resp_cmd1 = LOBYTE (cmd); ++ if (buffer_len >= 2) ++ { ++ uint8_t support_pwr_shield = buffer[1]; ++ if (support_pwr_shield == 0xFF) ++ g_debug ("Power button shield feature not supported!\n"); ++ } ++ break; ++ + case MOC_CMD0_GET_VERSION: + if (buffer_len < sizeof (gxfp_version_info_t) + 1) + return -1; +diff --git a/libfprint/drivers/goodixmoc/goodix_proto.h b/libfprint/drivers/goodixmoc/goodix_proto.h +index e98e4e4..bcd1cdd 100644 +--- a/libfprint/drivers/goodixmoc/goodix_proto.h ++++ b/libfprint/drivers/goodixmoc/goodix_proto.h +@@ -75,6 +75,11 @@ + #define MOC_CMD1_GET_FINGER_MODE 0x00 + #define MOC_CMD1_SET_FINGER_DOWN 0x01 + #define MOC_CMD1_SET_FINGER_UP 0x02 ++ ++#define MOC_CMD0_PWR_BTN_SHIELD 0xE0 ++#define MOC_CMD1_PWR_BTN_SHIELD_OFF 0x00 ++#define MOC_CMD1_PWR_BTN_SHIELD_ON 0x01 ++ + /* */ + + typedef struct _gxfp_version_info +@@ -173,6 +178,11 @@ typedef struct _fp_finger_config + uint8_t max_stored_prints; + } fp_finger_config_t, *pfp_finger_config_t; + ++typedef struct _fp_pwr_btn_shield ++{ ++ uint8_t resp_cmd1; ++} fp_pwr_btn_shield_t, *pfp_pwr_btn_shield_t; ++ + typedef struct _fp_cmd_response + { + uint8_t result; +@@ -189,6 +199,7 @@ typedef struct _fp_cmd_response + gxfp_version_info_t version_info; + fp_finger_status_t finger_status; + fp_finger_config_t finger_config; ++ fp_pwr_btn_shield_t power_button_shield_resp; + }; + } gxfp_cmd_response_t, *pgxfp_cmd_response_t; + +diff --git a/tests/goodixmoc/custom.ioctl b/tests/goodixmoc/custom.ioctl +index 21c8531..496b43c 100644 +--- a/tests/goodixmoc/custom.ioctl ++++ b/tests/goodixmoc/custom.ioctl +@@ -1,307 +1,217 @@ +-@DEV /dev/bus/usb/001/003 ++@DEV /dev/bus/usb/003/008 + USBDEVFS_GET_CAPABILITIES 0 FD010000 + USBDEVFS_REAPURBNDELAY 0 3 1 0 0 13 13 0 D00000000500BA4500611A297F + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00000008009D6200D00001B5A57582000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00000008009D6200D00000239572F5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 192 0 D0000001850067980001FE415050000000000030313030303232384C454E4F564F0000474D3138384230004746333230360000312E30322E30310055534200000000005642530000000000303030303030303300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000051239DE6303030303033000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 140 140 0 C001000184008E71000064500F410C0A1800002300000101000101010100010105050100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000B737316F3EB36C6A ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 192 0 D0000001850067980002FE4150500000000000303130303032343744454C4C00000000474D3138384230004746353238380000312E30342E30352E31302E3530000000000000000000000000000000000000005553420000000000564253000000000030303030303030330000000000000000000000000000000000000000000000000000000000003B5CB43C000000000000555342000000000056425300000000003030303030303033000000000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 140 140 0 C001000184008E71000064500F41080A1800002300000101000101010100010105050100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000B737316F0558B152 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00000208004BB400C00101C96A6C6B000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00000208004BB400C001005F5A6B1C000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 C00100030500FB040093B3ED01000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 13 13 0 A6000002050049B600C27E4B39 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 C00100030700D12E0014140342C8AE00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 12 12 0 E00100020400BE41BBC7BACE + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA000004080036C900A60001F1AFC9FB000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA000004080036C900E00101C26FC596000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A60000050600609F000094D6C40E0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A20000030700AC53000F411A349263 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 E0010005080054AB00141441240D0ECF000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 13 13 0 A6000003050022DD00CA3B9C30 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA0000060800E01F00A20001605AE410000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA0000060800E01F00A60001BCF2ED17000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A2000007070007F8005564FA6B157100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 44 44 0 A50000042400F40B000000000000000000000000000000000000000000000000000000000000000095D4A28A ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A60000070600B64900007A6860130000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A20000040700BA45000F41625785F3 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA0000080800CC3300A500013F9036A9000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA0000080800CC3300A20001BA8679AC000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A50000090500DE2103D6515435000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 13 13 0 A10000050500807F007BE269C4 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A20000090C00BC430054640027004D0084CD5EED0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 44 44 0 A500000524009F60000000000000000000000000000000000000000000000000000000000000000048D9D8CB + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00000A08001AE500A10001AE651B42000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00000A08001AE500A5000172CD1245000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A100000B250002FD00B786B17D6A044D24C1651C2B1A76F6396D790639F58CA6D62DDDB8E179A9BD4A6C5C6C9200000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A200000607006C93000F41A33C2AB4 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A500000B050008F703C6DBFA26000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 13 13 0 A100000605003DC200632D10DE + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00000C0800679800A200011C98B985000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00000C0800679800A100014526FF87000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A200000D0700807F0059643EDA283F00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A0000007070055AA016450891085EC ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A100000D25007F8000D7843025CC713EA1543DF81EBAAF6BE244543EB9F4BC6FA74E8F246A711CD8C3EA54665F00000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A2000007070007F8000F41630A457A + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00000E0800B14E00A000013F11196A000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00000E0800B14E00A2000151C59D69000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A000000F070004FB000000E0109A2200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 13 13 0 B00200080500629D004A354747 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A200000F0C00C13E003E620027005900101FD1980000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A0000008070012ED016450F8E6B5D9 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00001008003FC000B002017532670A000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00001008003FC000A0000187F37724000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 128 0 B00200114500A15E008E0091009E006F0083007C006D00690079008800000000000000000000000000AF00A500AD00A000B100A300AA00A300A3009D00000000000000000000000000988D37C39E006F0083007C006D00690079008800000000000000000000000000AF00A500AD00A000B100A300AA00A300A3009D00000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A200000907002BD4000F41D2CA1A81 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A000001107008A7500000002FCFB4800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 13 13 0 B0020009050009F6004270904E + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA0000120800E91600A20001A47AD7CB000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA0000120800E91600B00201386F43E6000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A200001307000EF1004B640F46BD2D00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A000000A0700C43B016450398D1A9E ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 128 0 B002001345007788008A009C009400880008009A0099008B00080008009100850000000000000000008F00A4009B0090008F00A100A000940088009A0097008D000000000000000000BEDDBBB29400880008009A0099008B00080008009100850000000000000000008F00A4009B0090008F00A100A000940088009A0097008D ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A200000A07009669000F41D397DA08 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA0000140800946B00A0000121EDB70D000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA0000140800946B00A200014F39330E000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A0000015070021DE0000007BC22C5100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 13 13 0 B002000B0500DF200052FA3E5D ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A20000150C00E41B004E640027004F00755632510000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A000000B0700AF50016450F9BB7550 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA000016080042BD00B002019E7183CF000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA000016080042BD00A000016CB093E1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 128 0 B00200174500DC23008200A200AA0093009F009800A90087009A009100000000000000000000000000AF00A500AD00A000B100A300AA00A300A3009C00000000000000000000000000F1B14CECAA0093009F009800A90087009A009100000000000000000000000000AF00A500AD00A000B100A300AA00A300A3009C00000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A200000C0700EB14000F416BC2A256 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A00000170700F708000000BAA9831600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 13 13 0 B002000C0500C93600FFA00844 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00001808006E9100A20001D8B88A5E000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00001808006E9100B0020144AD1E73000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A200001907008976005664DBD4593000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A000000D0700D22D01645041EE0D0E ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 128 0 B00200194500F00F008C009C009600080086009D0097008E00810092009100850000000000000000008F00A4009A008F008E00A1009F00920087009A0096008C000000000000000000E3A1F2A19600080086009D0097008E00810092009100850000000000000000008F00A4009A008F008E00A1009F00920087009A0096008C ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A200000D0700807F000F41ABF4CD98 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00001A0800B84700A00001FB312AB1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00001A0800B84700A2000195E5AEB2000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A000001B07000DF2000000CA0273AA00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 13 13 0 B002000E05001FE000EF2AA657 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A200001B0C00C8370048640027005A00021B15CE0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A000000E07006F9001645040B3CD87 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00001C0800C53A00B00201E2B3DE5A000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00001C0800C53A00A000011072CE74000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 128 0 B002001D45005BA400A8009100AB0071008B008F009100920093009100000000000000000000000000AF00A500AD00A000B100A300AA00A200A3009C000000000000000000000000008A57E0B3AB0071008B008F009100920093009100000000000000000000000000AF00A500AD00A000B100A300AA00A200A3009C00000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A200000F070056A9000F416A9F62DF ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A000001D0700708F003A000B89A2D100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 13 13 0 B002000F0500748B00E76F715E + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00001E080013EC00A2000133FB6E9B000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00001E080013EC00B00201AFEEFAB6000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A200001F0700F40B005A625A6BF72B00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A00000100700E11E016450A25FACED ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 128 0 B002001F45008D720008009900920086008800960097008D007F0091008D00850000000000000000008F00A4009B0090008F00A100A000930087009A0096008D00000000000000000069C4E77C920086008800960097008D007F0091008D00850000000000000000008F00A4009B0090008F00A100A000930087009A0096008D ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A20000100700B34C000F4148456C7B + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA0000200800DE2100A000011D15EAC2000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA0000200800DE2100A2000173C16EC1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A000002107006B94002900A6F807F200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 13 13 0 B00200110500FA0500438F0629 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A20000210C00AE510048640027005500DD002B870000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A000001107008A750164506269C323 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA000022080008F700B00201A289DE00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA000022080008F700A000015048CE2E000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 128 0 B00200234500966900870088008800700085009600940070001A001A00000000000000000000000000AF00A500AD00A000B100A300AA00A300A3009D0000000000000000000000000074CA825A8800700085009600940070001A001A00000000000000000000000000AF00A500AD00A000B100A300AA00A300A3009D00000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A20000120700659A000F41892EC33C ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A00000230700BD420000008C0CEEF100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 13 13 0 B0020012050047B8005B407F33 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA0000240800758A00A20001D5DFAEE8000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA0000240800758A00B0020149CA3AC5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A20000250700926D00556427B73E5900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A000001307005CA3016450A3026C64 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 128 0 B00200254500EB14008D00A100900087000800980099008C00080008000800080000000000000000008F00A3009A008F008E00A0009F00930087009A0096008C0000000000000000000F8D1061900087000800980099008C00080008000800080000000000000000008F00A3009A008F008E00A0009F00930087009A0096008C ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A200001307000EF1000F414918ACF2 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA0000260800A35C00A00001F6560E07000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA0000260800A35C00A2000198828A04000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A0000027070016E90058265460564800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 13 13 0 B002001405003AC500FE5F9E23 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A20000270C00D32C0057640027004E0017D2351D0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A000001407004AB5016450DB617BF4 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00002808008F7000B00201DE4B8395000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00002808008F7000A000012C8A93BB000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 128 0 B0020029450011EE007B00950097006E0084008A007400720078008000000000000000000000000000AE00A500AD00A000B100A200AA00A300A3009D000000000000000000000000007AB44F7697006E0084008A007400720078008000000000000000000000000000AE00A500AD00A000B100A200AA00A300A3009D00000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A20000150700738C000F41F14DD4AC ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A000002907003AC500000044F2661300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 13 13 0 B0020015050051AE00F61A492A + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00002A080059A600A200010F033354000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00002A080059A600B002019316A779000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A200002B0700BE4100566455244C8900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A000001607009C630164501A0AD4B3 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 128 0 B002002B4500C7380089009C00920008008A00990098008A007F0093008E00860000000000000000008F00A4009A008F008E00A100A000930087009A0096008D000000000000000000A0269EE8920008008A00990098008A007F0093008E00860000000000000000008F00A4009A008F008E00A100A000930087009A0096008D ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A20000160700CE31000F41F0101425 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00002C080024DB00A000018A945392000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00002C080024DB00A20001E440D791000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A000002D0700916E005F2DD3D14D7200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 13 13 0 B00200170500877800E690E739 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A200002D0C0054AB004A64002700590057B20D220000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A00000170700F708016450DA3CBB7D + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00002E0800F20D00B0020135086750000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00002E0800F20D00A00001C7C9777E000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 128 0 B002002F45006C9300A80083008A006D00870082008900940074001A00000000000000000000000000AF00A500AD00A000B100A300AA00A300A3009D00000000000000000000000000DD3369188A006D00870082008900940074001A00000000000000000000000000AF00A500AD00A000B100A300AA00A300A3009D00000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A20000180700E21D000F4141D04BDE ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A000002F070047B8004C4C4EAAB86E00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 13 13 0 B00200180500C03F00B4605C02 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00003008007C8300A2000111FF9D33000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00003008007C8300B002018DEA091E000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A200003107009B6400586440DB796400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A00000190700DB240164506BFCE486 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 128 0 B00200314500E21D00080008000800080088009A0096008F00820092009000080000000000000000008F00A3009A008F008E00A000A000930087009A0096008C000000000000000000E0BA753D0800080088009A0096008F00820092009000080000000000000000008F00A3009A008F008E00A000A000930087009A0096008C ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A200001907008976000F4181E62410 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA0000320800AA5500A0000132763DDC000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA0000320800AA5500A200015CA2B9DF000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A000003307001FE072635FE0E8A18200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 13 13 0 B002001A050016E900A4EAF211 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A20000330C00DA25005464002700500088A694DC0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A000001A070066990164506AA1240F + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA0000340800D72800B002012BF4C937000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA0000340800D72800A00001D935D919000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 128 0 B0020035450049B6007D00920094008C009A008B008400890094006D00000000000000000000000000AE00A500AD00A000B100A300AA00A200A3009D00000000000000000000000000520A47F394008C009A008B008400890094006D00000000000000000000000000AE00A500AD00A000B100A300AA00A200A3009D00000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A200001B07005FA0000F41408D8B57 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A00000350700629D0000006775A83E00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 13 13 0 B002001B05007D8200ACAF2518 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA000036080001FE00A20001FABC79F6000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA000036080001FE00B0020166A9EDDB000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A20000370700E619005964B9BF1A2300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A000001C07001BE4016450D2F45C51 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 128 0 B002003745009F600008000800080008008600970095000800830090008D00880000000000000000008F00A3009A008F008E00A100A000930087009A0096008C000000000000000000F054EC42080008008600970095000800830090008D00880000000000000000008F00A3009A008F008E00A100A000930087009A0096008C ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A200001C070049B6000F4138EE9CC7 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00003808002DD200A000014EB46049000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00003808002DD200A200012060E44A000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A000003907009867725F526A136B6D00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 13 13 0 B002001D050000FF0009B0C408 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A20000390C005DA2004A640027004F005D569D1A0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A000001D0700708F01645012C2339F + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00003A0800FB0400B00201F128548B000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00003A0800FB0400A0000103E944A5000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 128 0 B002003B4500659A0084007D008B0099009C006A009A007B0089008300000000000000000000000000AF00A500AD00A000B100A300AA00A300A3009C00000000000000000000000000BAEEF1FA8B0099009C006A009A007B0089008300000000000000000000000000AF00A500AD00A000B100A300AA00A300A3009C00000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A200001E07009F60000F41F9853380 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A000003B07004EB1000000D6B5F7C500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A300001E0700B649000F41F8F75650 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00003C0800867900A20001867E2463000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00003C0800867900A30001B114E662000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A200003D0700619E005864307089D800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A000001F0700A659016450D3A99CD8 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A300003D0500629D009DDA98C4000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 114 114 0 A400001F6A001EE1640043010100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001E4650312D30303030303030302D302D30303030303030302D6E6F626F647900E6F6BD05 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00003E080050AF00A00001A5F7848C000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00003E080050AF00A40001795F8D8B000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A000003F0700E51A0063324BE2275A00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 13 13 0 B00200200500708F00DCB5EECB ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A400003F05006B940099962233000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 12 12 0 E0000020040049B6AEA0E8AB + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00004008001BE400B00201E7BD49D0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00004008001BE400E00001D5F1C38E000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 128 0 B00200414500857A0078006F0074009200A6008C0071006C008E009400000000000000000000000000AF00A500AD00A000B100A300A900A200A3009C0000000000000000000000000079DB6FC674009200A6008C0071006C008E009400000000000000000000000000AF00A500AD00A000B100A300A900A200A3009C00000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A2000021070039C6000F41C7E8B94B ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 E000004108001BE400000000315A099D000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 13 13 0 A60000210500B74800B39B168D + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA0000420800CD3200A2000136F5F911000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA0000420800CD3200A60001EA5DF016000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A200004307002AD5005A647427533000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A00000220700D6290164502CAFB954 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 128 0 A60000436C00EC130001640043010100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001E4650312D30303030303030302D302D30303030303030302D6E6F626F647900FA60A49A000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 12 12 0 E00100220400FD0253E4FA3B + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA0000440800B04F00A00001B36299D7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA0000440800B04F00E0010132DE18BE000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A0000045070005FA0061447F5F4C1200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 13 13 0 B00200230500CD3200C47A97D1 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 E00100450800D22D000000002B1189D3000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A20000230700EF100100238AF5F029 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA0000460800669900B002010CFEAD15000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA0000460800669900A2000190EB3938000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 128 0 B00200474500F807009500860087008D00A3006D007D0081009C007C00000000000000000000000000AF00A500AD00A000B100A300AA00A300A3009C0000000000000000000000000074D7CC3787008D00A3006D007D0081009C007C00000000000000000000000000AF00A500AD00A000B100A300AA00A300A3009C00000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A20000240700F906000F417EE0019C ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A20000470C0016E9004C640027004D005C10F4310000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 44 44 0 A50000242400B7480000000000000000000000000000000000000000000000000000000000000000664B5D3F + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00004808004AB500A200014A37A484000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00004808004AB500A50001CF21EB81000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A20000490700AD52005764F1A7756700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A00000250700C03F01645054CCAEC4 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 192 0 A50000499200D22D004C642A00000000640043010100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001E4650312D30303030303030302D302D30303030303030302D6E6F626F647900954F9F36EAEDD0364E04D4A2B430F0D25BF63D97E631EC0F0F86A6A3DCDEF50C82BB7E8C2D30303030303030302D302D30303030303030302D6E6F626F647900954F9F36EAEDD0364E04 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 12 12 0 E000002504008976203A9633 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00004A08009C6300A0000169BE046B000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00004A08009C6300E00001A9339E1B000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A000004B070029D60041281F96933800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 13 13 0 B002002605000DF20079AA0FDB ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 E000004B08009C63004C642A9C8BFEAB000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 12 12 0 E0010026040056A9D15D8DC2 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00004C0800E11E00B00201703CF080000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00004C0800E11E00E00101034161C7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 128 0 B002004D45007F80009E008E008E007E00AB00840096007F0092008100000000000000000000000000AF00A500AD00A000B100A300AA00A300A3009C00000000000000000000000000D393E7738E007E00AB00840096007F0092008100000000000000000000000000AF00A500AD00A000B100A300AA00A300A3009C00000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A2000027070044BB000F417FBDC115 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 E001004D0800837C004C642ACB9D5A09000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A2000027070044BB010023F3CB2730 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00004E080037C800A20001A1744041000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A200004F0700D02F005964C7DF8EA700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A0000028070051AE016450E45131B6 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A200004F0C0047B80052640027004D00E19CE96F0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 44 44 0 A500002824004DB200000000000000000000000000000000000000000000000000000000000000003DB8032C + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA0000500800B94600A000017742AA0C000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA0000500800B94600A500019C80610A000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A000005107000CF300624F1EC75A2600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 13 13 0 B002002905004AB5002B5AB4E0 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 192 0 A5000051920021DE0052642A00000000640043010100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001E4650312D30303030303030302D302D30303030303030302D6E6F626F647900954F9F36EAEDD0364E04D4A2B430F0D25BF63D97E631EC0F0F86A6A3DCDEF50CCC7D08E82D30303030303030302D302D30303030303030302D6E6F626F647900954F9F36EAEDD0364E04 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 12 12 0 E00000290400738C14C55D45 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00005208006F9000B00201C8DE9ECE000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00005208006F9000E00001FA921490000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 128 0 B00200534500F10E0077007A00720083007500930073007E006E008200000000000000000000000000AE00A400AC009F00B100A200A900A200A3009C00000000000000000000000000C5190965720083007500930073007E006E008200000000000000000000000000AE00A400AC009F00B100A200A900A200A3009C00000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A200002A0700D52A000F41CF205E67 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 E000005308006F900052642AB5A4CC36000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++USBDEVFS_REAPURBNDELAY 0 3 1 0 0 114 114 0 A700002A6A0044BB640043010100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001E4650312D30303030303030302D302D30303030303030302D6E6F626F6479001CF66539 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA000054080012ED00A20001BF88EE26000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA000054080012ED00A70001544A2520000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 + USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A20000550700F50A0058641D3C23CD00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A000002B0700EC13016450E50CF13F +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA0000560800C43B00A000019C014EC9000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A00000570700718E726054F685049700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 13 13 0 B002002C05008A7500968A2CEA +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA0000580800E81700B00201B41CC35B000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 128 0 B002005945007689008C007100780072007A009500A10088009C008F00000000000000000000000000AE00A500AD00A000B100A200A900A200A3009C00000000000000000000000000D98A26F0780072007A009500A10088009C008F00000000000000000000000000AE00A500AD00A000B100A200A900A200A3009C00000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A200002D0700C33C000F41B74349F7 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00005A08003EC100A200016554739A000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A200005B0700D926005964EDCD672F00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A000002E07002CD30164505C0449E8 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00005C080043BC00A00001E0C3135C000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A000005D0700F609725F58291DE42400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 13 13 0 B002002F050037C8008E4555F0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00005E0800956A00B002015F5F279E000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 128 0 B002005F45000BF400A30088009D008D00A80071007F0092006F006100000000000000000000000000AE00A400AC009F00B100A200A900A200A3009C000000000000000000000000001A1438ED9D008D00A80071007F0092006F006100000000000000000000000000AE00A400AC009F00B100A200A900A200A3009C00000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A20000300700F00F000F4154F2E814 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA000060080058A700A200018370B3E9000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A20000610700BF400059646AA8553300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A00000310700C9360164507EDE474C +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00006208008E7100A00001A0F91306000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A000006307003BC4006432979DA1E700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 13 13 0 B0020032050004FB00326A5B9D +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA0000640800F30C00B00201B97BE7ED000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 128 0 B002006545006D92008D008F008A00750083008D0092008B0071007A00000000000000000000000000AE00A500AD00A000B100A200A900A200A3009C00000000000000000000000000394AB8458A00750083008D0092008B0071007A00000000000000000000000000AE00A500AD00A000B100A200A900A200A3009C00000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A200003307004DB2000F4155AF289D +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA000066080025DA00A200016833572C000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A20000670700C23D0057645CD0AEF300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A0000034070009F6016450C7D6FF9B +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA000068080009F600A00001DC3B4E93000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A00000690700BC43002E00509568C700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A3000035070019E6000F41EC883513 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00006A0800DF2000A30001C8D82C7D000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A300006B05003BC40055C25B16000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 114 114 0 A40000366A006798640043010100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001E4650312D30303030303030302D302D30303030303030302D6E6F626F647900B5C8699F +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00006C0800A25D00A40001A68D87BD000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A400006D0500996600E41BAEE2000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 13 13 0 A60000370500689700E8D1ECD8 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00006E0800748B00A6000185042752000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 128 0 A600006F6C0055AA0001640043010107000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001E4650312D30303030303030302D302D30303030303030302D6E6F626F6479006EA4C362000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 A20000380700A15E010023D1112994 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA0000700800FA0500A20001E14E401B000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A200007107001DE2005A635942221700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 44 44 0 A50000392400847B000000000000000000000000000000000000000000000000000000000000000038910386 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00007208002CD300A5000129052BF2000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 192 0 A50000739300A15E005A632900000000640043010107000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001E4650312D30303030303030302D302D30303030303030302D6E6F626F6479008B7767E4A81CC57C17A21C0F44B08232229E7F2E5DBFA70A5CEF58A3966ED710002FF9938030303030303030302D302D30303030303030302D6E6F626F6479008B7767E4A81CC57C17A2 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 15 15 0 a200003a07007788010023107a86d3 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA0000700800FA0500A20001E14E401B000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A200007107001DE2005A635942221700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 44 44 0 a500003b240052ad0000000000000000000000000000000000000000000000000000000000000000828af704 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA00007208002CD300A5000129052BF2000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 192 0 A50000739300A15E005A632900000000640043010107000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001E4650312D30303030303030302D302D30303030303030302D6E6F626F6479008B7767E4A81CC57C17A21C0F44B08232229E7F2E5DBFA70A5CEF58A3966ED710002FF9938030303030303030302D302D30303030303030302D6E6F626F6479008B7767E4A81CC57C17A2 +-USBDEVFS_REAPURBNDELAY 0 3 1 0 0 114 114 0 a700003c6a009b64640043010100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001e4650312d30303030303030302d302d30303030303030302d6e6f626f647900473c9b29 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 AA000074080051AE00A70001AC924B34000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 0 0 +- USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A7000075050011EE00ACFFDA28000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 ++ USBDEVFS_REAPURBNDELAY 0 3 131 0 0 2048 64 0 A7000055050052AD00C5D5FE86000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 +diff --git a/tests/goodixmoc/device b/tests/goodixmoc/device +index 627c9dc..a076caa 100644 +--- a/tests/goodixmoc/device ++++ b/tests/goodixmoc/device +@@ -1,30 +1,30 @@ +-P: /devices/pci0000:00/0000:00:14.0/usb1/1-8 +-N: bus/usb/001/003=12010002EF000040C627A26000010102030109022000010103A0320904000002FF0000040705830240000007050102400000 +-E: DEVNAME=/dev/bus/usb/001/003 ++P: /devices/pci0000:00/0000:00:14.0/usb3/3-2 ++N: bus/usb/003/008=12010002EF000040C627405800010102030109022000010103A0320904000002FF0000040705830240000007050102400000 ++E: DEVNAME=/dev/bus/usb/003/008 + E: DEVTYPE=usb_device + E: DRIVER=usb +-E: PRODUCT=27c6/60a2/100 ++E: PRODUCT=27c6/5840/100 + E: TYPE=239/0/0 +-E: BUSNUM=001 +-E: DEVNUM=003 ++E: BUSNUM=003 ++E: DEVNUM=008 + E: MAJOR=189 +-E: MINOR=2 ++E: MINOR=263 + E: SUBSYSTEM=usb + E: ID_VENDOR=Goodix_Technology_Co.__Ltd. + E: ID_VENDOR_ENC=Goodix\x20Technology\x20Co.\x2c\x20Ltd. + E: ID_VENDOR_ID=27c6 + E: ID_MODEL=Goodix_USB2.0_MISC + E: ID_MODEL_ENC=Goodix\x20USB2.0\x20MISC +-E: ID_MODEL_ID=60a2 ++E: ID_MODEL_ID=5840 + E: ID_REVISION=0100 +-E: ID_SERIAL=Goodix_Technology_Co.__Ltd._Goodix_USB2.0_MISC_UIDCBEE4D7B_XXXX_MOC_B0 +-E: ID_SERIAL_SHORT=UIDCBEE4D7B_XXXX_MOC_B0 ++E: ID_SERIAL=Goodix_Technology_Co.__Ltd._Goodix_USB2.0_MISC_UIDE1AD5CBA_XXXX_MOC_B0 ++E: ID_SERIAL_SHORT=UIDE1AD5CBA_XXXX_MOC_B0 + E: ID_BUS=usb + E: ID_USB_INTERFACES=:ff0000: + E: ID_VENDOR_FROM_DATABASE=Shenzhen Goodix Technology Co.,Ltd. +-E: ID_PATH=pci-0000:00:14.0-usb-0:8 +-E: ID_PATH_TAG=pci-0000_00_14_0-usb-0_8 +-E: LIBFPRINT_DRIVER=AuthenTec AES1610 ++E: ID_PATH=pci-0000:00:14.0-usb-0:2 ++E: ID_PATH_TAG=pci-0000_00_14_0-usb-0_2 ++E: LIBFPRINT_DRIVER=Goodix MOC Fingerprint Sensor + A: authorized=1 + A: avoid_reset_quirk=0 + A: bConfigurationValue=1 +@@ -37,32 +37,32 @@ A: bNumConfigurations=1 + A: bNumInterfaces= 1 + A: bcdDevice=0100 + A: bmAttributes=a0 +-A: busnum=1 +-A: configuration=UIDCBEE4D7B_XXXX_MOC_B0 +-H: descriptors=12010002EF000040C627A26000010102030109022000010103A0320904000002FF0000040705830240000007050102400000 +-A: dev=189:2 +-A: devnum=3 +-A: devpath=8 ++A: busnum=3\n ++A: configuration=UIDE1AD5CBA_XXXX_MOC_B0 ++H: descriptors=12010002EF000040C627405800010102030109022000010103A0320904000002FF0000040705830240000007050102400000 ++A: dev=189:263 ++A: devnum=8\n ++A: devpath=2 + L: driver=../../../../../bus/usb/drivers/usb +-A: idProduct=60a2 ++A: idProduct=5840 + A: idVendor=27c6 + A: ltm_capable=no + A: manufacturer=Goodix Technology Co., Ltd. + A: maxchild=0 +-L: port=../1-0:1.0/usb1-port8 +-A: power/active_duration=324448 ++L: port=../3-0:1.0/usb3-port2 ++A: power/active_duration=2684 + A: power/async=enabled + A: power/autosuspend=2 + A: power/autosuspend_delay_ms=2000 +-A: power/connected_duration=5916532 ++A: power/connected_duration=54348 + A: power/control=auto + A: power/level=auto + A: power/persist=1 + A: power/runtime_active_kids=0 +-A: power/runtime_active_time=327268 ++A: power/runtime_active_time=2518 + A: power/runtime_enabled=enabled + A: power/runtime_status=active +-A: power/runtime_suspended_time=5588987 ++A: power/runtime_suspended_time=51550 + A: power/runtime_usage=0 + A: power/wakeup=disabled + A: power/wakeup_abort_count= +@@ -75,38 +75,39 @@ A: power/wakeup_max_time_ms= + A: power/wakeup_total_time_ms= + A: product=Goodix USB2.0 MISC + A: quirks=0x0 +-A: removable=fixed ++A: removable=removable + A: rx_lanes=1 +-A: serial=UIDCBEE4D7B_XXXX_MOC_B0 ++A: serial=UIDE1AD5CBA_XXXX_MOC_B0 + A: speed=12 + A: tx_lanes=1 +-A: urbnum=2180 ++A: urbnum=15 + A: version= 2.00 + +-P: /devices/pci0000:00/0000:00:14.0/usb1 +-N: bus/usb/001/001=12010002090001406B1D020004050302010109021900010100E0000904000001090000000705810304000C +-E: DEVNAME=/dev/bus/usb/001/001 ++P: /devices/pci0000:00/0000:00:14.0/usb3 ++N: bus/usb/003/001=12010002090001406B1D020008050302010109021900010100E0000904000001090000000705810304000C ++E: DEVNAME=/dev/bus/usb/003/001 + E: DEVTYPE=usb_device + E: DRIVER=usb +-E: PRODUCT=1d6b/2/504 ++E: PRODUCT=1d6b/2/508 + E: TYPE=9/0/1 +-E: BUSNUM=001 ++E: BUSNUM=003 + E: DEVNUM=001 + E: MAJOR=189 +-E: MINOR=0 ++E: MINOR=256 + E: SUBSYSTEM=usb +-E: ID_VENDOR=Linux_5.4.0-29-generic_xhci-hcd +-E: ID_VENDOR_ENC=Linux\x205.4.0-29-generic\x20xhci-hcd ++E: ID_VENDOR=Linux_5.8.0-38-generic_xhci-hcd ++E: ID_VENDOR_ENC=Linux\x205.8.0-38-generic\x20xhci-hcd + E: ID_VENDOR_ID=1d6b + E: ID_MODEL=xHCI_Host_Controller + E: ID_MODEL_ENC=xHCI\x20Host\x20Controller + E: ID_MODEL_ID=0002 +-E: ID_REVISION=0504 +-E: ID_SERIAL=Linux_5.4.0-29-generic_xhci-hcd_xHCI_Host_Controller_0000:00:14.0 ++E: ID_REVISION=0508 ++E: ID_SERIAL=Linux_5.8.0-38-generic_xhci-hcd_xHCI_Host_Controller_0000:00:14.0 + E: ID_SERIAL_SHORT=0000:00:14.0 + E: ID_BUS=usb + E: ID_USB_INTERFACES=:090000: + E: ID_VENDOR_FROM_DATABASE=Linux Foundation ++E: ID_AUTOSUSPEND=1 + E: ID_MODEL_FROM_DATABASE=2.0 root hub + E: ID_PATH=pci-0000:00:14.0 + E: ID_PATH_TAG=pci-0000_00_14_0 +@@ -123,33 +124,33 @@ A: bMaxPacketSize0=64 + A: bMaxPower=0mA + A: bNumConfigurations=1 + A: bNumInterfaces= 1 +-A: bcdDevice=0504 ++A: bcdDevice=0508 + A: bmAttributes=e0 +-A: busnum=1 ++A: busnum=3\n + A: configuration= +-H: descriptors=12010002090001406B1D020004050302010109021900010100E0000904000001090000000705810304000C +-A: dev=189:0 +-A: devnum=1 ++H: descriptors=12010002090001406B1D020008050302010109021900010100E0000904000001090000000705810304000C ++A: dev=189:256 ++A: devnum=1\n + A: devpath=0 + L: driver=../../../../bus/usb/drivers/usb + A: idProduct=0002 + A: idVendor=1d6b + A: interface_authorized_default=1 + A: ltm_capable=no +-A: manufacturer=Linux 5.4.0-29-generic xhci-hcd +-A: maxchild=12 +-A: power/active_duration=5879432 ++A: manufacturer=Linux 5.8.0-38-generic xhci-hcd ++A: maxchild=4 ++A: power/active_duration=2790916 + A: power/async=enabled + A: power/autosuspend=0 + A: power/autosuspend_delay_ms=0 +-A: power/connected_duration=5916912 ++A: power/connected_duration=15607832 + A: power/control=auto + A: power/level=auto +-A: power/runtime_active_kids=2 +-A: power/runtime_active_time=5879430 ++A: power/runtime_active_kids=1 ++A: power/runtime_active_time=2790874 + A: power/runtime_enabled=enabled + A: power/runtime_status=active +-A: power/runtime_suspended_time=37481 ++A: power/runtime_suspended_time=12816956 + A: power/runtime_usage=0 + A: power/wakeup=disabled + A: power/wakeup_abort_count= +@@ -167,5 +168,7 @@ A: rx_lanes=1 + A: serial=0000:00:14.0 + A: speed=480 + A: tx_lanes=1 +-A: urbnum=1319 ++A: urbnum=584 + A: version= 2.00 ++ ++ +-- +2.31.1 + + +From b1a3c9726d258e48a325360208e15468f667eff7 Mon Sep 17 00:00:00 2001 +From: weilei +Date: Thu, 4 Feb 2021 11:31:10 +0800 +Subject: [PATCH 4/6] goodixmoc:Add new PID + +Add PID 6594 used by LENOVO +--- + libfprint/drivers/goodixmoc/goodix.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/libfprint/drivers/goodixmoc/goodix.c b/libfprint/drivers/goodixmoc/goodix.c +index 9cfdbe6..77278c6 100644 +--- a/libfprint/drivers/goodixmoc/goodix.c ++++ b/libfprint/drivers/goodixmoc/goodix.c +@@ -1553,6 +1553,7 @@ static const FpIdEntry id_table[] = { + { .vid = 0x27c6, .pid = 0x60A2, }, + { .vid = 0x27c6, .pid = 0x63AC, }, + { .vid = 0x27c6, .pid = 0x639C, }, ++ { .vid = 0x27c6, .pid = 0x6594, }, + { .vid = 0, .pid = 0, .driver_data = 0 }, /* terminating entry */ + }; + +-- +2.31.1 + + +From 3409938af14d2220a65de3fb9be2fcdd7a6aa4f7 Mon Sep 17 00:00:00 2001 +From: Nelson Jeppesen +Date: Fri, 7 May 2021 13:02:11 -0700 +Subject: [PATCH 5/6] goodixmoc: Add PID 6A94 + +--- + libfprint/drivers/goodixmoc/goodix.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/libfprint/drivers/goodixmoc/goodix.c b/libfprint/drivers/goodixmoc/goodix.c +index 77278c6..d67d392 100644 +--- a/libfprint/drivers/goodixmoc/goodix.c ++++ b/libfprint/drivers/goodixmoc/goodix.c +@@ -1554,6 +1554,7 @@ static const FpIdEntry id_table[] = { + { .vid = 0x27c6, .pid = 0x63AC, }, + { .vid = 0x27c6, .pid = 0x639C, }, + { .vid = 0x27c6, .pid = 0x6594, }, ++ { .vid = 0x27c6, .pid = 0x6A94, }, + { .vid = 0, .pid = 0, .driver_data = 0 }, /* terminating entry */ + }; + +-- +2.31.1 + + +From 440301fdf65e89d662c26bfa92e0d07874c4f359 Mon Sep 17 00:00:00 2001 +From: boger +Date: Wed, 23 Jun 2021 15:14:33 +0800 +Subject: [PATCH 6/6] goodixmoc: add PID 609C/6584/658C/6592/659C + +add some new PID support, +609C: Framework fingerprint sensor +65xx: Thinkpad series fingerprint sensor +--- + libfprint/drivers/goodixmoc/goodix.c | 13 +++++++++++-- + 1 file changed, 11 insertions(+), 2 deletions(-) + +diff --git a/libfprint/drivers/goodixmoc/goodix.c b/libfprint/drivers/goodixmoc/goodix.c +index d67d392..0399c0b 100644 +--- a/libfprint/drivers/goodixmoc/goodix.c ++++ b/libfprint/drivers/goodixmoc/goodix.c +@@ -1318,6 +1318,10 @@ gx_fp_probe (FpDevice *device) + { + case 0x6496: + case 0x60A2: ++ case 0x609C: ++ case 0x639C: ++ case 0x63AC: ++ case 0x6A94: + self->max_enroll_stage = 12; + break; + +@@ -1549,11 +1553,16 @@ gx_fp_cancel (FpDevice *device) + + static const FpIdEntry id_table[] = { + { .vid = 0x27c6, .pid = 0x5840, }, +- { .vid = 0x27c6, .pid = 0x6496, }, ++ { .vid = 0x27c6, .pid = 0x609C, }, + { .vid = 0x27c6, .pid = 0x60A2, }, +- { .vid = 0x27c6, .pid = 0x63AC, }, + { .vid = 0x27c6, .pid = 0x639C, }, ++ { .vid = 0x27c6, .pid = 0x63AC, }, ++ { .vid = 0x27c6, .pid = 0x6496, }, ++ { .vid = 0x27c6, .pid = 0x6584, }, ++ { .vid = 0x27c6, .pid = 0x658C, }, ++ { .vid = 0x27c6, .pid = 0x6592, }, + { .vid = 0x27c6, .pid = 0x6594, }, ++ { .vid = 0x27c6, .pid = 0x659C, }, + { .vid = 0x27c6, .pid = 0x6A94, }, + { .vid = 0, .pid = 0, .driver_data = 0 }, /* terminating entry */ + }; +-- +2.31.1 + From 07130c0eb8de47f0ef2d6f3f0851c01c1b20170d Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 22 Jul 2021 11:24:08 +0000 Subject: [PATCH 03/32] - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libfprint.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libfprint.spec b/libfprint.spec index c8597f0..c1fb6ca 100644 --- a/libfprint.spec +++ b/libfprint.spec @@ -1,7 +1,7 @@ Name: libfprint Version: 1.92.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Toolkit for fingerprint scanner License: LGPLv2+ @@ -73,6 +73,9 @@ developing applications that use %{name}. %{_datadir}/gtk-doc/html/libfprint-2/ %changelog +* Thu Jul 22 2021 Fedora Release Engineering - 1.92.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + * Thu Jul 01 2021 Benjamin Berg - 1.92.0-1 - Update to 1.92.0 (#1977842) From f287a267a59ba184898245d0730345cced5fd60b Mon Sep 17 00:00:00 2001 From: Benjamin Berg Date: Mon, 26 Jul 2021 20:23:48 +0200 Subject: [PATCH 04/32] Add patch disabling timeouts in virtual-device to enable fedora CI --- ...o-not-time-out-when-waiting-for-SCAN.patch | 53 +++++++++++++++++++ libfprint.spec | 7 ++- 2 files changed, 59 insertions(+), 1 deletion(-) create mode 100644 0001-virtual-device-Do-not-time-out-when-waiting-for-SCAN.patch diff --git a/0001-virtual-device-Do-not-time-out-when-waiting-for-SCAN.patch b/0001-virtual-device-Do-not-time-out-when-waiting-for-SCAN.patch new file mode 100644 index 0000000..fff73d7 --- /dev/null +++ b/0001-virtual-device-Do-not-time-out-when-waiting-for-SCAN.patch @@ -0,0 +1,53 @@ +From 4cdca4da247b101e01d3c6266c4b2b3ba946c6f5 Mon Sep 17 00:00:00 2001 +From: Benjamin Berg +Date: Mon, 26 Jul 2021 19:45:02 +0200 +Subject: [PATCH] virtual-device: Do not time out when waiting for SCAN command + +The timeout is designed to continue commands automatically that are +common (e.g. opening the device). This doesn't really make sense for +scan commands, and removing the timeout enables test setups where user +interaction with the device may happen at arbitrary times. + +One exception is device removal/unplug, in which case the timeout will +be added anyway. +--- + libfprint/drivers/virtual-device.c | 8 +++++++- + 1 file changed, 7 insertions(+), 1 deletion(-) + +diff --git a/libfprint/drivers/virtual-device.c b/libfprint/drivers/virtual-device.c +index 1743692..a9efb39 100644 +--- a/libfprint/drivers/virtual-device.c ++++ b/libfprint/drivers/virtual-device.c +@@ -150,6 +150,8 @@ process_cmds (FpDeviceVirtualDevice * self, + char **scan_id, + GError **error) + { ++ gboolean removed; ++ + if (g_cancellable_is_cancelled (self->cancellable) || + (fpi_device_get_current_action (FP_DEVICE (self)) != FPI_DEVICE_ACTION_NONE && + g_cancellable_is_cancelled (fpi_device_get_cancellable (FP_DEVICE (self))))) +@@ -250,8 +252,11 @@ process_cmds (FpDeviceVirtualDevice * self, + if (self->ignore_wait) + return TRUE; + ++ g_object_get (self, "removed", &removed, NULL); ++ + g_assert (self->wait_command_id == 0); +- self->wait_command_id = g_timeout_add (500, wait_for_command_timeout, self); ++ if (!scan || removed) ++ self->wait_command_id = g_timeout_add (500, wait_for_command_timeout, self); + return FALSE; + } + +@@ -304,6 +309,7 @@ recv_instruction_cb (GObject *source_object, + else if (g_str_has_prefix (cmd, UNPLUG_CMD)) + { + fpi_device_remove (FP_DEVICE (self)); ++ maybe_continue_current_action (self); + } + else if (g_str_has_prefix (cmd, SET_ENROLL_STAGES_PREFIX)) + { +-- +2.31.1 + diff --git a/libfprint.spec b/libfprint.spec index c1fb6ca..2349116 100644 --- a/libfprint.spec +++ b/libfprint.spec @@ -1,7 +1,7 @@ Name: libfprint Version: 1.92.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Toolkit for fingerprint scanner License: LGPLv2+ @@ -29,6 +29,8 @@ BuildRequires: umockdev >= 0.13.2 Patch0000: https://gitlab.freedesktop.org/libfprint/libfprint/-/merge_requests/306.patch +Patch9999: 0001-virtual-device-Do-not-time-out-when-waiting-for-SCAN.patch + %description libfprint offers support for consumer fingerprint reader devices. @@ -73,6 +75,9 @@ developing applications that use %{name}. %{_datadir}/gtk-doc/html/libfprint-2/ %changelog +* Mon Jul 26 2021 Benjamin Berg - 1.92.0-3 +- Add patch disabling timeouts in virtual-device to enable fedora CI + * Thu Jul 22 2021 Fedora Release Engineering - 1.92.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild From 04c7a0ca5a945b2f66bd672c0403e17c61beb94b Mon Sep 17 00:00:00 2001 From: Benjamin Berg Date: Tue, 27 Jul 2021 10:18:18 +0200 Subject: [PATCH 05/32] Increase timeout of tests by factor 4 --- libfprint.spec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libfprint.spec b/libfprint.spec index 2349116..e0f4236 100644 --- a/libfprint.spec +++ b/libfprint.spec @@ -56,7 +56,7 @@ developing applications that use %{name}. %ldconfig_scriptlets %check -%meson_test +%meson_test -t 4 %files %license COPYING @@ -77,6 +77,7 @@ developing applications that use %{name}. %changelog * Mon Jul 26 2021 Benjamin Berg - 1.92.0-3 - Add patch disabling timeouts in virtual-device to enable fedora CI +- Increase timeout of tests by factor 4 * Thu Jul 22 2021 Fedora Release Engineering - 1.92.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild From 41b48ba54b3b4404c8415d4b67f029cd780d2512 Mon Sep 17 00:00:00 2001 From: Benjamin Berg Date: Fri, 20 Aug 2021 17:18:11 +0200 Subject: [PATCH 06/32] Update to 1.94.0 (#1977842) Related: #1894694 --- .gitignore | 1 + ...o-not-time-out-when-waiting-for-SCAN.patch | 53 ---- 306.patch | 300 ------------------ libfprint.spec | 12 +- sources | 2 +- 5 files changed, 8 insertions(+), 360 deletions(-) delete mode 100644 0001-virtual-device-Do-not-time-out-when-waiting-for-SCAN.patch delete mode 100644 306.patch diff --git a/.gitignore b/.gitignore index 86703ff..026bf07 100644 --- a/.gitignore +++ b/.gitignore @@ -16,3 +16,4 @@ libfprint-0.3.0.tar.bz2 /libfprint-v1.90.6.tar.gz /libfprint-v1.90.7.tar.gz /libfprint-v1.92.0.tar.gz +/libfprint-v1.94.0.tar.gz diff --git a/0001-virtual-device-Do-not-time-out-when-waiting-for-SCAN.patch b/0001-virtual-device-Do-not-time-out-when-waiting-for-SCAN.patch deleted file mode 100644 index fff73d7..0000000 --- a/0001-virtual-device-Do-not-time-out-when-waiting-for-SCAN.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 4cdca4da247b101e01d3c6266c4b2b3ba946c6f5 Mon Sep 17 00:00:00 2001 -From: Benjamin Berg -Date: Mon, 26 Jul 2021 19:45:02 +0200 -Subject: [PATCH] virtual-device: Do not time out when waiting for SCAN command - -The timeout is designed to continue commands automatically that are -common (e.g. opening the device). This doesn't really make sense for -scan commands, and removing the timeout enables test setups where user -interaction with the device may happen at arbitrary times. - -One exception is device removal/unplug, in which case the timeout will -be added anyway. ---- - libfprint/drivers/virtual-device.c | 8 +++++++- - 1 file changed, 7 insertions(+), 1 deletion(-) - -diff --git a/libfprint/drivers/virtual-device.c b/libfprint/drivers/virtual-device.c -index 1743692..a9efb39 100644 ---- a/libfprint/drivers/virtual-device.c -+++ b/libfprint/drivers/virtual-device.c -@@ -150,6 +150,8 @@ process_cmds (FpDeviceVirtualDevice * self, - char **scan_id, - GError **error) - { -+ gboolean removed; -+ - if (g_cancellable_is_cancelled (self->cancellable) || - (fpi_device_get_current_action (FP_DEVICE (self)) != FPI_DEVICE_ACTION_NONE && - g_cancellable_is_cancelled (fpi_device_get_cancellable (FP_DEVICE (self))))) -@@ -250,8 +252,11 @@ process_cmds (FpDeviceVirtualDevice * self, - if (self->ignore_wait) - return TRUE; - -+ g_object_get (self, "removed", &removed, NULL); -+ - g_assert (self->wait_command_id == 0); -- self->wait_command_id = g_timeout_add (500, wait_for_command_timeout, self); -+ if (!scan || removed) -+ self->wait_command_id = g_timeout_add (500, wait_for_command_timeout, self); - return FALSE; - } - -@@ -304,6 +309,7 @@ recv_instruction_cb (GObject *source_object, - else if (g_str_has_prefix (cmd, UNPLUG_CMD)) - { - fpi_device_remove (FP_DEVICE (self)); -+ maybe_continue_current_action (self); - } - else if (g_str_has_prefix (cmd, SET_ENROLL_STAGES_PREFIX)) - { --- -2.31.1 - diff --git a/306.patch b/306.patch deleted file mode 100644 index 40ca308..0000000 --- a/306.patch +++ /dev/null @@ -1,300 +0,0 @@ -From 96afb4577986451eb41df39e4eea2b9d8f96cd7c Mon Sep 17 00:00:00 2001 -From: Benjamin Berg -Date: Thu, 1 Jul 2021 17:37:53 +0200 -Subject: [PATCH 1/8] spi: Fix pointer cast on 32bit architectures - ---- - libfprint/fpi-spi-transfer.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/libfprint/fpi-spi-transfer.c b/libfprint/fpi-spi-transfer.c -index f820c53d..f5d2617d 100644 ---- a/libfprint/fpi-spi-transfer.c -+++ b/libfprint/fpi-spi-transfer.c -@@ -323,7 +323,7 @@ transfer_chunk (FpiSpiTransfer *transfer, gsize full_length, gsize *transferred) - { - if (skip < transfer->length_wr && len < block_size) - { -- xfer[transfers].tx_buf = (guint64) transfer->buffer_wr + skip; -+ xfer[transfers].tx_buf = (gsize) transfer->buffer_wr + skip; - xfer[transfers].len = MIN (block_size, transfer->length_wr - skip); - - len += xfer[transfers].len; -@@ -340,7 +340,7 @@ transfer_chunk (FpiSpiTransfer *transfer, gsize full_length, gsize *transferred) - { - if (skip < transfer->length_rd && len < block_size) - { -- xfer[transfers].rx_buf = (guint64) transfer->buffer_rd + skip; -+ xfer[transfers].rx_buf = (gsize) transfer->buffer_rd + skip; - xfer[transfers].len = MIN (block_size, transfer->length_rd - skip); - - len += xfer[transfers].len; --- -GitLab - - -From 9e5cf81ef8355b1c267a883b496e580080cbf1c6 Mon Sep 17 00:00:00 2001 -From: Benjamin Berg -Date: Thu, 1 Jul 2021 17:51:07 +0200 -Subject: [PATCH 2/8] upektc_img: Fix warnings in debug format strings - ---- - libfprint/drivers/upektc_img.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/libfprint/drivers/upektc_img.c b/libfprint/drivers/upektc_img.c -index 34e3b9de..19bc4158 100644 ---- a/libfprint/drivers/upektc_img.c -+++ b/libfprint/drivers/upektc_img.c -@@ -221,7 +221,7 @@ capture_read_data_cb (FpiUsbTransfer *transfer, FpDevice *device, - if (response_size > transfer->actual_length) - { - fp_dbg ("response_size is %lu, actual_length is %d", -- response_size, (gint) transfer->actual_length); -+ (gulong) response_size, (gint) transfer->actual_length); - fp_dbg ("Waiting for rest of transfer"); - BUG_ON (self->response_rest); - self->response_rest = response_size - transfer->actual_length; -@@ -309,7 +309,7 @@ capture_read_data_cb (FpiUsbTransfer *transfer, FpDevice *device, - data); - BUG_ON (self->image_size != IMAGE_SIZE); - fp_dbg ("Image size is %lu", -- self->image_size); -+ (gulong) self->image_size); - img = fp_image_new (IMAGE_WIDTH, IMAGE_HEIGHT); - img->flags |= FPI_IMAGE_PARTIAL; - memcpy (img->data, self->image_bits, --- -GitLab - - -From 8edfd4203c72924e9dd3377a2f3e19174339e6fc Mon Sep 17 00:00:00 2001 -From: Benjamin Berg -Date: Thu, 1 Jul 2021 18:27:13 +0200 -Subject: [PATCH 3/8] upektc: Fix format string on architectures where 64bit is - not long - ---- - libfprint/drivers/upektc.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/libfprint/drivers/upektc.c b/libfprint/drivers/upektc.c -index c8113f6c..115e6b60 100644 ---- a/libfprint/drivers/upektc.c -+++ b/libfprint/drivers/upektc.c -@@ -411,7 +411,7 @@ dev_init (FpImageDevice *dev) - break; - - default: -- fp_err ("Device variant %lu is not known", driver_data); -+ fp_err ("Device variant %" G_GUINT64_FORMAT " is not known", driver_data); - g_assert_not_reached (); - fpi_image_device_open_complete (dev, fpi_device_error_new (FP_DEVICE_ERROR_GENERAL)); - return; --- -GitLab - - -From 78b1b679d79e0af0c17f8450b034b267ba837783 Mon Sep 17 00:00:00 2001 -From: Benjamin Berg -Date: Tue, 6 Jul 2021 20:48:12 +0200 -Subject: [PATCH 4/8] upeksonly: Fix format string warning by using unsigned - -There is no need to use size_t for num_rows as it is capped to NUM_ROWS -which is defined to 2048. ---- - libfprint/drivers/upeksonly.c | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/libfprint/drivers/upeksonly.c b/libfprint/drivers/upeksonly.c -index 5b2ffdf5..9d93cc76 100644 ---- a/libfprint/drivers/upeksonly.c -+++ b/libfprint/drivers/upeksonly.c -@@ -79,7 +79,7 @@ struct _FpiDeviceUpeksonly - int num_flying; - - GSList *rows; -- size_t num_rows; -+ unsigned num_rows; - unsigned char *rowbuf; - int rowbuf_offset; - -@@ -215,7 +215,7 @@ handoff_img (FpImageDevice *dev) - - self->rows = g_slist_reverse (self->rows); - -- fp_dbg ("%lu rows", self->num_rows); -+ fp_dbg ("%u rows", self->num_rows); - img = fpi_assemble_lines (&self->assembling_ctx, self->rows, self->num_rows); - - g_slist_free_full (self->rows, g_free); -@@ -295,7 +295,7 @@ row_complete (FpImageDevice *dev) - if (self->num_blank > FINGER_REMOVED_THRESHOLD) - { - self->finger_state = FINGER_REMOVED; -- fp_dbg ("detected finger removal. Blank rows: %d, Full rows: %lu", -+ fp_dbg ("detected finger removal. Blank rows: %d, Full rows: %u", - self->num_blank, self->num_rows); - handoff_img (dev); - return; --- -GitLab - - -From 90b466f122aa74b58807e56720cd49f3b317a709 Mon Sep 17 00:00:00 2001 -From: Benjamin Berg -Date: Tue, 6 Jul 2021 20:55:00 +0200 -Subject: [PATCH 5/8] upekts: Fix format strings - ---- - libfprint/drivers/upekts.c | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -diff --git a/libfprint/drivers/upekts.c b/libfprint/drivers/upekts.c -index 1f1b1810..3d82cb33 100644 ---- a/libfprint/drivers/upekts.c -+++ b/libfprint/drivers/upekts.c -@@ -366,7 +366,7 @@ read_msg_cb (FpiUsbTransfer *transfer, FpDevice *device, - fp_err ("async msg read too short (%d)", - (gint) transfer->actual_length); - error = fpi_device_error_new_msg (FP_DEVICE_ERROR_PROTO, -- "Packet from device was too short (%lu)", -+ "Packet from device was too short (%" G_GSSIZE_FORMAT ")", - transfer->actual_length); - goto err; - } -@@ -993,7 +993,7 @@ e_handle_resp00 (FpDevice *dev, unsigned char *data, - - if (data_len != 14) - { -- fp_err ("received 3001 poll response of %lu bytes?", data_len); -+ fp_err ("received 3001 poll response of %" G_GSIZE_FORMAT " bytes?", data_len); - do_enroll_stop (dev, NULL, - fpi_device_error_new_msg (FP_DEVICE_ERROR_PROTO, - "received 3001 response with wrong length")); -@@ -1090,7 +1090,7 @@ e_handle_resp02 (FpDevice *dev, unsigned char *data, - - if (data_len < sizeof (scan_comp)) - { -- fp_err ("fingerprint data too short (%lu bytes)", data_len); -+ fp_err ("fingerprint data too short (%" G_GSIZE_FORMAT "u bytes)", data_len); - error = fpi_device_error_new_msg (FP_DEVICE_ERROR_PROTO, "fingerprint data too short"); - } - else if (memcmp (data, scan_comp, sizeof (scan_comp)) != 0) -@@ -1318,7 +1318,7 @@ v_handle_resp00 (FpDevice *dev, unsigned char *data, - - if (data_len != 14) - { -- fp_warn ("received 3001 poll response of %lu bytes?", data_len); -+ fp_warn ("received 3001 poll response of %" G_GSIZE_FORMAT "u bytes?", data_len); - error = fpi_device_error_new (FP_DEVICE_ERROR_PROTO); - goto out; - } --- -GitLab - - -From b872367aff0c0580318c9159c105a06ea849e613 Mon Sep 17 00:00:00 2001 -From: Benjamin Berg -Date: Tue, 6 Jul 2021 20:55:23 +0200 -Subject: [PATCH 6/8] virtual-device: Fix format strings - ---- - libfprint/drivers/virtual-device.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/libfprint/drivers/virtual-device.c b/libfprint/drivers/virtual-device.c -index effcd593..1743692b 100644 ---- a/libfprint/drivers/virtual-device.c -+++ b/libfprint/drivers/virtual-device.c -@@ -192,7 +192,7 @@ process_cmds (FpDeviceVirtualDevice * self, - { - guint64 sleep_ms = g_ascii_strtoull (cmd + strlen (SLEEP_CMD_PREFIX), NULL, 10); - -- g_debug ("Sleeping %lums", sleep_ms); -+ g_debug ("Sleeping %" G_GUINT64_FORMAT "ms", sleep_ms); - self->sleep_timeout_id = g_timeout_add (sleep_ms, sleep_timeout_cb, self); - - return FALSE; -@@ -275,7 +275,7 @@ recv_instruction_cb (GObject *source_object, - gsize bytes; - - bytes = fpi_device_virtual_listener_read_finish (listener, res, &error); -- fp_dbg ("Got instructions of length %ld", bytes); -+ fp_dbg ("Got instructions of length %" G_GSIZE_FORMAT, bytes); - - if (error) - { --- -GitLab - - -From 7bdb96f3df16e80432c7d0488762d0551cddc252 Mon Sep 17 00:00:00 2001 -From: Benjamin Berg -Date: Tue, 6 Jul 2021 22:49:15 +0200 -Subject: [PATCH 7/8] aesx660: Fix format strings - ---- - libfprint/drivers/aesx660.c | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/libfprint/drivers/aesx660.c b/libfprint/drivers/aesx660.c -index fb786600..dc0bc0de 100644 ---- a/libfprint/drivers/aesx660.c -+++ b/libfprint/drivers/aesx660.c -@@ -365,7 +365,7 @@ capture_read_stripe_data_cb (FpiUsbTransfer *transfer, - return; - } - -- fp_dbg ("Got %lu bytes of data", actual_length); -+ fp_dbg ("Got %" G_GSIZE_FORMAT " bytes of data", actual_length); - while (actual_length) - { - gssize payload_length; -@@ -386,7 +386,7 @@ capture_read_stripe_data_cb (FpiUsbTransfer *transfer, - (priv->stripe_packet->data[AESX660_RESPONSE_SIZE_MSB_OFFSET] << 8); - fp_dbg ("Got frame, type %.2x payload of size %.4lx", - priv->stripe_packet->data[AESX660_RESPONSE_TYPE_OFFSET], -- payload_length); -+ (long) payload_length); - - still_needed_len = MAX (0, AESX660_HEADER_SIZE + payload_length - (gssize) priv->stripe_packet->len); - copy_len = MIN (actual_length, still_needed_len); -@@ -441,7 +441,7 @@ capture_run_state (FpiSsm *ssm, FpDevice *_dev) - break; - - case CAPTURE_SET_IDLE: -- fp_dbg ("Got %lu frames", priv->strips_len); -+ fp_dbg ("Got %" G_GSIZE_FORMAT " frames", priv->strips_len); - aesX660_send_cmd (ssm, _dev, set_idle_cmd, sizeof (set_idle_cmd), - capture_set_idle_cmd_cb); - break; --- -GitLab - - -From 94dbcc3d0da5e121a59f8fe634bae3d56a070464 Mon Sep 17 00:00:00 2001 -From: Benjamin Berg -Date: Tue, 6 Jul 2021 22:49:23 +0200 -Subject: [PATCH 8/8] elanspi: Fix format string - ---- - libfprint/drivers/elanspi.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/libfprint/drivers/elanspi.c b/libfprint/drivers/elanspi.c -index fab958b6..daea67c3 100644 ---- a/libfprint/drivers/elanspi.c -+++ b/libfprint/drivers/elanspi.c -@@ -1219,7 +1219,7 @@ elanspi_guess_image (FpiDeviceElanSpi *self, guint16 *raw_image) - - sq_stddev /= (frame_width * frame_height); - -- fp_dbg (" stddev=%ld, ip=%d, is_fp=%d, is_empty=%d", sq_stddev, invalid_percent, is_fp, is_empty); -+ fp_dbg (" stddev=%" G_GUINT64_FORMAT "d, ip=%d, is_fp=%d, is_empty=%d", sq_stddev, invalid_percent, is_fp, is_empty); - - if (invalid_percent < ELANSPI_MAX_REAL_INVALID_PERCENT) - is_fp += 1; --- -GitLab - diff --git a/libfprint.spec b/libfprint.spec index e0f4236..664b64b 100644 --- a/libfprint.spec +++ b/libfprint.spec @@ -1,7 +1,7 @@ Name: libfprint -Version: 1.92.0 -Release: 3%{?dist} +Version: 1.94.0 +Release: 1%{?dist} Summary: Toolkit for fingerprint scanner License: LGPLv2+ @@ -27,10 +27,6 @@ BuildRequires: gobject-introspection-devel BuildRequires: python3-cairo python3-gobject cairo-devel BuildRequires: umockdev >= 0.13.2 -Patch0000: https://gitlab.freedesktop.org/libfprint/libfprint/-/merge_requests/306.patch - -Patch9999: 0001-virtual-device-Do-not-time-out-when-waiting-for-SCAN.patch - %description libfprint offers support for consumer fingerprint reader devices. @@ -75,6 +71,10 @@ developing applications that use %{name}. %{_datadir}/gtk-doc/html/libfprint-2/ %changelog +* Fri Aug 20 2021 Benjamin Berg - 1.94.0-1 +- Update to 1.94.0 (#1977842) + Related: #1894694 + * Mon Jul 26 2021 Benjamin Berg - 1.92.0-3 - Add patch disabling timeouts in virtual-device to enable fedora CI - Increase timeout of tests by factor 4 diff --git a/sources b/sources index 5b180a7..c84429d 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libfprint-v1.92.0.tar.gz) = 8993c550c38f3f7d5d50afe6d55414791bdb18e13600fa88d6ad85087e6c1ca664503a0969143c82a1f2fc3e2dbacb93e044fe9ebbb4d5835462d0d3ca03104f +SHA512 (libfprint-v1.94.0.tar.gz) = db2c6f88bacdddd44c825faf0ff70e90546261b6756f06bf6b45b8f5524734c11105eca2f3d7548f96f6974e1c1b9c644c7bb69e8ccdfbfcd3264e2d4b40869a From d4c27761b3588b987237e44a7a2f902e6a653100 Mon Sep 17 00:00:00 2001 From: Benjamin Berg Date: Wed, 25 Aug 2021 15:02:14 +0200 Subject: [PATCH 07/32] tests: Accept 77 error code This can happen in some cases (e.g. outdated umockdev), so accept error 77 (skipped test). --- tests/run-umockdev.sh | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tests/run-umockdev.sh b/tests/run-umockdev.sh index 073f811..d8c5362 100755 --- a/tests/run-umockdev.sh +++ b/tests/run-umockdev.sh @@ -31,7 +31,10 @@ for test in ${TESTS[@]}; do RES=$? echo "$test finished with return code $RES" echo "" - ((RESULT += $RES)) + # Ignore skipped tests + if [ $RES -ne 0 -a $RES -ne 77 ]; then + RESULT=1 + fi done exit $RESULT From f8b7f550566d3da00ac80efb547dc0345858d63f Mon Sep 17 00:00:00 2001 From: Benjamin Berg Date: Fri, 24 Sep 2021 17:38:59 +0200 Subject: [PATCH 08/32] Update to 1.94.1 --- .gitignore | 1 + libfprint.spec | 5 ++++- sources | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 026bf07..fbe5b94 100644 --- a/.gitignore +++ b/.gitignore @@ -17,3 +17,4 @@ libfprint-0.3.0.tar.bz2 /libfprint-v1.90.7.tar.gz /libfprint-v1.92.0.tar.gz /libfprint-v1.94.0.tar.gz +/libfprint-v1.94.1.tar.gz diff --git a/libfprint.spec b/libfprint.spec index 664b64b..b0f317f 100644 --- a/libfprint.spec +++ b/libfprint.spec @@ -1,6 +1,6 @@ Name: libfprint -Version: 1.94.0 +Version: 1.94.1 Release: 1%{?dist} Summary: Toolkit for fingerprint scanner @@ -71,6 +71,9 @@ developing applications that use %{name}. %{_datadir}/gtk-doc/html/libfprint-2/ %changelog +* Fri Sep 24 2021 Benjamin Berg - 1.94.1-1 +- Update to 1.94.1 + * Fri Aug 20 2021 Benjamin Berg - 1.94.0-1 - Update to 1.94.0 (#1977842) Related: #1894694 diff --git a/sources b/sources index c84429d..f75a2a5 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libfprint-v1.94.0.tar.gz) = db2c6f88bacdddd44c825faf0ff70e90546261b6756f06bf6b45b8f5524734c11105eca2f3d7548f96f6974e1c1b9c644c7bb69e8ccdfbfcd3264e2d4b40869a +SHA512 (libfprint-v1.94.1.tar.gz) = 648ea42acbba720f16a265a8577256e5650a2706012879f689f8649c8a82aacedea6f0a90964367c884bd3ba13cee76ff5298c8e8e18f61dd769f07ab67bf341 From 6113d1b156353e4fdf0fe95b0d2039f4dc9a9e7b Mon Sep 17 00:00:00 2001 From: Benjamin Berg Date: Wed, 3 Nov 2021 16:42:36 +0100 Subject: [PATCH 09/32] Update to 1.94.2 (#1977842) --- .gitignore | 1 + libfprint.spec | 5 ++++- sources | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index fbe5b94..ecc8d00 100644 --- a/.gitignore +++ b/.gitignore @@ -18,3 +18,4 @@ libfprint-0.3.0.tar.bz2 /libfprint-v1.92.0.tar.gz /libfprint-v1.94.0.tar.gz /libfprint-v1.94.1.tar.gz +/libfprint-v1.94.2.tar.gz diff --git a/libfprint.spec b/libfprint.spec index b0f317f..6c73f3e 100644 --- a/libfprint.spec +++ b/libfprint.spec @@ -1,6 +1,6 @@ Name: libfprint -Version: 1.94.1 +Version: 1.94.2 Release: 1%{?dist} Summary: Toolkit for fingerprint scanner @@ -71,6 +71,9 @@ developing applications that use %{name}. %{_datadir}/gtk-doc/html/libfprint-2/ %changelog +* Wed Nov 03 2021 Benjamin Berg - 1.94.2-1 +- Update to 1.94.2 (#1977842) + * Fri Sep 24 2021 Benjamin Berg - 1.94.1-1 - Update to 1.94.1 diff --git a/sources b/sources index f75a2a5..996e761 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libfprint-v1.94.1.tar.gz) = 648ea42acbba720f16a265a8577256e5650a2706012879f689f8649c8a82aacedea6f0a90964367c884bd3ba13cee76ff5298c8e8e18f61dd769f07ab67bf341 +SHA512 (libfprint-v1.94.2.tar.gz) = d18dd86652f18f3157eea5a3e66ed7b4e352b1cd7b8d4ec56d464bc044ee138cac8d09ace9a3259c2736cab84505e0c10bd192088295a11220fd03d5230cf499 From 302ca650b7264d02d5e442434ca4e074dbd464ab Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 20 Jan 2022 16:14:36 +0000 Subject: [PATCH 10/32] - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- libfprint.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libfprint.spec b/libfprint.spec index 6c73f3e..b3ad447 100644 --- a/libfprint.spec +++ b/libfprint.spec @@ -1,7 +1,7 @@ Name: libfprint Version: 1.94.2 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Toolkit for fingerprint scanner License: LGPLv2+ @@ -71,6 +71,9 @@ developing applications that use %{name}. %{_datadir}/gtk-doc/html/libfprint-2/ %changelog +* Thu Jan 20 2022 Fedora Release Engineering - 1.94.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + * Wed Nov 03 2021 Benjamin Berg - 1.94.2-1 - Update to 1.94.2 (#1977842) From 3f62f551b41442bac4aaf9d2e36811ce45136888 Mon Sep 17 00:00:00 2001 From: Benjamin Berg Date: Mon, 14 Feb 2022 16:56:20 +0100 Subject: [PATCH 11/32] Switch to rpmautospec --- changelog | 259 ++++++++++++++++++++++++++++++++++++++++++++++++ libfprint.spec | 262 +------------------------------------------------ 2 files changed, 261 insertions(+), 260 deletions(-) create mode 100644 changelog diff --git a/changelog b/changelog new file mode 100644 index 0000000..6d23add --- /dev/null +++ b/changelog @@ -0,0 +1,259 @@ +* Thu Jan 20 2022 Fedora Release Engineering - 1.94.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Wed Nov 03 2021 Benjamin Berg - 1.94.2-1 +- Update to 1.94.2 (#1977842) + +* Fri Sep 24 2021 Benjamin Berg - 1.94.1-1 +- Update to 1.94.1 + +* Fri Aug 20 2021 Benjamin Berg - 1.94.0-1 +- Update to 1.94.0 (#1977842) + Related: #1894694 + +* Mon Jul 26 2021 Benjamin Berg - 1.92.0-3 +- Add patch disabling timeouts in virtual-device to enable fedora CI +- Increase timeout of tests by factor 4 + +* Thu Jul 22 2021 Fedora Release Engineering - 1.92.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Thu Jul 01 2021 Benjamin Berg - 1.92.0-1 +- Update to 1.92.0 (#1977842) + +* Tue Jan 26 2021 Fedora Release Engineering - 1.90.7-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Wed Jan 13 13:33:12 CET 2021 Benjamin Berg - 1.90.7-1 +- Update to 1.90.7 (#1902256) + +* Wed Dec 09 2020 Benjamin Berg - 1.90.6-1 +- New upstream release 1.90.6 (#1902256) + +* Tue Dec 01 2020 Benjamin Berg - 1.90.5-1 +- New upstream release 1.90.5 (#1902256) + +* Fri Nov 27 2020 Benjamin Berg - 1.90.4-1 +- New upstream release 1.90.4 (#1902256) + Resolves #1889384 + +* Mon Sep 14 2020 Benjamin Berg - 1.90.3-1 +- Update to libfprint 1.90.3 (#1878746) + +* Tue Jul 28 2020 Fedora Release Engineering - 1.90.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Mon Jun 08 2020 Benjamin Berg - 1.90.2-1 +- Update to libfprint 1.90.2 +- Resolves #1832229 +- Resolves #1841834 +- Resolves #1841965 + +* Fri Feb 14 2020 Bastien Nocera - 1.90.1-2 ++ libfprint-1.90.1-2 +- Rebuilt for F32 + +* Mon Feb 10 2020 Benjamin Berg - 1.90.1-1 +- Update to libfprint 1.90.1 + +* Wed Jan 29 2020 Fedora Release Engineering - 1.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Wed Aug 14 2019 Benjamin Berg - 1.0-1 ++ libfprint-1.0-1 +- Update to 1.0 + +* Thu Jul 25 2019 Fedora Release Engineering - 0.8.2-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Fri Feb 01 2019 Fedora Release Engineering - 0.8.2-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Fri Jul 20 2018 Bastien Nocera - 0.8.2-2 ++ libfprint-0.8.2-2 +- Fix build with newer meson (#1604585) + +* Tue Jul 17 2018 Bastien Nocera - 0.8.2-1 ++ libfprint-0.8.2-1 +- Update to 0.8.2 +- Add required gcc and gcc-c++ BR + +* Fri Jul 13 2018 Fedora Release Engineering - 0.8.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Tue Jun 12 2018 Bastien Nocera - 0.8.1-1 ++ libfprint-0.8.1-1 +- Update to 0.8.1 to fix the build + +* Tue Jun 12 2018 Bastien Nocera - 0.8.0-1 ++ libfprint-0.8.0-1 +- Update to 0.8.0 +- Port to meson, gtk-doc + +* Wed Feb 07 2018 Fedora Release Engineering - 0.7.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Sat Feb 03 2018 Igor Gnatenko - 0.7.0-4 +- Switch to %%ldconfig_scriptlets + +* Thu Aug 03 2017 Fedora Release Engineering - 0.7.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Wed Jul 26 2017 Fedora Release Engineering - 0.7.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Mon May 15 2017 Bastien Nocera - 0.7.0-1 ++ libfprint-0.7.0-1 +- Update to 0.7.0 + +* Fri Feb 10 2017 Fedora Release Engineering - 0.6.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Thu Feb 04 2016 Fedora Release Engineering - 0.6.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Wed Jun 17 2015 Fedora Release Engineering - 0.6.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Tue Feb 03 2015 Bastien Nocera 0.6.0-1 +- Update to 0.6.0 + +* Wed Dec 17 2014 Rex Dieter - 0.5.1-5 +- error opening ATTR{/sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3/1-1.3:1.0/power/control} for writing (#950205) +- %%build: --disable-silent-rules + +* Sun Aug 17 2014 Fedora Release Engineering - 0.5.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Sat Jun 07 2014 Fedora Release Engineering - 0.5.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Thu Jan 16 2014 Ville Skyttä - 0.5.1-2 +- Drop INSTALL from docs. + +* Sun Aug 11 2013 Bastien Nocera 0.5.1-1 +- Update to 0.5.1 + +* Sat Aug 03 2013 Fedora Release Engineering - 0.5.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Thu Feb 14 2013 Fedora Release Engineering - 0.5.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Mon Dec 03 2012 Bastien Nocera 0.5.0-1 +- Update to 0.5.0 +- Re-add not useless udev rules + +* Thu Jul 19 2012 Fedora Release Engineering - 0.4.0-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Fri May 18 2012 Matthias Clasen - 0.4.0-4 +- Drop broken and useless udev rules (#744637) + +* Fri Jan 13 2012 Fedora Release Engineering - 0.4.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Mon Nov 21 2011 Adam Jackson 0.4.0-2 +- Rebuild without Requires: ConsoleKit, going away in F17 + +* Thu Nov 10 2011 Bastien Nocera 0.4.0-1 +- Update to 0.4.0 + +* Mon Nov 07 2011 Adam Jackson 0.3.0-3 +- Rebuild for libpng 1.5 + +* Mon Feb 07 2011 Fedora Release Engineering - 0.3.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Wed Sep 08 2010 Bastien Nocera 0.3.0-1 +- Update to 0.3.0 + +* Thu Aug 19 2010 Bastien Nocera 0.2.0-1 +- Update to 0.2.0 + +* Wed Jun 30 2010 Matthew Garrett 0.1.0-16.pre3 +- Fix #505438 to avoid message on boot on some systems + +* Tue Jun 01 2010 Bastien Nocera 0.1.0-16.pre2 +- Add README to package + +* Wed Jan 20 2010 Bastien Nocera 0.1.0-15.pre2 +- Require hal-filesystem for the fdi file + +* Tue Dec 01 2009 Bastien Nocera 0.1.0-14.pre2 +- Update AES1610 patch + +* Mon Nov 30 2009 Bastien Nocera 0.1.0-13.pre2 +- Add aes1610 driver (#499732) + +* Thu Oct 01 2009 Bastien Nocera 0.1.0-12.pre2 +- Update udev autosuspend rules and disable SGS Thomson reader + +* Fri Aug 21 2009 Tomas Mraz - 0.1.0-11.pre2 +- rebuilt with new openssl + +* Fri Jul 24 2009 Fedora Release Engineering - 0.1.0-10.pre2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Tue Jul 21 2009 Bastien Nocera 0.1.0-9.pre2 +- Use gdk-pixbuf for image manipulation instead of ImageMagick (#472103) + +* Sat Jun 20 2009 Bastien Nocera 0.1.0-8.pre2 +- Update to 0.1.0-pre2 + +* Tue Jun 09 2009 Matthew Garrett 0.1.0-7.pre1 +- fprint-add-udev-rules.patch - build udev rules for autosuspend +- move hal fdi into the main package rather than -devel +- add autoreconf as a build depend while carrying the udev diff + +* Tue Apr 21 2009 Karsten Hopp 0.1.0-6.pre1.1 +- Excludearch s390 s390x, we don't have USB devices there and this package + doesn't build without USB support + +* Mon Mar 09 2009 pingou - 0.1.0-6.pre1 +- Rebuilt for rawhide + +* Wed Feb 25 2009 Fedora Release Engineering - 0.1.0-5.pre1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + +* Sat Jan 17 2009 Tomas Mraz - 0.1.0-4.pre1 +- rebuild with new openssl + +* Tue Nov 25 2008 - Bastien Nocera - 0.1.0-3.pre1 +- Fix possible crasher in libfprint when setting up the fds for polling + +* Mon Nov 24 2008 - Bastien Nocera - 0.1.0-2.pre1 +- And add some API docs + +* Tue Nov 18 2008 - Bastien Nocera - 0.1.0-1.pre1 +- Fix build + +* Tue Nov 04 2008 - Bastien Nocera - 0.1.0-0.pre1 +- Update to 0.1.0-pre1 + +* Tue May 13 2008 Pingou 0.0.5-6 +- Correction on the Build Requires + +* Tue May 13 2008 Pingou 0.0.5-5 +- Correction on the Build Requires + +* Tue May 13 2008 Pingou 0.0.5-4 +- Update the Build Requires due to the change on ImageMagick + +* Tue Feb 19 2008 Fedora Release Engineering - 0.0.5-3 +- Autorebuild for GCC 4.3 + +* Sat Jan 05 2008 Pingou 0.0.5-2 +- Change on the BuildRequires + +* Sat Jan 05 2008 Pingou 0.0.5-1 +- Update to version 0.0.5 + +* Sat Dec 01 2007 Pingou 0.0.4-3 +- Changes on the Requires + +* Sun Nov 25 2007 Pingou 0.0.4-2 +- Changes on the Requires + +* Sat Nov 24 2007 Pingou 0.0.4-1 +- First release diff --git a/libfprint.spec b/libfprint.spec index b3ad447..7ed68b2 100644 --- a/libfprint.spec +++ b/libfprint.spec @@ -1,7 +1,7 @@ Name: libfprint Version: 1.94.2 -Release: 2%{?dist} +Release: %autorelease Summary: Toolkit for fingerprint scanner License: LGPLv2+ @@ -71,262 +71,4 @@ developing applications that use %{name}. %{_datadir}/gtk-doc/html/libfprint-2/ %changelog -* Thu Jan 20 2022 Fedora Release Engineering - 1.94.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Wed Nov 03 2021 Benjamin Berg - 1.94.2-1 -- Update to 1.94.2 (#1977842) - -* Fri Sep 24 2021 Benjamin Berg - 1.94.1-1 -- Update to 1.94.1 - -* Fri Aug 20 2021 Benjamin Berg - 1.94.0-1 -- Update to 1.94.0 (#1977842) - Related: #1894694 - -* Mon Jul 26 2021 Benjamin Berg - 1.92.0-3 -- Add patch disabling timeouts in virtual-device to enable fedora CI -- Increase timeout of tests by factor 4 - -* Thu Jul 22 2021 Fedora Release Engineering - 1.92.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Thu Jul 01 2021 Benjamin Berg - 1.92.0-1 -- Update to 1.92.0 (#1977842) - -* Tue Jan 26 2021 Fedora Release Engineering - 1.90.7-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Wed Jan 13 13:33:12 CET 2021 Benjamin Berg - 1.90.7-1 -- Update to 1.90.7 (#1902256) - -* Wed Dec 09 2020 Benjamin Berg - 1.90.6-1 -- New upstream release 1.90.6 (#1902256) - -* Tue Dec 01 2020 Benjamin Berg - 1.90.5-1 -- New upstream release 1.90.5 (#1902256) - -* Fri Nov 27 2020 Benjamin Berg - 1.90.4-1 -- New upstream release 1.90.4 (#1902256) - Resolves #1889384 - -* Mon Sep 14 2020 Benjamin Berg - 1.90.3-1 -- Update to libfprint 1.90.3 (#1878746) - -* Tue Jul 28 2020 Fedora Release Engineering - 1.90.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Mon Jun 08 2020 Benjamin Berg - 1.90.2-1 -- Update to libfprint 1.90.2 -- Resolves #1832229 -- Resolves #1841834 -- Resolves #1841965 - -* Fri Feb 14 2020 Bastien Nocera - 1.90.1-2 -+ libfprint-1.90.1-2 -- Rebuilt for F32 - -* Mon Feb 10 2020 Benjamin Berg - 1.90.1-1 -- Update to libfprint 1.90.1 - -* Wed Jan 29 2020 Fedora Release Engineering - 1.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Wed Aug 14 2019 Benjamin Berg - 1.0-1 -+ libfprint-1.0-1 -- Update to 1.0 - -* Thu Jul 25 2019 Fedora Release Engineering - 0.8.2-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Fri Feb 01 2019 Fedora Release Engineering - 0.8.2-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Fri Jul 20 2018 Bastien Nocera - 0.8.2-2 -+ libfprint-0.8.2-2 -- Fix build with newer meson (#1604585) - -* Tue Jul 17 2018 Bastien Nocera - 0.8.2-1 -+ libfprint-0.8.2-1 -- Update to 0.8.2 -- Add required gcc and gcc-c++ BR - -* Fri Jul 13 2018 Fedora Release Engineering - 0.8.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Tue Jun 12 2018 Bastien Nocera - 0.8.1-1 -+ libfprint-0.8.1-1 -- Update to 0.8.1 to fix the build - -* Tue Jun 12 2018 Bastien Nocera - 0.8.0-1 -+ libfprint-0.8.0-1 -- Update to 0.8.0 -- Port to meson, gtk-doc - -* Wed Feb 07 2018 Fedora Release Engineering - 0.7.0-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Sat Feb 03 2018 Igor Gnatenko - 0.7.0-4 -- Switch to %%ldconfig_scriptlets - -* Thu Aug 03 2017 Fedora Release Engineering - 0.7.0-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Wed Jul 26 2017 Fedora Release Engineering - 0.7.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Mon May 15 2017 Bastien Nocera - 0.7.0-1 -+ libfprint-0.7.0-1 -- Update to 0.7.0 - -* Fri Feb 10 2017 Fedora Release Engineering - 0.6.0-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Thu Feb 04 2016 Fedora Release Engineering - 0.6.0-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Wed Jun 17 2015 Fedora Release Engineering - 0.6.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild - -* Tue Feb 03 2015 Bastien Nocera 0.6.0-1 -- Update to 0.6.0 - -* Wed Dec 17 2014 Rex Dieter - 0.5.1-5 -- error opening ATTR{/sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3/1-1.3:1.0/power/control} for writing (#950205) -- %%build: --disable-silent-rules - -* Sun Aug 17 2014 Fedora Release Engineering - 0.5.1-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild - -* Sat Jun 07 2014 Fedora Release Engineering - 0.5.1-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild - -* Thu Jan 16 2014 Ville Skyttä - 0.5.1-2 -- Drop INSTALL from docs. - -* Sun Aug 11 2013 Bastien Nocera 0.5.1-1 -- Update to 0.5.1 - -* Sat Aug 03 2013 Fedora Release Engineering - 0.5.0-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild - -* Thu Feb 14 2013 Fedora Release Engineering - 0.5.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild - -* Mon Dec 03 2012 Bastien Nocera 0.5.0-1 -- Update to 0.5.0 -- Re-add not useless udev rules - -* Thu Jul 19 2012 Fedora Release Engineering - 0.4.0-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild - -* Fri May 18 2012 Matthias Clasen - 0.4.0-4 -- Drop broken and useless udev rules (#744637) - -* Fri Jan 13 2012 Fedora Release Engineering - 0.4.0-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild - -* Mon Nov 21 2011 Adam Jackson 0.4.0-2 -- Rebuild without Requires: ConsoleKit, going away in F17 - -* Thu Nov 10 2011 Bastien Nocera 0.4.0-1 -- Update to 0.4.0 - -* Mon Nov 07 2011 Adam Jackson 0.3.0-3 -- Rebuild for libpng 1.5 - -* Mon Feb 07 2011 Fedora Release Engineering - 0.3.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild - -* Wed Sep 08 2010 Bastien Nocera 0.3.0-1 -- Update to 0.3.0 - -* Thu Aug 19 2010 Bastien Nocera 0.2.0-1 -- Update to 0.2.0 - -* Wed Jun 30 2010 Matthew Garrett 0.1.0-16.pre3 -- Fix #505438 to avoid message on boot on some systems - -* Tue Jun 01 2010 Bastien Nocera 0.1.0-16.pre2 -- Add README to package - -* Wed Jan 20 2010 Bastien Nocera 0.1.0-15.pre2 -- Require hal-filesystem for the fdi file - -* Tue Dec 01 2009 Bastien Nocera 0.1.0-14.pre2 -- Update AES1610 patch - -* Mon Nov 30 2009 Bastien Nocera 0.1.0-13.pre2 -- Add aes1610 driver (#499732) - -* Thu Oct 01 2009 Bastien Nocera 0.1.0-12.pre2 -- Update udev autosuspend rules and disable SGS Thomson reader - -* Fri Aug 21 2009 Tomas Mraz - 0.1.0-11.pre2 -- rebuilt with new openssl - -* Fri Jul 24 2009 Fedora Release Engineering - 0.1.0-10.pre2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild - -* Tue Jul 21 2009 Bastien Nocera 0.1.0-9.pre2 -- Use gdk-pixbuf for image manipulation instead of ImageMagick (#472103) - -* Sat Jun 20 2009 Bastien Nocera 0.1.0-8.pre2 -- Update to 0.1.0-pre2 - -* Tue Jun 09 2009 Matthew Garrett 0.1.0-7.pre1 -- fprint-add-udev-rules.patch - build udev rules for autosuspend -- move hal fdi into the main package rather than -devel -- add autoreconf as a build depend while carrying the udev diff - -* Tue Apr 21 2009 Karsten Hopp 0.1.0-6.pre1.1 -- Excludearch s390 s390x, we don't have USB devices there and this package - doesn't build without USB support - -* Mon Mar 09 2009 pingou - 0.1.0-6.pre1 -- Rebuilt for rawhide - -* Wed Feb 25 2009 Fedora Release Engineering - 0.1.0-5.pre1 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild - -* Sat Jan 17 2009 Tomas Mraz - 0.1.0-4.pre1 -- rebuild with new openssl - -* Tue Nov 25 2008 - Bastien Nocera - 0.1.0-3.pre1 -- Fix possible crasher in libfprint when setting up the fds for polling - -* Mon Nov 24 2008 - Bastien Nocera - 0.1.0-2.pre1 -- And add some API docs - -* Tue Nov 18 2008 - Bastien Nocera - 0.1.0-1.pre1 -- Fix build - -* Tue Nov 04 2008 - Bastien Nocera - 0.1.0-0.pre1 -- Update to 0.1.0-pre1 - -* Tue May 13 2008 Pingou 0.0.5-6 -- Correction on the Build Requires - -* Tue May 13 2008 Pingou 0.0.5-5 -- Correction on the Build Requires - -* Tue May 13 2008 Pingou 0.0.5-4 -- Update the Build Requires due to the change on ImageMagick - -* Tue Feb 19 2008 Fedora Release Engineering - 0.0.5-3 -- Autorebuild for GCC 4.3 - -* Sat Jan 05 2008 Pingou 0.0.5-2 -- Change on the BuildRequires - -* Sat Jan 05 2008 Pingou 0.0.5-1 -- Update to version 0.0.5 - -* Sat Dec 01 2007 Pingou 0.0.4-3 -- Changes on the Requires - -* Sun Nov 25 2007 Pingou 0.0.4-2 -- Changes on the Requires - -* Sat Nov 24 2007 Pingou 0.0.4-1 -- First release +%autochangelog From b0ccaef332de78f1499b34291bca9a36713bf59f Mon Sep 17 00:00:00 2001 From: Benjamin Berg Date: Mon, 14 Feb 2022 17:02:44 +0100 Subject: [PATCH 12/32] Don't set removed x11-examples option Resolves: #2045801 --- libfprint.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libfprint.spec b/libfprint.spec index 7ed68b2..3cbe112 100644 --- a/libfprint.spec +++ b/libfprint.spec @@ -43,7 +43,7 @@ developing applications that use %{name}. %build # Include the virtual image driver for integration tests -%meson -Dx11-examples=false -Ddrivers=all +%meson -Ddrivers=all %meson_build %install From dc82faf4a4a8bd7321b3d5d2e49facfbcf10e9c7 Mon Sep 17 00:00:00 2001 From: Benjamin Berg Date: Mon, 14 Feb 2022 17:04:50 +0100 Subject: [PATCH 13/32] Update to 1.94.3 Resolves: #2053718 --- .gitignore | 1 + libfprint.spec | 4 ++-- sources | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index ecc8d00..3570b7c 100644 --- a/.gitignore +++ b/.gitignore @@ -19,3 +19,4 @@ libfprint-0.3.0.tar.bz2 /libfprint-v1.94.0.tar.gz /libfprint-v1.94.1.tar.gz /libfprint-v1.94.2.tar.gz +/libfprint-v1.94.3.tar.gz diff --git a/libfprint.spec b/libfprint.spec index 3cbe112..3bed9d6 100644 --- a/libfprint.spec +++ b/libfprint.spec @@ -1,6 +1,6 @@ Name: libfprint -Version: 1.94.2 +Version: 1.94.3 Release: %autorelease Summary: Toolkit for fingerprint scanner @@ -56,7 +56,7 @@ developing applications that use %{name}. %files %license COPYING -%doc NEWS TODO THANKS AUTHORS README +%doc NEWS THANKS AUTHORS README.md %{_libdir}/*.so.* %{_libdir}/girepository-1.0/*.typelib %{_udevhwdbdir}/60-autosuspend-libfprint-2.hwdb diff --git a/sources b/sources index 996e761..ba640e1 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libfprint-v1.94.2.tar.gz) = d18dd86652f18f3157eea5a3e66ed7b4e352b1cd7b8d4ec56d464bc044ee138cac8d09ace9a3259c2736cab84505e0c10bd192088295a11220fd03d5230cf499 +SHA512 (libfprint-v1.94.3.tar.gz) = f8f7a5fa4647e79c0251ea807bd5b84a07d1d2001962a86682298d671c9a21c22d6574e2cd31fc3a3b81b53838ef1e0ff922c125a7faa78270e699fc201f0257 From dc9e86e1e3f6f0271caddd9ef44a14f195b2b1f2 Mon Sep 17 00:00:00 2001 From: Benjamin Berg Date: Mon, 11 Jul 2022 15:06:54 +0200 Subject: [PATCH 14/32] Update to 1.94.4 Resolves: #2089823 --- .gitignore | 1 + libfprint.spec | 2 +- sources | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 3570b7c..6a84c14 100644 --- a/.gitignore +++ b/.gitignore @@ -20,3 +20,4 @@ libfprint-0.3.0.tar.bz2 /libfprint-v1.94.1.tar.gz /libfprint-v1.94.2.tar.gz /libfprint-v1.94.3.tar.gz +/libfprint-v1.94.4.tar.gz diff --git a/libfprint.spec b/libfprint.spec index 3bed9d6..5115125 100644 --- a/libfprint.spec +++ b/libfprint.spec @@ -1,6 +1,6 @@ Name: libfprint -Version: 1.94.3 +Version: 1.94.4 Release: %autorelease Summary: Toolkit for fingerprint scanner diff --git a/sources b/sources index ba640e1..8c0c8f0 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libfprint-v1.94.3.tar.gz) = f8f7a5fa4647e79c0251ea807bd5b84a07d1d2001962a86682298d671c9a21c22d6574e2cd31fc3a3b81b53838ef1e0ff922c125a7faa78270e699fc201f0257 +SHA512 (libfprint-v1.94.4.tar.gz) = d1f2e62d5f08017912f8701e1b366f48dff9819897840a1570d16872fc2aad0a8757cd1d8e9d1b98e72e6b00f24ccb3d2aefc5abd824d2699cc75bc7ef8c8e93 From 7d22b98997e6cd86a8fcf1315723c03daaaa3b21 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 21 Jul 2022 17:50:00 +0000 Subject: [PATCH 15/32] Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild Signed-off-by: Fedora Release Engineering From c5acc461259fd1749ae268d03a5d9f3cfd6078b2 Mon Sep 17 00:00:00 2001 From: Bastien Nocera Date: Tue, 22 Nov 2022 13:06:12 +0100 Subject: [PATCH 16/32] Update to 1.94.5 --- .gitignore | 1 + libfprint.spec | 2 +- sources | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 6a84c14..5f6dad0 100644 --- a/.gitignore +++ b/.gitignore @@ -21,3 +21,4 @@ libfprint-0.3.0.tar.bz2 /libfprint-v1.94.2.tar.gz /libfprint-v1.94.3.tar.gz /libfprint-v1.94.4.tar.gz +/libfprint-v1.94.5.tar.gz diff --git a/libfprint.spec b/libfprint.spec index 5115125..ddae905 100644 --- a/libfprint.spec +++ b/libfprint.spec @@ -1,6 +1,6 @@ Name: libfprint -Version: 1.94.4 +Version: 1.94.5 Release: %autorelease Summary: Toolkit for fingerprint scanner diff --git a/sources b/sources index 8c0c8f0..51fc19a 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libfprint-v1.94.4.tar.gz) = d1f2e62d5f08017912f8701e1b366f48dff9819897840a1570d16872fc2aad0a8757cd1d8e9d1b98e72e6b00f24ccb3d2aefc5abd824d2699cc75bc7ef8c8e93 +SHA512 (libfprint-v1.94.5.tar.gz) = 033b7239acebfcccbb9f275cbbca52d68bf4a3a62f4c39a6323c943924532f73233fa3bf2e9517f6f4de04f513ba30776fcd3a98ebb8467fd2826e72a3ae3529 From 7eb880c0d65142f82b59b60f84e0a5b81ab9ff9b Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 19 Jan 2023 16:21:25 +0000 Subject: [PATCH 17/32] Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild Signed-off-by: Fedora Release Engineering From 098d70baba2a760f6c60614649fa371210407487 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 20 Jul 2023 10:53:00 +0000 Subject: [PATCH 18/32] Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild Signed-off-by: Fedora Release Engineering From 6305b23e2581bc1ef66a654b262afb08db09de44 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sun, 21 Jan 2024 04:06:36 +0000 Subject: [PATCH 19/32] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From c701ce89fb6efcfa7485c9e93d73c596e80d928e Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 25 Jan 2024 02:11:33 +0000 Subject: [PATCH 20/32] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 4f101d393ee92f5792d413895dd95e9f9e7af17d Mon Sep 17 00:00:00 2001 From: Kate Hsuan Date: Wed, 31 Jan 2024 13:34:45 +0800 Subject: [PATCH 21/32] Update to 1.94.6 Resolves: #2250624 --- .gitignore | 1 + libfprint.spec | 4 ++-- sources | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 5f6dad0..b41a1b9 100644 --- a/.gitignore +++ b/.gitignore @@ -22,3 +22,4 @@ libfprint-0.3.0.tar.bz2 /libfprint-v1.94.3.tar.gz /libfprint-v1.94.4.tar.gz /libfprint-v1.94.5.tar.gz +/libfprint-v1.94.6.tar.gz diff --git a/libfprint.spec b/libfprint.spec index ddae905..491af24 100644 --- a/libfprint.spec +++ b/libfprint.spec @@ -1,6 +1,6 @@ Name: libfprint -Version: 1.94.5 +Version: 1.94.6 Release: %autorelease Summary: Toolkit for fingerprint scanner @@ -43,7 +43,7 @@ developing applications that use %{name}. %build # Include the virtual image driver for integration tests -%meson -Ddrivers=all +%meson -Ddrivers=all -Dinstalled-tests=false %meson_build %install diff --git a/sources b/sources index 51fc19a..129d049 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libfprint-v1.94.5.tar.gz) = 033b7239acebfcccbb9f275cbbca52d68bf4a3a62f4c39a6323c943924532f73233fa3bf2e9517f6f4de04f513ba30776fcd3a98ebb8467fd2826e72a3ae3529 +SHA512 (libfprint-v1.94.6.tar.gz) = 99cfce5828d7df771bfc1fd92ad357b76c265bc96443af3398c415d2bb54a931fa3018811c59ceb62b43ef416b430db4acf324aa1dca4f374eaef1f1595a154a From 05b84333616c82b751bbb18c9977029817de77cc Mon Sep 17 00:00:00 2001 From: Arun Babu Neelicattu Date: Fri, 23 Feb 2024 18:26:28 +0000 Subject: [PATCH 22/32] Add tests subpackage --- libfprint.spec | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/libfprint.spec b/libfprint.spec index 491af24..574619e 100644 --- a/libfprint.spec +++ b/libfprint.spec @@ -38,12 +38,20 @@ Requires: %{name}%{?_isa} = %{version}-%{release} The %{name}-devel package contains libraries and header files for developing applications that use %{name}. +%package tests +Summary: Tests for the %{name} package +Requires: %{name}%{?_isa} = %{version}-%{release} + +%description tests +The %{name}-tests package contains tests that can be used to verify +the functionality of the installed %{name} package. + %prep %autosetup -S git -n libfprint-v%{version} %build # Include the virtual image driver for integration tests -%meson -Ddrivers=all -Dinstalled-tests=false +%meson -Ddrivers=all %meson_build %install @@ -70,5 +78,9 @@ developing applications that use %{name}. %{_datadir}/gir-1.0/*.gir %{_datadir}/gtk-doc/html/libfprint-2/ +%files tests +%{_libexecdir}/installed-tests/libfprint-2/ +%{_datadir}/installed-tests/libfprint-2/ + %changelog %autochangelog From 9a72ec14741631cf7755459eca836218b1b54716 Mon Sep 17 00:00:00 2001 From: Arun Babu Neelicattu Date: Fri, 23 Feb 2024 18:41:57 +0000 Subject: [PATCH 23/32] Update to 1.94.7 Resolves: #2232471 --- .gitignore | 1 + libfprint.spec | 2 +- sources | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index b41a1b9..55ad153 100644 --- a/.gitignore +++ b/.gitignore @@ -23,3 +23,4 @@ libfprint-0.3.0.tar.bz2 /libfprint-v1.94.4.tar.gz /libfprint-v1.94.5.tar.gz /libfprint-v1.94.6.tar.gz +/libfprint-v1.94.7.tar.gz diff --git a/libfprint.spec b/libfprint.spec index 574619e..6b90f2f 100644 --- a/libfprint.spec +++ b/libfprint.spec @@ -1,6 +1,6 @@ Name: libfprint -Version: 1.94.6 +Version: 1.94.7 Release: %autorelease Summary: Toolkit for fingerprint scanner diff --git a/sources b/sources index 129d049..4bf9301 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libfprint-v1.94.6.tar.gz) = 99cfce5828d7df771bfc1fd92ad357b76c265bc96443af3398c415d2bb54a931fa3018811c59ceb62b43ef416b430db4acf324aa1dca4f374eaef1f1595a154a +SHA512 (libfprint-v1.94.7.tar.gz) = 5e7afc8424862d2caaba9d6c2dbd0a339639497ddb7b096f1073464ebdfd9acec1b84470297bd51761dae4770d4113e336096536bb5f8700da2673a2685856b6 From 9dd7c7df011e96478d6779f9a6af966f465c2a6e Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 18 Jul 2024 13:53:02 +0000 Subject: [PATCH 24/32] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From f4e2d954bcc8a652dc894c3cc0de34f380d72e02 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miroslav=20Such=C3=BD?= Date: Mon, 2 Sep 2024 09:52:07 +0200 Subject: [PATCH 25/32] convert license to SPDX This is part of https://fedoraproject.org/wiki/Changes/SPDX_Licenses_Phase_4 --- libfprint.spec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/libfprint.spec b/libfprint.spec index 6b90f2f..53b5a92 100644 --- a/libfprint.spec +++ b/libfprint.spec @@ -4,7 +4,8 @@ Version: 1.94.7 Release: %autorelease Summary: Toolkit for fingerprint scanner -License: LGPLv2+ +# Automatically converted from old format: LGPLv2+ - review is highly recommended. +License: LicenseRef-Callaway-LGPLv2+ URL: http://www.freedesktop.org/wiki/Software/fprint/libfprint Source0: https://gitlab.freedesktop.org/libfprint/libfprint/-/archive/v%{version}/libfprint-v%{version}.tar.gz ExcludeArch: s390 s390x From 3a96323138fd2e08e341f5fdf6a41180c82a5994 Mon Sep 17 00:00:00 2001 From: Kate Hsuan Date: Tue, 24 Sep 2024 15:33:19 +0800 Subject: [PATCH 26/32] Update to upstream version 1.94.8 Resolves: #2232471 --- .gitignore | 1 + libfprint.spec | 2 +- sources | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 55ad153..a4a0ef4 100644 --- a/.gitignore +++ b/.gitignore @@ -24,3 +24,4 @@ libfprint-0.3.0.tar.bz2 /libfprint-v1.94.5.tar.gz /libfprint-v1.94.6.tar.gz /libfprint-v1.94.7.tar.gz +/libfprint-v1.94.8.tar.gz diff --git a/libfprint.spec b/libfprint.spec index 53b5a92..56d8554 100644 --- a/libfprint.spec +++ b/libfprint.spec @@ -1,6 +1,6 @@ Name: libfprint -Version: 1.94.7 +Version: 1.94.8 Release: %autorelease Summary: Toolkit for fingerprint scanner diff --git a/sources b/sources index 4bf9301..f377002 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libfprint-v1.94.7.tar.gz) = 5e7afc8424862d2caaba9d6c2dbd0a339639497ddb7b096f1073464ebdfd9acec1b84470297bd51761dae4770d4113e336096536bb5f8700da2673a2685856b6 +SHA512 (libfprint-v1.94.8.tar.gz) = 4d72764dff7e8aeb343c51fce90fcab11cf3aab20c0796e03ae5e1d89c7223af16234fa410bc20513bf56d7de60d71bfcf29ec624373be7294e66f306f99edbd From c1b082f522cf45da3a5600d259c9da31ec726e1a Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 17 Jan 2025 11:15:20 +0000 Subject: [PATCH 27/32] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild From 09c6ca8d0f1de2f594cbada99ee99d46e3231283 Mon Sep 17 00:00:00 2001 From: Kate Hsuan Date: Thu, 20 Mar 2025 14:59:34 +0800 Subject: [PATCH 28/32] Update to the upstream version 1.94.9 - Update to version 1.94.9 - Add openssl-devel dependency - Add a file /usr/share/metainfo/org.freedesktop.libfprint.metainfo.xml Resolves: #2232471 --- .gitignore | 1 + libfprint.spec | 4 +++- sources | 2 +- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index a4a0ef4..6205992 100644 --- a/.gitignore +++ b/.gitignore @@ -25,3 +25,4 @@ libfprint-0.3.0.tar.bz2 /libfprint-v1.94.6.tar.gz /libfprint-v1.94.7.tar.gz /libfprint-v1.94.8.tar.gz +/libfprint-v1.94.9.tar.gz diff --git a/libfprint.spec b/libfprint.spec index 56d8554..07a5807 100644 --- a/libfprint.spec +++ b/libfprint.spec @@ -1,6 +1,6 @@ Name: libfprint -Version: 1.94.8 +Version: 1.94.9 Release: %autorelease Summary: Toolkit for fingerprint scanner @@ -14,6 +14,7 @@ BuildRequires: meson BuildRequires: gcc BuildRequires: gcc-c++ BuildRequires: git +BuildRequires: openssl-devel BuildRequires: pkgconfig(glib-2.0) >= 2.50 BuildRequires: pkgconfig(gio-2.0) >= 2.44.0 BuildRequires: pkgconfig(gusb) >= 0.3.0 @@ -70,6 +71,7 @@ the functionality of the installed %{name} package. %{_libdir}/girepository-1.0/*.typelib %{_udevhwdbdir}/60-autosuspend-libfprint-2.hwdb %{_udevrulesdir}/70-libfprint-2.rules +%{_datadir}/metainfo/org.freedesktop.libfprint.metainfo.xml %files devel %doc HACKING.md diff --git a/sources b/sources index f377002..4920c59 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (libfprint-v1.94.8.tar.gz) = 4d72764dff7e8aeb343c51fce90fcab11cf3aab20c0796e03ae5e1d89c7223af16234fa410bc20513bf56d7de60d71bfcf29ec624373be7294e66f306f99edbd +SHA512 (libfprint-v1.94.9.tar.gz) = f8debcc1277e6112ed450c04a40cf6113afd7b38377b3fd259bedb1f553b29db758f3519491940bf9cd4ade0f8e70b68040d5bef4c8dbf5f7c2afc1802086397 From 35bbfe0e0d8c3d36e37af4132f4651ba85e978b7 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 24 Jul 2025 19:39:59 +0000 Subject: [PATCH 29/32] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild From 5e7d505a691630caaf9081d0c88f0bbd3d65abe4 Mon Sep 17 00:00:00 2001 From: Kate Hsuan Date: Wed, 6 Aug 2025 15:38:48 +0800 Subject: [PATCH 30/32] Migrate to tmt test Resolves: #2382943 --- .fmf/version | 1 + plans/integration.fmf | 5 +++++ tests/integration/main.fmf | 11 +++++++++++ tests/{ => integration}/run-umockdev.sh | 6 +++--- tests/tests.yml | 23 ----------------------- 5 files changed, 20 insertions(+), 26 deletions(-) create mode 100644 .fmf/version create mode 100644 plans/integration.fmf create mode 100644 tests/integration/main.fmf rename tests/{ => integration}/run-umockdev.sh (79%) delete mode 100644 tests/tests.yml diff --git a/.fmf/version b/.fmf/version new file mode 100644 index 0000000..d00491f --- /dev/null +++ b/.fmf/version @@ -0,0 +1 @@ +1 diff --git a/plans/integration.fmf b/plans/integration.fmf new file mode 100644 index 0000000..05fe63a --- /dev/null +++ b/plans/integration.fmf @@ -0,0 +1,5 @@ +summary: Test for libfprint +discover: + how: fmf +execute: + how: tmt diff --git a/tests/integration/main.fmf b/tests/integration/main.fmf new file mode 100644 index 0000000..df893f0 --- /dev/null +++ b/tests/integration/main.fmf @@ -0,0 +1,11 @@ +summary: Test for libfprint +require: + - cairo-devel + - libfprint-devel + - libfprint-tests + - umockdev-devel + - python3-cairo + - python3-gobject-base + - python3-pip + - python3-packaging +test: bash ./run-umockdev.sh diff --git a/tests/run-umockdev.sh b/tests/integration/run-umockdev.sh similarity index 79% rename from tests/run-umockdev.sh rename to tests/integration/run-umockdev.sh index d8c5362..1beeca1 100755 --- a/tests/run-umockdev.sh +++ b/tests/integration/run-umockdev.sh @@ -2,7 +2,7 @@ set -u # Switch into the tests directory -cd source/tests || exit 1 +cd /usr/share/installed-tests/libfprint-2 || exit 1 # check if we need to install additional packages # which is the case if we are on RHEL 8 @@ -14,7 +14,7 @@ if [[ "$ID" = *"rhel"* ]] && [[ "$VERSION_ID" == *"8"* ]]; then pip3 install python-dbusmock fi -# Each directory in source/tests is a umockdev based test +# Each directory in /usr/share/installed-tests/libfprint-2 is a umockdev based test # discover them declare -a TESTS=() for f in *; do @@ -27,7 +27,7 @@ export FP_DEVICE_EMULATION=1 RESULT=0 for test in ${TESTS[@]}; do echo "$test" - ./umockdev-test.py "$test" + /usr/libexec/installed-tests/libfprint-2/umockdev-test.py "$test" RES=$? echo "$test finished with return code $RES" echo "" diff --git a/tests/tests.yml b/tests/tests.yml deleted file mode 100644 index ab999c2..0000000 --- a/tests/tests.yml +++ /dev/null @@ -1,23 +0,0 @@ ---- -- hosts: localhost - roles: - - role: standard-test-source - tags: - - always - required_packages: - - git - - role: standard-test-basic - tags: - - atomic - - classic - required_packages: - - python3-dbusmock - - umockdev - tests: - - virtual_image: - dir: . - run: source/tests/virtual-image.py - - umockdev: - dir: . - run: run-umockdev.sh - From 0585fee3e159ad7a5ab789ad424e3fde639591ca Mon Sep 17 00:00:00 2001 From: Kate Hsuan Date: Wed, 6 Aug 2025 15:42:28 +0800 Subject: [PATCH 31/32] Skip the %check section due to recent pygobject issues libfprint is trying to resolve the test issue. It was found when the test runs with pygobject3.52 and python3.14. So, the %check was temporarily skipped to ensure the build can be run. Resolves: #2385111 --- libfprint.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libfprint.spec b/libfprint.spec index 07a5807..cae76f9 100644 --- a/libfprint.spec +++ b/libfprint.spec @@ -61,8 +61,8 @@ the functionality of the installed %{name} package. %ldconfig_scriptlets -%check -%meson_test -t 4 +# TODO: The test can't run with the recent pygobject3.52. +# So, skip the test until the issue of pygobject is fixed. %files %license COPYING From 65fc4cc2fbb662b0e1f03005b051d8dc3e998767 Mon Sep 17 00:00:00 2001 From: Neal Gompa Date: Mon, 15 Dec 2025 12:12:38 -0500 Subject: [PATCH 32/32] Drop ExcludeArch for IBM Z to allow building there for COSMIC --- libfprint.spec | 1 - 1 file changed, 1 deletion(-) diff --git a/libfprint.spec b/libfprint.spec index cae76f9..e4479c7 100644 --- a/libfprint.spec +++ b/libfprint.spec @@ -8,7 +8,6 @@ Summary: Toolkit for fingerprint scanner License: LicenseRef-Callaway-LGPLv2+ URL: http://www.freedesktop.org/wiki/Software/fprint/libfprint Source0: https://gitlab.freedesktop.org/libfprint/libfprint/-/archive/v%{version}/libfprint-v%{version}.tar.gz -ExcludeArch: s390 s390x BuildRequires: meson BuildRequires: gcc