The way for an application to open an incoming port is, well, to open a socket on that port and listen to it. That's it. It magically works with no stupidity going on.
People have forgotten this because NAT madness and overzealous firewalls have entrenched themselves deeply enough.
You only need a firewall if you, as a user, want to restrict who and what may access what or who else. If applications can change that policy then you can as well have no firewall at all.
Firewalls are overrated. In this case Apple did the right thing and should have ignored all the whiners.