<feed xmlns='http://www.w3.org/2005/Atom'>
<title>busybox-w32/win32, branch su_cmd2</title>
<subtitle>A mirror of https://github.com/rmyorston/busybox-w32.git
</subtitle>
<id>https://git.lua4.win/busybox-w32/atom?h=su_cmd2</id>
<link rel='self' href='https://git.lua4.win/busybox-w32/atom?h=su_cmd2'/>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/'/>
<updated>2023-04-23T08:04:01+00:00</updated>
<entry>
<title>win32: export xappendword()</title>
<updated>2023-04-23T08:04:01+00:00</updated>
<author>
<name>Ron Yorston</name>
<email>rmy@pobox.com</email>
</author>
<published>2023-04-23T08:00:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=0575aaaa0779812752427badbc0f80a09aac02a4'/>
<id>urn:sha1:0575aaaa0779812752427badbc0f80a09aac02a4</id>
<content type='text'>
Export the function xappendword() from make.  Use it in drop and
watch.

Saves 8-80 bytes, an unusually large disparity.
</content>
</entry>
<entry>
<title>win32: further fix incorrect path search in spawnvp</title>
<updated>2023-04-16T09:02:01+00:00</updated>
<author>
<name>Ron Yorston</name>
<email>rmy@pobox.com</email>
</author>
<published>2023-04-16T09:02:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=e3e510b52695bbf5c55d83c971dc23813325cfc9'/>
<id>urn:sha1:e3e510b52695bbf5c55d83c971dc23813325cfc9</id>
<content type='text'>
Commit 9581d2396 (win32: fix incorrect path search in spawnvp)
fixed the unwanted PATH search for relative or absolute paths but
broke the desired PATH search for Unix-style paths.

(GitHub issue #310)
</content>
</entry>
<entry>
<title>win32: fix incorrect path search in spawnvp</title>
<updated>2023-04-14T17:45:07+00:00</updated>
<author>
<name>Ron Yorston</name>
<email>rmy@pobox.com</email>
</author>
<published>2023-04-14T17:36:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=9581d23964c7efad6f8e74e754e36c1ad292cf45'/>
<id>urn:sha1:9581d23964c7efad6f8e74e754e36c1ad292cf45</id>
<content type='text'>
Commit 26ba73098e (win32: search PATH for missing Unix-style
executables) rearranged the code of mingw_spawnvp().  As a
result commands with a relative or absolute path could be
incorrectly searched for on PATH.

(GitHub issue #310)
</content>
</entry>
<entry>
<title>win32: ignore ctrl-c in parent of execve(2)</title>
<updated>2023-04-05T08:32:42+00:00</updated>
<author>
<name>Ron Yorston</name>
<email>rmy@pobox.com</email>
</author>
<published>2023-04-05T08:32:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=9db9b34adaad1a9ebe892eaea486cfe0610bad8d'/>
<id>urn:sha1:9db9b34adaad1a9ebe892eaea486cfe0610bad8d</id>
<content type='text'>
The execve(2) system call is emulated for Microsoft Windows.  This
requires the creation of a new process.  The old process remains
active, waiting for the "execed" child to exit so it can pass on
its exit status.

Previously this was achieved using P_WAIT mode in the call to
spawnve().  However the parent of the execve(2) process may still
be able to catch Ctrl-C interrupts.  This can lead to unwanted
behaviour, such as a shell and its children competing for input.

Force the waiting process to ignore Ctrl-C interrupts.

Costs 64-80 bytes.

(GitHub issue #303)
</content>
</entry>
<entry>
<title>win32: use CheckTokenMembership() to check privilege</title>
<updated>2023-03-25T15:04:15+00:00</updated>
<author>
<name>Ron Yorston</name>
<email>rmy@pobox.com</email>
</author>
<published>2023-03-25T15:04:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=f4178f8d0b97baea0bb6a6444fc37171c83ad316'/>
<id>urn:sha1:f4178f8d0b97baea0bb6a6444fc37171c83ad316</id>
<content type='text'>
Rewrite the test for the reduced-privilege token:  check whether
the BUILTIN\Administrators group is enabled.  This seems more
directly relevant than the previous check for restrictions on
the token.
</content>
</entry>
<entry>
<title>drop: add cdrop and pdrop aliases</title>
<updated>2023-03-19T10:26:24+00:00</updated>
<author>
<name>Ron Yorston</name>
<email>rmy@pobox.com</email>
</author>
<published>2023-03-19T10:26:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=d9e8bb61cf380264511a4524281af2ca57498bce'/>
<id>urn:sha1:d9e8bb61cf380264511a4524281af2ca57498bce</id>
<content type='text'>
Add cdrop and pdrop applets as aliases for drop.  If a command
isn't specified these use cmd.exe and PowerShell instead of the
BusyBox shell.

This makes it possible to choose the default shell used for SSH
connections even in older versions of OpenSSH that don't support
the DefaultShellArguments registry key.

Note that to get cmd.exe to run a command rather than an interactive
shell it's necessary to set the DefaultShellCommandOption registry
key to '/c'.

Costs 248-272 bytes.
</content>
</entry>
<entry>
<title>runuser,drop: drop runuser, tweak drop</title>
<updated>2023-03-19T10:25:23+00:00</updated>
<author>
<name>Ron Yorston</name>
<email>rmy@pobox.com</email>
</author>
<published>2023-03-19T10:25:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=b0e7a401d51402c052563f55331c8b9001a1215c'/>
<id>urn:sha1:b0e7a401d51402c052563f55331c8b9001a1215c</id>
<content type='text'>
Remove the runuser applet, leaving only drop.  Move drop from
util-linux to miscutils.

A command of the form 'drop -c command' causes the BusyBox shell
to be used, just like 'drop' without any arguments.  A simple
OpenSSH configuration with 'drop.exe' as DefaultShell and no
DefaultShellArguments now works both for interactive login and
to run a command.  This is useful for older versions of OpenSSH
which don't support DefaultShellArguments.

Saves 208-232 bytes.
</content>
</entry>
<entry>
<title>runuser,drop: code shrink</title>
<updated>2023-03-19T10:24:43+00:00</updated>
<author>
<name>Ron Yorston</name>
<email>rmy@pobox.com</email>
</author>
<published>2023-03-19T10:24:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=6de29a7e5346bea9c1c2ad4faf4010ee78f1a97b'/>
<id>urn:sha1:6de29a7e5346bea9c1c2ad4faf4010ee78f1a97b</id>
<content type='text'>
Make quote_arg() always return an allocated string so we can free
it unconditionally.

Always use argv[1] as the first part of the command string.

Saves 48 bytes.
</content>
</entry>
<entry>
<title>win32: delay adjusting code page</title>
<updated>2023-03-17T13:20:53+00:00</updated>
<author>
<name>Ron Yorston</name>
<email>rmy@pobox.com</email>
</author>
<published>2023-03-17T13:20:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=cb50586aedc9725fb14dbb25263bba1598726037'/>
<id>urn:sha1:cb50586aedc9725fb14dbb25263bba1598726037</id>
<content type='text'>
Commit 93a63809f9 (win32: add support for the euro currency symbol)
caused all invocations of busybox-w32 to change code page 850 to
858.  This has been known to cause problems with fonts in PowerShell
(GitHub issue #207).

Delay changing the code page until an i/o operation is imminent.
Instances of PowerShell started by the `drop` applet during ssh login
thus no longer have their code page adjusted.
</content>
</entry>
<entry>
<title>runuser: add 'drop' as an alias for runuser</title>
<updated>2023-03-16T15:37:15+00:00</updated>
<author>
<name>Ron Yorston</name>
<email>rmy@pobox.com</email>
</author>
<published>2023-03-16T15:21:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=87e7e7b1e61caa87112e3cf6527b606086b6b688'/>
<id>urn:sha1:87e7e7b1e61caa87112e3cf6527b606086b6b688</id>
<content type='text'>
The 'drop' alias for 'runuser' relaxes a number of constraints
that were introduced for compatibility:

- It works even if the current process doesn't have elevated
  privileges.

- It isn't necessary to specify the name of the user.

- Any command can be invoked, not just the BusyBox shell.

- If the command doesn't specify a path 'drop' will first look for
  a BusyBox applet then search PATH.

Adds 320-336 when built along with runuser.

(GitHub issue #240)
</content>
</entry>
</feed>
