[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#990973: marked as done (unblock: mksh/59c-9)



Your message dated Sat, 17 Jul 2021 11:38:16 +0200
with message-id <CAM8zJQvW-gWMNr5H17aHwPaqj1b1iDXiuUc9ePeKAjKzqQvszw@mail.gmail.com>
and subject line Re: Bug#990973: unblock: mksh/59c-9
has caused the Debian Bug report #990973,
regarding unblock: mksh/59c-9
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
990973: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=990973
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock
X-Debbugs-Cc: tg@mirbsd.de, Vincent Lefèvre <vincent@vinc17.net>

Please unblock package mksh

[ Reason ]
This update is comprised of:
• documentation update from upstream CVS HEAD, mostly related
  to the death of a certain IRC network (one FAQ entry related
  to changes that are already in 59c-8 also got in)
• some more reliability checks (although I’m afraid the full
  C1 control character escaping changes won’t make bullseye,
  they’re still under development and rather invasive, so I
  only picked the small independent fixes):
  – check lower bounds of input line array when backspacing
  – protect against hi-bit7 (stty) EOF character
  – ensure macro calls don’t have side effects in arguments
• properly flush stderr and unwind for direct builtin calls
  (“ln -s /bin/mksh echo; ./echo …”) so they behave the same
  as if called from within the shell (“/bin/mksh -c 'echo …'”)
• fix truncation behaviour for internal snprintf equivalent
  (a sequence of putc+puts+putc could, before, drop the puts
  but allow the putc to succeed); this becomes important with
  the next change
• show error message and exit nōn-zero on stdout write failure
  for builtin calls (Closes: #990265)
  ‣ there was quite a discussion around what parts are actually
    buggy-as-in-not-POSIX on the Austin Group (POSIX) mailing
    list, as there was no consensus between shell implementors,
    packagers and users; this implements (for all known cases)
    what the official response requires
• display correct errno when doing so (before, one codepath
  could lose errno as it did another libc call in between)
• show error message in echo/print builtin on output write failure
  (basically the same as the generic one except echo/print don’t
  write buffered to stdout, they write to any fd, and already
  exited 1 on write error but didn’t issue a diagnostic message
  in that case which the POSIX people seem to prefer)

[ Impact ]
The references to the dead IRC network stay in. Scenarios in
which output is redirected to files on a full filesystem can’t
be handled by shell scripts. Direct builtin calls can lose
stderr messages. (The other fixes are for bugs I’ve not seen
in production but aren’t untrue either.)

[ Tests ]
The stdout/error change has new tests in the regression test
suite and has also been tested by the requestor and the concept
was ACK’d on the Austin Group mailing list.
All changes have been tested in MirBSD for a while (including
rebuilding the full OS with them in play) and not triggered any
problems. The changes (except documentation where I cp’d for
some files) are all individual cherry-picks of the relevant
commits, individually reviewed. I also tested the truncation
one by temporarily adding debugging code during development,
and all error handling-related ones also on Debian with /dev/full
(which doesn’t exist on MirBSD).

[ Risks ]
As mentioned in the last unblock, mksh is effectively not key.
These changes only affect specific things (the ones under “some
more reliability checks” only the interactive line editor, for
example) and thus are rather localised, mistakes easily spotted.
Therefore I believe these are low risk (I specifically didn’t
cherry-pick a few fixes that are of higher risk because of their
interwovenness and intrusivity level; users will have to wait
for the next release for these). I expect this to be the last
upload before the release.

[ Checklist ]
  [x] all changes are documented in the d/changelog
  [x] I reviewed all changes and I approve them
  [x] attach diff against the package in testing

[ Other info ]
I’ve again attached a diff of the unpacked package instead of
a debdiff because I use single-debian-patch and develop in VCS.
I’ve commented the diff, so it’s easier to map the hunks to the
changes listed.

unblock mksh/59c-9

--- End Message ---
--- Begin Message ---
Unblocked, but can only migrate after linux (#990897).

--- End Message ---

Reply to: