So currently it isn't possible to specify the source port when building new rules. There are several services that use well-known source ports which connect to random local ports. Instead of opening all the ports for a given source address it'd be much better to have the ability to specify a specific (or maybe a range) source port. The source port I refer to is often specified as --sport in iptables.
Also https://lists.fedorahosted.org/pipermail/firewalld-devel/2013-September/000077.html
This has been added with firewalld verison 0.4.2.