<feed xmlns='http://www.w3.org/2005/Atom'>
<title>busybox-w32, branch su_cmd</title>
<subtitle>A mirror of https://github.com/rmyorston/busybox-w32.git
</subtitle>
<id>https://git.lua4.win/busybox-w32/atom?h=su_cmd</id>
<link rel='self' href='https://git.lua4.win/busybox-w32/atom?h=su_cmd'/>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/'/>
<updated>2023-04-21T14:08:28+00:00</updated>
<entry>
<title>su: allow additional arguments after su -c</title>
<updated>2023-04-21T14:08:28+00:00</updated>
<author>
<name>Ron Yorston</name>
<email>rmy@pobox.com</email>
</author>
<published>2023-04-21T14:08:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=9c20ed5246abbfe2fdae16a70b7fac1d0d1e51f0'/>
<id>urn:sha1:9c20ed5246abbfe2fdae16a70b7fac1d0d1e51f0</id>
<content type='text'>
The syntax becomes:

  su [-c CMD [ARG...]]

This makes it a lot easier to use values from the current shell,
instead of shell-quoting them for re-input and embedding at CMD.

Also, previously -c expected an option-argument, and now it's a flag
which requires a CMD operand, just like 'sh', so that both these
forms now error the same way (as they should):

   sh -c --
   su -c --

(previously su -c -- did not error because '--' was assumed CMD)

Adds 64 bytes.

(Based on GitHub PR #317)
</content>
</entry>
<entry>
<title>win32: export xappendword()</title>
<updated>2023-04-21T14:05:49+00:00</updated>
<author>
<name>Ron Yorston</name>
<email>rmy@pobox.com</email>
</author>
<published>2023-04-21T14:05:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=ff8242f51aac4e1b358eac833d6b384ebe1a1116'/>
<id>urn:sha1:ff8242f51aac4e1b358eac833d6b384ebe1a1116</id>
<content type='text'>
The function xappendword() in make.c may have other uses.  Export it.
</content>
</entry>
<entry>
<title>su: escape quotes and backslashes in command</title>
<updated>2023-04-21T14:04:59+00:00</updated>
<author>
<name>Ron Yorston</name>
<email>rmy@pobox.com</email>
</author>
<published>2023-04-21T14:00:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=9ce85210e61e6c75adfc0ac0f54643cfee1353be'/>
<id>urn:sha1:9ce85210e61e6c75adfc0ac0f54643cfee1353be</id>
<content type='text'>
In 'su -c "CMD"' CMD should become a single argument to busybox
sh -c ...

But previously, the parameter string to ShellExecute was constructed
by placing the literal value of CMD inside double quotes, which could
result in incorrect and/or more than one parameter seen by the
program, because double-quotes and (some) backslashes in CMD should
be escaped while constructing the string, but they weren't.

Now they're escaped so that the WIN32 CommandLineToArgv[W] parses it
into a single argument with value identical to the original CMD.
</content>
</entry>
<entry>
<title>win32: case-sensitivity in tab completion</title>
<updated>2023-04-19T11:51:19+00:00</updated>
<author>
<name>Ron Yorston</name>
<email>rmy@pobox.com</email>
</author>
<published>2023-04-19T11:51:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=7b81a44c87cf71dfb4f647ba107624e208ffbefe'/>
<id>urn:sha1:7b81a44c87cf71dfb4f647ba107624e208ffbefe</id>
<content type='text'>
The tab-completion code treated all matches as case-insensitive
because that's how Microsoft Windows handles filenames.

This is now inadequate, as shell builtins, functions and aliases
are case sensitive.

Modify the treatment of case-sensitivity in tab completion:

- Track whether each potential match is case-insensitive (filename)
  or case-sensitive (shell builtin, function or alias).

- When comparing matches use a case-insensitive comparison if either
  value is a filename.  Otherwise use a case-sensitive comparison.

Adds 64 bytes.
</content>
</entry>
<entry>
<title>dd: omit direct flag</title>
<updated>2023-04-18T10:44:57+00:00</updated>
<author>
<name>Ron Yorston</name>
<email>rmy@pobox.com</email>
</author>
<published>2023-04-18T10:44:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=2eeb7a1e5c5242784a0c24a88042f98b9e69963a'/>
<id>urn:sha1:2eeb7a1e5c5242784a0c24a88042f98b9e69963a</id>
<content type='text'>
O_DIRECT isn't supported with open(2) on Microsoft Windows.

All code related to the 'direct' input/output flag can be omitted.

Saves 160 bytes.
</content>
</entry>
<entry>
<title>Merge branch 'busybox' into merge</title>
<updated>2023-04-17T06:32:52+00:00</updated>
<author>
<name>Ron Yorston</name>
<email>rmy@pobox.com</email>
</author>
<published>2023-04-17T06:32:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=8cdeb571cfbf3bb6edc44779e46537b072b8cd08'/>
<id>urn:sha1:8cdeb571cfbf3bb6edc44779e46537b072b8cd08</id>
<content type='text'>
</content>
</entry>
<entry>
<title>readlink: support --, -n always</title>
<updated>2023-04-16T16:01:44+00:00</updated>
<author>
<name>Eric Blake</name>
<email>eblake@redhat.com</email>
</author>
<published>2023-03-24T14:58:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=d2b81b3dc2b31d32e1060d3ea8bd998d30a37d8a'/>
<id>urn:sha1:d2b81b3dc2b31d32e1060d3ea8bd998d30a37d8a</id>
<content type='text'>
POSIX will be standardizing readlink (just the -n option) and realpath
(just -E and -e options):
https://www.austingroupbugs.net/view.php?id=1457

Change things for readlink so that the POSIX-mandated -n and -- work
even when disabling the non-standard (and partially non-working) -f
when FEATURE_READLINK_FOLLOW is clear.

POSIX also wants readlink to be verbose by default (if the argument is
not a symlink, readlink must output a diagnostic); I did NOT address
that one, because I'm waiting to see what the GNU Coreutils folks do:
https://lists.gnu.org/archive/html/bug-coreutils/2023-03/msg00035.html

Partial fix for https://bugs.busybox.net/show_bug.cgi?id=15466

function                                             old     new   delta
packed_usage                                       34538   34557     +19

Signed-off-by: Eric Blake &lt;eblake@redhat.com&gt;
Signed-off-by: Denys Vlasenko &lt;vda.linux@googlemail.com&gt;
</content>
</entry>
<entry>
<title>tr: display usage for incorrect arguments</title>
<updated>2023-04-16T15:54:00+00:00</updated>
<author>
<name>Ron Yorston</name>
<email>rmy@pobox.com</email>
</author>
<published>2023-04-16T07:23:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=2ffd8986e21f1782c78e1a9d34f6042af53d876c'/>
<id>urn:sha1:2ffd8986e21f1782c78e1a9d34f6042af53d876c</id>
<content type='text'>
tr must have one or two non-option arguments.  Display the usage
message if any other number is present.

function                                             old     new   delta
.rodata                                           108389  108392      +3
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/0 up/down: 3/0)                 Total: 3 bytes

Signed-off-by: Ron Yorston &lt;rmy@pobox.com&gt;
Signed-off-by: Denys Vlasenko &lt;vda.linux@googlemail.com&gt;
</content>
</entry>
<entry>
<title>ash,hush: tab completion of functions and aliases</title>
<updated>2023-04-16T15:15:05+00:00</updated>
<author>
<name>Ron Yorston</name>
<email>rmy@pobox.com</email>
</author>
<published>2023-04-13T11:56:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=acae889dd97280ee59b7e04c18005bb8875cb0d2'/>
<id>urn:sha1:acae889dd97280ee59b7e04c18005bb8875cb0d2</id>
<content type='text'>
Since commit 9e2a5668f (ash,hush: allow builtins to be tab-completed,
closes 7532) ash and hush have supported tab completion of builtins.

Other shells, bash and ksh for example, also support tab completion
of functions and aliases.

Add such support to ash and hush.

function                                             old     new   delta
ash_command_name                                       -      92     +92
hush_command_name                                      -      63     +63
ash_builtin_name                                      17       -     -17
hush_builtin_name                                     38       -     -38
------------------------------------------------------------------------------
(add/remove: 2/2 grow/shrink: 0/0 up/down: 169/-55)           Total: 100 bytes

Signed-off-by: Ron Yorston &lt;rmy@pobox.com&gt;
Signed-off-by: Avi Halachmi &lt;avihpit@yahoo.com&gt;
Signed-off-by: Denys Vlasenko &lt;vda.linux@googlemail.com&gt;
</content>
</entry>
<entry>
<title>wget: enable progress bar in default configuration</title>
<updated>2023-04-16T12:52:49+00:00</updated>
<author>
<name>Ron Yorston</name>
<email>rmy@pobox.com</email>
</author>
<published>2023-04-16T12:29:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=41827dd448c001b52b4f0e591ea605cb5de1d230'/>
<id>urn:sha1:41827dd448c001b52b4f0e591ea605cb5de1d230</id>
<content type='text'>
For some reason the progress bar in wget has never been enabled.

Costs 1536-1600 bytes.
</content>
</entry>
</feed>
