Make divert(4) socket dispatch mbuf to correct the lwkt port for further
processing (ip_{input,output}):
- Add mbuf** function parameter to protosw.pr_mport()
- Pass 'addr' to pr_mport() in so_pru_send(); udp_soport() is adjusted
accordingly
- Add additional parameter to ip_mport(), so it could be called with both
incoming and outgoing packets. And the processing for outgoing UDP packets
matches udp_soport()
- Add div_soport() as IPPROTO_DIVERT's pr_mport()
o Delegate non-PRU_SEND operation to cpu0_soport()
o Move receiving interface setting up code from div_output() into this
function, so ip_mport() could be called
o Use ip_mport() to find the target lwkt port
13 files changed: