• 0 Posts
  • 82 Comments
Joined 1 year ago
cake
Cake day: August 2nd, 2023

help-circle
    • I can’t simultaneously play a third MMO (already got FFXI and FFXIV)
    • X4 custom start allows me to jump to the parts I want to play instantly, no matter if it’s starting wars, flooding the market, dogfighting, etc
    • My X4 save is a gzip file: no need to worry about latency after moving to another country etc (my EVE account is locked to a region halfway across the world)
    • I don’t have to wait for irl people to do something fun in X4
    • The gziped save file is in xml format. If something breaks I can just fix it
    • X4 has a huge modding scene for whatever features you want
    • X4’s modding tools are super easy to learn: it’s all xml and lua. Took me only 2 hours to figure out how to modify the UI from scratch.


  • An alternative definition: a real-time system is a system where the correctness of the computation depends on a deadline. For example, if I have a drone checking “with my current location + velocity will I crash into the wall in 5 seconds?”, the answer will be worthless if the system responds 10 seconds later.

    A real-time kernel is an operating system that makes it easier to build such systems. The main difference is that they offer lower latency than a usual OS for your one critical program. The OS will try to give that program as much priority as it wants (to the detriment of everything else) and immediately handle all signals ASAP (instead of coalescing/combining them to reduce overhead)

    Linux has real-time priority scheduling as an optional feature. Lowering latency does not always result in reduced overhead or higher throughout. This allows system builders to design RT systems (such as audio processing systems, robots, drones, etc) to utilize these features without annoying the hell out of everyone else.



  • Pretty sure expiry is handled by the local crowdsec daemon, so it should automatically revoke rules once a set time is reached.

    At least that’s the case with the iptables and nginx bouncers (4 hour ban for probing). I would assume that it’s the same for the cloudflare one.

    Alternatively, maybe look into running two bouncers (1 local, 1 CF)? The CF one filters out most bot traffic, and if some still get through then you block them locally?


  • I’ve recently moved from fail2ban to crowdsec. It’s nice and modular and seems to fit your use case: set up a http 404/rate-limit filter and a cloudflare bouncer to ban the IP address at the cloudflare level (instead of IPtables). Though I’m not sure if the cloudflare tunnel would complicate things.

    Another good thing about it is it has a crowd sourced IP reputation list. Too many blocks from other users = preemptive ban.


  • StarDreamer@lemmy.blahaj.zonetoLinux@lemmy.ml*Permanently Deleted*
    link
    fedilink
    English
    arrow-up
    8
    arrow-down
    1
    ·
    edit-2
    7 months ago

    According to this post, the person involved exposed a different name at one point.

    https://boehs.org/node/everything-i-know-about-the-xz-backdoor

    Cheong is not a Pingyin name. It uses Romanization instead. Assuming that this isn’t a false trail (unlikely, why would you expose a fake name once instead of using it all the time?) that cuts out China (Mainland) and Singapore which use the Pingyin system. Or somebody has a time machine and grabbed this guy before 1956.

    Likely sources of the name would be a country/Chinese administrative zone that uses Chinese and Romanization. Which gives us Taiwan, Macau, or Hong Kong, all of which are in GMT+8. Note that two of these are technically under PRC control.

    Realistically I feel this is just a rogue attacker instead of a nation state. The probability of China 1. Hiring someone from these specific regions 2. Exposing a non-pinying full name once on purpose is extremely low. Why bother with this when you have plenty of graduates from Tsinghua in Beijing? Especially after so many people desperate for jobs after COVID.







  • StarDreamer@lemmy.blahaj.zonetoLinux@lemmy.mlHelp w/ crash
    link
    fedilink
    English
    arrow-up
    3
    ·
    edit-2
    10 months ago

    Look at the line with the asm_exc_invalid_op. That seems like a hardware fault caused by an invalid asm instruction to me. Either something wrong is being interpreted as an opcode (unlikely) or maybe the driver was compiled with extensions not available on the current machine.

    OP, how old is your CPU? And how old is the nic you are using?

    Edit: did you use a custom driver for the NIC? I’m looking at the Linux src and rt_mutex_schedule does not exist. Nevermind. Was checking 4.18 instead of 6.7. found it now. The bug is most likely inside a macro called preempt_disable(). Unfortunately most of the functions are pretty heavily inlined and architecture dependent so you won’t get much out of it. But it is likely any changes you made in terms of premption might also be causing the bug.



  • StarDreamer@lemmy.blahaj.zonetoAsklemmy@lemmy.ml*Permanently Deleted*
    link
    fedilink
    English
    arrow-up
    15
    ·
    edit-2
    10 months ago

    Nothing but effort. Nobody wants to constantly baby a project just because someone else may change their code at a moment’s notice. Why would you want to comb through someone else’s html + obfuscated JavaScript to figure out how to grab some dynamically shown data when there was a well documented publicly available API?

    Also NewPipe breaks all the time. APIs are generally stable, and can last years if not decades without changing at all. Meanwhile NewPipe parsing breaks every few weeks to months, requiring programmer intervention. Just check the project issue tracker and you’ll see it’s constantly being fixed to match YouTube changes.


  • StarDreamer@lemmy.blahaj.zonetoAsklemmy@lemmy.ml*Permanently Deleted*
    link
    fedilink
    English
    arrow-up
    22
    ·
    edit-2
    10 months ago

    An API is an official interface to connect to a service, usually designed to make it easier for one application to interact with another. This is usually kept stable and provides only the information needed to serve the request of the application requesting it.

    A scraper is an application that scrapes data from a human readable source (i.e. website) to obtain data from another application. Since website designs can update frequently, these scrapers can break at any time and need to be updated alongside the original application.

    Reddit clients interact with an API to serve requests, but Newpipe scrapes the YouTube webpage itself. So if YouTube changes their UI tomorrow Newpipe could very easily break. No one wants to design their app around a fragile base while building a bunch of stuff on top of it. It’s just way too much work for very little effort.

    It’s like I can enter my house through the door or the chimney. I would always take the door since it’s designed for human entry. I could technically use the chimney if there’s no door. But if someone lights up the fireplace I’d be toast.