- r = sd_rtnl_message_addr_new(RTM_NEWADDR, if_loopback, AF_INET, 8, IFA_F_PERMANENT, RT_SCOPE_HOST, &ipv4);
- if (r < 0)
- return r;
-
- r = sd_rtnl_message_append(ipv4, IFA_LOCAL, &ipv4_address);
- if (r < 0)
- return r;
-
- r = sd_rtnl_call_async(rtnl, ipv4, &pipe_handler, counter, 0, NULL);
- if (r < 0)
- return r;
-
- (*counter) ++;
-
- if (!socket_ipv6_is_supported())
- return 0;
-
- r = sd_rtnl_message_addr_new(RTM_NEWADDR, if_loopback, AF_INET6, 128, 0, 0, &ipv6);
+ r = sd_rtnl_message_new_link(rtnl, &req, RTM_SETLINK, LOOPBACK_IFINDEX);