-_public_ int sd_network_get_ifindices(unsigned **indices) {
- _cleanup_closedir_ DIR *d;
- int r = 0;
- unsigned n = 0;
- _cleanup_free_ uid_t *l = NULL;
-
- d = opendir("/run/systemd/network/links/");
- if (!d)
- return -errno;
-
- for (;;) {
- struct dirent *de;
- int k;
- unsigned index;
-
- errno = 0;
- de = readdir(d);
- if (!de && errno != 0)
- return -errno;
+static int network_get_strv(const char *key, int ifindex, char ***ret) {
+ _cleanup_free_ char *p = NULL, *s = NULL;
+ _cleanup_strv_free_ char **a = NULL;
+ int r;