Re: [PATCH] gateway: Fix typo when setting 'is_vpn6'
daniel antoine <[email protected]>
| Newsgroups | dev.linux.lists.connman |
|---|---|
| Message-ID | <CA+iibzBrT7mcgK8ZnsxdYuMqF5E+57z-kCZ-G0PLsWaezkdT4Q@mail.gmail.com> |
Hi Jussi Grant Christian and Gabiel I have installed first the Gabriel patch and tested but my vpn connexion drops after 5 seconds and finally hangs the wifi connexion I have continued by installing the eleven and twelves jussi patches but my compilation failed with the first patch 11-1 =======> name: connman =======> version: 1.43 =======> release: 9 =======> WARNING: connman1737741659x86_64.cards.tar.xz already exist =======> WARNING: connman.man1737741659any.cards.tar.xz already exist =======> WARNING: connman.devel1737741659any.cards.tar.xz already exist =======> WARNING: connman.sources1737741659any.cards.tar.xz already exist =======> Building starting... cp allow_group_network.diff /tmp/work/src cp vpn6.patch /tmp/work/src cp vpn-11-1.patch /tmp/work/src cp vpn-11-2.patch /tmp/work/src cp vpn-11-3.patch /tmp/work/src cp vpn-11-4.patch /tmp/work/src cp vpn-11-5.patch /tmp/work/src cp vpn-11-6.patch /tmp/work/src cp vpn-11-7.patch /tmp/work/src cp vpn-11-8.patch /tmp/work/src cp vpn-11-9.patch /tmp/work/src cp vpn-11-10.patch /tmp/work/src cp vpn-11-11.patch /tmp/work/src cp vpn-12-1.patch /tmp/work/src cp vpn-12-2.patch /tmp/work/src cp vpn-12-3.patch /tmp/work/src cp vpn-12-4.patch /tmp/work/src cp vpn-12-5.patch /tmp/work/src cp vpn-12-6.patch /tmp/work/src cp vpn-12-7.patch /tmp/work/src cp vpn-12-8.patch /tmp/work/src cp vpn-12-9.patch /tmp/work/src cp vpn-12-10.patch /tmp/work/src cp vpn-12-11.patch /tmp/work/src cp vpn-12-12.patch /tmp/work/src + prepare + git clone https://git.kernel.org/pub/scm/network/connman/connman.git connman-1.43 Cloning into 'connman-1.43'... remote: Enumerating objects: 41151, done. remote: Total 41151 (delta 0), reused 0 (delta 0), pack-reused 41151 Receiving objects: 100% (41151/41151), 6.41 MiB | 1.64 MiB/s, done. Resolving deltas: 100% (31525/31525), done. + cd connman-1.43 + git checkout 263e151fcfb09134dcf17a4147355b0ee9a5eb66 Note: switching to '263e151fcfb09134dcf17a4147355b0ee9a5eb66'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by switching back to a branch. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -c with the switch command. Example: git switch -c <new-branch-name> Or undo this operation with: git switch - Turn off this advice by setting config variable advice.detachedHead to false HEAD is now at 263e151f treewide: Fix typo in ARPHRD_PHONET_PIPE + patch -Np1 -i /tmp/work/src/allow_group_network.diff patching file src/connman-polkit.conf Hunk #1 succeeded at 7 with fuzz 2 (offset 2 lines). + patch -Np1 -i /tmp/work/src/vpn6.patch patching file src/gateway.c + patch -Np1 -i /tmp/work/src/vpn-11-1.patch patching file src/agent.c Hunk #1 FAILED at 201. 1 out of 1 hunk FAILED -- saving rejects to file src/agent.c.rej =======> ERROR: Building 'connman.sources1737741659any.cards.tar.xz' failed. I have copy the patches from the e-mail , may be it introduce false characters or must i copy them from the dev list Best regards Daniel Le ven. 24 janv. 2025 à 20:03, Jussi Laakkonen <[email protected]> a écrit : > > Hi Christian, > > Actually, that commit is in upstream. > https://git.kernel.org/pub/scm/network/connman/connman.git/log/vpn/plugins/wireguard.c > - the date on the cherry-picked commits is the date of cherry picking (I > guess I missed some option while doing this..) but the original commit > is there submitted on 2020-07-31. > > I also pushed the association state and most of the wireguard fixes I've > done to the mailing list. Have fun testing and tell me if it works > better, we can always improve it if something is still missing. There > are few commits I held back as they could be the next patch set, because > support for IPv4 and IPv6 addresses, and the route adding fixes are also > quite large changes. > > BR, > - Jussi > > > > On 1/23/25 13:35, Christian Hewitt wrote: > > Looking here: https://git.kernel.org/pub/scm/network/connman/connman.git/log/ I’m not finding "wireguard: Regular reresolve endpoint address” and the first page of log goes back to December ’23. Are we using the wrong upstream? > > > > Christian > > > >> On 23 Jan 2025, at 3:22 pm, Jussi Laakkonen <[email protected]> wrote: > >> > >> Hi Christian, > >> > >> That is actually in upstream, all the commits regarding WireGuard before July 10, 2024 are taken from the latest upstream and the changes after that are new features. > >> > >> Well, the vpn.c changes do depend on having the ASSOCIATION state also for VPNs to be implemented, that was proposed in the RFC https://lore.kernel.org/connman/[email protected]/T/#mbced39d72dd424884fe105a66fea02a83c708f97 as the state transitions depend on that bit. But it does not seem to be depending on the gateway.c/connection.c. Well, I can try to squeeze time to address the issues Daniel earlier raised on that RFC and push them to upstream, then make a big change on the vpn.c and wireguard.c. > >> > >> Br, > >> Jussi > >> > >> > >> On 1/23/25 13:12, Christian Hewitt wrote: > >>> You don't often get email from [email protected]. Learn why this is important<https://aka.ms/LearnAboutSenderIdentification> > >>> Ohh.. I would be VERY keen to see support for FQDN’s resolving to dynamic IP’s upstreamed so this looks interesting: > >>> https://github.com/sailfishos/connman/commit/adb6ab2b49a2b822e6517d703f972b866fdbd8bd > >>> Is that feature dependent on any other changes? (being lazy.. I didn’t read all the commits in that branch yet!). > >>> Christian > >>> On 23 Jan 2025, at 3:06 pm, Jussi Laakkonen <[email protected]> wrote: > >>> Hello, > >>> Regarding WireGuard, I had to make a bunch of changes to the latest version of it to get it running properly on our fork (yes, we upgrade it slowly, now 1.38): https://github.com/sailfishos/connman/commits/master/connman/vpn > >>> But I haven't had time to figure out all that is needed for upstream to be sent first, like this RFC edit that was forgotten because of... "eastern winds blowing into our direction": https://lore.kernel.org/connman/[email protected]/T/#mbced39d72dd424884fe105a66fea02a83c708f97 > >>> And then the connection.c was modified a lot (and renamed) and I'm not sure if these will work on top of that anymore. Mostly because we have features that may not have been compatible with latest upstream, like adding a support for two different devices to be belonging into one service to facilitate CLAT support https://github.com/sailfishos/connman/commits/master/connman/src/connection.c etc. etc. etc. > >>> At some point I'll start pushing changes but not sure when I have time. Mostly they could be RFCs as the changes are big. > >>> BR, > >>> Jussi > >>> On 1/23/25 12:45, daniel antoine wrote: > >>> Hi > >>> I have opened a ticket for connman-vpn not working with wireguard in > >>> April 2024. If you give me the patches I can test them > >>> Best regards > >>> Daniel > >>> Le mer. 22 janv. 2025 à 18:01, Grant Erickson > >>> <[email protected]> a écrit : > >>> 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 > >> > > > >