diff -Naur libnl-3.2.22-orig/lib/route/link.c libnl-3.2.22/lib/route/link.c --- libnl-3.2.22-orig/lib/route/link.c 2013-02-24 11:06:54.000000000 -0500 +++ libnl-3.2.22/lib/route/link.c 2013-09-23 15:42:29.167629304 -0400 @@ -1743,10 +1743,11 @@ link->l_family = family; link->ce_mask |= LINK_ATTR_FAMILY; - if (link->l_af_ops) + if (link->l_af_ops) { af_free(link, link->l_af_ops, link->l_af_data[link->l_af_ops->ao_family], NULL); - + link->l_af_data[link->l_af_ops->ao_family] = NULL; + } link->l_af_ops = af_lookup_and_alloc(link, family); }