VPN doesn't allow an IP prefix of 0 to route all traffic
When connecting to a VPN, an IP prefix of 0 is assumed to be invalid and skipped. However, this results in a routing rule of 0.0.0.0/0 to route all traffic by default to be dropped. For example, my company VPN has a "tunnel-all" option to route all traffic apart from a handful of specific IP ranges through the VPN, which breaks because of this issue.
Removing the explicit checks for a prefix of 0 resolves the problem and the "tunnel-all" VPN works as expected.