Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
@RobK88 Do you know what version you were running previously that worked? /Library/Receipts/InstallHistory.plist should contain the date of every time the package was installed if that helps.

It looks like this may be an upstream (Squid) regression, and not anything I did.
 
Thanks Jonathan. After I rebooted my Mac today, the proxy is working again in my non-admin account. But a reboot does not always fix the issue. It is hit and miss.

FYI -- If a reboot does not work, I can often get the proxy working again on my Mac running Lion by reinstalling your legacy proxy and rebooting.

I suspect it may be just an issue with My mac or maybe it is an issue with running the proxy on Lion.

It is likely an upstream issue with squid. Thank you for taking a second look.
 
Last edited:
For what it's worth: under Snow Leopard, it seems that it stops working each time an update gets installed. Then, after one or two reboots things seem to "click in "and it works again as it should. It's possible that some fiddling helps, like checking off Secure Web Proxy in the Network panel, pressing "Apply", then enabling it again. Snow Leopard has some funny glitches that appear at bootup, one or the other start-up or login item that doesn't load in time — most frequently the positioning of the Desktop icons. Matter of fact, some days ago, your Legacy Proxy did not load, for the first time as far as I can remember. Nothing worse than having to reboot.
 
Interesting, the problem didn't exist at all in Snow Leopard in my testing. I was able to replicate it on 10.7 – 10.9.

To be clear, I know exactly what's wrong—Squid can't open its own PID lockfile, and so can't tell whether it's already running or not, and dies.

What I don't understand is why the problem is appearing now, or how to fix it. It might make sense to actually modify Squid's code.
 
The only way to fix this would be to inject code into the iMessage app directly to tell it to use the Squid certificate. Unfortunately, attempting something like this is too much work for me, for an OS I don't use myself (I'm on Mavericks).
Which is an enterprise that I'd bless. Imagine being able to facetime in 10.7 and 10.6. Isn't this what makes "swizzling"? I believe it's a kind of hack with Dictionary.app to restore its Wikipedia connection. One guy made Aperture, iPhoto and a bunch of legacy apps run on Catalina and Big Sur by applying a swizzling (code injection with framework relinking) with his Retroactive app.
 
Isn't this what makes "swizzling"? I
Yep! Swizzling is fun, and I use it a lot, but finding the right method to override isn't easy.

---

While I"m here, for whatever it's worth, I'm still bothered by the multi-account issue, but I'm legitimately not sure what to do about it.
 
While I"m here, for whatever it's worth, I'm still bothered by the multi-account issue, but I'm legitimately not sure what to do about it.
That makes no issue with me personally, as I'm the only user. Squid is fully operational.
 
I have updated the proxy to fix the issue with multiple user accounts. If upgrading from an old version, please run the uninstaller and restart your computer before installing the new version.
 
  • Like
Reactions: philgxxd
Thanks Jonathan! Your latest Legacy Mac Proxy appears to work just fine on Lion. I am able to switch users and the proxy still works. I no longer need to reboot the Mac when switching users!! Fantastic!!
 
Last edited:
  • Love
Reactions: Wowfunhappy
Your latest Legacy Mac Proxy also appears to work just fine on Mtn Lion.

After installing your Legacy Mac Proxy, I had to reboot my Mac running Mtn Lion before your Legacy Mac Proxy would work properly.

P.S. For some reason, I did not need to reboot my Mac running Lion before the Legacy Mac Proxy would work properly.
 
Your latest Legacy Mac Proxy also appears to work just fine on Mtn Lion.

After installing your Legacy Mac Proxy, I had to reboot my Mac running Mtn Lion before your Legacy Mac Proxy would work properly.

P.S. For some reason, I did not need to reboot my Mac running Lion before the Legacy Mac Proxy would work properly.
Always glad to hear it's working!

A reboot should never be required after installing (unless you're upgrading from a previous version), but you're not the first person to report it was necessary...
 
Last edited:
I’m considering retrying something I tried before without success. The machine’s running Snow Leopard 10.6.8. I have VMWare Fusion installed on it, so I can run recent(ish) versions of debian on it. The idea was to run a squid proxy on a VM and pass traffic through that. Does this sound possible?

Thanks!
 
I’m considering retrying something I tried before without success. The machine’s running Snow Leopard 10.6.8. I have VMWare Fusion installed on it, so I can run recent(ish) versions of debian on it. The idea was to run a squid proxy on a VM and pass traffic through that. Does this sound possible?

Thanks!
That's definitely possible, but why involve an entire second OS when you can just run Squid on Snow Leopard natively? The installer package already supports Snow Leopard.
 
Used the tool from first post on my MBP with OSX lion and it worked. Nice :) But recently i've downgraded to 10.6 and it doesn't fix the system, sadly. Maybe some additional tricks are necessary?
 
I use it on snow leopard without issue. Verify that its actually running. Sometimes you may need to start it manually. Once running it works as advertised.
 
Yeah, it should work on Snow Leopard.

You say you "downgraded"—that usually implies a full reinstall, but if you did something clever to downgrade without formatting the drive, please make sure to fully remove and reinstall the proxy from scratch. The package will actually install a completely different binary if it's running on Snow Leopard.

Sometimes you may need to start it manually.
You really shouldn't have to anymore, if there's any pattern at all to when this happens please let me know...
 
In all fairness im still using your original package. I saw no need to update as it works fine other than not always starting on boot up. I dont reboot that machine often so it never bothered me.
 
Sorry, I check-boxed the wrong thing in system settings, not the secure one. Now it's all working on snow leopard.
 
Last edited:
  • Like
Reactions: Wowfunhappy
A Lion user emailed me tonight to say that after installing my proxy and the dictionary patch option enabled, the "AppleSpell" process was constantly crashing.

11/9/22 9:41:25.127 PM [0x0-0x26026].com.apple.AppleSpell: dyld: could not load inserted library: @executable_path/../Frameworks/ProxyFix.dylib

11/9/22 9:41:25.451 PM com.apple.launchd.peruser.501: ([0x0-0x26026].com.apple.AppleSpell[328]) Job appears to have crashed: Trace/BPT trap: 5

Has anyone else experienced something like this?
 
Last edited:
If it's constantly crashing I assume it's being restarted by launchd. Probably at /System/Library/LaunchAgents/com.apple.applespell.plist. Why is it trying to load proxy fix? Feels like maybe ld preload env var was set globally for user instead of just for dictionary app.
 
If it's constantly crashing I assume it's being restarted by launchd. Probably at /System/Library/LaunchAgents/com.apple.applespell.plist. Why is it trying to load proxy fix? Feels like maybe ld preload env var was set globally for user instead of just for dictionary app.

I can't answer that question (since I can't reproduce this), but I've seen something similar happen when I (1) open a page in the Dictionary app, (2) open the print dialog with file → print, (3) click the "PDF" drop-down, and (4) select "Open PDF in Preview".

Preview will crash because:
Code:
Dyld Error Message:
  could not load inserted library '@executable_path/../Frameworks/ProxyFix.dylib' because image not found

As far as I can tell, whenever you launch one app with the DYLD_INSERT_LIBRARIES environment variable, and that app launches another another app, that second app will also have the environment variable set. I've actually run into this while experimenting with other stuff too.

Now, I have no clue why the Dictionary app would be launching applespell (shouldn't it be running already?), but it doesn't seem implausible that this could happen.
 
Yes, I believe env vars are inherited for forked processes. So possibly doing via ld preload is too heavy-handed. Either make it an absolute path, (which I still don't like because it causes injected dylib to go "viral" as you spawn processes), or you could use https://github.com/kubo/plthook to hook the function in question instead of interposing. (Or for real bonus points, use https://debugtrap.com/2016/11/14/library-memory-loading/ to simulate dyld dynamic interpose).

Probably just using plthook is easiest.
 
Oh wait another easy workaround might be to unset the env var inside your dylib.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.