* Thu Jun 25 2026 Paul Evans <pevans@redhat.com> - 1.48-10
- sg_inq output conformance for SCSI name string and ATA fields (RHEL-188083) Resolves: RHEL-188083
This commit is contained in:
parent
50af92b8eb
commit
c46219d789
@ -0,0 +1,63 @@
|
||||
From 91981b9f091cf81b43fe5e8bbdb82fd0f90ebb8d Mon Sep 17 00:00:00 2001
|
||||
From: Paul Evans <pevans@redhat.com>
|
||||
Date: Tue, 2 Jun 2026 15:03:41 +0100
|
||||
Subject: [PATCH] sg_inq: --export output conformance for SCSI name string and
|
||||
ATA fields
|
||||
|
||||
Apply udev-conforming character encoding to VPD 0x83 designator type 8
|
||||
(SCSI name string) and the T10 vendor ID ATA subfield, matching the
|
||||
encoding already used by designator types 0 and 1 since commit
|
||||
4d770f10.
|
||||
|
||||
Signed-off-by: Paul Evans <pevans@redhat.com>
|
||||
---
|
||||
src/sg_inq.c | 26 ++++++++++++++++++++++----
|
||||
1 file changed, 22 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/src/sg_inq.c b/src/sg_inq.c
|
||||
index b3b8127f..a3b78965 100644
|
||||
--- a/src/sg_inq.c
|
||||
+++ b/src/sg_inq.c
|
||||
@@ -1919,8 +1919,17 @@ export_dev_ids(uint8_t * buff, int len, int verbose)
|
||||
}
|
||||
printf("\n");
|
||||
if (!memcmp(ip, "ATA_", 4)) {
|
||||
- printf("SCSI_IDENT_%s_ATA=%.*s\n", assoc_str,
|
||||
- k - 4, ip + 4);
|
||||
+ printf("SCSI_IDENT_%s_ATA=", assoc_str);
|
||||
+ for (m = 4; m < k; ++m) {
|
||||
+ if ((ip[m] >= '0' && ip[m] <= '9') ||
|
||||
+ (ip[m] >= 'A' && ip[m] <= 'Z') ||
|
||||
+ (ip[m] >= 'a' && ip[m] <= 'z') ||
|
||||
+ strchr("#+-.:=@_", ip[m]) != NULL)
|
||||
+ printf("%c", ip[m]);
|
||||
+ else
|
||||
+ printf("\\x%02x", ip[m]);
|
||||
+ }
|
||||
+ printf("\n");
|
||||
}
|
||||
} else {
|
||||
for (m = 0; m < i_len; ++m)
|
||||
@@ -2043,8 +2052,17 @@ export_dev_ids(uint8_t * buff, int len, int verbose)
|
||||
break;
|
||||
}
|
||||
|
||||
- printf("SCSI_IDENT_%s_NAME=%.*s\n", assoc_str, i_len,
|
||||
- (const char *)ip);
|
||||
+ printf("SCSI_IDENT_%s_NAME=", assoc_str);
|
||||
+ for (m = 0; m < i_len; ++m) {
|
||||
+ if ((ip[m] >= '0' && ip[m] <= '9') ||
|
||||
+ (ip[m] >= 'A' && ip[m] <= 'Z') ||
|
||||
+ (ip[m] >= 'a' && ip[m] <= 'z') ||
|
||||
+ strchr("#+-.:=@_", ip[m]) != NULL)
|
||||
+ printf("%c", ip[m]);
|
||||
+ else
|
||||
+ printf("\\x%02x", ip[m]);
|
||||
+ }
|
||||
+ printf("\n");
|
||||
break;
|
||||
case 9: /* Protocol specific port identifier */
|
||||
if (TPROTO_UAS == p_id) {
|
||||
--
|
||||
2.54.0
|
||||
|
||||
@ -4,7 +4,7 @@
|
||||
Summary: Utilities for devices that use SCSI command sets
|
||||
Name: sg3_utils
|
||||
Version: 1.48
|
||||
Release: 9%{?dist}
|
||||
Release: 10%{?dist}
|
||||
License: GPL-2.0-or-later AND BSD-2-Clause
|
||||
URL: https://sg.danny.cz/sg/sg3_utils.html
|
||||
Source0: https://sg.danny.cz/sg/p/sg3_utils-%{version}.tar.xz
|
||||
@ -26,6 +26,8 @@ Patch5: RHEL-119246-1-sg_inq-fix-missing-output-fields-in--export-format.patch
|
||||
# https://redhat.atlassian.net/browse/RHEL-119246
|
||||
# https://redhat.aslassian.net/browse/RHEL-123748
|
||||
Patch6: RHEL-119246-2-sg_inq-re-add-Unit-serial-number-field.patch
|
||||
# https://redhat.aslassian.net/browse/RHEL-188083
|
||||
Patch7: RHEL-188083-sg_inq-export-output-conformance-for-SCSI-name-string-and-ATA-fields.patch
|
||||
|
||||
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
|
||||
BuildRequires: make
|
||||
@ -142,6 +144,9 @@ install -p -m 755 scripts/fc_wwpn_id %{buildroot}%{_udevlibdir}
|
||||
|
||||
|
||||
%changelog
|
||||
* Thu Jun 25 2026 Paul Evans <pevans@redhat.com> - 1.48-10
|
||||
- sg_inq output conformance for SCSI name string and ATA fields (RHEL-188083)
|
||||
|
||||
* Mon May 11 2026 Paul Evans <pevans@redhat.com> - 1.48-9
|
||||
- rescan-scsi-bus.sh: Replace 'which' with build in 'command -v' [Patch v2] (RHEL-70693)
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user