cilium: proxy uses incorrect daddr when services are used
cilium: proxy uses incorrect daddr when services are used

When services are being used with proxy rules an incorrect checksum
is generated causing packets to be dropped by the Linux kernel.
The problem is the original daddr before it is modified by the
service is used to re-calculate the checksum resulting in an
incorrect checksum.

To fix this assign "orig_dip" (the value used to calculate the
checksum) only after the service has run.

Signed-off-by: John Fastabend <ee461b60978bea1c76b3018c0b89685175b248e2@gmail.com>

tgraf/cilium,tgraf/cilium,cilium/cilium,gumpt/cilium,mskarbek/cilium,tgraf/cilium,eloycoto/cilium,scanf/cilium,cilium/cilium,eloycoto/cilium,eloycoto/cilium,scanf/cilium,eloycoto/cilium,tklauser/cilium,michi-covalent/cilium,scanf/cilium,tgraf/cilium,cilium/cilium,scanf/cilium,tklauser/cilium,michi-covalent/cilium,gumpt/cilium,eloycoto/cilium,mskarbek/cilium,cilium-team/cilium,gumpt/cilium,tgraf/cilium,mskarbek/cilium,tgraf/cilium,cilium/cilium,cilium-team/cilium,gumpt/cilium,mskarbek/cilium,tklauser/cilium,scanf/cilium,michi-covalent/cilium,eloycoto/cilium,scanf/cilium,gumpt/cilium,cilium/cilium,gumpt/cilium,gumpt/cilium,michi-covalent/cilium,mskarbek/cilium,scanf/cilium,eloycoto/cilium,michi-covalent/cilium,mskarbek/cilium,tklauser/cilium,tklauser/cilium