system-dummy: add route metric information
[project/netifd.git] / system-dummy.c
index 7d651a5..71dad0e 100644 (file)
@@ -82,10 +82,21 @@ int system_if_check(struct device *dev)
 struct device *
 system_if_get_parent(struct device *dev)
 {
+       if (!strcmp(dev->ifname, "eth0"))
+               return device_get("eth1", true);
+
        return NULL;
 }
 
-int system_if_dump_stats(struct device *dev, struct blob_buf *b)
+int
+system_if_dump_info(struct device *dev, struct blob_buf *b)
+{
+       blobmsg_add_u8(b, "link", dev->present);
+       return 0;
+}
+
+int
+system_if_dump_stats(struct device *dev, struct blob_buf *b)
 {
        return 0;
 }
@@ -148,6 +159,9 @@ int system_add_route(struct device *dev, struct device_route *route)
        if (route->flags & DEVADDR_DEVICE)
                sprintf(devstr, " dev %s", dev->ifname);
 
+       if (route->metric > 0)
+               sprintf(devstr, " metric %d", route->metric);
+
        D(SYSTEM, "route add %s%s%s\n", addr, gw, devstr);
        return 0;
 }