<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: IAmLiterallyAB</title><link>https://news.ycombinator.com/user?id=IAmLiterallyAB</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Mon, 22 Jun 2026 22:38:24 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=IAmLiterallyAB" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by IAmLiterallyAB in "Memory Safe Inline Assembly"]]></title><description><![CDATA[
<p>Oops, you're right. I was thinking of those as nearly interchangeable but they're actually pretty different.<p>I might give it a try when I have a chance, I'll let you know if anything comes of it.</p>
]]></description><pubDate>Mon, 22 Jun 2026 03:31:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=48625331</link><dc:creator>IAmLiterallyAB</dc:creator><comments>https://news.ycombinator.com/item?id=48625331</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48625331</guid></item><item><title><![CDATA[New comment by IAmLiterallyAB in "Memory Safe Inline Assembly"]]></title><description><![CDATA[
<p>I wonder if an adversarial user could bypass the checks and achieve memory corruption / code execution. Maybe not a practical attack in most situations but a fun exercise.<p>> This includes things like asm volatile("" : : : "memory"), which is an old-school way of saying atomic_signal_fence(memory_order_seq_cst).<p>Not quite. AIUI, the first is just a barrier for the compiler, while the second is also a CPU memory barrier. Godbolt seems to confirm that.<p><a href="https://godbolt.org/z/a844zKej8" rel="nofollow">https://godbolt.org/z/a844zKej8</a></p>
]]></description><pubDate>Mon, 22 Jun 2026 03:23:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=48625290</link><dc:creator>IAmLiterallyAB</dc:creator><comments>https://news.ycombinator.com/item?id=48625290</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48625290</guid></item><item><title><![CDATA[New comment by IAmLiterallyAB in "GNU IFUNC is the real culprit behind CVE-2024-3094"]]></title><description><![CDATA[
<p>Yes but at best their "solution" is equally secure, not any better.</p>
]]></description><pubDate>Fri, 08 May 2026 04:38:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=48058619</link><dc:creator>IAmLiterallyAB</dc:creator><comments>https://news.ycombinator.com/item?id=48058619</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48058619</guid></item><item><title><![CDATA[New comment by IAmLiterallyAB in "Zuckerberg 'Personally Authorized and Encouraged' Meta's Copyright Infringement"]]></title><description><![CDATA[
<p>That's a privacy violation, not relevant.</p>
]]></description><pubDate>Wed, 06 May 2026 01:29:16 +0000</pubDate><link>https://news.ycombinator.com/item?id=48031052</link><dc:creator>IAmLiterallyAB</dc:creator><comments>https://news.ycombinator.com/item?id=48031052</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48031052</guid></item><item><title><![CDATA[New comment by IAmLiterallyAB in "The three pillars of JavaScript bloat"]]></title><description><![CDATA[
<p>For the old version support. Why not do some compile time #ifdef SUPPORT_ES3? That way library writers can support it and if the user doesn't need it they can disable it at compile time and all the legacy code will be removed</p>
]]></description><pubDate>Sun, 22 Mar 2026 05:42:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=47474801</link><dc:creator>IAmLiterallyAB</dc:creator><comments>https://news.ycombinator.com/item?id=47474801</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47474801</guid></item><item><title><![CDATA[New comment by IAmLiterallyAB in "Linux Internals: How /proc/self/mem writes to unwritable memory (2021)"]]></title><description><![CDATA[
<p>It doesn't bypass it exactly, it's still accessing it via virtual memory and the page tables. It's just that the kernel maintains one big linear memory map of RAM that's writable.</p>
]]></description><pubDate>Mon, 09 Mar 2026 04:59:12 +0000</pubDate><link>https://news.ycombinator.com/item?id=47305031</link><dc:creator>IAmLiterallyAB</dc:creator><comments>https://news.ycombinator.com/item?id=47305031</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47305031</guid></item><item><title><![CDATA[New comment by IAmLiterallyAB in "Programmable Cryptography (2024)"]]></title><description><![CDATA[
<p>Citation needed. We don't even know if indistinguishability obfuscation is possible.</p>
]]></description><pubDate>Tue, 03 Mar 2026 03:32:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=47227652</link><dc:creator>IAmLiterallyAB</dc:creator><comments>https://news.ycombinator.com/item?id=47227652</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47227652</guid></item><item><title><![CDATA[New comment by IAmLiterallyAB in "Ghidra by NSA"]]></title><description><![CDATA[
<p>And everyone uses Ghidra exclusively where I work. I'd say we're a serious operation</p>
]]></description><pubDate>Mon, 16 Feb 2026 15:53:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=47036578</link><dc:creator>IAmLiterallyAB</dc:creator><comments>https://news.ycombinator.com/item?id=47036578</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47036578</guid></item><item><title><![CDATA[New comment by IAmLiterallyAB in "Major European payment processor can't send email to Google Workspace users"]]></title><description><![CDATA[
<p>Amusing because gmail doesn't even follow spec. I had to workaround gmail quirks when I worked at an email company.<p>Better than outlook though. What a nightmare.</p>
]]></description><pubDate>Fri, 13 Feb 2026 12:52:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=47002165</link><dc:creator>IAmLiterallyAB</dc:creator><comments>https://news.ycombinator.com/item?id=47002165</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47002165</guid></item><item><title><![CDATA[New comment by IAmLiterallyAB in "Reports of Telnet's death have been greatly exaggerated"]]></title><description><![CDATA[
<p>Half the time when people say they're using telnet (including in this thread) they're really just using the client as a TCP client, not doing anything with the Telnet protocol.<p>No one is stopping you from using the telnet client. And really you should just use netcat</p>
]]></description><pubDate>Thu, 12 Feb 2026 15:01:01 +0000</pubDate><link>https://news.ycombinator.com/item?id=46989688</link><dc:creator>IAmLiterallyAB</dc:creator><comments>https://news.ycombinator.com/item?id=46989688</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46989688</guid></item><item><title><![CDATA[New comment by IAmLiterallyAB in "How not to securely erase a NVME drive (2022)"]]></title><description><![CDATA[
<p>That doesn't work on any* NAND flash device, be it a flash drive, NVME, SATA, whatever.<p>The block device you see is an abstraction provided by the SSD controller. In reality, the flash capacity is larger. Pages are swapped out for wear leveling. If a block goes bad, it'll be taken out of commission, and your data may hide in there.<p>All of this happens on the SSD controller. The kernel doesn't know. You have no way to directly erase or modify specific blocks.<p>*Okay, there are raw NAND flash chips without controllers, but that is not you're working with when you have a SSD or flash drive. If you do have a raw flash chip, you can more directly control flash contents.</p>
]]></description><pubDate>Thu, 05 Feb 2026 04:49:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=46895800</link><dc:creator>IAmLiterallyAB</dc:creator><comments>https://news.ycombinator.com/item?id=46895800</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46895800</guid></item><item><title><![CDATA[New comment by IAmLiterallyAB in "How not to securely erase a NVME drive (2022)"]]></title><description><![CDATA[
<p>To maximize device performance when wiping a drive to use for something else, I use nvme format with --ses=1.<p>Which in theory should free all of the blocks on the flash.<p>Really hard to find good documentation on this stuff. Doesn't help that 95% of internet articles just say "overwrite with zeroes" which is useless advice</p>
]]></description><pubDate>Thu, 05 Feb 2026 04:35:20 +0000</pubDate><link>https://news.ycombinator.com/item?id=46895726</link><dc:creator>IAmLiterallyAB</dc:creator><comments>https://news.ycombinator.com/item?id=46895726</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46895726</guid></item><item><title><![CDATA[New comment by IAmLiterallyAB in "How not to securely erase a NVME drive (2022)"]]></title><description><![CDATA[
<p>As far as I know, there is NO way to securely erase a USB flash drive (barring some undocumented vendor specific commands that may exist).</p>
]]></description><pubDate>Thu, 05 Feb 2026 04:26:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=46895670</link><dc:creator>IAmLiterallyAB</dc:creator><comments>https://news.ycombinator.com/item?id=46895670</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46895670</guid></item><item><title><![CDATA[New comment by IAmLiterallyAB in "Show HN: TUI for managing XDG default applications"]]></title><description><![CDATA[
<p>They explicitly check if the referrer is hackernews and do that.</p>
]]></description><pubDate>Mon, 26 Jan 2026 05:33:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=46762187</link><dc:creator>IAmLiterallyAB</dc:creator><comments>https://news.ycombinator.com/item?id=46762187</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46762187</guid></item><item><title><![CDATA[New comment by IAmLiterallyAB in "Gpg.fail"]]></title><description><![CDATA[
<p>Another related writeup <a href="https://www.latacora.com/blog/2019/07/16/the-pgp-problem/" rel="nofollow">https://www.latacora.com/blog/2019/07/16/the-pgp-problem/</a></p>
]]></description><pubDate>Sat, 27 Dec 2025 20:14:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=46404842</link><dc:creator>IAmLiterallyAB</dc:creator><comments>https://news.ycombinator.com/item?id=46404842</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46404842</guid></item><item><title><![CDATA[The PGP Problem]]></title><description><![CDATA[
<p>Article URL: <a href="https://www.latacora.com/blog/2019/07/16/the-pgp-problem/">https://www.latacora.com/blog/2019/07/16/the-pgp-problem/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=46404838">https://news.ycombinator.com/item?id=46404838</a></p>
<p>Points: 3</p>
<p># Comments: 0</p>
]]></description><pubDate>Sat, 27 Dec 2025 20:13:53 +0000</pubDate><link>https://www.latacora.com/blog/2019/07/16/the-pgp-problem/</link><dc:creator>IAmLiterallyAB</dc:creator><comments>https://news.ycombinator.com/item?id=46404838</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46404838</guid></item><item><title><![CDATA[New comment by IAmLiterallyAB in "Writing a blatant Telegram clone using Qt, QML and Rust. And C++"]]></title><description><![CDATA[
<p>Another hackernews hater checking the http referrer I'd guess</p>
]]></description><pubDate>Wed, 17 Dec 2025 02:53:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=46297713</link><dc:creator>IAmLiterallyAB</dc:creator><comments>https://news.ycombinator.com/item?id=46297713</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46297713</guid></item><item><title><![CDATA[New comment by IAmLiterallyAB in "If you're going to vibe code, why not do it in C?"]]></title><description><![CDATA[
<p>Opus?</p>
]]></description><pubDate>Wed, 10 Dec 2025 02:44:53 +0000</pubDate><link>https://news.ycombinator.com/item?id=46213426</link><dc:creator>IAmLiterallyAB</dc:creator><comments>https://news.ycombinator.com/item?id=46213426</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46213426</guid></item><item><title><![CDATA[New comment by IAmLiterallyAB in "Tiny Core Linux: a 23 MB Linux distro with graphical desktop"]]></title><description><![CDATA[
<p>Switch to an ILP32 ABI and you get a lot of that space back</p>
]]></description><pubDate>Sat, 06 Dec 2025 22:42:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=46177254</link><dc:creator>IAmLiterallyAB</dc:creator><comments>https://news.ycombinator.com/item?id=46177254</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46177254</guid></item><item><title><![CDATA[New comment by IAmLiterallyAB in "DXGI debugging: Microsoft put me on a list"]]></title><description><![CDATA[
<p>I don't know if it was filename exactly, but a similar story:<p>> Jon Ross, who wrote the original version of SimCity for Windows 3.x, told me that he accidentally left a bug in SimCity where he read memory that he had just freed. Yep. It worked fine on Windows 3.x, because the memory never went anywhere. Here’s the amazing part: On beta versions of Windows 95, SimCity wasn’t working in testing. Microsoft tracked down the bug and added specific code to Windows 95 that looks for SimCity. If it finds SimCity running, it runs the memory allocator in a special mode that doesn’t free memory right away. That’s the kind of obsession with backward compatibility that made people willing to upgrade to Windows 95.<p><a href="https://www.joelonsoftware.com/2000/05/24/strategy-letter-ii-chicken-and-egg-problems/" rel="nofollow">https://www.joelonsoftware.com/2000/05/24/strategy-letter-ii...</a></p>
]]></description><pubDate>Sun, 21 Sep 2025 21:15:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=45326714</link><dc:creator>IAmLiterallyAB</dc:creator><comments>https://news.ycombinator.com/item?id=45326714</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45326714</guid></item></channel></rss>