[OpenWrt-Devel] luci: dhcpv6 leases

e9hack e9hack at gmail.com
Sun Nov 3 03:05:37 EST 2019


Hi,

Luci doesn't show dhcpv6 leases from a dnsmasq lease file. For dhcpv6, the second entry of a lease is the IAID. The
parsing code expects a MAC instead of a IAID. I did fix this for me. I'm not sure, if there is any influence, if the MAC
of a lease entry is zero.

Regards,
Hartmut

diff --git a/libs/rpcd-mod-luci/src/luci.c b/libs/rpcd-mod-luci/src/luci.c
index 245ca636b..b94772be4 100644
--- a/libs/rpcd-mod-luci/src/luci.c
+++ b/libs/rpcd-mod-luci/src/luci.c
@@ -435,9 +435,6 @@ lease_next(void)

 			ea = ether_aton(p);

-			if (!ea)
-				continue;
-
 			p = strtok(NULL, " \t\n");

 			if (p && inet_pton(AF_INET6, p, &e.addr.in6))
@@ -446,6 +443,9 @@ lease_next(void)
 				e.af = AF_INET;
 			else
 				continue;
+			
+			if (!ea && e.af != AF_INET6)
+				continue;

 			e.hostname = strtok(NULL, " \t\n");
 			e.duid     = strtok(NULL, " \t\n");
@@ -459,7 +459,8 @@ lease_next(void)
 			if (!strcmp(e.duid, "*"))
 				e.duid = NULL;

-			e.mac = *ea;
+			if (ea)
+				e.mac = *ea;

 			return &e;
 		}

_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel



More information about the openwrt-devel mailing list