Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package nebula for openSUSE:Factory checked in at 2025-10-11 22:51:06 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/nebula (Old) and /work/SRC/openSUSE:Factory/.nebula.new.5300 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "nebula" Sat Oct 11 22:51:06 2025 rev:10 rq:1310730 version:1.9.7 Changes: -------- --- /work/SRC/openSUSE:Factory/nebula/nebula.changes 2025-07-24 18:46:58.229239430 +0200 +++ /work/SRC/openSUSE:Factory/.nebula.new.5300/nebula.changes 2025-10-11 22:52:21.566623496 +0200 @@ -1,0 +2,9 @@ +Sat Oct 11 14:48:33 UTC 2025 - Richard Rahl <[email protected]> + +- update to version 1.9.7: + * Disable sending recv_error messages when a packet is received outside the + allowable counter window + * Improve error messages and remove some unnecessary fatal conditions in the + generic udp listener + +------------------------------------------------------------------- Old: ---- nebula-1.9.6.tar.gz New: ---- nebula-1.9.7.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ nebula.spec ++++++ --- /var/tmp/diff_new_pack.pT14kE/_old 2025-10-11 22:52:22.202650383 +0200 +++ /var/tmp/diff_new_pack.pT14kE/_new 2025-10-11 22:52:22.214650889 +0200 @@ -17,7 +17,7 @@ Name: nebula -Version: 1.9.6 +Version: 1.9.7 Release: 0 Summary: A scalable overlay networking tool License: MIT @@ -29,7 +29,7 @@ BuildRequires: git-core BuildRequires: golang-packaging BuildRequires: zstd -BuildRequires: golang(API) >= 1.23.6 +BuildRequires: golang(API) >= 1.24.0 %description Nebula is a scalable overlay networking tool with a focus on performance, @@ -44,7 +44,7 @@ This package only includes the %{name}-cert binary. %prep -%autosetup -a1 +%autosetup -a1 -p1 %build go build -buildmode=pie -mod=vendor -ldflags "-X main.Build=%{version}-dirty" -o %{name} ./cmd/%{name} ++++++ _service ++++++ --- /var/tmp/diff_new_pack.pT14kE/_old 2025-10-11 22:52:22.274653426 +0200 +++ /var/tmp/diff_new_pack.pT14kE/_new 2025-10-11 22:52:22.278653595 +0200 @@ -3,7 +3,7 @@ <service name="tar_scm" mode="manual"> <param name="url">https://github.com/slackhq/nebula.git</param> <param name="scm">git</param> - <param name="revision">refs/tags/v1.9.6</param> + <param name="revision">refs/tags/v1.9.7</param> <param name="versionformat">@PARENT_TAG@</param> <param name="versionrewrite-pattern">v(.*)</param> <param name="package-meta">yes</param> ++++++ nebula-1.9.6.tar.gz -> nebula-1.9.7.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nebula-1.9.6/.git/HEAD new/nebula-1.9.7/.git/HEAD --- old/nebula-1.9.6/.git/HEAD 2025-07-18 14:39:33.000000000 +0200 +++ new/nebula-1.9.7/.git/HEAD 2025-10-10 17:31:46.000000000 +0200 @@ -1 +1 @@ -105e0ec66c11d57c06c5f1c52a064be3b50e4d25 +7c3f5339508c7dbc74eea7f925d31b28bafa1b45 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nebula-1.9.6/.git/ORIG_HEAD new/nebula-1.9.7/.git/ORIG_HEAD --- old/nebula-1.9.6/.git/ORIG_HEAD 2025-07-18 14:39:33.000000000 +0200 +++ new/nebula-1.9.7/.git/ORIG_HEAD 2025-10-10 17:31:46.000000000 +0200 @@ -1 +1 @@ -105e0ec66c11d57c06c5f1c52a064be3b50e4d25 +7c3f5339508c7dbc74eea7f925d31b28bafa1b45 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nebula-1.9.6/.git/config new/nebula-1.9.7/.git/config --- old/nebula-1.9.6/.git/config 2025-07-18 14:39:33.000000000 +0200 +++ new/nebula-1.9.7/.git/config 2025-10-10 17:31:46.000000000 +0200 @@ -1,11 +1,15 @@ [core] - repositoryformatversion = 0 + repositoryformatversion = 1 filemode = true bare = false logallrefupdates = true [remote "origin"] url = https://github.com/slackhq/nebula.git fetch = +refs/heads/*:refs/remotes/origin/* + promisor = true + partialclonefilter = tree:0 [branch "master"] remote = origin merge = refs/heads/master +[extensions] + partialClone = origin diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nebula-1.9.6/.git/hooks/pre-commit.sample new/nebula-1.9.7/.git/hooks/pre-commit.sample --- old/nebula-1.9.6/.git/hooks/pre-commit.sample 2025-07-18 14:39:33.000000000 +0200 +++ new/nebula-1.9.7/.git/hooks/pre-commit.sample 2025-10-10 17:31:46.000000000 +0200 @@ -28,7 +28,7 @@ # Note that the use of brackets around a tr range is ok here, (it's # even required, for portability to Solaris 10's /usr/bin/tr), since # the square bracket bytes happen to fall in the designated range. - test $(git diff --cached --name-only --diff-filter=A -z $against | + test $(git diff-index --cached --name-only --diff-filter=A -z $against | LC_ALL=C tr -d '[ -~]\0' | wc -c) != 0 then cat <<\EOF Binary files old/nebula-1.9.6/.git/index and new/nebula-1.9.7/.git/index differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nebula-1.9.6/.git/logs/HEAD new/nebula-1.9.7/.git/logs/HEAD --- old/nebula-1.9.6/.git/logs/HEAD 2025-07-18 14:39:33.000000000 +0200 +++ new/nebula-1.9.7/.git/logs/HEAD 2025-10-10 17:31:46.000000000 +0200 @@ -1,2 +1,2 @@ -0000000000000000000000000000000000000000 91eff0341802468ac5d53c3510cbbcd94ed560bc Andreas Lorenz <[email protected]> 1753277393 +0200 clone: from https://github.com/slackhq/nebula.git -91eff0341802468ac5d53c3510cbbcd94ed560bc 105e0ec66c11d57c06c5f1c52a064be3b50e4d25 Andreas Lorenz <[email protected]> 1753277394 +0200 checkout: moving from master to refs/tags/v1.9.6 +0000000000000000000000000000000000000000 45c1d3eab386287182ac228c8ec8c9beaf3b1211 Richard Rahl <[email protected]> 1760193592 +0200 clone: from https://github.com/slackhq/nebula.git +45c1d3eab386287182ac228c8ec8c9beaf3b1211 7c3f5339508c7dbc74eea7f925d31b28bafa1b45 Richard Rahl <[email protected]> 1760193597 +0200 checkout: moving from master to refs/tags/v1.9.7 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nebula-1.9.6/.git/logs/refs/heads/master new/nebula-1.9.7/.git/logs/refs/heads/master --- old/nebula-1.9.6/.git/logs/refs/heads/master 2025-07-18 14:39:33.000000000 +0200 +++ new/nebula-1.9.7/.git/logs/refs/heads/master 2025-10-10 17:31:46.000000000 +0200 @@ -1 +1 @@ -0000000000000000000000000000000000000000 91eff0341802468ac5d53c3510cbbcd94ed560bc Andreas Lorenz <[email protected]> 1753277393 +0200 clone: from https://github.com/slackhq/nebula.git +0000000000000000000000000000000000000000 45c1d3eab386287182ac228c8ec8c9beaf3b1211 Richard Rahl <[email protected]> 1760193592 +0200 clone: from https://github.com/slackhq/nebula.git diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nebula-1.9.6/.git/logs/refs/remotes/origin/HEAD new/nebula-1.9.7/.git/logs/refs/remotes/origin/HEAD --- old/nebula-1.9.6/.git/logs/refs/remotes/origin/HEAD 2025-07-18 14:39:33.000000000 +0200 +++ new/nebula-1.9.7/.git/logs/refs/remotes/origin/HEAD 2025-10-10 17:31:46.000000000 +0200 @@ -1 +1 @@ -0000000000000000000000000000000000000000 91eff0341802468ac5d53c3510cbbcd94ed560bc Andreas Lorenz <[email protected]> 1753277393 +0200 clone: from https://github.com/slackhq/nebula.git +0000000000000000000000000000000000000000 45c1d3eab386287182ac228c8ec8c9beaf3b1211 Richard Rahl <[email protected]> 1760193592 +0200 clone: from https://github.com/slackhq/nebula.git Binary files old/nebula-1.9.6/.git/objects/pack/pack-55cf3bbc3c6428b5ac15e3511eb3425f40a71d61.idx and new/nebula-1.9.7/.git/objects/pack/pack-55cf3bbc3c6428b5ac15e3511eb3425f40a71d61.idx differ Binary files old/nebula-1.9.6/.git/objects/pack/pack-55cf3bbc3c6428b5ac15e3511eb3425f40a71d61.pack and new/nebula-1.9.7/.git/objects/pack/pack-55cf3bbc3c6428b5ac15e3511eb3425f40a71d61.pack differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nebula-1.9.6/.git/objects/pack/pack-55cf3bbc3c6428b5ac15e3511eb3425f40a71d61.promisor new/nebula-1.9.7/.git/objects/pack/pack-55cf3bbc3c6428b5ac15e3511eb3425f40a71d61.promisor --- old/nebula-1.9.6/.git/objects/pack/pack-55cf3bbc3c6428b5ac15e3511eb3425f40a71d61.promisor 1970-01-01 01:00:00.000000000 +0100 +++ new/nebula-1.9.7/.git/objects/pack/pack-55cf3bbc3c6428b5ac15e3511eb3425f40a71d61.promisor 2025-10-10 17:31:46.000000000 +0200 @@ -0,0 +1,216 @@ +0017794f4638f1a1b4e469619a9824accac6ccea 0017794f4638f1a1b4e469619a9824accac6ccea +026bfbd4bf01a2e63e2602c542d72fe1dc79ea83 026bfbd4bf01a2e63e2602c542d72fe1dc79ea83 +02eaad9e7e8a47c55e7df5fc06ab39396b1f9e21 02eaad9e7e8a47c55e7df5fc06ab39396b1f9e21 +07146ab31355f68386d156efa1cb6e38fd957f02 07146ab31355f68386d156efa1cb6e38fd957f02 +082906d9b996ace359ff6725b5235afb096c5583 082906d9b996ace359ff6725b5235afb096c5583 +09a181d6d2b3679dec68446bd6c8366add39139d 09a181d6d2b3679dec68446bd6c8366add39139d +0b199a5ad77b9710ea16d938b9673a5a6fd451fd 0b199a5ad77b9710ea16d938b9673a5a6fd451fd +0bb2345ac0bc40f01a8a0ec0e4939503cd911990 0bb2345ac0bc40f01a8a0ec0e4939503cd911990 +0be7f978b641716b97ddd7e1aa23b76e9bcb5513 0be7f978b641716b97ddd7e1aa23b76e9bcb5513 +0caf86a4d76001da9e2b89e6218fa6e78440f542 0caf86a4d76001da9e2b89e6218fa6e78440f542 +0dd82286ff15e235a158b31c7a6bfe5925c7c68d 0dd82286ff15e235a158b31c7a6bfe5925c7c68d +0e28bb425b095e5ab683df554ce269e1c7fe2dbb 0e28bb425b095e5ab683df554ce269e1c7fe2dbb +102ddb3262f7251addc9188c3bbcedfbb1061638 102ddb3262f7251addc9188c3bbcedfbb1061638 +10e8472c5e6892adfeba1a8bd4dfa6c18915486d 10e8472c5e6892adfeba1a8bd4dfa6c18915486d +129744fd2513138b0d3269fcdf61bdc5a1f0bd78 129744fd2513138b0d3269fcdf61bdc5a1f0bd78 +12a848794037c671b6d016d099c517138ef8b9ea 12a848794037c671b6d016d099c517138ef8b9ea +131879d2bda28c0d995ece3c7d0125e8cc918edf 131879d2bda28c0d995ece3c7d0125e8cc918edf +14ba2ce145c06795b4387de56029e160697140b2 14ba2ce145c06795b4387de56029e160697140b2 +16e6a680fefc2fc02952634fce616297c1725157 16e6a680fefc2fc02952634fce616297c1725157 +16e768ee42b7416f77f5f2f603688c8e28679d17 16e768ee42b7416f77f5f2f603688c8e28679d17 +174b2419295f96e03b91375aa00e340a736878a1 174b2419295f96e03b91375aa00e340a736878a1 +1856877edd8c720151972053861e24edae427321 1856877edd8c720151972053861e24edae427321 +1b72a0ffd5e12ab8c21c85c811a0dda470745594 1b72a0ffd5e12ab8c21c85c811a0dda470745594 +1b777c3743a9f9aee4f0bdb020a0c49becbd3bfc 1b777c3743a9f9aee4f0bdb020a0c49becbd3bfc +1c1842da5532f71f64ab20a23e3ceade57046140 1c1842da5532f71f64ab20a23e3ceade57046140 +1c1e3c50f06fd892d70291164b419ff60ecc456c 1c1e3c50f06fd892d70291164b419ff60ecc456c +1db60a7c41b17e09f1f24f0ed795b514f3edcab4 1db60a7c41b17e09f1f24f0ed795b514f3edcab4 +1de3c196d8cd91143d395a01f6e5406ab9890be0 1de3c196d8cd91143d395a01f6e5406ab9890be0 +1e27a6bf56c7aa0c7f0e6d43b2f21b3c9a6049ad 1e27a6bf56c7aa0c7f0e6d43b2f21b3c9a6049ad +2034405a70048b4afbf04c625828ee3819324bef 2034405a70048b4afbf04c625828ee3819324bef +221ab778e868eced82cdb8751ee35ff10bfbd0c6 221ab778e868eced82cdb8751ee35ff10bfbd0c6 +261ed3642b694b55ba1cf8b6ec6a7033693548de 261ed3642b694b55ba1cf8b6ec6a7033693548de +2ab97dba062208bcb6ffc32bef8347d586751038 2ab97dba062208bcb6ffc32bef8347d586751038 +2beca66c91c38c5ee8036319e29fe439c94d4195 2beca66c91c38c5ee8036319e29fe439c94d4195 +2bf1d725d0776ef0846a9c7c18d0b446ecde8eac 2bf1d725d0776ef0846a9c7c18d0b446ecde8eac +2bf480f22f46e452d7e6126f4877ab7812735368 2bf480f22f46e452d7e6126f4877ab7812735368 +2e6d34b5faa44aa8eb00dcc8d5ef9772e8f62771 2e6d34b5faa44aa8eb00dcc8d5ef9772e8f62771 +2e92e7e2046e6a6a2d24b5503680147dc29a005d 2e92e7e2046e6a6a2d24b5503680147dc29a005d +2f8efbfb9c3c73aa551a992a8cfb0111667b38a5 2f8efbfb9c3c73aa551a992a8cfb0111667b38a5 +2fab9274b8c46eb5c8415ac1c7c67ff8ff645919 2fab9274b8c46eb5c8415ac1c7c67ff8ff645919 +2fd2ff665a07420fc61da940806bf1cb98f8e374 2fd2ff665a07420fc61da940806bf1cb98f8e374 +30e0965b9512a84c879dae7dea2e98dc07e4b6bc 30e0965b9512a84c879dae7dea2e98dc07e4b6bc +311afc24ea9e31343f8e9be650e715f1a98e67ca 311afc24ea9e31343f8e9be650e715f1a98e67ca +32de1a0dc422823c07c82e7a01370d3970311b1d 32de1a0dc422823c07c82e7a01370d3970311b1d +34c2a71c969d0ee15cc00315989be6e1cf0ee5bb 34c2a71c969d0ee15cc00315989be6e1cf0ee5bb +34fe17e5902aebb08a0a2e04d7c713919ff28c35 34fe17e5902aebb08a0a2e04d7c713919ff28c35 +356e58903c80f91edf169bf8feb4f01738abf3e7 356e58903c80f91edf169bf8feb4f01738abf3e7 +36b0fc94c25000a774e77f2953ec2627f2c74705 36b0fc94c25000a774e77f2953ec2627f2c74705 +36d043bcd53f5526b521f8c3dce5c1bb1115f02a 36d043bcd53f5526b521f8c3dce5c1bb1115f02a +38dbef62f8db5a796c503ae9c91b37f3e0b1e62c 38dbef62f8db5a796c503ae9c91b37f3e0b1e62c +3a61d186b89a7dce20daeaf9253399f1806614d8 3a61d186b89a7dce20daeaf9253399f1806614d8 +3b69159ad93ce3fb1c56da2ad24c40b04a355949 3b69159ad93ce3fb1c56da2ad24c40b04a355949 +3b7cdd1c9a1d4efbf1082648c0d6e712525bc7a0 3b7cdd1c9a1d4efbf1082648c0d6e712525bc7a0 +3b7d5859a33a410f6b66e33c78a920ce9b277c40 3b7d5859a33a410f6b66e33c78a920ce9b277c40 +3eb085920fb79bb590408e163d0d46b1b25cec5f 3eb085920fb79bb590408e163d0d46b1b25cec5f +400e275b469b6bf0d21ecbfc628fa55d68263571 400e275b469b6bf0d21ecbfc628fa55d68263571 +40c7fc5d2ddb829e975340837b2bfbf596ecf063 40c7fc5d2ddb829e975340837b2bfbf596ecf063 +42c32c8a520c9b03a2a0b61f0e16c0913a686750 42c32c8a520c9b03a2a0b61f0e16c0913a686750 +44d874659e00ff3b34c38bef65ad60e81bd2728b 44d874659e00ff3b34c38bef65ad60e81bd2728b +451dac533c8735a622115df6321b3323dc9e0e74 451dac533c8735a622115df6321b3323dc9e0e74 +48c5a978375782660aa4d688f511a7ad786b182d 48c5a978375782660aa4d688f511a7ad786b182d +496f84c278ad092dff6d5f6e66bc0004012b24c5 496f84c278ad092dff6d5f6e66bc0004012b24c5 +49ac19fb1dc998b15a9b26b4792f7056e6fab5aa 49ac19fb1dc998b15a9b26b4792f7056e6fab5aa +4b1d0bd0d028528610d5f38b77a6e9937ea07a1c 4b1d0bd0d028528610d5f38b77a6e9937ea07a1c +4c236aeed55c552d69aef89ebf5fd9a8d5f6648a 4c236aeed55c552d69aef89ebf5fd9a8d5f6648a +4db474f42c27e2c10f85dbf21298ac3ae5bf0c54 4db474f42c27e2c10f85dbf21298ac3ae5bf0c54 +52d5297acf175af825dea3b30503c07e3cb77d28 52d5297acf175af825dea3b30503c07e3cb77d28 +53d373866942a4874b77d2578789999e90a9c929 53d373866942a4874b77d2578789999e90a9c929 +547037c5a10a71380bc2e12a5ff4b9389e3a73d9 547037c5a10a71380bc2e12a5ff4b9389e3a73d9 +55068f31b3acc61768fc384cc6683ea605c1fd2a 55068f31b3acc61768fc384cc6683ea605c1fd2a +5510324577e5132312f0440ea0686c0a3ecb7e12 5510324577e5132312f0440ea0686c0a3ecb7e12 +55974f0f30cc47c64fb6f6aa4634f73d013acfc6 55974f0f30cc47c64fb6f6aa4634f73d013acfc6 +55d441f4a8017b2ea30eae55137c52f2829dba5f 55d441f4a8017b2ea30eae55137c52f2829dba5f +56dd1c2513560fe82a7ecb896af203744f4b1b5b 56dd1c2513560fe82a7ecb896af203744f4b1b5b +57990a7943a518013e8a86e0c3d8e99c9fadc01f 57990a7943a518013e8a86e0c3d8e99c9fadc01f +59d38a910513c77e6d936e72a74f51f824ec46c2 59d38a910513c77e6d936e72a74f51f824ec46c2 +5afeaeabe191d7878ca66eebf370d07572c8ae18 5afeaeabe191d7878ca66eebf370d07572c8ae18 +5cf0a028abab5fa3606ff15513ae87cab10aac95 5cf0a028abab5fa3606ff15513ae87cab10aac95 +5dd355ca24f262cc7778b5d9f4d95c591a06c80d 5dd355ca24f262cc7778b5d9f4d95c591a06c80d +5ff87bd8fa033114469783f5a3b9c78e23955c01 5ff87bd8fa033114469783f5a3b9c78e23955c01 +6135f36c0e14ae67c346e4c9e19ec79b7fb205f8 6135f36c0e14ae67c346e4c9e19ec79b7fb205f8 +61989581b57d3e7d8fd446f6bedd052e19546fd9 61989581b57d3e7d8fd446f6bedd052e19546fd9 +647dd72b801f3609c1fa55816cd2b1931f591206 647dd72b801f3609c1fa55816cd2b1931f591206 +65ef31a5656c7b49517e3d1c70a75c2a53ff0599 65ef31a5656c7b49517e3d1c70a75c2a53ff0599 +66b4851e9e4fd460146b90618f77faaf5a3e8eaf 66b4851e9e4fd460146b90618f77faaf5a3e8eaf +692c1840da4afc594e1aee2daea89109023d02d4 692c1840da4afc594e1aee2daea89109023d02d4 +6bf6a8ded9fb99bde5affb206cfff7c696e47565 6bf6a8ded9fb99bde5affb206cfff7c696e47565 +6d04027aa7ab62201683f852fd13d8e70bd045a2 6d04027aa7ab62201683f852fd13d8e70bd045a2 +6d5c8a433279de7637aed7ab48574b65540a8d54 6d5c8a433279de7637aed7ab48574b65540a8d54 +6df893c1670d288edc6bda7b99b4883ef6a34865 6df893c1670d288edc6bda7b99b4883ef6a34865 +6f5249703c5c383b5c6db79c58c992d4937c7c07 6f5249703c5c383b5c6db79c58c992d4937c7c07 +7061de6acf773ff4e53f59a42fc5d00a4bb5d6a6 7061de6acf773ff4e53f59a42fc5d00a4bb5d6a6 +70b07f4e3252539a0ddd7fe3954c244716787e4f 70b07f4e3252539a0ddd7fe3954c244716787e4f +71b83f433fdac1cd69384227ded09527a559c452 71b83f433fdac1cd69384227ded09527a559c452 +7242c72ac919b54b3bc8c206e307b3441f7652e2 7242c72ac919b54b3bc8c206e307b3441f7652e2 +7276dfa1325163a2fa2c31506d9ecda2773c802d 7276dfa1325163a2fa2c31506d9ecda2773c802d +7323d1203dfe86339abdc2d09b9c3a36e9ed1489 7323d1203dfe86339abdc2d09b9c3a36e9ed1489 +73576546981aea68ec60ecef9aa66df7a8a2fab8 73576546981aea68ec60ecef9aa66df7a8a2fab8 +796b96d1c402326528b4ba3c12ee9d92d0e212e9 796b96d1c402326528b4ba3c12ee9d92d0e212e9 +7aac1289f73262e69ef73251c4267e993ec412ad 7aac1289f73262e69ef73251c4267e993ec412ad +7d8f2eb8fbd90b7d895b6587331446edb1f3146b 7d8f2eb8fbd90b7d895b6587331446edb1f3146b +8129560efeaf185ef1ef3cac5cd78383995b145a 8129560efeaf185ef1ef3cac5cd78383995b145a +814c77a1126feea315c49216ee8b1412a9f7600a 814c77a1126feea315c49216ee8b1412a9f7600a +8354c094ea61d80dd3d9462e303d4261ffcb1892 8354c094ea61d80dd3d9462e303d4261ffcb1892 +84362efe75be3af7f0f2976b257b470dcdce28b6 84362efe75be3af7f0f2976b257b470dcdce28b6 +855815a7bb26ae7fdfda34c1abe906265143084f 855815a7bb26ae7fdfda34c1abe906265143084f +87cc216f81f3ff0eaf745b3762e434005997f919 87cc216f81f3ff0eaf745b3762e434005997f919 +886e024406d4d75c30ed22ed7b0929b7555a1524 886e024406d4d75c30ed22ed7b0929b7555a1524 +895b0df358ff8d66c48e9f649c91affffdaa6a79 895b0df358ff8d66c48e9f649c91affffdaa6a79 +89f94772682096261658d8ff92fb3298a82427b3 89f94772682096261658d8ff92fb3298a82427b3 +8a56d667e4edddbee885bb109067a8d6e945fc66 8a56d667e4edddbee885bb109067a8d6e945fc66 +8ae78f3cbd78d69821a1a499df8016e781139f5d 8ae78f3cbd78d69821a1a499df8016e781139f5d +8c3dca558ce2b3443f1cd95ce86d7dfde3fa7dbd 8c3dca558ce2b3443f1cd95ce86d7dfde3fa7dbd +8c88439248a753c368b833ee55e8310c03737afe 8c88439248a753c368b833ee55e8310c03737afe +8d0eaa1dbb78fb9df513030d3187829ac57afd6d 8d0eaa1dbb78fb9df513030d3187829ac57afd6d +8d5e6c14ae680a1259afd494b278f41290b4ecbf 8d5e6c14ae680a1259afd494b278f41290b4ecbf +91297ab00d1166e3c3cb540aeb479ec80735b65c 91297ab00d1166e3c3cb540aeb479ec80735b65c +94e868cc2a3e395aefd09ed3b86bec597b6c138e 94e868cc2a3e395aefd09ed3b86bec597b6c138e +95abe018ec6a5ddccd0e3900e9b3b03ece7df6e6 95abe018ec6a5ddccd0e3900e9b3b03ece7df6e6 +95d9893ef37f8cd4dbb02cacf5d3b4d0d0cd626e 95d9893ef37f8cd4dbb02cacf5d3b4d0d0cd626e +971c156d7982d890341bd81dffb4946ec6a06060 971c156d7982d890341bd81dffb4946ec6a06060 +976a2742308b3194ca482b692adfadf6e64b5526 976a2742308b3194ca482b692adfadf6e64b5526 +99006756884f658d1ab7a04495e45f118113303d 99006756884f658d1ab7a04495e45f118113303d +9a26c2908e0dbdc39b1cb21395d40dd85fd8f669 9a26c2908e0dbdc39b1cb21395d40dd85fd8f669 +9a959a55da3c94427ba7786dc64e01951751818e 9a959a55da3c94427ba7786dc64e01951751818e +9c113e185938fcd0e21af6b7f9773ef96ac3d83e 9c113e185938fcd0e21af6b7f9773ef96ac3d83e +9cd9d37f2025c7d8f242226e6a99d7404cb3dbe6 9cd9d37f2025c7d8f242226e6a99d7404cb3dbe6 +9f00c391d8e723adc766b208efa60bc0dfc2f24d 9f00c391d8e723adc766b208efa60bc0dfc2f24d +a17003bc377611ccbc1589215ee8b7aedc85796f a17003bc377611ccbc1589215ee8b7aedc85796f +a54fb0f30f6048101cad79c191a70e5a9c263746 a54fb0f30f6048101cad79c191a70e5a9c263746 +a5aabdce5e65d9620beb040e748a5bb9c9ed89ac a5aabdce5e65d9620beb040e748a5bb9c9ed89ac +a63b3d017b5837e966f3964e6436791c43bf21e3 a63b3d017b5837e966f3964e6436791c43bf21e3 +a7e537424c5528bdc2b358ee1058d1509fe16566 a7e537424c5528bdc2b358ee1058d1509fe16566 +a8b60ba7bfdf33c8c2475210a3d757da40e7d954 a8b60ba7bfdf33c8c2475210a3d757da40e7d954 +a932e58665dff9167c24abdbc63bc8120001f264 a932e58665dff9167c24abdbc63bc8120001f264 +aaf6f29c99a183e6b558abc1f84895d8e824a92d aaf6f29c99a183e6b558abc1f84895d8e824a92d +ab5218f8dbfb8a6fcaef2d88e40b681591229193 ab5218f8dbfb8a6fcaef2d88e40b681591229193 +abf74a0fa2c7ab37e9f79cb3495c73203c0006a4 abf74a0fa2c7ab37e9f79cb3495c73203c0006a4 +ac21cb131be1e3a60d8e899b61cd992b367a5649 ac21cb131be1e3a60d8e899b61cd992b367a5649 +aee04e77bfbd6601adbcd5a46435f059e31cf6e4 aee04e77bfbd6601adbcd5a46435f059e31cf6e4 +af6480effb6b4339eb78b77311634c546f8c6d11 af6480effb6b4339eb78b77311634c546f8c6d11 +b0fdd5fb364d58b55ee39c5d9055e871d5195426 b0fdd5fb364d58b55ee39c5d9055e871d5195426 +b18e52447c872fcd40abb1ce334253d153335e09 b18e52447c872fcd40abb1ce334253d153335e09 +b1cbde92ad38dc1b0246df46349fc69cce60dbc1 b1cbde92ad38dc1b0246df46349fc69cce60dbc1 +b2bba762992ff77f7ffd0c08a6c6ba5f029222ff b2bba762992ff77f7ffd0c08a6c6ba5f029222ff +b4f96c6c8413d4bc2c8fb5994232ad158d8475a9 b4f96c6c8413d4bc2c8fb5994232ad158d8475a9 +b5a717d82d7ba9ea31228d97c4207f4c9fb9066c b5a717d82d7ba9ea31228d97c4207f4c9fb9066c +b6712fbb102d667bd8d7b33b15416f520dd78995 b6712fbb102d667bd8d7b33b15416f520dd78995 +b865391e7738ff0e9d98e75a1282deb6d0f0ea66 b865391e7738ff0e9d98e75a1282deb6d0f0ea66 +bb19195469431a0e2b94832ea9e7a60b1e30c6fc bb19195469431a0e2b94832ea9e7a60b1e30c6fc +bbfcb22601c5cffae7341b26965124649fe08688 bbfcb22601c5cffae7341b26965124649fe08688 +bc8d3f0e60565567a8b8598972614dce7d4ffccd bc8d3f0e60565567a8b8598972614dce7d4ffccd +bd82a9523344a2585ca30f1ae20c69e3c19e4c6f bd82a9523344a2585ca30f1ae20c69e3c19e4c6f +be746f4096f772a5e4a461263375f0ce939fd21c be746f4096f772a5e4a461263375f0ce939fd21c +bea4d1d941736c9da1b6668b2d8b549b8ab4e66d bea4d1d941736c9da1b6668b2d8b549b8ab4e66d +bedb2ecba74dd989d429d14197e4e51595edb188 bedb2ecba74dd989d429d14197e4e51595edb188 +bfff621a7ca4e6baf72151ab8918fbc19391a46b bfff621a7ca4e6baf72151ab8918fbc19391a46b +c0c6233c58ca8f33cb4f3333c027886a0a0dcf3d c0c6233c58ca8f33cb4f3333c027886a0a0dcf3d +c167e70d8b20ec2254115c7b72673605b6a27625 c167e70d8b20ec2254115c7b72673605b6a27625 +c1b4c398b44cec672dc8a32b83e4ec489466881e c1b4c398b44cec672dc8a32b83e4ec489466881e +c423cfc72547100e9f9db1aeeb205bc6e5154309 c423cfc72547100e9f9db1aeeb205bc6e5154309 +c8264ab7eaab9dc3aca8d6d2c0871eadff2fbf4f c8264ab7eaab9dc3aca8d6d2c0871eadff2fbf4f +c86b0bc3ef91cd92d5020d809938560c08d3ad1e c86b0bc3ef91cd92d5020d809938560c08d3ad1e +c88626f93bfb9d7c4cb6e8e4b67f23d0012d7695 c88626f93bfb9d7c4cb6e8e4b67f23d0012d7695 +c88c45cc9facb1fd6a9accfe9baec6360b7d431e c88c45cc9facb1fd6a9accfe9baec6360b7d431e +c8a4c64aafacbc447fa4474a04fd7e2400c901f9 c8a4c64aafacbc447fa4474a04fd7e2400c901f9 +c9c7730de063da9473cfb52991f3da2afb30e455 c9c7730de063da9473cfb52991f3da2afb30e455 +ca65805f6a0541cbeb534b12565505b1a99eb09c ca65805f6a0541cbeb534b12565505b1a99eb09c +cb21e57440d91389c263898cb8752b639254be9c cb21e57440d91389c263898cb8752b639254be9c +cba56fcea1613399ca819d93372c374c9a9ec44f cba56fcea1613399ca819d93372c374c9a9ec44f +d0b64b936318af6541ae64ad2830fc6a04f38abe d0b64b936318af6541ae64ad2830fc6a04f38abe +d1c7ba91853fca818c6ae6c5c29d54a464ebf1fc d1c7ba91853fca818c6ae6c5c29d54a464ebf1fc +d1f8ecf7a045e2559efb03efb4ca3e93a5a131c3 d1f8ecf7a045e2559efb03efb4ca3e93a5a131c3 +d24ed31b4afa6a7912a1a0089664390733505a4e d24ed31b4afa6a7912a1a0089664390733505a4e +d8a1188a10b7feb75dd0dbb6bb039652cd792b50 d8a1188a10b7feb75dd0dbb6bb039652cd792b50 +db36fec73eced367b288192827364f6e40fbfb50 db36fec73eced367b288192827364f6e40fbfb50 +dbc29510f90ed2d462f3f98568281f4bfbadae1f dbc29510f90ed2d462f3f98568281f4bfbadae1f +dc4e4aeeb1400f75fa40bfd4d2503a029c03c52c dc4e4aeeb1400f75fa40bfd4d2503a029c03c52c +dcd132b0ab7e4220ce11dc171c06ede0331300a4 dcd132b0ab7e4220ce11dc171c06ede0331300a4 +ddc808f94f89f623fee361e510d505edef1a2ebf ddc808f94f89f623fee361e510d505edef1a2ebf +de8f1cdf0682d02cd02af6884d7545045f8ae6e1 de8f1cdf0682d02cd02af6884d7545045f8ae6e1 +df1ed8d8d3fb949fbb485625d18578fec983a164 df1ed8d8d3fb949fbb485625d18578fec983a164 +dfdace95f1f7c76cdf1290941dc7d454da232d65 dfdace95f1f7c76cdf1290941dc7d454da232d65 +e1d0d95d881f314f3314eeafd1acb10c7d7db140 e1d0d95d881f314f3314eeafd1acb10c7d7db140 +e2508c83cc1b77af7bbeae6671efa899433c183d e2508c83cc1b77af7bbeae6671efa899433c183d +e34a4ad0d0afc2d990c5e7c80e4f5e9d2bf71b7a e34a4ad0d0afc2d990c5e7c80e4f5e9d2bf71b7a +e4f41049713e4c689f7dbd69d34db8500ca0c01a e4f41049713e4c689f7dbd69d34db8500ca0c01a +e51e11209636712d12a4d7629083b2ffab45cae9 e51e11209636712d12a4d7629083b2ffab45cae9 +e62860938cee3569c3655b4c2793cdf76ba3a6c5 e62860938cee3569c3655b4c2793cdf76ba3a6c5 +e6f43cdf11080a6b0975deaade076968102684eb e6f43cdf11080a6b0975deaade076968102684eb +e71d3260c0d5cf249fa01b40067de17e787e47d8 e71d3260c0d5cf249fa01b40067de17e787e47d8 +e7758e0943c0589f31b874e5e388e78502695cbe e7758e0943c0589f31b874e5e388e78502695cbe +e8a5d312089d683c4be3128ca64589d3a65cd775 e8a5d312089d683c4be3128ca64589d3a65cd775 +e9ad19bb6a8eb6b49a695c8ad20518c692c98f65 e9ad19bb6a8eb6b49a695c8ad20518c692c98f65 +ea1023348db967cc3a84371c44fd4af857dc0e8c ea1023348db967cc3a84371c44fd4af857dc0e8c +eb296fb07648eb17121c05842ffb30967f38bb0b eb296fb07648eb17121c05842ffb30967f38bb0b +ebc6f522db6b0acbf14b4d5e6b2fb8512265c786 ebc6f522db6b0acbf14b4d5e6b2fb8512265c786 +ebcb592efaf746782bc382a81b32eb6587189a52 ebcb592efaf746782bc382a81b32eb6587189a52 +ec0bf64b88443e002d2984c5ecfb113c612ec0f9 ec0bf64b88443e002d2984c5ecfb113c612ec0f9 +ec5a4b0fcce773b45cb7bad33bd15be0e98b18ee ec5a4b0fcce773b45cb7bad33bd15be0e98b18ee +f1c91a72d5b2abd30f40dc0cd0f555daf58aaf9a f1c91a72d5b2abd30f40dc0cd0f555daf58aaf9a +f1f1ec6281d556093b203f341b89738190d6f527 f1f1ec6281d556093b203f341b89738190d6f527 +f22509b8972edabd4a409f4d98e3e5c37f03d222 f22509b8972edabd4a409f4d98e3e5c37f03d222 +f2805d0c816bd929b1299f137652a8b0e84a46d5 f2805d0c816bd929b1299f137652a8b0e84a46d5 +f3642961c9660f495dec47f5e4e4fc37e6b077e3 f3642961c9660f495dec47f5e4e4fc37e6b077e3 +f555e5f5bec4c42b15a8faac133a2dd4a8a1e220 f555e5f5bec4c42b15a8faac133a2dd4a8a1e220 +f83c94fb49a3eea0d902a8275d58a32382f858b0 f83c94fb49a3eea0d902a8275d58a32382f858b0 +f8567b500786d35d29204bb54f6a312874724bbd f8567b500786d35d29204bb54f6a312874724bbd +f863133f777c9dc6bb70f020eb23d1a292434d31 f863133f777c9dc6bb70f020eb23d1a292434d31 +f8a89ef59b4f74566cb2b086b1a88eaabd3ccb4c f8a89ef59b4f74566cb2b086b1a88eaabd3ccb4c +f92e72d7e8387d4a32eb40dfa46f6fc2e37fe047 f92e72d7e8387d4a32eb40dfa46f6fc2e37fe047 +fab9cff1f116904ad8ec40ce484982b96f803425 fab9cff1f116904ad8ec40ce484982b96f803425 +faee443de13f19e9bc85be0860ed04ae6b53e90d faee443de13f19e9bc85be0860ed04ae6b53e90d +fc8ac97ac2ba18ea0d5a299b74b1dc9b57fa18fa fc8ac97ac2ba18ea0d5a299b74b1dc9b57fa18fa +fe40c5334da4f8b5ffcf386bea5e75642fc1fa9c fe40c5334da4f8b5ffcf386bea5e75642fc1fa9c +ff4410ceaa222796900e6ad456aff00ea95948a6 ff4410ceaa222796900e6ad456aff00ea95948a6 Binary files old/nebula-1.9.6/.git/objects/pack/pack-55cf3bbc3c6428b5ac15e3511eb3425f40a71d61.rev and new/nebula-1.9.7/.git/objects/pack/pack-55cf3bbc3c6428b5ac15e3511eb3425f40a71d61.rev differ Binary files old/nebula-1.9.6/.git/objects/pack/pack-7b4ec155f4fde2efb65578bf5714ed16ed6c07d1.idx and new/nebula-1.9.7/.git/objects/pack/pack-7b4ec155f4fde2efb65578bf5714ed16ed6c07d1.idx differ Binary files old/nebula-1.9.6/.git/objects/pack/pack-7b4ec155f4fde2efb65578bf5714ed16ed6c07d1.pack and new/nebula-1.9.7/.git/objects/pack/pack-7b4ec155f4fde2efb65578bf5714ed16ed6c07d1.pack differ Binary files old/nebula-1.9.6/.git/objects/pack/pack-7b4ec155f4fde2efb65578bf5714ed16ed6c07d1.rev and new/nebula-1.9.7/.git/objects/pack/pack-7b4ec155f4fde2efb65578bf5714ed16ed6c07d1.rev differ Binary files old/nebula-1.9.6/.git/objects/pack/pack-96857295374f5107d22af392066d62f7f502f57a.idx and new/nebula-1.9.7/.git/objects/pack/pack-96857295374f5107d22af392066d62f7f502f57a.idx differ Binary files old/nebula-1.9.6/.git/objects/pack/pack-96857295374f5107d22af392066d62f7f502f57a.pack and new/nebula-1.9.7/.git/objects/pack/pack-96857295374f5107d22af392066d62f7f502f57a.pack differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nebula-1.9.6/.git/objects/pack/pack-96857295374f5107d22af392066d62f7f502f57a.promisor new/nebula-1.9.7/.git/objects/pack/pack-96857295374f5107d22af392066d62f7f502f57a.promisor --- old/nebula-1.9.6/.git/objects/pack/pack-96857295374f5107d22af392066d62f7f502f57a.promisor 1970-01-01 01:00:00.000000000 +0100 +++ new/nebula-1.9.7/.git/objects/pack/pack-96857295374f5107d22af392066d62f7f502f57a.promisor 2025-10-10 17:31:46.000000000 +0200 @@ -0,0 +1,122 @@ +02d02f5d64428d9a841cee7df12ac159836b5789 02d02f5d64428d9a841cee7df12ac159836b5789 +0b573e6b344309da856dd6b9e747f8e2ecf93e65 0b573e6b344309da856dd6b9e747f8e2ecf93e65 +0d0943f0ac369354ac6b6db9da6f880e0584d73a 0d0943f0ac369354ac6b6db9da6f880e0584d73a +0e7e20d4122d33d90b4f1b03722f6f8874dd1090 0e7e20d4122d33d90b4f1b03722f6f8874dd1090 +0e9c62abaea0722385c650014de4ba65f257b1c2 0e9c62abaea0722385c650014de4ba65f257b1c2 +0efb9675691ae7ad3e375ca9ccc44078eee51cf0 0efb9675691ae7ad3e375ca9ccc44078eee51cf0 +12460da1f85968dd6e9365afdb99ed94995e2988 12460da1f85968dd6e9365afdb99ed94995e2988 +130f8f99f5e18129e754884c37f5822b7038ee28 130f8f99f5e18129e754884c37f5822b7038ee28 +1916f8923b6f80775b5d2550947ca722d5431e3a 1916f8923b6f80775b5d2550947ca722d5431e3a +1aea83273596bf6a26a3b065af178176dd3cf475 1aea83273596bf6a26a3b065af178176dd3cf475 +1bb4ef5f70bdb2caec407d8778dbcab5ed070ab5 1bb4ef5f70bdb2caec407d8778dbcab5ed070ab5 +1dd3c8cf5a4e39539a87c9b09ef23d3ab1f7d0ca 1dd3c8cf5a4e39539a87c9b09ef23d3ab1f7d0ca +1e67940115ecbec34b25deeb7b714978ee2f4532 1e67940115ecbec34b25deeb7b714978ee2f4532 +20981f08cc90bd27b0a7155a420e9b31854d4cf0 20981f08cc90bd27b0a7155a420e9b31854d4cf0 +24ab24f78dd3b6aa3f4a59f0052573a8c83f83a6 24ab24f78dd3b6aa3f4a59f0052573a8c83f83a6 +2599f5f2ea0386daed0e3c45ba5a8b0c7e01e998 2599f5f2ea0386daed0e3c45ba5a8b0c7e01e998 +28170b622cf5c5fbdf3349152e1f6c80888b1961 28170b622cf5c5fbdf3349152e1f6c80888b1961 +2b5e6e937141af36ad4974569e64a68d16067818 2b5e6e937141af36ad4974569e64a68d16067818 +2ff0954d62e2717fc6de38b6f0276e2079b6105f 2ff0954d62e2717fc6de38b6f0276e2079b6105f +30178c03451593c58a9c17d33953d67ef3910b15 30178c03451593c58a9c17d33953d67ef3910b15 +31762090de0fdeadb7f92e3a92a19a1a41ad7939 31762090de0fdeadb7f92e3a92a19a1a41ad7939 +31987db86295fc6beff233918a5031e913f4fcd4 31987db86295fc6beff233918a5031e913f4fcd4 +3558e1a542336e677d00715ff3f3e54e5abe80a5 3558e1a542336e677d00715ff3f3e54e5abe80a5 +3570e0750597c554d37c726ca02d0900c18e0f7c 3570e0750597c554d37c726ca02d0900c18e0f7c +35d644689f272a6d2e97236c0596adb574d5626f 35d644689f272a6d2e97236c0596adb574d5626f +375b4223a11baf4b78894f567c5a2daa96ce788a 375b4223a11baf4b78894f567c5a2daa96ce788a +3a534051d81c867a0d20a43718eeda67c75967e2 3a534051d81c867a0d20a43718eeda67c75967e2 +3acc8ded4a7a40da60a0a55af92feac3209a9925 3acc8ded4a7a40da60a0a55af92feac3209a9925 +3afd6cb05db16a686168b86e861cd404be58ac11 3afd6cb05db16a686168b86e861cd404be58ac11 +3cb50ddb691644d4b4a19c1da0f7281d4fbf0619 3cb50ddb691644d4b4a19c1da0f7281d4fbf0619 +3d0fa1b65e6515aa47c43e04cabee6d789ecd12a 3d0fa1b65e6515aa47c43e04cabee6d789ecd12a +3d883093c812cae51d9c1a689477ef282da57b00 3d883093c812cae51d9c1a689477ef282da57b00 +3da3fa09a62ab67be738b600dbfacd195ef5fae1 3da3fa09a62ab67be738b600dbfacd195ef5fae1 +4c6364ef5629748ecb29546213ed7d39c8d00f86 4c6364ef5629748ecb29546213ed7d39c8d00f86 +4d47e785f6d44abf54dcbfea6cdeced03e9b0a6e 4d47e785f6d44abf54dcbfea6cdeced03e9b0a6e +4ddd301829ef40e49f967084e52b83a49a7600f8 4ddd301829ef40e49f967084e52b83a49a7600f8 +4e5d51d0c3cc495775582d00a11fb46fa62bb2d3 4e5d51d0c3cc495775582d00a11fb46fa62bb2d3 +5041f82ce386d917a3017497f623dcccd3c8e66e 5041f82ce386d917a3017497f623dcccd3c8e66e +50ad6ad5bcc1168e4b187a66796b404587b77602 50ad6ad5bcc1168e4b187a66796b404587b77602 +50b7d62b22f780dd105d76fdf2562a3b698e3d72 50b7d62b22f780dd105d76fdf2562a3b698e3d72 +523968c2352e3904d9f21e373d90604e297ad914 523968c2352e3904d9f21e373d90604e297ad914 +527f55bc7b0ff270940b0edbbcf2dade3b33e28c 527f55bc7b0ff270940b0edbbcf2dade3b33e28c +54833bdc789754f8b3086f94764e7ac990786b11 54833bdc789754f8b3086f94764e7ac990786b11 +56472dd44b1fcc8c114327512f2a38855547adbb 56472dd44b1fcc8c114327512f2a38855547adbb +578e83e302893414448a8b0365047180bb5e0846 578e83e302893414448a8b0365047180bb5e0846 +58705a775ff9f6d12b59d2427993fbd0bc3c6c96 58705a775ff9f6d12b59d2427993fbd0bc3c6c96 +5fea65c47bc22ceef5d9d6a45d04fc5c6dc478ff 5fea65c47bc22ceef5d9d6a45d04fc5c6dc478ff +62a892b00189463dbd90248b95d0877618e7f242 62a892b00189463dbd90248b95d0877618e7f242 +62f406560ca38e7e37dc0ae2b8a8d663631c18af 62f406560ca38e7e37dc0ae2b8a8d663631c18af +6463ccbba5dc27e71aeb73073adb9d5b1a65b6b6 6463ccbba5dc27e71aeb73073adb9d5b1a65b6b6 +65a6e3e8601e1a4c2b716c183b9727ed41cff887 65a6e3e8601e1a4c2b716c183b9727ed41cff887 +65ea91f5105a5681011580b4bf219f50e187a21d 65ea91f5105a5681011580b4bf219f50e187a21d +66a118a8d0ff856d3fe2466abe7857d371270bc0 66a118a8d0ff856d3fe2466abe7857d371270bc0 +69f6ae84f47316b8772977a072b24188c4a409c9 69f6ae84f47316b8772977a072b24188c4a409c9 +6a023abf20b6ef8e38c2bc8a73447cb2183e8ddc 6a023abf20b6ef8e38c2bc8a73447cb2183e8ddc +6c6c7951563aa1bc4dbe4184900f6277c8d43bba 6c6c7951563aa1bc4dbe4184900f6277c8d43bba +6ff1cb0bdfa23d878e53bfb465f0f64558e00a23 6ff1cb0bdfa23d878e53bfb465f0f64558e00a23 +719e0349e709c0cfc781f941fb3d4effea45c9d9 719e0349e709c0cfc781f941fb3d4effea45c9d9 +71df805f882b109ae8fd51b6b69837ba0a770bf5 71df805f882b109ae8fd51b6b69837ba0a770bf5 +74041ca55e0d24e650ab6312211cb9d40995488e 74041ca55e0d24e650ab6312211cb9d40995488e +746d6a3ab8f3bde7a9b1cfd3d839981145737909 746d6a3ab8f3bde7a9b1cfd3d839981145737909 +765a006654bf2bfd46614853267f550520694275 765a006654bf2bfd46614853267f550520694275 +76cf72fc3c197c5186c639d07d6934232cec5b41 76cf72fc3c197c5186c639d07d6934232cec5b41 +79790a1265e3556c5497c0cb73526c12dc6c896b 79790a1265e3556c5497c0cb73526c12dc6c896b +7f19fe4db78f8549561625fcfee241c7ba7ec2b4 7f19fe4db78f8549561625fcfee241c7ba7ec2b4 +87a0de75bb09f4848f55abc1eb03c4fc20d13525 87a0de75bb09f4848f55abc1eb03c4fc20d13525 +88e33b7e99ede588bc2ce54be2327a0dda6325ac 88e33b7e99ede588bc2ce54be2327a0dda6325ac +8954f4c473e33ee0eb605a7090e5735bf3867961 8954f4c473e33ee0eb605a7090e5735bf3867961 +8a409d25d744bd745e7a7ae0c9e76440b2def1ae 8a409d25d744bd745e7a7ae0c9e76440b2def1ae +8c9123e08791cbd7d919469332b1117c4edddb60 8c9123e08791cbd7d919469332b1117c4edddb60 +8ccc9943ccba295c4d35fda506f4f919df64f818 8ccc9943ccba295c4d35fda506f4f919df64f818 +900b01e5b86403ddc8a882c78e83b77f9d9a4bca 900b01e5b86403ddc8a882c78e83b77f9d9a4bca +90e0de231d26236502b12c1d6868afbd52757c98 90e0de231d26236502b12c1d6868afbd52757c98 +94bb02fe3b8aee70415af5caf5c86a0a72a71e33 94bb02fe3b8aee70415af5caf5c86a0a72a71e33 +94e2c6beb00cdb71df7c28efe30e2726272fe527 94e2c6beb00cdb71df7c28efe30e2726272fe527 +98ad9b408df48383fc7aaa6012d7cad96d499359 98ad9b408df48383fc7aaa6012d7cad96d499359 +9a3b3f3bb6c9996e90a98f88f7256fe37fd2fd04 9a3b3f3bb6c9996e90a98f88f7256fe37fd2fd04 +9e8c721ee0cc3e4a39215b3042634151580ab01a 9e8c721ee0cc3e4a39215b3042634151580ab01a +9fa8a5492ea5e52de8ce4a5f32e9fad303e747a9 9fa8a5492ea5e52de8ce4a5f32e9fad303e747a9 +a78b45f54c3c214eb64d08a9dd46f928f1abe95e a78b45f54c3c214eb64d08a9dd46f928f1abe95e +adb2e84cfa391ed0fad8fde3b4e6d652cd5dd59c adb2e84cfa391ed0fad8fde3b4e6d652cd5dd59c +adf83a26779d2f188caf97d70bc677a36378b3f7 adf83a26779d2f188caf97d70bc677a36378b3f7 +ae19a28f5be753b7de15acb3ec07c5d9557901f7 ae19a28f5be753b7de15acb3ec07c5d9557901f7 +ae2ed500c037a90f85d55d6ef8bc70728d4f716a ae2ed500c037a90f85d55d6ef8bc70728d4f716a +b22dfc08a0612d2d4ab193e41016ae071c052039 b22dfc08a0612d2d4ab193e41016ae071c052039 +b281906f51af72f38c5e75c549c5393402d77eac b281906f51af72f38c5e75c549c5393402d77eac +b2d1d1b5bf17bab6942d313d1347ec4952f7b19b b2d1d1b5bf17bab6942d313d1347ec4952f7b19b +b3c723a462fda42bf18d738b96430e7ba20e88aa b3c723a462fda42bf18d738b96430e7ba20e88aa +b5be25f3e84201a67e0a788912a32dc0d39f5461 b5be25f3e84201a67e0a788912a32dc0d39f5461 +b7a6b04d869a74dbaed3dfdaff105c8381eb6b2c b7a6b04d869a74dbaed3dfdaff105c8381eb6b2c +b803d30a659910d127644c3a32aaf3fac6b2cc25 b803d30a659910d127644c3a32aaf3fac6b2cc25 +b9bdd4c1a53dccc12d7e443a731bfa1f9a96e426 b9bdd4c1a53dccc12d7e443a731bfa1f9a96e426 +ba15723a143661719cb66dac3f730fe8b96ef204 ba15723a143661719cb66dac3f730fe8b96ef204 +bba2a55c6e7916c40229b27a110ce72aa4244461 bba2a55c6e7916c40229b27a110ce72aa4244461 +bdfeb5802b314a0f050ca33e3a727d9b88968e50 bdfeb5802b314a0f050ca33e3a727d9b88968e50 +bedd2b266cc4d22b26a6744339af6b227541a37b bedd2b266cc4d22b26a6744339af6b227541a37b +c14ab2e77f78b3fde66b6235c7170b6afd487a29 c14ab2e77f78b3fde66b6235c7170b6afd487a29 +c2e61df070b30a8bf65737b367765afaf4a7c6bc c2e61df070b30a8bf65737b367765afaf4a7c6bc +c546653a2f4a9401b1acb3de2d72b4609af86052 c546653a2f4a9401b1acb3de2d72b4609af86052 +c5c15c520ae4d12c73427f889fec36d449c37909 c5c15c520ae4d12c73427f889fec36d449c37909 +c8b3d08af1d714a4ebfb4f3e011026a90223a9fb c8b3d08af1d714a4ebfb4f3e011026a90223a9fb +c9559136f0fdbe4b4f9bdab6dc244092221d8791 c9559136f0fdbe4b4f9bdab6dc244092221d8791 +cd5f750cd5b8a6c5ba963b6e258c71107911d28c cd5f750cd5b8a6c5ba963b6e258c71107911d28c +cfb99c220c82f11ad2d07f1cde478e33867244be cfb99c220c82f11ad2d07f1cde478e33867244be +d0103879af61feff70b97819b27973aad422b67d d0103879af61feff70b97819b27973aad422b67d +d46540f0434e01361d3457dd8e7adf0e33fd156a d46540f0434e01361d3457dd8e7adf0e33fd156a +d7710f9abe38cd77d2e4414d2611bd1cc509bcbc d7710f9abe38cd77d2e4414d2611bd1cc509bcbc +d78f564cf0c941fc6e9af1dad4c8503b755d567d d78f564cf0c941fc6e9af1dad4c8503b755d567d +d7913894b8ec4919bbd2a5a1e550e961eaac2708 d7913894b8ec4919bbd2a5a1e550e961eaac2708 +d94cbf1455ae059597b0d32f7fe0e219ec8b965a d94cbf1455ae059597b0d32f7fe0e219ec8b965a +df2dd4e59057d118df7d6eed5ea5fc56188dbd54 df2dd4e59057d118df7d6eed5ea5fc56188dbd54 +e0d41aec9e990af54e362447b0478003081bfc4d e0d41aec9e990af54e362447b0478003081bfc4d +e5845d1cc73d1bc845da36d6035913705018a854 e5845d1cc73d1bc845da36d6035913705018a854 +eebabd339646ede2e5828e7c7a83e6fde9d54c01 eebabd339646ede2e5828e7c7a83e6fde9d54c01 +eee83cf29d097750a183ea1df6b417b890ef90bf eee83cf29d097750a183ea1df6b417b890ef90bf +f03a3535f7e2c52fb694e52c2648468b953d91c0 f03a3535f7e2c52fb694e52c2648468b953d91c0 +f0f4c78dd18003cbb3af0e8ff85a8e14388ecc05 f0f4c78dd18003cbb3af0e8ff85a8e14388ecc05 +f9d4bfa48c9bdf9a794351ed3772bae71a97e8b4 f9d4bfa48c9bdf9a794351ed3772bae71a97e8b4 +fa14f4295e56b3f83cf17dd6b4113bb9f78faa4a fa14f4295e56b3f83cf17dd6b4113bb9f78faa4a +fa4e443040e88b54ad7ba28064d7c15acb137a10 fa4e443040e88b54ad7ba28064d7c15acb137a10 +fa9439302b7483c7dffdae0703cf6a617389033e fa9439302b7483c7dffdae0703cf6a617389033e +fbf58295a33eabf503fcf991f050a7ea58bba3b0 fbf58295a33eabf503fcf991f050a7ea58bba3b0 Binary files old/nebula-1.9.6/.git/objects/pack/pack-96857295374f5107d22af392066d62f7f502f57a.rev and new/nebula-1.9.7/.git/objects/pack/pack-96857295374f5107d22af392066d62f7f502f57a.rev differ Binary files old/nebula-1.9.6/.git/objects/pack/pack-b82908deda8db041db180e2858a6c3efdabea4ce.idx and new/nebula-1.9.7/.git/objects/pack/pack-b82908deda8db041db180e2858a6c3efdabea4ce.idx differ Binary files old/nebula-1.9.6/.git/objects/pack/pack-b82908deda8db041db180e2858a6c3efdabea4ce.pack and new/nebula-1.9.7/.git/objects/pack/pack-b82908deda8db041db180e2858a6c3efdabea4ce.pack differ Binary files old/nebula-1.9.6/.git/objects/pack/pack-b82908deda8db041db180e2858a6c3efdabea4ce.rev and new/nebula-1.9.7/.git/objects/pack/pack-b82908deda8db041db180e2858a6c3efdabea4ce.rev differ Binary files old/nebula-1.9.6/.git/objects/pack/pack-c745111f5f3f056b26b8ec2ecb5942fb0e1c2cf6.idx and new/nebula-1.9.7/.git/objects/pack/pack-c745111f5f3f056b26b8ec2ecb5942fb0e1c2cf6.idx differ Binary files old/nebula-1.9.6/.git/objects/pack/pack-c745111f5f3f056b26b8ec2ecb5942fb0e1c2cf6.pack and new/nebula-1.9.7/.git/objects/pack/pack-c745111f5f3f056b26b8ec2ecb5942fb0e1c2cf6.pack differ Binary files old/nebula-1.9.6/.git/objects/pack/pack-c745111f5f3f056b26b8ec2ecb5942fb0e1c2cf6.rev and new/nebula-1.9.7/.git/objects/pack/pack-c745111f5f3f056b26b8ec2ecb5942fb0e1c2cf6.rev differ Binary files old/nebula-1.9.6/.git/objects/pack/pack-d9a8771d70e5655b423a15b7024745c8a65f2bab.idx and new/nebula-1.9.7/.git/objects/pack/pack-d9a8771d70e5655b423a15b7024745c8a65f2bab.idx differ Binary files old/nebula-1.9.6/.git/objects/pack/pack-d9a8771d70e5655b423a15b7024745c8a65f2bab.pack and new/nebula-1.9.7/.git/objects/pack/pack-d9a8771d70e5655b423a15b7024745c8a65f2bab.pack differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nebula-1.9.6/.git/objects/pack/pack-d9a8771d70e5655b423a15b7024745c8a65f2bab.promisor new/nebula-1.9.7/.git/objects/pack/pack-d9a8771d70e5655b423a15b7024745c8a65f2bab.promisor --- old/nebula-1.9.6/.git/objects/pack/pack-d9a8771d70e5655b423a15b7024745c8a65f2bab.promisor 1970-01-01 01:00:00.000000000 +0100 +++ new/nebula-1.9.7/.git/objects/pack/pack-d9a8771d70e5655b423a15b7024745c8a65f2bab.promisor 2025-10-10 17:31:46.000000000 +0200 @@ -0,0 +1,62 @@ +45c1d3eab386287182ac228c8ec8c9beaf3b1211 HEAD +0af7e6a1ddadd96dfe967ba49e456f2c67969b1e refs/heads/add-http-pprof +e5e449cb1978f4bc76c95247cff6044690f1f5f4 refs/heads/bits-test +f8fe454972d740556600cf2ec9e69caf7a18ff75 refs/heads/cert-v2-more-todo +f488873d70810e693e729b0822b71ea7f6331050 refs/heads/cert-v2-reloads +5fa386bb703fec75a7a59ac6de9350013a52293d refs/heads/cert-v2-reloads-with-relay-stuff +824cd3f0d6bc2c36a6515bc93a2c56c3fa8b90b5 refs/heads/changelog-v1.9.7 +2ea8a72d5c9688985603370e46ba9520950cbca8 refs/heads/channels +9101b62162b2f55a21e37e800cc84a18be9b5278 refs/heads/cross-stack-relay +8f0892ce4bef56735653d858df8c24b351a35e4d refs/heads/default-build-version +99cd812ac3c4bd05a1eb7910ae13fb3617b815b8 refs/heads/dependabot/github_actions/actions/checkout-5 +a773b156217ec53df81ae4f0e8c0633a343cf8f1 refs/heads/dependabot/github_actions/actions/download-artifact-5 +ea96d875333af88bb3312f83827bf8500343b3ea refs/heads/dependabot/go_modules/github.com/gaissmai/bart-0.25.0 +aada7a5b9154a7178b30e19f8c8150b0b3f9acc1 refs/heads/dependabot/go_modules/github.com/kardianos/service-1.2.4 +1b368eacdefb007834b3b8978b500f9d6b7588c3 refs/heads/dependabot/go_modules/github.com/miekg/dns-1.1.68 +6b753403ced97ad5f71370155d5de57a32eb4f0e refs/heads/dependabot/go_modules/github.com/prometheus/client_golang-1.23.2 +a8ffc6e2b7486b2f54e6be70db73e73e48b456b2 refs/heads/dependabot/go_modules/golang-x-dependencies-651a1b6385 +b418a081a8feebe5740574a43a3364578c9e1c61 refs/heads/fips140 +48f5d2a57d7f5bbd504854f6d3ab3acf7c951854 refs/heads/firewall-forward-table +491e7e9faa4d8b6849e29edbad3386561ec88d00 refs/heads/go-yaml-v3 +c338f52ec96e5e5cfba103a20b0b6529a97b4d5d refs/heads/holepunch-remote-allow-list +db11e2f1af19017d21ef5912a5613d48b9db3d02 refs/heads/interface-hooks +5ceac2b078bcb816d9d738c570a35a0a3bc33c78 refs/heads/jay.wren-dns-ctx +2400e2392be3fcb87bf6ef3badc30ee6689ba848 refs/heads/jay.wren-lint +9c6fb08a6dd15e950731a0440691c234e4227b30 refs/heads/make-boringcrypto-checklinkname +45c1d3eab386287182ac228c8ec8c9beaf3b1211 refs/heads/master +0496ef101efc0a4a57e8d31eb938aadff1075a2f refs/heads/multiport +d4aea03dd1236a032fe5508e29cf0494768ba71c refs/heads/mutex-debug +d7c0b643f833134b128823df10be03cc2312813b refs/heads/no-exit +06372e12f1a2fd763c2a8a9d465f5b80511de614 refs/heads/prometheus-static-labels +6d5299715ebb720197f0095b8c287ff0b94928f5 refs/heads/psk +0681195da3f68b6bcda375a2c8f31fca105fec61 refs/heads/psk-v2 +7c3f5339508c7dbc74eea7f925d31b28bafa1b45 refs/heads/release-1.9 +d400d9a5ecb588586c3b9a11f69dda006caed39c refs/heads/release-1.9-hostmap-networks-fix +4c745e8cfe032899e6188f12e241d1adb13a3856 refs/heads/remove-olddead-tunnels +03ab9a1208a32cb59d1f4a917ad66b1ed618d803 refs/heads/synctrace +e1e8fb87fa675f9978e119c38d93d3a93bc5e7cd refs/heads/tun-name-template +9642afa14989ee490cda2f6e8c6ceef1ae5b11bd refs/heads/update-lh-on-netlink-addr +b6c6b96c79a5c64d98fd77162c4427811e69c2e1 refs/heads/windows_udp_buffer_setting +f9d3d521b62aa52463d008ef4e2f2133daaa0b4c refs/tags/v1.0.0 +0312a3e4408836e2a58a08171c31d7b13ae917e2 refs/tags/v1.1.0 +019d573fd023224454e7dce0d68fcf4155f77b91 refs/tags/v1.2.0 +14bd5487d818474fcd39a12b12789a6daeaa210a refs/tags/v1.3.0 +8ef4213a01084719c80a7bd3d1c04e3999ba673c refs/tags/v1.4.0 +57a32f7c15f1ea105507958aac538ae736474158 refs/tags/v1.5.0 +6f6452112c7bd441dc4bea2134a9cda3faea858a refs/tags/v1.5.2 +d2847cddd89fb1c44b3da10a84e7a9b3e2f55131 refs/tags/v1.6.0 +e6f8783d68238d851832a892ece04b0877644f4c refs/tags/v1.6.1 +2bd87e2fd9648115aae5eec6c8405dff4415bb60 refs/tags/v1.7.0 +dc15e3c8f7e27deb87260749015bcc9d80846314 refs/tags/v1.7.1 +fe5893ceb0e59a00921d412c542351af21858279 refs/tags/v1.7.2 +2b49fed0ff9829f2cddff6b9b84daa4573015ba0 refs/tags/v1.8.0 +8a6a50394fc0af13759121a33f6b822da3d7e2b0 refs/tags/v1.8.1 +0627ffad3e6db253fee4309fb2fbf6c3e6bfc138 refs/tags/v1.8.2 +2e19289b18f2617e9b89ca1017795861f79e3001 refs/tags/v1.9.0 +c9a28bc6ee349611a4946e83d51729f4656fdcd7 refs/tags/v1.9.1 +72d867cdb6bd15dccc51a64ecd5c6af545996298 refs/tags/v1.9.2 +68d6c921d3f355bce2be65450d99def28c957482 refs/tags/v1.9.3 +50504c0f3d54a87ed608587010d6358936e1587a refs/tags/v1.9.4 +a2dd225410da9c21b51df1312dc8aa0bf8358c3c refs/tags/v1.9.5 +86fa4053b125adcc2f587cce9aee8af95894f444 refs/tags/v1.9.6 +0c17c48bb173f5208f265b0c3fe074feeb1d4a3b refs/tags/v1.9.7 Binary files old/nebula-1.9.6/.git/objects/pack/pack-d9a8771d70e5655b423a15b7024745c8a65f2bab.rev and new/nebula-1.9.7/.git/objects/pack/pack-d9a8771d70e5655b423a15b7024745c8a65f2bab.rev differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nebula-1.9.6/.git/packed-refs new/nebula-1.9.7/.git/packed-refs --- old/nebula-1.9.6/.git/packed-refs 2025-07-18 14:39:33.000000000 +0200 +++ new/nebula-1.9.7/.git/packed-refs 2025-10-10 17:31:46.000000000 +0200 @@ -1,28 +1,41 @@ # pack-refs with: peeled fully-peeled sorted 0af7e6a1ddadd96dfe967ba49e456f2c67969b1e refs/remotes/origin/add-http-pprof +e5e449cb1978f4bc76c95247cff6044690f1f5f4 refs/remotes/origin/bits-test f8fe454972d740556600cf2ec9e69caf7a18ff75 refs/remotes/origin/cert-v2-more-todo -2b5d51bcac4ffa738925312b105a3a768d21bd83 refs/remotes/origin/channels +f488873d70810e693e729b0822b71ea7f6331050 refs/remotes/origin/cert-v2-reloads +5fa386bb703fec75a7a59ac6de9350013a52293d refs/remotes/origin/cert-v2-reloads-with-relay-stuff +824cd3f0d6bc2c36a6515bc93a2c56c3fa8b90b5 refs/remotes/origin/changelog-v1.9.7 +2ea8a72d5c9688985603370e46ba9520950cbca8 refs/remotes/origin/channels +9101b62162b2f55a21e37e800cc84a18be9b5278 refs/remotes/origin/cross-stack-relay 8f0892ce4bef56735653d858df8c24b351a35e4d refs/remotes/origin/default-build-version -d3d0a6fb3bccf6d2aa25f50a85bf317b432378b3 refs/remotes/origin/dependabot/go_modules/github.com/gaissmai/bart-0.20.5 +99cd812ac3c4bd05a1eb7910ae13fb3617b815b8 refs/remotes/origin/dependabot/github_actions/actions/checkout-5 +a773b156217ec53df81ae4f0e8c0633a343cf8f1 refs/remotes/origin/dependabot/github_actions/actions/download-artifact-5 +ea96d875333af88bb3312f83827bf8500343b3ea refs/remotes/origin/dependabot/go_modules/github.com/gaissmai/bart-0.25.0 aada7a5b9154a7178b30e19f8c8150b0b3f9acc1 refs/remotes/origin/dependabot/go_modules/github.com/kardianos/service-1.2.4 -a59ea487689f736c99606b85f4e1b2e37c377968 refs/remotes/origin/dependabot/go_modules/github.com/miekg/dns-1.1.67 -b7f1f9af72429719fcc3786af4618131ce18bda4 refs/remotes/origin/dependabot/go_modules/golang-x-dependencies-651a1b6385 -4485c476416696bf538a632748501b249e7c0b9b refs/remotes/origin/fips140 -0d6b19ee8f9bbfefba42978746096ecc35af498f refs/remotes/origin/holepunch-remote-allow-list +1b368eacdefb007834b3b8978b500f9d6b7588c3 refs/remotes/origin/dependabot/go_modules/github.com/miekg/dns-1.1.68 +6b753403ced97ad5f71370155d5de57a32eb4f0e refs/remotes/origin/dependabot/go_modules/github.com/prometheus/client_golang-1.23.2 +a8ffc6e2b7486b2f54e6be70db73e73e48b456b2 refs/remotes/origin/dependabot/go_modules/golang-x-dependencies-651a1b6385 +b418a081a8feebe5740574a43a3364578c9e1c61 refs/remotes/origin/fips140 +48f5d2a57d7f5bbd504854f6d3ab3acf7c951854 refs/remotes/origin/firewall-forward-table +491e7e9faa4d8b6849e29edbad3386561ec88d00 refs/remotes/origin/go-yaml-v3 +c338f52ec96e5e5cfba103a20b0b6529a97b4d5d refs/remotes/origin/holepunch-remote-allow-list db11e2f1af19017d21ef5912a5613d48b9db3d02 refs/remotes/origin/interface-hooks 5ceac2b078bcb816d9d738c570a35a0a3bc33c78 refs/remotes/origin/jay.wren-dns-ctx 2400e2392be3fcb87bf6ef3badc30ee6689ba848 refs/remotes/origin/jay.wren-lint 9c6fb08a6dd15e950731a0440691c234e4227b30 refs/remotes/origin/make-boringcrypto-checklinkname -91eff0341802468ac5d53c3510cbbcd94ed560bc refs/remotes/origin/master -ae9de47dd919fc8101226dbd0916369b10002e6f refs/remotes/origin/multiport +45c1d3eab386287182ac228c8ec8c9beaf3b1211 refs/remotes/origin/master +0496ef101efc0a4a57e8d31eb938aadff1075a2f refs/remotes/origin/multiport d4aea03dd1236a032fe5508e29cf0494768ba71c refs/remotes/origin/mutex-debug d7c0b643f833134b128823df10be03cc2312813b refs/remotes/origin/no-exit 06372e12f1a2fd763c2a8a9d465f5b80511de614 refs/remotes/origin/prometheus-static-labels 6d5299715ebb720197f0095b8c287ff0b94928f5 refs/remotes/origin/psk 0681195da3f68b6bcda375a2c8f31fca105fec61 refs/remotes/origin/psk-v2 -105e0ec66c11d57c06c5f1c52a064be3b50e4d25 refs/remotes/origin/release-1.9 +7c3f5339508c7dbc74eea7f925d31b28bafa1b45 refs/remotes/origin/release-1.9 +d400d9a5ecb588586c3b9a11f69dda006caed39c refs/remotes/origin/release-1.9-hostmap-networks-fix 4c745e8cfe032899e6188f12e241d1adb13a3856 refs/remotes/origin/remove-olddead-tunnels 03ab9a1208a32cb59d1f4a917ad66b1ed618d803 refs/remotes/origin/synctrace +e1e8fb87fa675f9978e119c38d93d3a93bc5e7cd refs/remotes/origin/tun-name-template +9642afa14989ee490cda2f6e8c6ceef1ae5b11bd refs/remotes/origin/update-lh-on-netlink-addr b6c6b96c79a5c64d98fd77162c4427811e69c2e1 refs/remotes/origin/windows_udp_buffer_setting f9d3d521b62aa52463d008ef4e2f2133daaa0b4c refs/tags/v1.0.0 0312a3e4408836e2a58a08171c31d7b13ae917e2 refs/tags/v1.1.0 @@ -67,3 +80,5 @@ ^b55b9019a72c7320b5c6dd54d2c31ad89f1e8990 86fa4053b125adcc2f587cce9aee8af95894f444 refs/tags/v1.9.6 ^105e0ec66c11d57c06c5f1c52a064be3b50e4d25 +0c17c48bb173f5208f265b0c3fe074feeb1d4a3b refs/tags/v1.9.7 +^7c3f5339508c7dbc74eea7f925d31b28bafa1b45 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nebula-1.9.6/.git/refs/heads/master new/nebula-1.9.7/.git/refs/heads/master --- old/nebula-1.9.6/.git/refs/heads/master 2025-07-18 14:39:33.000000000 +0200 +++ new/nebula-1.9.7/.git/refs/heads/master 2025-10-10 17:31:46.000000000 +0200 @@ -1 +1 @@ -91eff0341802468ac5d53c3510cbbcd94ed560bc +45c1d3eab386287182ac228c8ec8c9beaf3b1211 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nebula-1.9.6/CHANGELOG.md new/nebula-1.9.7/CHANGELOG.md --- old/nebula-1.9.6/CHANGELOG.md 2025-07-18 14:39:33.000000000 +0200 +++ new/nebula-1.9.7/CHANGELOG.md 2025-10-10 17:31:46.000000000 +0200 @@ -7,6 +7,18 @@ ## [Unreleased] +## [1.9.7] - 2025-10-10 + +### Security + +- Fix an issue where Nebula could incorrectly accept and process a packet from an erroneous source IP when the sender's + certificate is configured with unsafe_routes (cert v1/v2) or multiple IPs (cert v2). (#1494) + +### Changed + +- Disable sending `recv_error` messages when a packet is received outside the allowable counter window. (#1459) +- Improve error messages and remove some unnecessary fatal conditions in the Windows and generic udp listener. (#1543) + ## [1.9.6] - 2025-7-15 ### Added @@ -687,7 +699,8 @@ - Initial public release. -[Unreleased]: https://github.com/slackhq/nebula/compare/v1.9.6...HEAD +[Unreleased]: https://github.com/slackhq/nebula/compare/v1.9.7...HEAD +[1.9.7]: https://github.com/slackhq/nebula/releases/tag/v1.9.7 [1.9.6]: https://github.com/slackhq/nebula/releases/tag/v1.9.6 [1.9.5]: https://github.com/slackhq/nebula/releases/tag/v1.9.5 [1.9.4]: https://github.com/slackhq/nebula/releases/tag/v1.9.4 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nebula-1.9.6/hostmap.go new/nebula-1.9.7/hostmap.go --- old/nebula-1.9.6/hostmap.go 2025-07-18 14:39:33.000000000 +0200 +++ new/nebula-1.9.7/hostmap.go 2025-10-10 17:31:46.000000000 +0200 @@ -22,7 +22,6 @@ const defaultReQueryEvery = 5000 // Count of packets sent before re-querying a hostinfo to the lighthouse const defaultReQueryWait = time.Minute // Minimum amount of seconds to wait before re-querying a hostinfo the lighthouse. Evaluated every ReQueryEvery const MaxRemotes = 10 -const maxRecvError = 4 // MaxHostInfosPerVpnIp is the max number of hostinfos we will track for a given vpn ip // 5 allows for an initial handshake and each host pair re-handshaking twice @@ -220,7 +219,6 @@ remoteIndexId uint32 localIndexId uint32 vpnIp netip.Addr - recvError atomic.Uint32 remoteCidr *bart.Table[struct{}] relayState RelayState @@ -705,13 +703,6 @@ return false } -func (i *HostInfo) RecvErrorExceeded() bool { - if i.recvError.Add(1) >= maxRecvError { - return true - } - return true -} - func (i *HostInfo) CreateRemoteCIDR(c *cert.NebulaCertificate) { if len(c.Details.Ips) == 1 && len(c.Details.Subnets) == 0 { // Simple case, no CIDRTree needed @@ -723,8 +714,7 @@ //TODO: IPV6-WORK what to do when ip is invalid? nip, _ := netip.AddrFromSlice(ip.IP) nip = nip.Unmap() - bits, _ := ip.Mask.Size() - remoteCidr.Insert(netip.PrefixFrom(nip, bits), struct{}{}) + remoteCidr.Insert(netip.PrefixFrom(nip, nip.BitLen()), struct{}{}) } for _, n := range c.Details.Subnets { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nebula-1.9.6/hostmap_test.go new/nebula-1.9.7/hostmap_test.go --- old/nebula-1.9.6/hostmap_test.go 2025-07-18 14:39:33.000000000 +0200 +++ new/nebula-1.9.7/hostmap_test.go 2025-10-10 17:31:46.000000000 +0200 @@ -1,9 +1,11 @@ package nebula import ( + "net" "net/netip" "testing" + "github.com/slackhq/nebula/cert" "github.com/slackhq/nebula/config" "github.com/slackhq/nebula/test" "github.com/stretchr/testify/assert" @@ -87,6 +89,40 @@ assert.Nil(t, h2.next) } +func TestHostInfo_CreateRemoteCIDR(t *testing.T) { + h := HostInfo{} + c := &cert.NebulaCertificate{ + Details: cert.NebulaCertificateDetails{ + Ips: []*net.IPNet{ + { + IP: net.IPv4(1, 2, 3, 4), + Mask: net.IPv4Mask(255, 255, 255, 0), + }, + }, + }, + } + + // remoteCidr should be empty with only 1 ip address present in the certificate + h.CreateRemoteCIDR(c) + assert.Empty(t, h.remoteCidr) + + // remoteCidr should be populated if there is also a subnet in the certificate + c.Details.Subnets = []*net.IPNet{ + { + IP: net.IPv4(9, 2, 3, 4), + Mask: net.IPv4Mask(255, 255, 255, 0), + }, + } + h.CreateRemoteCIDR(c) + assert.NotEmpty(t, h.remoteCidr) + _, ok := h.remoteCidr.Lookup(netip.MustParseAddr("1.2.3.0")) + assert.False(t, ok, "An ip address within the certificates network should not be found") + _, ok = h.remoteCidr.Lookup(netip.MustParseAddr("1.2.3.4")) + assert.True(t, ok, "An exact ip address match should be found") + _, ok = h.remoteCidr.Lookup(netip.MustParseAddr("9.2.3.4")) + assert.True(t, ok, "An ip address within the subnets should be found") +} + func TestHostMap_DeleteHostInfo(t *testing.T) { l := test.NewLogger() hm := newHostMap( diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nebula-1.9.6/outside.go new/nebula-1.9.7/outside.go --- old/nebula-1.9.6/outside.go 2025-07-18 14:39:33.000000000 +0200 +++ new/nebula-1.9.7/outside.go 2025-10-10 17:31:46.000000000 +0200 @@ -286,16 +286,18 @@ } +// handleEncrypted returns true if a packet should be processed, false otherwise func (f *Interface) handleEncrypted(ci *ConnectionState, addr netip.AddrPort, h *header.H) bool { - // If connectionstate exists and the replay protector allows, process packet - // Else, send recv errors for 300 seconds after a restart to allow fast reconnection. - if ci == nil || !ci.window.Check(f.l, h.MessageCounter) { + // If connectionstate does not exist, send a recv error, if possible, to encourage a fast reconnect + if ci == nil { if addr.IsValid() { f.maybeSendRecvError(addr, h.RemoteIndex) - return false - } else { - return false } + return false + } + // If the window check fails, refuse to process the packet, but don't send a recv error + if !ci.window.Check(f.l, h.MessageCounter) { + return false } return true @@ -458,10 +460,6 @@ return } - if !hostinfo.RecvErrorExceeded() { - return - } - if hostinfo.remote.IsValid() && hostinfo.remote != addr { f.l.Infoln("Someone spoofing recv_errors? ", addr, hostinfo.remote) return diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nebula-1.9.6/udp/udp_generic.go new/nebula-1.9.7/udp/udp_generic.go --- old/nebula-1.9.6/udp/udp_generic.go 2025-07-18 14:39:33.000000000 +0200 +++ new/nebula-1.9.7/udp/udp_generic.go 2025-10-10 17:31:46.000000000 +0200 @@ -10,9 +10,11 @@ import ( "context" + "errors" "fmt" "net" "net/netip" + "time" "github.com/sirupsen/logrus" "github.com/slackhq/nebula/config" @@ -80,12 +82,22 @@ fwPacket := &firewall.Packet{} nb := make([]byte, 12, 12) + var lastRecvErr time.Time + for { // Just read one packet at a time n, rua, err := u.ReadFromUDPAddrPort(buffer) if err != nil { - u.l.WithError(err).Debug("udp socket is closed, exiting read loop") - return + if errors.Is(err, net.ErrClosed) { + u.l.WithError(err).Debug("udp socket is closed, exiting read loop") + return + } + // Dampen unexpected message warns to once per minute + if lastRecvErr.IsZero() || time.Since(lastRecvErr) > time.Minute { + lastRecvErr = time.Now() + u.l.WithError(err).Warn("unexpected udp socket receive error") + } + continue } r( diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/nebula-1.9.6/udp/udp_rio_windows.go new/nebula-1.9.7/udp/udp_rio_windows.go --- old/nebula-1.9.6/udp/udp_rio_windows.go 2025-07-18 14:39:33.000000000 +0200 +++ new/nebula-1.9.7/udp/udp_rio_windows.go 2025-10-10 17:31:46.000000000 +0200 @@ -14,6 +14,7 @@ "sync" "sync/atomic" "syscall" + "time" "unsafe" "github.com/sirupsen/logrus" @@ -69,7 +70,7 @@ u := &RIOConn{l: l} - err := u.bind(&windows.SockaddrInet6{Addr: addr.As16(), Port: port}) + err := u.bind(l, &windows.SockaddrInet6{Addr: addr.As16(), Port: port}) if err != nil { return nil, fmt.Errorf("bind: %w", err) } @@ -85,11 +86,11 @@ return u, nil } -func (u *RIOConn) bind(sa windows.Sockaddr) error { +func (u *RIOConn) bind(l *logrus.Logger, sa windows.Sockaddr) error { var err error u.sock, err = winrio.Socket(windows.AF_INET6, windows.SOCK_DGRAM, windows.IPPROTO_UDP) if err != nil { - return err + return fmt.Errorf("winrio.Socket error: %w", err) } // Enable v4 for this socket @@ -103,35 +104,40 @@ size := uint32(unsafe.Sizeof(flag)) err = syscall.WSAIoctl(syscall.Handle(u.sock), syscall.SIO_UDP_CONNRESET, (*byte)(unsafe.Pointer(&flag)), size, nil, 0, &ret, nil, 0) if err != nil { - return err + // This is a best-effort to prevent errors from being returned by the udp recv operation. + // Quietly log a failure and continue. + l.WithError(err).Debug("failed to set UDP_CONNRESET ioctl") } + ret = 0 flag = 0 size = uint32(unsafe.Sizeof(flag)) SIO_UDP_NETRESET := uint32(syscall.IOC_IN | syscall.IOC_VENDOR | 15) err = syscall.WSAIoctl(syscall.Handle(u.sock), SIO_UDP_NETRESET, (*byte)(unsafe.Pointer(&flag)), size, nil, 0, &ret, nil, 0) if err != nil { - return err + // This is a best-effort to prevent errors from being returned by the udp recv operation. + // Quietly log a failure and continue. + l.WithError(err).Debug("failed to set UDP_NETRESET ioctl") } err = u.rx.Open() if err != nil { - return err + return fmt.Errorf("error rx.Open(): %w", err) } err = u.tx.Open() if err != nil { - return err + return fmt.Errorf("error tx.Open(): %w", err) } u.rq, err = winrio.CreateRequestQueue(u.sock, packetsPerRing, 1, packetsPerRing, 1, u.rx.cq, u.tx.cq, 0) if err != nil { - return err + return fmt.Errorf("error CreateRequestQueue: %w", err) } err = windows.Bind(u.sock, sa) if err != nil { - return err + return fmt.Errorf("error windows.Bind(): %w", err) } return nil @@ -144,15 +150,22 @@ fwPacket := &firewall.Packet{} nb := make([]byte, 12, 12) + var lastRecvErr time.Time + for { // Just read one packet at a time n, rua, err := u.receive(buffer) + if err != nil { if errors.Is(err, net.ErrClosed) { u.l.WithError(err).Debug("udp socket is closed, exiting read loop") return } - u.l.WithError(err).Error("unexpected udp socket receive error") + // Dampen unexpected message warns to once per minute + if lastRecvErr.IsZero() || time.Since(lastRecvErr) > time.Minute { + lastRecvErr = time.Now() + u.l.WithError(err).Warn("unexpected udp socket receive error") + } continue } ++++++ vendor.tar.zst ++++++
