<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: ChrisSD</title><link>https://news.ycombinator.com/user?id=ChrisSD</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sun, 07 Jun 2026 22:18:26 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=ChrisSD" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by ChrisSD in "Myths about /dev/urandom (2014)"]]></title><description><![CDATA[
<p>VMs should have VirtIO RNG set up so there is a high quality entropy source at boot time, provided by the host system.</p>
]]></description><pubDate>Thu, 14 May 2026 12:50:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=48134659</link><dc:creator>ChrisSD</dc:creator><comments>https://news.ycombinator.com/item?id=48134659</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48134659</guid></item><item><title><![CDATA[New comment by ChrisSD in "Incident Report: CVE-2024-YIKES"]]></title><description><![CDATA[
<p>Yep, that's why I was asking. I'd be very interested to hear of more candidates for uplifting into std.<p>I guess saying "every project" has 5 dependencies might be somewhat hyperbolic (or at least domain specific) but it would be interesting to know the kinds of things they're talking about that haven't yet been uplifted.</p>
]]></description><pubDate>Tue, 12 May 2026 04:40:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=48104253</link><dc:creator>ChrisSD</dc:creator><comments>https://news.ycombinator.com/item?id=48104253</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48104253</guid></item><item><title><![CDATA[New comment by ChrisSD in "Incident Report: CVE-2024-YIKES"]]></title><description><![CDATA[
<p>Can you name 5 as an example?</p>
]]></description><pubDate>Mon, 11 May 2026 10:09:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=48093074</link><dc:creator>ChrisSD</dc:creator><comments>https://news.ycombinator.com/item?id=48093074</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48093074</guid></item><item><title><![CDATA[New comment by ChrisSD in "EU Parliamentary Research Service calls VPNs "a loophole that needs closing""]]></title><description><![CDATA[
<p>What law?</p>
]]></description><pubDate>Sun, 10 May 2026 11:11:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=48082887</link><dc:creator>ChrisSD</dc:creator><comments>https://news.ycombinator.com/item?id=48082887</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48082887</guid></item><item><title><![CDATA[New comment by ChrisSD in "EU Parliamentary Research Service calls VPNs "a loophole that needs closing""]]></title><description><![CDATA[
<p>In that specific sentence the source is cited (via hyperlink). So even if you read it out of all context you can still find out the source is UK's Children’s Commissioner Dame Rachel de Souza who said it, not "the EU" (whatever that means).<p>For this "story" to gain legs, someone must have pulled that sentence out of content without mentioning the source and then added some misleading context for the outrage.</p>
]]></description><pubDate>Sun, 10 May 2026 03:34:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=48080764</link><dc:creator>ChrisSD</dc:creator><comments>https://news.ycombinator.com/item?id=48080764</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48080764</guid></item><item><title><![CDATA[New comment by ChrisSD in "How do I inform Windows that I'm writing a binary file?"]]></title><description><![CDATA[
<p>For some background on what I meant see:<p><a href="https://devblogs.microsoft.com/oldnewthing/20140411-00/?p=1273" rel="nofollow">https://devblogs.microsoft.com/oldnewthing/20140411-00/?p=12...</a><p><a href="https://learn.microsoft.com/en-us/cpp/windows/universal-crt-deployment?view=msvc-170" rel="nofollow">https://learn.microsoft.com/en-us/cpp/windows/universal-crt-...</a></p>
]]></description><pubDate>Thu, 07 May 2026 04:30:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=48045412</link><dc:creator>ChrisSD</dc:creator><comments>https://news.ycombinator.com/item?id=48045412</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48045412</guid></item><item><title><![CDATA[New comment by ChrisSD in "How do I inform Windows that I'm writing a binary file?"]]></title><description><![CDATA[
<p>Calling it from C does not mean you need a full C standard library to exist. For example, much of the C standard library is itself written in C. But it's a "freestanding" C which assumes only a minimal set of library functions exist (e.g. functions for copying memory from one place to another, filling memory with zeroes, etc).<p>And you can of course use non-C languages to call the Win32 API. Or even directly using assembly code.</p>
]]></description><pubDate>Thu, 07 May 2026 01:32:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=48044349</link><dc:creator>ChrisSD</dc:creator><comments>https://news.ycombinator.com/item?id=48044349</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48044349</guid></item><item><title><![CDATA[New comment by ChrisSD in "How do I inform Windows that I'm writing a binary file?"]]></title><description><![CDATA[
<p>The Win32 API. E.g. using WriteFile to write files (<a href="https://learn.microsoft.com/en-us/windows/win32/api/fileapi/nf-fileapi-writefile" rel="nofollow">https://learn.microsoft.com/en-us/windows/win32/api/fileapi/...</a>)<p>It wasn't until fairly recently that the C runtime was stably shipped with Windows. Previously you had to install the correct version of the C library alongside your application.</p>
]]></description><pubDate>Thu, 07 May 2026 00:58:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=48044114</link><dc:creator>ChrisSD</dc:creator><comments>https://news.ycombinator.com/item?id=48044114</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48044114</guid></item><item><title><![CDATA[New comment by ChrisSD in "Bugs Rust won't catch"]]></title><description><![CDATA[
<p>You can open directories using high level win32 APIs. What you need NtCreateFile for is opening files relative to an open directory.</p>
]]></description><pubDate>Wed, 29 Apr 2026 19:15:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=47952998</link><dc:creator>ChrisSD</dc:creator><comments>https://news.ycombinator.com/item?id=47952998</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47952998</guid></item><item><title><![CDATA[New comment by ChrisSD in "Bugs Rust won't catch"]]></title><description><![CDATA[
<p>> WinAPI access for ACLs was added in Windows 10<p>I'm not sure which docs you mean but that's not true. The NT kernel has used ACLs long before rust was invented. But it's indeed true that rust adds platform-specific methods based on demand. The trouble with ACLs is it means either creating a large API surface in the standard library to handle them or else presenting a simple interface but having to manage raw pointers (likely using a wrapper type but even then it can't be made totally safe).<p>> the de-facto standard winapi crate, which provides access to the raw syscall<p>Since the official Microsoft `windows-sys` crate was released many years ago, the winapi crate has been effectively unmaintained (it accepts security patches but that's it).</p>
]]></description><pubDate>Wed, 29 Apr 2026 13:30:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=47948195</link><dc:creator>ChrisSD</dc:creator><comments>https://news.ycombinator.com/item?id=47948195</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47948195</guid></item><item><title><![CDATA[New comment by ChrisSD in "Zig – Type Resolution Redesign and Language Changes"]]></title><description><![CDATA[
<p>Oh sorry, I thought this was just listing changes since the branch.</p>
]]></description><pubDate>Wed, 11 Mar 2026 14:38:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=47336156</link><dc:creator>ChrisSD</dc:creator><comments>https://news.ycombinator.com/item?id=47336156</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47336156</guid></item><item><title><![CDATA[New comment by ChrisSD in "Type resolution redesign, with language changes to taste"]]></title><description><![CDATA[
<p>> Many projects including Chromium, boringssl, Firefox, and Rust call SystemFunction036 from advapi32.dll because it worked on versions older than Windows 8.<p>That's not true. They use ProcessPrng since versions earlier than 10 are no longer supported (well, rust also has a windows 7 target but that couldn't use ProcessPrng anyway since it wasn't available). The issue they linked is from a decade ago. E.g. here's Chromium: <a href="https://github.com/chromium/chromium/blob/dc7016d1ef67e3e1281dce92bf27ed1f9743ea2f/base/rand_util_win.cc#L74" rel="nofollow">https://github.com/chromium/chromium/blob/dc7016d1ef67e3e128...</a><p>> If [ProcessPrng] fails it returns NO_MEMORY in a BOOL (documented behavior is to never fail, and always return TRUE).<p>From Windows 10 onward ProcessPrng will never fail. There's a whitepaper that gives the justification for this (<a href="https://aka.ms/win10rng" rel="nofollow">https://aka.ms/win10rng</a>):<p>> We also have the property that a request for random bytes never fails. In the past our
RNG functions could return an error code. We have observed that there are many callers
that never check for the error code, even if they are generating cryptographic key
material. This can lead to serious security vulnerabilities if an attacker manages to create
a situation in which the RNG infrastructure returns an error. For that reason, the Win10
RNG infrastructure will never return an error code and always produce high-quality
random bytes for every request...<p>> For each user-mode process, we have a (buffered) base PRNG maintained by
BCryptPrimitives.dll. When this DLL loads it requests a random seed from kernel mode
(where it is produced by the per-CPU states) and seeds the process base PRNG. If this
were to fail, BCryptPrimitive.dll fails to load, which in most cases causes the process to
terminate. This behavior ensures that we never have to return an error code from the
RNG system.</p>
]]></description><pubDate>Wed, 11 Mar 2026 13:23:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=47335246</link><dc:creator>ChrisSD</dc:creator><comments>https://news.ycombinator.com/item?id=47335246</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47335246</guid></item><item><title><![CDATA[New comment by ChrisSD in "My “grand vision” for Rust"]]></title><description><![CDATA[
<p>I think you're too stuck on the current implementation. Work is going into investigating how to evolve the standard library over editions. The "easiest" win would be to have a way to do edition-dependent re-exports of types.</p>
]]></description><pubDate>Sun, 08 Mar 2026 23:44:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=47302910</link><dc:creator>ChrisSD</dc:creator><comments>https://news.ycombinator.com/item?id=47302910</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47302910</guid></item><item><title><![CDATA[New comment by ChrisSD in "Ars Technica fires reporter after AI controversy involving fabricated quotes"]]></title><description><![CDATA[
<p>> Aurich Lawson of Ars Technica deleted the original article<p>That's a very "shoot the messenger" statement. While Aurich is the community "face" of Ars, I very much doubt he has the power to do anything like that.</p>
]]></description><pubDate>Tue, 03 Mar 2026 09:20:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=47230113</link><dc:creator>ChrisSD</dc:creator><comments>https://news.ycombinator.com/item?id=47230113</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47230113</guid></item><item><title><![CDATA[New comment by ChrisSD in "Why XML tags are so fundamental to Claude"]]></title><description><![CDATA[
<p>HTML diverged from SGML pretty early on. Various standards over the years have attempted to specify it as an application of SGML but in practice almost nobody properly conformed to those standards. HTML5 gave up the pretence entirely.</p>
]]></description><pubDate>Sun, 01 Mar 2026 18:50:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=47209512</link><dc:creator>ChrisSD</dc:creator><comments>https://news.ycombinator.com/item?id=47209512</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47209512</guid></item><item><title><![CDATA[New comment by ChrisSD in "Dear Time Lords: Freeze Computers in 1993"]]></title><description><![CDATA[
<p>Eh. I don't think so. Sure, it was used more in business contexts but it wasn't until Windows 2000  that I saw more regular people using it and recommending it.</p>
]]></description><pubDate>Fri, 27 Feb 2026 21:51:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=47186156</link><dc:creator>ChrisSD</dc:creator><comments>https://news.ycombinator.com/item?id=47186156</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47186156</guid></item><item><title><![CDATA[New comment by ChrisSD in "Dear Time Lords: Freeze Computers in 1993"]]></title><description><![CDATA[
<p>> It does mention Windows NT but honestly nobody really cared about that until NT 3.0/3.5 and it soon thereafter became Windows XP and laid the foundation for modern Windows.<p>Fun fact: NT 3.1 was the first version of NT, released in 1993. It was versioned like that to match Windows 3.1 which had been released the previous year.<p>And NT really took off with Windows 2000. Not just business people but more ordinary people were using it as a more stable alternative to Windows 95/98 (albeit lacking some compatibility, especially with games).</p>
]]></description><pubDate>Fri, 27 Feb 2026 09:02:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=47178331</link><dc:creator>ChrisSD</dc:creator><comments>https://news.ycombinator.com/item?id=47178331</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47178331</guid></item><item><title><![CDATA[New comment by ChrisSD in "Windows 11 Notepad to support Markdown"]]></title><description><![CDATA[
<p>For everyone that wants a simple, lightweight, alternative to notepad there's edit.exe on recent version of Windows. Assuming you don't mind TUIs.</p>
]]></description><pubDate>Wed, 25 Feb 2026 17:34:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=47154767</link><dc:creator>ChrisSD</dc:creator><comments>https://news.ycombinator.com/item?id=47154767</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47154767</guid></item><item><title><![CDATA[New comment by ChrisSD in "C isn't a programming language anymore (2022)"]]></title><description><![CDATA[
<p>This article isn't about languages. It's about the protocol for two or more languages to talk to each other. There is no specification for this.<p>The System V ABI is as close as we get to an actual specification but not everyone uses it and in any case it only covers a small part of the protocol.</p>
]]></description><pubDate>Fri, 06 Feb 2026 05:49:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=46909571</link><dc:creator>ChrisSD</dc:creator><comments>https://news.ycombinator.com/item?id=46909571</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46909571</guid></item><item><title><![CDATA[New comment by ChrisSD in "C isn't a programming language anymore (2022)"]]></title><description><![CDATA[
<p>It minimally reflects PDP-11 assembly, which is not how modern computers work.</p>
]]></description><pubDate>Fri, 06 Feb 2026 04:47:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=46909260</link><dc:creator>ChrisSD</dc:creator><comments>https://news.ycombinator.com/item?id=46909260</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46909260</guid></item></channel></rss>