docs: def family_free_data(c):
      """https://github.com/thom311/libnl/blob/libnl3_2_25/lib/genl/family.c#L45.
  
      Positional arguments:
      c -- nl_object-derived class instance.
      """
      family = c
      if not hasattr(family, 'gf_ops'):
          setattr(family, 'gf_ops', nl_list_head(container_of=family))
      if not hasattr(family, 'gf_mc_grps'):
          setattr(family, 'gf_mc_grps', nl_list_head(container_of=family))
      ops = tmp = genl_family_op()
      grp = t_grp = genl_family_grp()
      if family is None:
          return
      for ops in nl_list_for_each_entry_safe(ops, tmp, family.gf_ops, 'o_list'):
          nl_list_del(ops.o_list)
      for grp in nl_list_for_each_entry_safe(grp, t_grp, family.gf_mc_grps, 'list_'):
          nl_list_del(grp.list_)