emotional_soup_88

joined 2 weeks ago

Good to know that I can mess up other devices than Samsung's too xD

Sweet! This taught me some about those modes. Do they perhaps also reside on their very own eeproms or similar chips so that they are not easily erasable?

[–] emotional_soup_88@programming.dev 7 points 3 days ago (2 children)

Is it? I just assumed it was Samsung, since the download mode was displaying an error saying something like "failed to verify Samsung recovery checksum" as if it was expecting a Samsung image.

[–] emotional_soup_88@programming.dev 4 points 3 days ago (2 children)

Personally, I don't hate this book:

https://tldp.org/LDP/intro-linux/intro-linux.pdf

It's somewhat outdated, for instance, it still assumes that your first process is init while most of us have transitioned to systemd, but I still find to book very educational in terms of... "Linux mentality"? Give it a try! :)

 

~~While I usually don't condone proprietary software or hardware, I have to give a thumbs up to the One UI/Samsung devs.~~

I was "playing around" with my Samsung S23 - which by the way I have debloated to the point of it feeling snappier than all the bleeding edge iPhones - I "accidentally" messed up my recovery partition. Here comes the thumbs up part.

Instead of falling into a bootloop or becoming bricked in any way, some sort of failsafe mechanism kicked in, sending the user (me) to the download mode. So instead of leaving me with a brick containing all my music, contacts, banking stuff and, well, my everyday life, it allowed me to reflash a working recovery partition, albeit not the official one but TWRP since I - in my panicked state - could not find an image of just the Samsung recovery (I would have had to reflash all of Android...).

WELL DONE programming it so that it takes you to download mode! :D

PS: If you're going to experiment, don't do it on your daily driver. Don't be like me.

UPDATE! Got an email from my ISP saying "the fiber owner has resolved your issue, we are closing the ticket." I immediately called my ISP out of curiosity, since they earlier had told me that they need to change my ONT for me to get my full speed. Well, it turns out, the fiber owner (don't know the English word for them) can manage speed per port on the ONT. Sic. So for some reason, they had limited the speed to 100 Mbps.

Yep, that is my conclusion as it stands. For switching between devices, you need MAC addressss. For routing you need IP addresses (and MAC addresses?). For inter process communication, you need port numbers. Although, I do have to read up on where and how the VPN draws the line between what to encrypt and what not to encrypt in a packet.

[–] emotional_soup_88@programming.dev 2 points 1 week ago (1 children)

No judgment at all. I mean, I work for a government agency and - while resisting unlawful or immoral directives maybe somewhat harder for me (?) - I do try to stay humane and at times blatantly go against policies or orders that violate certain human rights.

Then, if I understand it correctly, the data portion of the packet is encrypted but there are unencrypted headers or whatevers necessary for inter device communication? MAC to MAC, IP to IP, port to port, etc., that stay unencrypted even when they go through the VPN interface? Which in turn is how the VPN interface or software or protocol is programmed?

I see. Well, now I understand why I see vendor names of connected hosts in my AP's GUI. The vendor name of my robot vacuum, I will never be able to pronounce... (Something Chinese.)

[–] emotional_soup_88@programming.dev 16 points 1 week ago (1 children)

While I do - genuinely - appreciate the effort and the post, I disagree with its general implications. I may be too much of a sad libertarian, but I believe that education is the way to go, directed at both kids at risk and at the general population who are all potential perpetrators. Control is not the way to go. Thanks again for taking your time!

[–] emotional_soup_88@programming.dev 1 points 1 week ago* (last edited 1 week ago)

https://www.youtube.com/watch?v=3MwJbRq3-rM

Also, there is nothing noobie about Linux Mint. Everything that you can do on, say, Arch Linux, you can do on Linux Mint, with some minor adjustments. That's what's Linux is all about. :D

[–] emotional_soup_88@programming.dev 4 points 1 week ago (3 children)

Amazing! I had no idea that you can grab the vendor off of the first three octets. I shall try to refrain from - for academic purposes, of course - identifying devices and their vendors around me next time I'm at the coffee shop...

[–] emotional_soup_88@programming.dev 2 points 1 week ago (3 children)

Thank you for such a detailed answer! I learned a lot! :D this inspired me to do some research on the capabilities of the new ONT that they are providing soon. Assuming that those probing capabilities that you spoke of are built into the ONT and not some peripheral add-on equipment?

 

Uninitiated noon question below.

A couple of days ago, this haprogram https://programming.dev/post/41491279

Now, during the phonecall with my ISP, the guy asked, "is your router an ASUS?" to which I answered, "yes and no, because it's sold as a router but I have it in AP mode and my actual router is OpenWrt on a Raspberry Pi." To which he replied "noice!"

How did he know the make of my access point? A few of my own thoughts are:

  1. he was referring to historical data (I've been a loyal customer of theirs for a looong time...) from a time when I was using the same topology (setup?) but without a VPN on the router, so the hostname of the AP (stored in /etc/hostname on the ASUS OS/firmware ?) was simply displayed on whatever software an ISP uses for troubleshooting through... an ARP? But aren't ARPs limited to a LAN/they cannot resolve beyond a hop? Or perhaps a variant of DNS? How indeed do hostnames transmit? Are they in the IP header by default?
  2. as in 1 above, but he actively used nmap or some other recog program
  3. as in 1 above but from a time when I was in fact using the ASUS machine as a router
  4. my VPN is "leaking" - not likely, because all my traffic either goes through the wireguard interface on OpenWrt/RPi, or it doesn't go anywhere...

If 1, 2 or 3: why do they keep historical data on me? Is it praxis?

23
submitted 1 week ago* (last edited 1 week ago) by emotional_soup_88@programming.dev to c/gaming@lemmy.ml
 

I mostly play open world games such as the Horizon series, The Elder Scrolls series, God of War, Assassin's Creed, etc. You get the picture.

I have used consumer grade PAs (colloquially "speakers"), studio monitors, in-ear headphones and now, finally, I am trying out over-ear headphones.

I don't remember what PAs I used to use, but my studio monitors were the German Adam A5X. Gaming with these, I could feel the ambience, soundtrack or whatever sound resonating in my chest. Boss battles were intimidating on a new level. The A5Xs are now "retired", working part-time for my pseudo home theater (just an old T480 - connected to a TV - being used as a media player to play back Linux ISOs that reside on my server). The in-ear headphones were the, again, German Sennheiser IE-900. The sound was out of this world. At least the balance. The immersion level of any game just skyrocketed. But the immersion was somehow limited or confined to my ears or to their immediate surroundings. Now, finally, I am gaming with the, yet again, German over-ear headphones DT 700 PRO X of beyerdynamics. The sound quality of the Adam A5X and the immersion of the Sennheiser IE-900 are all there, but instead of being limited to my ears, it's like the sound is perforating all the cavities in my head. I can taste the sound. The band or orchestra seems to be right there, behind me. I don't think I will be going back to anything else. Hot damn.

 

EDIT: Got an email from my ISP saying "the fiber owner has resolved your issue, we are closing the ticket." I immediately called my ISP out of curiosity, since they earlier had told me that they need to change my ONT for me to get my full speed. Well, it turns out, the fiber owner (don't know the English word for them) can manage speed per port on the ONT. Sic. So for some reason, they had limited the speed to 100 Mbps.

I purchased a 1 Gbps down/up connection and noticed that I was consistently getting 95 Mbit/s down/up, regardless of hardware configuration (router, no router, switch, no switch, connecting directly to the ONT, cat 6/6a cables, etc) and regardless of software configuration (VPN on/off, firewall on/off, OS Linux/Android, driver updates, etc).

When nothing seemed to help on my end, I finally called my ISP. They could confirm that my ONT is a decade old and that they can see that each port only allows for 100 Mbit/s down/up.

I went through these steps before finally testing a direct connection to the ONT which finally made me call the ISP.

The ISP is going to replace the ONT for free.

 

If I am already using a rooted but proprietary smartphone (Samsung Galaxy S23), downloading my apps from other sources than Google Play, how would Google be able to control what I do with it? If necessary, I could just stay on my current OS build as well. All in all, while politically and philosophically, Google's new policy is bad, I don't feel threatened by it with my current understand of the situation and technology...

 

Please excuse - and do not hesitate to point out - any violation against etiquette that I might be committing here... I am new here.

I started to learn C a few months ago as a hobby as part of a bigger project, namely to learn about computers in general. I have had so much fun reading Code - The Hidden Language of Computer Hardware and Software by Charles Petzold. But that's another story...

I was about to buy a few new SSDs and needed to do some budgeting. Instead of using my phone's calculator, I decided to try to write a calculating program in C, because I hadn't touched programming for some weeks or months because life and I wanted to see if my knowledge had matured some.

The goal was to have it do the four standard arithmetics and also save the last result in a variable, which I just called "memory" for lack of bette phrasing on my part. Maybe next week I'll figure out how to make it possible to use the value saved in memory instead of having to type a number.

I welcome any constructive criticism on how and why this code is up to code or not(sorry...), if it can be improved and how or even if it's just garbage and why that is. I am just proud that it worked without gcc throwing any errors.

#include <stdio.h>

int main(void) {

        int num1 = 0;
        int num2 = 0;
        int choice = 0;
        int memory = 0;

        printf("Welcome to the Calculator of the century!\n\n");

        while (1) {
                printf("What would you like to do?\n\n");
                printf("(1) Add two numbers\n(2) Subtract two numbers\n(3) Multiply two numbers\n(4) Divide two numbers\n(5) Show memory\n(6) Exit\n\n");
                printf("Enter 1, 2, 3, 4, 5 or 6: ");
                scanf("%d", &choice);

                if (choice >= 6 || choice < 1) break;

                if (choice == 5) {
                        printf("\n%d in memory.\n\n", memory);
                } else if (choice < 5 || choice > 0) {
                        printf("\nEnter the first number: ");
                        scanf("%d", &num1);
                        printf("Enter the second number: ");
                        scanf("%d", &num2);
                }

                if (choice == 1) {
                        printf("\nThe sum of %d and %d is %d\n\n", num1, num2, num1 + num2);
                        memory = num1 + num2;
                } else if (choice == 2) {
                        printf("\nThe difference of %d and %d is %d\n\n", num1, num2, num1 - num2);
                        memory = num1 - num2;
                } else if (choice == 3) {
                        printf("\nThe product of %d and %d is %d\n\n", num1, num2, num1 * num2);
                        memory = num1 * num2;
                } else if (choice == 4) {
                        printf("\nThe quotient of %d and %d is %d\n\n", num1, num2, num1 / num2);
                        memory = num1 / num2;
                }
        }

        printf("\nWe hope to see you soon again!\n");
        return 0;
}
view more: next ›