-
David Hancock authored
The issue is that some vdevs, like the arp proxy, want to send traffic back out the same port that received it in some cases, but the ingress port has been handled in such a way that vdevs not at the head of the chain lose the information about the original physical ingress port. There are two ways to fix this - change the controller (primarily in the Lease class), or change HP4. Changing HP4 looks a lot easier, and though composition abstraction flexibility is no longer as straightforward, it is still there. Specifically, a vdev in a virtual network wanting to return traffic back to another vdev will have to do so via explicit forwarding instead of simply copying ingress_port to egress_spec. The compiler can be modified to accommodate this change without requiring the user to be aware of it.
879195b9