There have been multiple accounts created with the sole purpose of posting advertisement posts or replies containing unsolicited advertising.

Accounts which solely post advertisements, or persistently post them may be terminated.

programmer_humor

This magazine is from a federated server and may be incomplete. Browse more on the original instance.

NigelFrobisher , in Merge then review

It’s insane to me that gitflow won over TBD and Continuous Integration to the point that this is now considered an extreme position. Not all projects are open source with many remote collaborators.

shootwhatsmyname , in GoOn
@shootwhatsmyname@lemm.ee avatar

one of them has a 7 I’m pretty sure

comrade_pibb ,
@comrade_pibb@hexbear.net avatar

wow don’t doxx me plz

cyborganism , in Yes

All you need are Bash scripts with chroot and cgroups and some ssh access.

TWeaK , in Implemented as requested

HIS HOUSE HAS THE APPARATUS!!

einfach_orangensaft , in Yes

i feel this

GammaGames , in GoOn

0.0.0.0/0

FauxPseudo , in GoOn
@FauxPseudo@lemmy.world avatar

Ok. This covers every ipv6 and ipv4 address.

“^\s*((([0-9A-Fa-f]{1,4}:){7}([0-9A-Fa-f]{1,4}|:))|(([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}|((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])(.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])){3})|:))|(([0-9A-Fa-f]{1,4}:){5}(((:[0-9A-Fa-f]{1,4}){1,2})|:((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])(.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])){3})|:))|(([0-9A-Fa-f]{1,4}:){4}(((:[0-9A-Fa-f]{1,4}){1,3})|((:[0-9A-Fa-f]{1,4})?:((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])(.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])){3}))|:))|(([0-9A-Fa-f]{1,4}:){3}(((:[0-9A-Fa-f]{1,4}){1,4})|((:[0-9A-Fa-f]{1,4}){0,2}:((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])(.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])){3}))|:))|(([0-9A-Fa-f]{1,4}:){2}(((:[0-9A-Fa-f]{1,4}){1,5})|((:[0-9A-Fa-f]{1,4}){0,3}:((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])(.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])){3}))|:))|(([0-9A-Fa-f]{1,4}:){1}(((:[0-9A-Fa-f]{1,4}){1,6})|((:[0-9A-Fa-f]{1,4}){0,4}:((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])(.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])){3}))|:))|(:(((:[0-9A-Fa-f]{1,4}){1,7})|((:[0-9A-Fa-f]{1,4}){0,5}:((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])(.(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9]?[0-9])){3}))|:)))(%.+)?\s*$”

MsPenguinette ,

IPv6 was a mistake. We should have just added an addition octet

FauxPseudo ,
@FauxPseudo@lemmy.world avatar

Plus the MAC address

Centillionaire ,

That would allow for like, 2 trillion devices? Feels like a bandaid, my dude. Next you’re gonna suggest a giant ice cube in the ocean once a year to stop global warming.

shasta ,

And nuke the hurricanes

intensely_human ,

Hurricanes cannot cross the equator. The equator is an imaginary line, and hence has zero mass. We can end every hurricane using zero point zero energy (0.0).

stringere ,

o.O

stoy ,

So add two more octets:

Moat companies will still just use something like 10.0.13.37.0.1

0xD ,

IPv6 is not made with internal networks in mind lol

stoy ,

Never claimed it was, please quote me where I said as much

dohpaz42 ,
@dohpaz42@lemmy.world avatar

My dude, you used the 10.xx private IP as an example. Why wouldn’t they assume you were referring to internal networks?

stoy ,

I thought it was pretty clear with me adding 13.37 that I was making a joke, the earlier post spoke about how just adding one octet would still be too few addresses, so I joked about adding one more octet.

dohpaz42 ,
@dohpaz42@lemmy.world avatar

I’m only pointing out why the other poster would make the assumption you were referring to an internal network. Do with it what you will.

dan ,
@dan@upvote.au avatar

You can use a ULA if you want to. That’s essentially the IPv6 equivalent of a private IP.

Why though? Having the same IP for both internal and external solves a bunch of issues. For example, you don’t need to use split horizon DNS any more (which is where a host name has a different IP on your internal network vs on the internet). You just need to ensure your firewalls are set up properly, which you should do anyways.

alienzx ,

You could follow this logic and add 2 alphanumeric digits before 4 numeric octets. E.g. xf.192.168.1.1

This would at least keep it looking like an IP and not a Mac address. Another advantage would be graceful ipv4 handling with a reserved range starting with “ip” like ip.10.10.10.1

jemikwa ,

ONCE AND FOR ALL

stringere ,

AND MY AXE!

snor10 ,

They played us for absolute fools!

Nalivai ,

Oh yeah, great, let’s change the fundamental protocol on which all the networks in the world are based. Now two third of the devices in the world crashed because you tried to ping 192.168.0.0.1

tilcica ,

that WOULD be quite funny for the first second or 2…

bjoern_tantau ,
@bjoern_tantau@swg-empire.de avatar

Could have sped up adoption significantly.

lnee ,

IPv

heared of ipv5?

YIj54yALOJxEsY20eU ,

Lord have mercy

shootwhatsmyname ,
@shootwhatsmyname@lemm.ee avatar

exits the room

takeda ,

You’re more of a perl programmer than network engineer :P

hemko ,

.*

0x0 ,

Technically, this one also matches everything:

dannym ,

Please don’t. Use regex to find something that looks like an IP then build a real parser. This is madness, its’s extremely hard to read and a mistake is almost impossible to spot. Not to mention that it’s slow.

Just parse [0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3} using regex (for v4) and then have some code check that all the octets are valid (and store the IP as a u32).

Emma_Gold_Man ,

And dupe check. 0.0.0.0 and 000.000.000.000 may both be valid, but they resolve the same

azertyfun ,

Fuck that, if for whatever reason I’m writing an IP validator by hand I’m disallowing leading zeros. Parsers are very inconsistent, some will parse 010 as 10, others as 0o10 == 8 (you can try that right now with a POSIX ping). Talk about a footgun.

stringere ,

some will parse 010 as 10, others as 0o10 == 8

…and that’s me in the fetal position, thanks.

dannym ,

Definitely, tho if you store it as a u32 that is fixed magically. Because 1.2.3.4 and 1.02.003.04 both map to the same number.

What I mean by storing it as a u32 is to convert it to a number, similar to how the IP gets sent over the wire, so for v4:

octet[3] | octet[2] << 8 | octet[1] << 16 | octet[0] << 24

or in more human terms:


<span style="color:#323232;">(fourth octet) + (third octet * 256) + (second octet * 256^2) + (first octet * 256^3)
</span>
Emma_Gold_Man ,

True enough for database or dictionary storage, but a lot of times things get implemented in arrays where you still wind up with two copies of the same uint32.

p1mrx ,

Because 1.2.3.4 and 1.02.003.04 both map to the same number.

But 10.20.30.40 and 010.020.030.040 map to different numbers. It’s often best to reject IPv4 addresses with leading zeroes to avoid the decimal vs. octal ambiguity.

dannym ,

I don’t know why anyone would write their IPs in octal, but fair point

p1mrx ,

It’s not about how people write them, it’s how parsers parse them. IPv4 has been around since 1982, and most parsers interpret leading zeros as octal.

BeigeAgenda ,
@BeigeAgenda@lemmy.ca avatar

It’s always a treat to debug a regex of that size.

rob64 ,
Patches , (edited )

Made that joke in an interview once.

They didn’t think it was funny. They truly thought Regex was the solution to, but never the cause of, all problems.

They wanted to make a Regex to verify every single address in the world. Dodged a bullet

rob64 ,

Holy hell yeah you did. How would you go about doing that in a single expression? A bunch of back references to figure out the country? What if that’s not included? Oy.

Patches ,

You wouldn’t. It’s not possible. Which is what I told them.

And why would you want to? Legally if you change the given address, and it fails to get delivered - that is on you. Not them.

Some countries have addresses that are literally ‘Last house on the left by the Big Tree. Bumban(Neighborhood). NN (Country)’. Any US Centric validation would fail this but I assure you - mail gets delivered just fine.

azertyfun ,

The only valid regex is (.+). Maybe add a separate country field (especially because some Americans wholeheartedly believe that the entire world should understand that “foobar, TX” means “foobar, Texas, United States”) (don’t get me started on states whose abbreviations are also ISO country codes).

Unfortunately I guess business people only care about getting fewer support calls for missing shipping details, not correctness or a couple of calls from customers who live in the boonies. Then the proper answer is a form with a bunch of fields… which Americans will inevitably fuck up by making the “State” field mandatory despite most countries not having an equivalent.

What I’d really do is use one of those services that automatically fill on the address using google maps or whatever. Not perfect, probably not free, but a whole lot less work for presumably way fewer PEBCAKs from customers.

Natanael ,

If you’re using one of those services then PLEASE allow manual entry / override because I’ve had forms like that which I were blocked from filing in because it didn’t acknowledge that my address existed.

peter ,
@peter@feddit.uk avatar

/.+(road|street).+/ resigns

SchizoDenji ,

I knew there would be someone with the regex.

FauxPseudo , in Yes
@FauxPseudo@lemmy.world avatar

I’m currently trying to relearn all my advanced bash in python.

aes ,

i already learned how to use my operating system, now you’re telling me I have to learn 30 new libraries that do the exact same shit?

bort ,

no, you’ll also have to learns each libraries special quirks on your OS

tdawg ,

Just for fun or do you have a specific thing you feel would be better in python?

FauxPseudo ,
@FauxPseudo@lemmy.world avatar

Certain things I want to do will be easier in python and will be more portable. But bash is my home.

tdawg ,

Fair enough. The line for me has always been whether or not I expect to use it for more than just glue or a one off run

wolo , (edited ) in Yes

my website’s backend is made with bash, it calls make for every request and it probably has hundreds of remote arbitrary code execution bugs that will get me pwned someday, it’s great

edit: to clarify, it uses a rust program i made to expose the bash scripts as http endpoints, i’m not crazy enough to implement http in bash

it behaves like a static file server, but if a file has the others-execute permission bit set it executes the file instead of reading it

it’s surprisingly nice for prototyping since you can just write a cli program and it’s automatically available over http too

PupBiru ,
@PupBiru@kbin.social avatar

who hurt you?

agent_flounder ,
@agent_flounder@lemmy.world avatar

These wounds appear to be self-inflicted.

wolo ,

i thought it was neat how php lets you write your website’s logic with the same directory tree pattern that clients consume it from, but i didn’t want to learn php so i made my own, worse version

technojamin ,

That’s a pretty reasonable reaction to the proposition of learning PHP.

camr_on ,
@camr_on@lemmy.world avatar

For my own sanity, I choose to believe you’re lying

Fashim ,

I pity the hacker who ends up in your system

agilob ,
@agilob@programming.dev avatar

You live like this?

wolo ,

I’ve taken some precautions, it’s running in a container as an unprivileged user and the only writable mount is the directory where make writes rendered pages, but i probably should move it into a vm if i want to be completely safe lol

sdw ,

Wait, you’re serious?

wolo ,

Maybe I’ll finally move it into a VM so I can send a link to it here without tempting people :P

tetris11 ,
@tetris11@lemmy.ml avatar

Set -e, please for the love of god, set -e

Belzebubulubu ,
@Belzebubulubu@mujico.org avatar

lord forgive me for I have sinned.

bdonvr ,

I designed a chip architecture that runs bash code on silicon.

I reimplemented x86 assembly in purely bash script.

SpaceNoodle ,

Seek help.

gandalf_der_12te ,

you do realize that you can just use Apache instead of writing your own rust program for this, as this is more or less the CGI standard?

wolo ,

I know about the CGI standard, but mine does things a little differently (executable files don’t just render pages but also handle logging, access control, etc. when put in special positions within a directory), so I still think it was worth the afternoon i spent making it.

gandalf_der_12te ,

Yeah, especially if you did this for practice.

Just saying, that apache, for big projects, is more battle-hardened. ;-)

wolo ,

Oh yeah definitely, Apache is way better for anything remotely serious.

Static_Rocket , in GoOn
@Static_Rocket@lemmy.world avatar

0.0.0.0/0 0::0/0

You didn’t specify it couldn’t be in CIDR block notation…

Redjard ,

::/0

Mr_Dr_Oink ,

Remember, when we abbreviate an ipv6 address all leading zeros are reduced to a single 0.

E.g

0003 would just become 03

When there are geoups of 4 zeros these can be represented as a single 0 or as a double colon ::

But we can only use the :: once so when summarizing an address containing multiple groups of 4 0s one after the other they can all be abbreviated to a single ::

Eg

fe80:0000:0000:0000:0210:5aff:feaa:20a2 would become fe80::210:5aff:feaa:20a2

Therefore it is perfectly valid to abbreviate an address of 0000:0000:0000:0000:0000:0000:0000:0000 /0 to just ::/0

Static_Rocket ,
@Static_Rocket@lemmy.world avatar

Eh, I’ve seen some software internally prefer 0::0 instead of just ::0 or :: . Notation wise though you are correct, it is unnecessary.

footfaults , in GoOn
@footfaults@hexbear.net avatar

0.0.0.0/0

::

Orbituary , in GoOn
@Orbituary@lemmy.world avatar

deleted_by_author

  • Loading...
  • takeda ,

    That’s 1/256th of IPv4

    0/0 and ::/0

    Orbituary ,
    @Orbituary@lemmy.world avatar

    Funny. I put 0/0 first then reconsidered, but I don’t know why.

    fireflash38 , in Yes

    What if, get this, we put the bash scripts in yaml. And then put it in kubernetes.

    PupBiru ,
    @PupBiru@kbin.social avatar

    well now you’re just describing ansible

    Vash63 ,

    Very, very bad Ansible.

    nxdefiant ,

    Have you considered embedding python in those bash scripts? I have done this, and it is glorious.

    tetris11 ,
    @tetris11@lemmy.ml avatar

    I wrote my webserver in pure bash.

    bash -c “python -m http.server 8080”

    MeanEYE ,
    @MeanEYE@lemmy.world avatar

    Did you know you can zip entire Python project into single file and make it executable? Quite a neat feature. Shove all dependencies, modules and assets in there and voila. Single file python application.

    tetris11 ,
    @tetris11@lemmy.ml avatar

    PIGZ is an incredible standard

    Maoo , in Yes
    @Maoo@hexbear.net avatar

    You’re not at scale unless you’re deploying OpenStack to run a WordPress site.

    msage ,

    Which is hilarious since PHP scales incredibly well on its own.

    Maoo ,
    @Maoo@hexbear.net avatar

    Regrettably, it does do that

    moonpiedumplings ,

    No I swear, I was gonna do more than that.

    Maybe like, a static site as well. And a backup server. Y’know, things you need openstack for.

    *looks away guiltily*

    moonpiedumplings.github.io/…/build-server-2/

    henfredemars , in The app doth protest too much, methinks

    Upon the web, a cipher dance delayed, An SSL error in its code displayed. In cryptic realms, where data ought to flow, A falter in the handshake, whispers woe.

    – ChatGPT

    From one program to another I suppose.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • [email protected]
  • random
  • lifeLocal
  • goranko
  • All magazines