dhcpv6-ia: allow up to 64 bit wide hostid
[project/odhcpd.git] / src / ubus.c
index ebc31032828e66ae541d7c9a6c27396c03035e7f..45b29a4e6459d86d46a6d6f2cd7961ab552fcd51 100644 (file)
@@ -145,7 +145,10 @@ static int handle_dhcpv6_leases(_unused struct ubus_context *ctx, _unused struct
                        blobmsg_add_u32(&b, "iaid", ntohl(a->iaid));
                        blobmsg_add_string(&b, "hostname", (a->hostname) ? a->hostname : "");
                        blobmsg_add_u8(&b, "accept-reconf", a->accept_reconf);
-                       blobmsg_add_u32(&b, "assigned", a->assigned);
+                       if (a->flags & OAF_DHCPV6_NA)
+                               blobmsg_add_u64(&b, "assigned", a->assigned_host_id);
+                       else
+                               blobmsg_add_u16(&b, "assigned", a->assigned_subnet_id);
 
                        m = blobmsg_open_array(&b, "flags");
                        if (a->flags & OAF_BOUND)