Hi, The icmpv6 generation of tinc is not correct if the corresponding functions is compiled by gcc inline. I intend to adopt the Debian patch to advise gcc not to inline it and bump the ebuild version to 1.0.35-r2. What do you think? If there no objections, I would like to commit the patch in a week. Benda Reproducible: Always
Created attachment 572566 [details, diff] tinc-1.0.35-icmpv6-checksum.patch The proposed commit.
@heroxbd thanks for the work, I'm fine with the patch included and have a revision bump @blueness it's a trivial patch and should be quite safe to apply to .. but can we report this to upstream and have them included it?
Created attachment 572852 [details, diff] patch for workaround inet_checksum problem @heroxbd hi, you propose a patch only for version 1.0.35? while I think 1.1 will be also affected by same issue, poke upstream's code I found this patch[1] in 1.1 branch, could you try to see if it also solve your problem? [1] http://www.tinc-vpn.org/git/browse?p=tinc;a=commit;h=7c73cb3ace6659df58ec2382b8d47bb521dad886
(In reply to Yixun Lan from comment #3) > Created attachment 572852 [details, diff] [details, diff] > patch for workaround inet_checksum problem > > @heroxbd > > hi, you propose a patch only for version 1.0.35? while I think 1.1 will be > also affected by same issue, poke upstream's code I found this patch[1] in > 1.1 branch, could you try to see if it also solve your problem? > > [1] > http://www.tinc-vpn.org/git/browse?p=tinc;a=commit; > h=7c73cb3ace6659df58ec2382b8d47bb521dad886 Nice catch! The tinc-1.1 patch works. It is more suitable to be back-ported. Benda
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=34da8fc9b7346abe20d3f97fe319bc849a0518dc commit 34da8fc9b7346abe20d3f97fe319bc849a0518dc Author: Yixun Lan <dlan@gentoo.org> AuthorDate: 2019-04-15 07:07:20 +0000 Commit: Yixun Lan <dlan@gentoo.org> CommitDate: 2019-04-15 07:11:34 +0000 net-vpn/tinc: fix icmpv6 checksum error backport the patch from tinc-1.1 branch, thanks Benda Xu for testing Closes: https://bugs.gentoo.org/683160 Package-Manager: Portage-2.3.62, Repoman-2.3.12 Signed-off-by: Yixun Lan <dlan@gentoo.org> net-vpn/tinc/Manifest | 1 + net-vpn/tinc/tinc-1.0.35-r2.ebuild | 54 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 55 insertions(+)
This is really a strict aliasing violation in inet_checksum(), not a compiler bug. Please see https://github.com/gsliepen/tinc/pull/221 for a proper fix.
(In reply to Maciej S. Szmigiero from comment #6) > This is really a strict aliasing violation in inet_checksum(), not a compiler > bug. > Please see https://github.com/gsliepen/tinc/pull/221 for a proper fix. Maciej, thank you so much for finally fixing this bug!
(In reply to Benda Xu from comment #7) > Maciej, thank you so much for finally fixing this bug! You're welcome.
thanks for taking care of this!