Package: release.debian.org Severity: normal Tags: trixie X-Debbugs-Cc: tayga@packages.debian.org, dxld@darkboxed.org Control: affects -1 + src:tayga User: release.debian.org@packages.debian.org Usertags: pu Hi Release team, I would appreciate your pre-approval for the following stable-update. [ Reason ] tayga=0.9.2-10 in Trixie regressed in the handling of 'map' directives: #1082060. [ Impact ] This breaks one of the core features of tayga, the ability to establish a mapping between individual IPv4 and IPv6 addressess. Most importantly this impacts the 464XLAT CLAT use-case (see the clatd=2.1.0-2+deb13u1 p-u). [ Tests ] I've manually validated the fix and confirmed map directives as generated by clatd work with the "Fix EAM mapping for host addressess" patch. The patch was taken from a new upstream fork of tayga by Andrew "apalrd" which has added very rigorous automated tests using scapy and I've reviewed Andrew's commit history since he forked our 0.9.2-10 and manually confirmed that no other relevant change was made to the translation code as part of this concentrated testing effort. [ Risks ] The calc_ip4_mask() function we touch here is used throughout the code. Complex configurations could have interactions we don't expect. We could de-risk this further by digging into the details of why the changes to our EAM support patch as part of -9 broke this feature, but I don't think it necessary given the deep testing Andrew did to arrive at this single-line change. [ Checklist ] [x] *all* changes are documented in the d/changelog [x] I reviewed all changes and I approve them [x] attach debdiff against the package in (old)stable [ ] the issue is verified as fixed in unstable -- No: upload in NEW [ Changes ] - Add a patch "Fix EAM mapping for host addressess" which adds a special case for the ipv4 mask calculation with /32 (host) addressess. Thanks, --Daniel
diff -Nru tayga-0.9.2/debian/changelog tayga-0.9.2/debian/changelog
--- tayga-0.9.2/debian/changelog 2024-07-24 08:36:16.000000000 +0200
+++ tayga-0.9.2/debian/changelog 2025-11-17 17:51:37.000000000 +0100
@@ -1,3 +1,10 @@
+tayga (0.9.2-10+deb13u1) trixie; urgency=medium
+
+ * Refresh 0012-rfc8125-local-prefix.patch
+ * Add patch "Fix EAM mapping for host addressess" (Closes: #1082060)
+
+ -- Daniel Gröber <dxld@darkboxed.org> Mon, 17 Nov 2025 17:51:37 +0100
+
tayga (0.9.2-10) unstable; urgency=medium
* Ship a systemd service supporting the default config (Closes: #1039390)
diff -Nru tayga-0.9.2/debian/gbp.conf tayga-0.9.2/debian/gbp.conf
--- tayga-0.9.2/debian/gbp.conf 2024-07-24 08:36:16.000000000 +0200
+++ tayga-0.9.2/debian/gbp.conf 2025-11-17 17:51:37.000000000 +0100
@@ -1,5 +1,5 @@
[DEFAULT]
-debian-branch = debian/master
+debian-branch = debian/trixie
upstream-branch = upstream/latest
upstream-tag = 'upstream/%(version)s'
pristine-tar = True
diff -Nru tayga-0.9.2/debian/patches/0012-rfc8125-local-prefix.patch tayga-0.9.2/debian/patches/0012-rfc8125-local-prefix.patch
--- tayga-0.9.2/debian/patches/0012-rfc8125-local-prefix.patch 2024-07-24 08:36:16.000000000 +0200
+++ tayga-0.9.2/debian/patches/0012-rfc8125-local-prefix.patch 2025-11-17 17:46:57.000000000 +0100
@@ -11,8 +11,8 @@
Bug-Debian: https://bugs.debian.org/1061773
Last-Update: 2024-07-12
---- tayga-0.9.2.orig/addrmap.c
-+++ tayga-0.9.2/addrmap.c
+--- a/addrmap.c
++++ b/addrmap.c
@@ -39,10 +39,11 @@ int validate_ip4_addr(const struct in_ad
int validate_ip6_addr(const struct in6_addr *a)
@@ -27,7 +27,7 @@
/* Reserved per RFC 2373 */
if (!a->s6_addr[0])
return -1;
-@@ -376,7 +377,11 @@ int append_to_prefix(struct in6_addr *ad
+@@ -371,7 +372,11 @@ int append_to_prefix(struct in6_addr *ad
#endif
return 0;
case 96:
@@ -40,8 +40,8 @@
is_private_ip4_addr(addr4))
return -1;
addr6->s6_addr32[0] = prefix->s6_addr32[0];
---- tayga-0.9.2.orig/tayga.c
-+++ tayga-0.9.2/tayga.c
+--- a/tayga.c
++++ b/tayga.c
@@ -504,7 +504,9 @@ int main(int argc, char **argv)
inet_ntop(AF_INET6, &m6->addr, addrbuf, sizeof(addrbuf));
slog(LOG_INFO, "NAT64 prefix: %s/%d\n",
diff -Nru tayga-0.9.2/debian/patches/0013-Fix-EAM-mapping-host-addressess.patch tayga-0.9.2/debian/patches/0013-Fix-EAM-mapping-host-addressess.patch
--- tayga-0.9.2/debian/patches/0013-Fix-EAM-mapping-host-addressess.patch 1970-01-01 01:00:00.000000000 +0100
+++ tayga-0.9.2/debian/patches/0013-Fix-EAM-mapping-host-addressess.patch 2025-11-17 17:46:57.000000000 +0100
@@ -0,0 +1,15 @@
+Description: Fix EAM mapping for host addressess
+Origin: https://github.com/apalrd/tayga/pull/12/commits/ac2a805e10360c41bfe58b18d9391d6fe6a3421a
+Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1082060
+Bug: https://github.com/apalrd/tayga/issues/2
+Applied-Upstream: https://github.com/apalrd/tayga/commit/68cc06f97dcbdaa8de8ed0eb61783500b822e408
+--- a/addrmap.c
++++ b/addrmap.c
+@@ -95,6 +95,7 @@ int is_private_ip4_addr(const struct in_
+ int calc_ip4_mask(struct in_addr *mask, const struct in_addr *addr, int len)
+ {
+ mask->s_addr = htonl(~(0xffffffff >> len));
++ if (len == 32) mask->s_addr = 0xffffffff;
+ if (addr && (addr->s_addr & ~mask->s_addr))
+ return -1;
+ return 0;
diff -Nru tayga-0.9.2/debian/patches/series tayga-0.9.2/debian/patches/series
--- tayga-0.9.2/debian/patches/series 2024-07-24 08:36:16.000000000 +0200
+++ tayga-0.9.2/debian/patches/series 2025-11-17 17:51:37.000000000 +0100
@@ -10,3 +10,4 @@
0010-include-for-writev.patch
0011-null-char.patch
0012-rfc8125-local-prefix.patch
+0013-Fix-EAM-mapping-host-addressess.patch
Attachment:
signature.asc
Description: PGP signature