John-Mark Gurney
FreeBSD developer, consultant.
Documentation!
crypto means cryptography.
tech is inherently political.
Do your part, encrypt the Net!
if something is bullshit, spell it (bullshit) out, don't sugar coat it.
Add alt text to images.
All alt text posts are CC BY-NC-SA 4.0: https://creativecommons.org/licenses/by-nc-sa/4.0/
For commercial use, license available upon request, $75/post (i.e. if the alt text takes 3 posts, it'll cost $225 to license), just send me a message w/ where I can send the invoice.
As usual, a woman doing all the work that men should be doing.
(Note she's only worth $30b, just to put into perspective how little the men are doing, especially the ones who pledged to give half their fortunes away.)
https://flipboard.com/users/Independent/statuses/bn7IdHoaT2264Lqf9w5Niw:a:1855170754
Just someone using many to put words in other people's mouths that they don't say.
many in the BSD crowd, “freedom” means the freedom to make the software proprietary,
Just trying to say BSD people want all software to be proprietary which is definitely not the case for me.
I want people to be able to freely using software so they don't have to rewrite it and create new bugs making software shittier than it already is.
https://fossforce.com/2026/07/freebsd-16-cleans-house-no-gpl-left-in-the-base-system/
Just learned why I won't be using passkeys. Because it requires icloude keychain, and I definitely don't want apple having a copy of my passkeys.
Yes, I know they're supposedly e2ee and everything, but also, allowing the passkey to transit devices actually means that it isn't really 2FA anymore, especially if you keep any password in the same keychain.
It's pretty embarrassing how the security industry has managed to rebadge a not 2FA into 2FA.
I've probably told this story before, but one of my favorite debugging stories is the time we conducted a seance on a core file.
At the time we were using the boehm garbage collector, but had processes not freeing memory. We had core files, but at the time, to get stats, you had to run code in a live process.
I had recently done work parsing sections of elf binaries, so I wrote a script (with the help of some coworkers) that would take a minimal program, run gdb on it, and then script gdb to open the core file, load cored process into memory at the correct locations. I forget how we handled the stack, but likely just loaded the registers from the core file as well.
With the core file restored, we could now tell gdb to print the stats.
My coworker used it to find that boehm was erroneously including the text segment as valid pointers, and with the process at 2gb (which was pretty large in 2004/2005 time frame), strings became valid pointers, preventing the freeing of memory. Changing to not include it fixed our out of memory issues.
The idea that dnssec adds another failure mode neglects to mention that it also prevents other failure modes, like DNS cache poisoning or DNS spoofing/server take over.
Or bgp hijacking and doing selective/targeted redirection.
At a previous work, I implemented a SAML login flow and once I found out how easy the back end is, it really made me wish that more websites would allow you to enter your own SAML provider instead of locking you into the big ones.
If you could, I'd likely run my own, but it also would mean that your password manager company could instead be your SSO provider because that's really what a password manager is. They use a normal local auth/master password unlock and approve it.
But I can say that none of the big corps want that because it'll add competition. They'd rather have a limited set of big corps that they can colude with to keep competition limited than service their users.
> https://flyovercountry.social/users/encthenet/statuses/117010461171912976
Ok, FreeBSD 14.4-R is now available via torrent/magnet links.
Magnet links and more information at: https://wiki.freebsd.org/Torrents
As always, it takes a while for the DHT to discover the torrents, and my client is verifying the last of the images.
Happy torrenting!
Just looked through the security assessment on the rust rewrite of core utils, and this is why just rewriting everything in the last language is such a dangerous things. They literally threw out 20+ years of security fixes because they thought it was cool and would increase security.
At least a security assessment was done, but some of those failures are pretty bad, and very likely to have had serious security implications if they were deployed into any real world system. Setting mode bits incorrectly, TOCTOU, arbitrary file overwrites are just terrible.
Would I have likely introduced some of the bugs if I had done the work? Yes. Would I have done the work? No, I'm not that crazy.
I do wonder if they did white box or black box when they copied functionality. I'm suspecting black box because of some of the errors.
A good reason to include urls as text even in html emails is that it makes it easier to see if it's a legit link or not, and also to make it easier to see when the corporate url protection rewrites the url to some nonsense that is hard to tell. But also including the full text of the url will force you to use urls that are of sane length and not some 1k+ long url.
A couple go to Python debugging aids of mine, first is breaking into the debugger.
import pdb; pdb.set_trace()
The second is:
```
def printtb(fun):
import functools
@functools.wraps(fun)
def wrapper(*a, **kwa):
try:
return fun(*a, *kwa)
except:
import traceback; traceback.print_exc()
raise
return wrapper
```
Then any functions that is throwing an exception that I can't easily wrap elsewhere (or have no clue where it's being called from), I just throw this wrapper around it and I get the traceback I need.
Please, if you're training people on new modern tech that's supposed to be so impressive, make sure you are up to date in "old" modern tech.
The creditability of the new tech is weakened when you don't compare it to modern existing tech. It shows that either you're out of date, or the tech wasn't actually designed understand current state of the art.
Was watching training in Ultra Ethernet, and the training was talking about head of line blocking with tcp (solved to a certain degree with IETF QUIC, which wasn't mentioned) and also about tcp throwing out data when packets arrive out of order, completely ignoring SACK.
(I thought that SACK was newer than it was. Didn't realize SACK is 30 years old this year.)
Has anyone made a self contained Time Machine backup server (that runs on FreeBSD)? It looks like the old ways of backing up over the network finally broke, and I can't fool MacOS anymore by using a sparse disk image like I have for years.
I don't want to have to configure and install samba, I just want something that works and is small and self contained.
Ms: we need more people to use OneDrive.
Ms: I know, why don't we prevent people from downloading their email attachments directly from the web client and instead force them to save to one drive?
So very confused by git documentation. git(1) under Reset, restore and revert says that git-reset changes the commit history.
But everywhere I've read, including git-reset(1) implies that git reset doesn't modify commit history and is the correct way to unstage files.
Can we please be consistent with documentation on what things do? I have a feeling that it should be the git reset MAY modify commit history, but yet, the docs are confusing.
Yes, it's 2026 and device manufacturers are still hard coding root passwords.
> https://tantosec.com/blog/2026/04/route-to-root-in-4g-industrial-router/
Does anyone have experience with replacing the SLA battery in a UPS with one of the LFP batteries out there? Did it work?
Or a dual replacement for a series 24V UPS?



