• 117 Posts
  • 862 Comments
Joined 9 months ago
cake
Cake day: February 10th, 2024

help-circle

  • This tool looked interesting to me until I noticed that its external dependency count is in the hundreds, each of which increases exposure to vulnerabilities and supply chain attacks.

    I hope that Rust will some day have a rich enough standard library that the “trust everything” software development model falls out of favour amongst the developers who use it.






  • It’s re-posted from a news community, where it was since removed for not being from an acceptable news site. Unfortunately, the acceptable news sites covered this more than 30 days ago, which disqualifies their articles regardless of whether they were ever posted to the community. shrug

    I couldn’t find a better article in the time I had to spare, so I re-posted this one. I think what’s important in this case is just that word gets out. I don’t see anything misleading about this one, and the EFF link (which is also not exactly a news site) is plainly visible.



  • Some of the APIs in use on Linux today come from older Unix variants. (For this reason, I probably wouldn’t call one of these a “Linux API” as the author did, though I guess it works linguistically for those that are usually present on Linux.) These APIs have semantics that were designed before threading existed on many platforms. Making them thread-safe without breaking existing code can be challenging.

    If setenv(3) is among these, it could explain why glibc’s implementation doesn’t support multi-threaded programs, and why its documentation states as much. To have used it in a multi-threaded environment, ignoring the docs, was a bug in the Steam client. Perhaps it never occurred to the people who ported Steam’s code to glibc that threading issues might be different from what they were used to on other platforms.

    To be fair, the author might be aware of this, as he did refer to glibc’s implementation as a tradeoff rather than a bug.



  • Matrix messaging apps. It’s nice to have modern messaging features, end-to-end encrypted, with no single point of failure, no Google involvement, and no phone numbers. I expect to start recommending it widely when the 2.0 features land in the popular clients.

    WireGuard VPN. It’s fast, even on low-power devices.

    Self-hosted Mumble. Excellent low-latency voice quality for chatting or gaming with friends.

    Radicale, DAVx⁵, and Thunderbird, for calendar and contact sync between mobile and desktop, without handing the data over to Google or anyone else.




  • I don’t know of a universal tool for adding keyboard navigation to all the different GUI toolkits used on Linux. I wouldn’t expect one to exist, since each toolkit implements its widgets differently, just as the Windows and MacOS GUIs implement theirs differently.

    However, apps made with Qt tend to be good at keyboard navigation already, which is no surprise, since support for it is built in to the toolkit. The KDE Plasma desktop environment inherits this support, as do most of the apps made for it. I suggest trying it if you haven’t already. (Hint: Many widgets will reveal their keyboard shortcuts when you hold down Alt, and a Settings: Configure Keyboard Shortcuts menu item is very common in KDE apps.)

    Tangentially related: You might also want to look at tiling window managers. Some people love them.



  • Cloudflare is a provider that you can choose to have as a part of your own infrastructure.

    Indeed.

    man in the middle implies “attack”

    That can be a convenient shorthand if the parties in a discussion agree to use it as such in context. For example, in a taxonomy of cryptographic attacks, it would make sense. It is not the general meaning, though, at least not a universally accepted one. Similarly, “counter” does not imply “counter attack”, unless we happen to be discussing attack strategy.

    More to the point, nothing that I wrote misrepresents the situation as was claimed by that other person. If I had meant attack, I would have said attack. Rather, they made a leap of logic because I (like most of my colleagues) don’t happen to follow a convention that they like, and picked a fight over it. No thanks.



  • It bugs me when people say Cloudflare is a MitM, because that is a disingenuous representation the situation.

    No, it is a clear description of what is happening: Instead of https keeping the traffic encrypted from user to service, it runs only from user to Cloudflare (and then in some cases from Cloudflare to service, although that’s irrelevant here). The result is that a third party (Cloudflare) is able to read and/or modify the traffic between the two endpoints. This is exactly what we in mean in cryptography discussions by man-in-the-middle.

    You can decide that you don’t mind it because it’s not a secret, or because they haven’t been caught abusing it yet, but to say it’s not a man-in-the-middle is utter nonsense.

    and you opt into it.

    No, the service operator opts in to it, without consulting the user, and usually without informing them. The user has no choice in the matter, and typically no knowledge of it when they send and receive potentially sensitive information. They only way they find out that Cloudflare is involved is if Cloudflare happens to generate an error page, or if they are technically inclined enough to manually resolve the domain name of the service and look up the owner of the net block. The vast majority of users don’t even know how to do this, of course, and so are completely unaware.

    All the while, the user’s browser shows “https” and a lock icon, assuring the user that their communication is protected.

    And even if they were aware, most users would still have no idea what Cloudflare’s position as a middleman means with respect to their privacy, especially with how many widely used services operate with it.

    To be clear, this lack of disclosure is not what makes it a man in the middle. It is an additional problem.

    it cannot be a MitM because both sides of the connection are aware of this layer.

    This is false. Being aware of a man in the middle and/or willingly accepting it does not mean it ceases to exist. It just means it’s not a man-in-the-middle attack.






  • music group IFPI complained that while Cloudflare discloses the hosting locations of pirate sites in response to abuse reports, it doesn’t voluntarily share the identity of these pirate customers with rightsholders.

    “Where IFPI needs to obtain the customer’s contact information, Cloudflare will only disclose these details following a subpoena or court order – i.e. these disclosures are mandated by law and are not an example of the service’s goodwill or a policy or measures intended to assist IP rights holders,” IFPI wrote.

    So the corporations enjoying enormous profits from other people’s work are unhappy that Cloudflare doesn’t make it easy for them to circumvent due process. What a surprise.

    (I’m generally not a fan of Cloudflare, because its man-in-the-middle position between users and services has grown to an unhealthy scale, making it ripe for dragnet surveillance and other abuses. But it would be even worse if it was actively helping these greedy, predatory corporations dodge the law.)







  • I built a new machine pretty recently, also with an RX 7800XT GPU (factory overclocked). When sitting idle at the desktop, the system draws about the same amount of power as my old machine did with an RX 480. So I think trying to put the big GPU to sleep during desktop use might be barking up the wrong tree.

    I suggest getting a power monitor, like a Kill-A-Watt, and taking measurements while you experiment. Here are some ideas to consider:

    • Are you using multiple monitors? I have read that newer AMD GPUs sometimes draw more power than they should in this case. It might depend on the resolution and/or windowing system in use. (I don’t remember if the reports I read were on Wayland or Xorg.) It almost certainly is a driver issue.
    • Are you using nonstandard timings? Have you tried different refresh rates? https://community.amd.com/t5/graphics-cards/which-monitor-timing-parameter-allows-gpu-vram-frequency-to/td-p/318483
    • Have you been playing games for hours every day, with no frame rate limit? The graphics card can draw considerably more power pushing polygons at 1440p@180Hz than it does at 90Hz, for example, and I don’t think the wattage progression from idle to full load is linear.
    • Are you using recent kernel and firmware versions?