<feed xmlns='http://www.w3.org/2005/Atom'>
<title>busybox-w32, branch cng_backend</title>
<subtitle>A mirror of https://github.com/rmyorston/busybox-w32.git
</subtitle>
<id>https://git.lua4.win/busybox-w32/atom?h=cng_backend</id>
<link rel='self' href='https://git.lua4.win/busybox-w32/atom?h=cng_backend'/>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/'/>
<updated>2025-06-09T12:23:49+00:00</updated>
<entry>
<title>Use Windows library for cryptographic checksums</title>
<updated>2025-06-09T12:23:49+00:00</updated>
<author>
<name>Ron Yorston</name>
<email>rmy@pobox.com</email>
</author>
<published>2025-06-09T12:23:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=596c443112d09506c3bf13ac98046a84b912e56c'/>
<id>urn:sha1:596c443112d09506c3bf13ac98046a84b912e56c</id>
<content type='text'>
Add a new feature to libbb, FEATURE_USE_CNG_API, which enables the
use of the Cryptography API: Next Generation library to calculate
checksums.  It is disabled by default except in the mingw64u default
config, as the API requires Windows 10+ to function.  Usage of this
API provides a size benefit and delegates hardware optimizations to
the operating system cryptography library.

Based on GitHub PR #498 by rfl890.

Saves 4064 bytes in the mingw64u case.
</content>
</entry>
<entry>
<title>win32: update implementation of select(2)</title>
<updated>2025-05-26T13:37:42+00:00</updated>
<author>
<name>Ron Yorston</name>
<email>rmy@pobox.com</email>
</author>
<published>2025-05-26T13:37:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=854c647da7a84cf2aaa2c9a84ff1ca353bdaf9cf'/>
<id>urn:sha1:854c647da7a84cf2aaa2c9a84ff1ca353bdaf9cf</id>
<content type='text'>
Apply gnulib commit 034af0e401 (select, pselect: Fix test failure
on native Windows).

  * lib/select.c (rpl_select): Fail if nfds is out-of-range.
  * lib/pselect.c (pselect): Likewise.
</content>
</entry>
<entry>
<title>win32: update implementation of strptime(3)</title>
<updated>2025-05-26T13:37:07+00:00</updated>
<author>
<name>Ron Yorston</name>
<email>rmy@pobox.com</email>
</author>
<published>2025-05-26T13:37:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=1f29171a25b605bd50fd03698181e7530d81206b'/>
<id>urn:sha1:1f29171a25b605bd50fd03698181e7530d81206b</id>
<content type='text'>
Changes are mostly cosmetic.
</content>
</entry>
<entry>
<title>win32: update inet_pton(3) implementation</title>
<updated>2025-05-26T13:35:04+00:00</updated>
<author>
<name>Ron Yorston</name>
<email>rmy@pobox.com</email>
</author>
<published>2025-05-26T13:35:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=3206c6d60caae5dec3d7a7b8131a3aa256d84631'/>
<id>urn:sha1:3206c6d60caae5dec3d7a7b8131a3aa256d84631</id>
<content type='text'>
Apply musl commit 7e13e5ae (inet_pton: fix uninitialized memory
use for IPv4-mapped IPv6 addresses).

  When a dot is encountered, the loop counter is incremented before
  exiting the loop, but the corresponding ip array element is left
  uninitialized, so the subsequent memmove (if "::" was seen) and the
  loop copying ip to the output buffer will operate on an uninitialized
  uint16_t.

  The uninitialized data never directly influences the control flow and
  is overwritten on successful return by the second half of the parsed
  IPv4 address. But it's better to fix this to avoid unexpected
  transformations by a sufficiently smart compiler and reports from
  UB-detection tools.

Adds 16 bytes.
</content>
</entry>
<entry>
<title>win32: update glob(3) implementation</title>
<updated>2025-05-26T13:32:15+00:00</updated>
<author>
<name>Ron Yorston</name>
<email>rmy@pobox.com</email>
</author>
<published>2025-05-26T13:32:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=1c8dad272bd2a0cac964739e64903d98650600b4'/>
<id>urn:sha1:1c8dad272bd2a0cac964739e64903d98650600b4</id>
<content type='text'>
Apply musl commit 79bdacff (glob: fix wrong return code when
aborting before any matches).

  when the result count was zero, glob was ignoring a possible
  GLOB_ABORTED error code and returning GLOB_NOMATCH. whether this
  happened could be nondeterministic and dependent on the order of
  dirent enumeration, in cases where multiple matches were present and
  only some produced errors.
</content>
</entry>
<entry>
<title>Merge branch 'busybox' into merge</title>
<updated>2025-05-19T07:34:32+00:00</updated>
<author>
<name>Ron Yorston</name>
<email>rmy@pobox.com</email>
</author>
<published>2025-05-19T07:34:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=64bf69893bd99c305d13a956389f216e7d15c682'/>
<id>urn:sha1:64bf69893bd99c305d13a956389f216e7d15c682</id>
<content type='text'>
</content>
</entry>
<entry>
<title>build system: include stack unwind tables</title>
<updated>2025-05-18T10:28:13+00:00</updated>
<author>
<name>Ron Yorston</name>
<email>rmy@pobox.com</email>
</author>
<published>2025-05-18T10:15:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=a807cdfa95cf4af2f84e207ed15887cc3514cb43'/>
<id>urn:sha1:a807cdfa95cf4af2f84e207ed15887cc3514cb43</id>
<content type='text'>
Commit 9b80b903c7 (build system: stop .eh_frame generation) added
compiler flags to prevent unwind tables being included in the
binary.  BusyBox doesn't normally require such tables and the size
of the binary was much reduced.

Windows' Control Flow Guard feature needs unwind tables.  Without
them calls to longjmp(3), widely used in BusyBox, fail.

Add a configuration option to control whether or not unwind tables
are included.

(GitHub issue #495)
</content>
</entry>
<entry>
<title>cpio: error out if the file to be achived is &gt;=4GB</title>
<updated>2025-04-21T02:42:33+00:00</updated>
<author>
<name>Denys Vlasenko</name>
<email>vda.linux@googlemail.com</email>
</author>
<published>2025-04-21T02:41:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=5f07327251c93184dfcfc8d978fc35705930ec53'/>
<id>urn:sha1:5f07327251c93184dfcfc8d978fc35705930ec53</id>
<content type='text'>
function                                             old     new   delta
.rodata                                           105715  105751     +36
cpio_o                                              1145    1167     +22
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/0 up/down: 58/0)               Total: 58 bytes

Signed-off-by: Denys Vlasenko &lt;vda.linux@googlemail.com&gt;
</content>
</entry>
<entry>
<title>rpm2cpio: extract cpio even if compression is not known</title>
<updated>2025-04-20T21:59:38+00:00</updated>
<author>
<name>Denys Vlasenko</name>
<email>vda.linux@googlemail.com</email>
</author>
<published>2025-04-20T21:59:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=f13f68288f45708ff12e0f6853def5910acd32c7'/>
<id>urn:sha1:f13f68288f45708ff12e0f6853def5910acd32c7</id>
<content type='text'>
This is more useful than failing outright.

function                                             old     new   delta
rpm2cpio_main                                        110     144     +34
.rodata                                           105681  105715     +34
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/0 up/down: 68/0)               Total: 68 bytes

Signed-off-by: Denys Vlasenko &lt;vda.linux@googlemail.com&gt;
</content>
</entry>
<entry>
<title>libbb/archival: make setup_unzip_on_fd() return bytes read if not compressed</title>
<updated>2025-04-20T21:49:33+00:00</updated>
<author>
<name>Denys Vlasenko</name>
<email>vda.linux@googlemail.com</email>
</author>
<published>2025-04-20T21:43:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.lua4.win/busybox-w32/commit/?id=c61fdadf974205104f6690ad360117bdf86f0ba6'/>
<id>urn:sha1:c61fdadf974205104f6690ad360117bdf86f0ba6</id>
<content type='text'>
setup_unzip_on_fd() does not return the transformer structure, so the user
does not know how much to seek back (or alternatively what the signature was)
when compressor signature is not detected.

Currently not needed (the only user is tar which dies anyway).
However, rpm2cpio may need this if we extend it to extract the internal .cpio
even if cpio's compressions algo is not known.

function                                             old     new   delta
setup_unzip_on_fd                                     53      59      +6

Signed-off-by: Denys Vlasenko &lt;vda.linux@googlemail.com&gt;
</content>
</entry>
</feed>
