When using vpnc's --local-addr option it fails to bind ESP packets
to that address. They tend to go out the wrong interface.
In vpnc.c, on approx line 2807, after esp_fd has been
initialized from socket() there should be a bind() instance
to bind to the local address much like is done in make_socket().
The local port number is irrelevant for ESP, of course.
But without this bind() one can observe ESP packets
leaving the wrong interface, albeit with the source
address correctly set. bind() must be used to ensure
that the ESP packets are correctly routed.
_______________________________________________
vpnc-devel mailing list
vpnc-devel@unix-ag.uni-kl.de
https://lists.unix-ag.uni-kl.de/mailman/listinfo/vpnc-devel
http://www.unix-ag.uni-kl.de/~massar/vpnc/
to that address. They tend to go out the wrong interface.
In vpnc.c, on approx line 2807, after esp_fd has been
initialized from socket() there should be a bind() instance
to bind to the local address much like is done in make_socket().
The local port number is irrelevant for ESP, of course.
But without this bind() one can observe ESP packets
leaving the wrong interface, albeit with the source
address correctly set. bind() must be used to ensure
that the ESP packets are correctly routed.
_______________________________________________
vpnc-devel mailing list
vpnc-devel@unix-ag.uni-kl.de
https://lists.unix-ag.uni-kl.de/mailman/listinfo/vpnc-devel
http://www.unix-ag.uni-kl.de/~massar/vpnc/