Language-Independent Synthesis of Firewall Policies