1 comment

[ 3.3 ms ] story [ 11.5 ms ] thread
OP here.

The upgrade god has been kind to me for many a year, so I decided to YOLO a Bir Sur upgrade on one of my machines. Ended up immediately running into this problem.

I use Proxifier[1] to tame a few apps that don't support proxies or respect system proxy settings. Proxifier used to be kext-based; apparently they have to switch to NetworkExtension for Big Sur. They already have a new version out, but turns out whenever this new NE-based Proxifier is running, I can't bind any process to any port; the failure is always errno 41 EPROTOTYPE: Protocol wrong type for socket.

I managed to find the submitted Apple Developer Forums thread for this exact problem. Apparently Apple was aware of this issue as least on Sep 24 (according to post timestamp), yet failed to fix this pretty terrible bug. The proposed workaround — only binding to one port — is obviously pretty useless for a general purpose proxy tool. Not sure what can be done. I'd say they probably should have spent the time on preventing showstopper bugs like this instead of implementing ContentFilterExclusionList for NetworkExtension.

If anyone working at Apple on NetworkExtension happens to be reading this, please, please take a look at this bug, thank you. If anyone else working at Apple can somehow bring this to the relevant team's attention, it would be awesome. Everyone else, spread the word? Appreciated.

[1] https://www.proxifier.com/