I haven't added `tcp_source_ipv4` or `tcp_source_ipv6`, neither used them, so I am not sure what was the main purpose for them. I also don't know why there is no equivalent for udp, maybe one should be introduced. But more or less from the beginning of the project, the rule to reuse the incoming socket for outgoing traffic was in place.
Maybe the next steps should be:
- add also for udp the corresponding core parameters to be set from config - add a new parameter like `proto_source_mode` which when set to 0 (the default) the current behaviour is preserved and when set to 1 the one you want is done, if that is solving issues you are facing
In this way we have backward compatibility by default and you have an option to change that behaviour for your specific needs.