Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

m1ss1ontomars

macrumors 6502
Original poster
Oct 1, 2006
273
2
Leopard's firewall apparently modifies applications when you tell it to "allow" network connections. For example, in StarCraft, when you first try to log on to Battle.net after an update (for me, I just updated to 1.15.2, the no-cd version), StarCraft will complain that port 6112 is not open (which it should not be), but you can still log on to Battle.net and chat but not play games.

Mac OS X will then ask you if you want to deny or allow network connections. If you click allow, it will append data to "Starcraft (Carbon)" starting at offset 155fe9, causing Starcraft to fail all further login checks for Battle.net. Battle.net checks your application to prevent cheating; the first time you are still able to log in because you're already in Battle.net by the time the data is appended. After that, Starcraft is 1.7 MB rather than 1.6 MB (actually only 8 KB have been added I think), so your application version can no longer be properly identified.

Basically, Leopard's firewall is corrupting at least Starcraft, which is one of the worst possible apps to corrupt, due to Blizzard's anti-cheating mechanisms. I think the appended data just allows Mac OS X to recognize it as an allowed app.

Honestly, Apple, this had better be fixed in 10.5.2 or I'm going to be pissed at this supposedly "improved" firewall. Because it's not improved; it seriously sucks some major ass.
 
OK, so I was right, as listed here.

http://lists.apple.com/archives/apple-cdsa/2008/Mar/msg00007.html

Since that would really have ruined third party developers' Leopard experience, we don't do that in Leopard (except for the Parental Controls and firewall cases, where we surreptitiously sign unsigned programs when they are "enabled" to run).

This surreptitious signing needs to stop, as it is neither surreptitious nor beneficial. The signing is supposed to reveal modifications to the programs, but instead cause them to be modified themselves. There are other ways to ensure programs haven't been modified since I allowed them to connect to the internet, ways which don't modify the program itself.
 
I currently have version 10.5.6 and it started acting up about a week ago. It worked just fine but seemingly randomly stopped letting me join/host games over battle.net (hamachi included). Nothing new has been added to the computer, no updates, no new installs, it just stopped working. Exact same problem it sounds like though. I'm going to try some general troubleshooting and get back to this thread, hopefully something will work.
Since the problem, I've already enabled the port and given the game full access to any port and connection it wants to make (honestly, sounds like a bad idea to me but I trust Blizzard enough...).
Tried a reinstallation as well, but hasn't worked. Shame. Either our ISPs are the problem, or Starcraft just just decided to simultaneously hate a handful of Mac users. Blame the machine spirit.
 
I've been using the Leopard firewall for some time now, but it's pretty annoying. It asks every single time if I wish to allow a program to accept network transmissions when I launch them, even if I put each application manually into the list of allowed applications. Is this supposed to be normal?
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.