Software ported to OpenBSD often needs patches because it's OpenBSD and does not care much about POSIX compatibility 🙄
You mean it does not care about GNU compatibility?
Would you like me to explain to you the difference between GNU and POSIX ?
Don't respond to Laurent, it's useless.He doesn't get it.
Indeed, I don't get it. I don't get why it's harder to make skalibs build on OpenBSD than on any other system except MacOS. And I don't get why you jump on every chance you get to be an asshole to me, either.
not really, just not wanting to waste any time on this.
You do things very differently from about everything else.
Reminds me of djb, not surprisingly.
Waste of time.
Not going to learn swahili any time soon either.
And again, you're stuck on an image of me that's more than 20 years old.How my software works has NOTHING to do with how painful OpenBSD is for developers. Wanting to use EPROTO, pselect, fd-passing, or arc4random_addrandom() does not make me a special snowflake, sorry.
fd passing works (see libutil)
Maybe you want a version that's guaranteed to be non portable ?
Yes it works, but it wasn't easy to make work properly and reliably in all cases. But FreeBSD was a lot worse in this regard than OpenBSD (forget about ever fd-passing over a SOCK_DGRAM on FreeBSD, it just doesn't work).
why pselect (with the mask size issue) and not some variation on poll ?
I use ppoll() wherever available. I prefer pselect() to poll() because of the nanosecond precision: microsecond would be fine, but millisecond is too coarse.
You do know OpenBSD has had pselect since 2013, don't you ?
... and EPROTO was added last september, specifically to conform to POSIX.
I saw that, and I'm glad. You guys are definitely making progress, maybe OpenBSD isn't the hardest OS to port to anymore - I'll have to test 6.3. Welcome to the 21st century 😆
Yes. And it was broken until 2016 (it returned -1 EINVAL on very long timeouts).
the advantage of the relatively short release cycle is that you don't really need to worry about users on 2-year old OpenBSD versions (nor, usually, about OpenBSD package users being stuck on years-old versions of your software that you're trying to move people away from)
Does it mean it's okay if I don't try to keep stuff building on older versions? If I only need to support the latest OpenBSD release, this will make my life MUCH easier indeed, and most of my "OpenBSD is hard to port to" comments obsolete.
EOL is two releases, so one year.
People running 6.1 should really update NOW.
fd-passing is used *extensively* on OpenBSD...the vast majority of daemons in base use it for privsep
I was interested what tech you were using that wouldn't build "easily" but http://skarnet.org appears to be down.
It was down indeed, for reasons out of my control. It's now back up, and if you were really interested, you would have looked at the github mirror. The tech that "doesn't build easily" is a simple C library that tries to be portable on multiple systems. Feel free to take a look.