Re: [PATCH] gateway: Fix typo when setting 'is_vpn6'
Grant Erickson <[email protected]>
| Newsgroups | dev.linux.lists.connman |
|---|---|
| Message-ID | <[email protected]> |
On Jan 13, 2025, at 5:59 AM, Gabriel Sanches <[email protected]> wrote: > I was testing connman's wireguard plugin and got a segmentation fault. > > Looking at the backtrace revealed that there are some typos in the `src/gateway.c` file where `is_vpn6` was incorrectly set using ipv4 variables instead of ipv6 regarding vpn. > > I simply changed them to ipv6 and got it working. > > not related to the patch: > I had to manually add ip route so the other devices could be pinged > The plugin adds routes for the WireGuard.DNS configuration setting > # ip route > 1.1.1.1 dev wg0 scope link > 8.8.8.8 dev wg0 scope link > 10.42.0.0/24 dev end1 proto kernel scope link src 10.42.0.83 > 10.42.0.1 dev end1 scope link > <vpn host ip> via 10.42.0.1 dev end1 > > the missing route added manually: > ip route add 10.33.0.0/16 dev wg0 scope link > > an equivalent wireguard file adds it properly (using wg-quick) > > Is the plugin lacking some implementation? > > --- > src/gateway.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/src/gateway.c b/src/gateway.c > index 16c87f83..b2c211e2 100644 > --- a/src/gateway.c > +++ b/src/gateway.c > @@ -3704,10 +3704,10 @@ int __connman_gateway_add(struct connman_service *service, > is_gateway_config_vpn( > new_gateway->ipv4_config); > > - is_vpn6 = do_ipv4 && > - new_gateway->ipv4_config && > + is_vpn6 = do_ipv6 && > + new_gateway->ipv6_config && > is_gateway_config_vpn( > - new_gateway->ipv4_config); > + new_gateway->ipv6_config); > > } else { > if (do_ipv4 && new_gateway->ipv4_config) > -- > 2.43.0 Gabriel, Great catch on this copy-and-paste typo; thank you! Best, Grant