** Description changed:

  [ Impact ]
  
-   * sg_wr_mode rejects all arguments (even if valid) to --contents= or
-     --cfile=.
+   * sg_wr_mode rejects all arguments (even if valid) to --contents= or
+     --cfile=.
  
-   * This impacts every usage of sg_wr_mode with --contents= or --cfile.
+   * This impacts every usage of sg_wr_mode with --contents= or --cfile.
  
-   * This used to work in Noble, and is a regression in Resolute.
+   * This used to work in Noble, and is a regression in Resolute.
  
-   * The upload fixes the bug by including a patch from upstream that corrects
-     the argument handling logic.
+   * The upload fixes the bug by including a patch from upstream that corrects
+     the argument handling logic.
  
  [ Test Plan ]
  
-  * Running the following script should output nothing.
+  * Running the following script should output nothing.
  
  sg_wr_mode --page=8 --contents=0,1 /dev/null 2>&1 | grep 'bad argument'
  sg_wr_mode --page=8 --contents='08 12 01' /dev/null 2>&1 | grep 'bad argument'
  sg_wr_mode -p 8 -c 08,12,01 /dev/null 2>&1 | grep 'bad argument'
  
  printf '\x08\x12\x01' > /tmp/page.bin
  sg_wr_mode --page=8 --cfile=/tmp/page.bin /dev/null 2>&1 | grep 'bad argument'
  
-   * Current output in Resolute:
+   * Current output in Resolute:
  
  bad argument to '--contents='
  bad argument to '--contents='
  bad argument to '--contents='
  bad argument to '--cfile='
  
  [ Where problems could occur ]
  
-  * Changes are isolated to argument parsing in sg_wr_mode.
+  * Changes are isolated to argument parsing in sg_wr_mode.
  
-  * Any regression would show up as other valid arguments for sg_wr_mode being
-    misparsed or rejected.
+  * Any regression would show up as other valid arguments for sg_wr_mode being
+    misparsed or rejected.
  
  [ Other Info ]
  
-  * This issue was fixed upstream in svn r1048, but there's no upstream release
-    yet.
+  * This issue was fixed upstream in svn r1048, but there's no upstream release
+    yet.
+ 
+  * The upload also fixes autopkgtests, which were failing for unrelated
+ reasons. Tests were previously trying to install linux-modules-
+ extra-$(uname-r), which does not exist anymore. It also needed some
+ adjustment handle deleting IPv6 portals (previously only deleted IPv4).
  
  [ Original Bug Description ]
  
  Package: sg3-utils 1.48-3ubuntu3
  Ubuntu: 26.04 (Resolute Raccoon)
  Binary: sg_wr_mode version "1.30 20230623"
  
  sg_wr_mode rejects every --contents= and --cfile= argument before
  opening the target device, regardless of value. The rejection fires from
  argv parsing — it's not device-specific.
  
  Repro (any of these):
  
  $ sg_wr_mode --page=8 --contents=0,1 /dev/null
  bad argument to '--contents='
  
  $ sg_wr_mode --page=8 --contents="08 12 01" /dev/null
  bad argument to '--contents='
  
  $ sg_wr_mode -p 8 -c 08,12,01 /dev/null
  bad argument to '--contents='
  
  $ printf '\x08\x12\x01' > /tmp/page.bin
  $ sg_wr_mode --page=8 --cfile=/tmp/page.bin /dev/null
  bad argument to '--cfile='
  
  Exit code: 32 in every case.
  
  strace confirms the failure is pre-I/O: libsgutils2-1.48.so.2 loads,
  then the error is written to stderr and the process exits — the device
  is never opened. So the bug is in sg_wr_mode's argv handler, not the
  underlying SCSI layer.
  
  Confirmed not device-related: same failure against /dev/sg1 (a QEMU CD-
  ROM SCSI generic device). sg_inq and sg_modes against the same device
  work normally — only sg_wr_mode's argument parser rejects --contents=.
  The sg3-utils library and the device are both healthy; the bug is
  isolated to sg_wr_mode.
  
  Workaround: issue MODE SELECT(10) directly via sg_raw, e.g.: sg_raw -v
  -s 28 -i payload.bin /dev/sgN 55 10 00 00 00 00 00 00 1C 00
  
  Expected: --contents= should accept the documented "comma-separated
  string of hex numbers (00..ff)" syntax (per the man page and --help
  text).
  
  Actual: every value is rejected.
  
  ProblemType: Bug
  DistroRelease: Ubuntu 26.04
  Package: sg3-utils 1.48-3ubuntu3
  ProcVersionSignature: Ubuntu 7.0.0-15.15-generic 7.0.0
  Uname: Linux 7.0.0-15-generic x86_64
  ApportVersion: 2.34.0-0ubuntu2
  Architecture: amd64
  CasperMD5CheckResult: pass
  Date: Sat May 9 13:59:51 2026
  InstallationDate: Installed on 2026-05-02 (7 days ago)
  InstallationMedia: Ubuntu-Server 26.04 "Resolute Raccoon" - Release amd64 
(20260420.1)
  ProcEnviron:
-  LANG=en_US.UTF-8
-  PATH=(custom, no user)
-  SHELL=/bin/bash
-  TERM=xterm-256color
-  XDG_RUNTIME_DIR=<set>
+  LANG=en_US.UTF-8
+  PATH=(custom, no user)
+  SHELL=/bin/bash
+  TERM=xterm-256color
+  XDG_RUNTIME_DIR=<set>
  SourcePackage: sg3-utils
  UpgradeStatus: No upgrade log present (probably fresh install)

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2152092

Title:
  sg_wr_mode rejects every --contents= and --cfile= argument with "bad
  argument"

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/sg3-utils/+bug/2152092/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to