change divert socket to use a sockaddr_div struct

Alexander V. Chernikov melifaro at ipfw.ru
Thu Mar 5 14:42:21 UTC 2020


27.02.2020, 09:16, "Nick Hibma" <nick at van-laarhoven.org>:
> Folks,
Hi Nick,
>
> We would like to use FIBs for routing, but currently cannot because the FIB is lost when the packet goes through a divert socket for processing. I've attached a patch that should fix this situation, and while there fix the limit of 7 characters for the interface name which some people got bitten by. This fix was suggested some time ago by Warner Losh.
It looks like the patch got stripped by the mailing list.
Could you please publish it on https://reviews.freebsd.org ?
>
> I've changed the sockaddr_in to a sockaddr_di struct to pass the FIB number and the complete interface, and other info in and out. But this seems to lead to memory corruption. Perhaps someone who knows the API can tell me where I should look for memory corruption issues, because this patch causes random crashes. I assume it's because of overwriting random memory.
>
> Thanks in advance.
>
> Nick Hibma
> nick at van-laarhoven.org
>
> -- Open Source: We stand on the shoulders of giants.
>
> _______________________________________________
> freebsd-arch at freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-arch
> To unsubscribe, send any mail to "freebsd-arch-unsubscribe at freebsd.org"


More information about the freebsd-arch mailing list