Blob Blame Raw
--- libnl-1.1/lib/route/link.c.BAD	2010-02-27 08:43:45.671957250 -0600
+++ libnl-1.1/lib/route/link.c	2010-02-28 10:23:42.732957755 -0600
@@ -364,14 +364,9 @@
 		link->ce_mask |= LINK_ATTR_QDISC;
 	}
 
-	if (tb[IFLA_MAP]) {
-		struct rtnl_link_ifmap *map =  nla_data(tb[IFLA_MAP]);
-		link->l_map.lm_mem_start = map->mem_start;
-		link->l_map.lm_mem_end   = map->mem_end;
-		link->l_map.lm_base_addr = map->base_addr;
-		link->l_map.lm_irq       = map->irq;
-		link->l_map.lm_dma       = map->dma;
-		link->l_map.lm_port      = map->port;
+        if (tb[IFLA_MAP]) {
+		nla_memcpy(&link->l_map, tb[IFLA_MAP], 
+			   sizeof(struct rtnl_link_ifmap));
 		link->ce_mask |= LINK_ATTR_MAP;
 	}