*lst = Emalloc(sizeof(struct MatchList) * count);
*cnt = count;
for (i=0; i<count; ++i) {
- char const *tmp = entries[i]->d_name;
- size_t l = strlen(tmp);
- char vname[sizeof("./") + l];
+ char const *tmp = entries[i]->d_name;
+ size_t l = strlen(tmp);
+ char vname[sizeof("./") + l];
+ struct MatchVserverInfo vserver = {
+ .name = vname,
+ .use_pkgmgmt = true
+ };
memcpy(vname, "./", 2);
memcpy(vname+2, tmp, l+1);
- if (!MatchList_initByVserver((*lst)+i, vname, 0)) {
+ if (!MatchVserverInfo_init(&vserver)) {
+ WRITE_MSG(2, "failed to initialize unification of reference vserver\n");
+ exit(1);
+ }
+
+ if (!MatchList_initByVserver((*lst)+i, &vserver)) {
WRITE_MSG(2, "unification for reference vserver not configured\n");
exit(1);
}
free(entries[i]);
+ MatchVserverInfo_free(&vserver);
}
free(entries);