struct netns_entry* netns_store_insert(const char *ns_name) { struct netns_entry *entry = NULL; int fd = open_named_namespace(ns_name); if (fd == -1) goto out; entry = calloc(1, sizeof(*entry)); if (!entry) goto out; entry->fd = fd; entry->node.key = strdup(ns_name); entry->name_len = strlen(ns_name); ebis_insert(&namespace_tree_root, &entry->node); out: return entry; }
/* This function inserts proxy <px> into the tree of known proxies. The proxy's * name is used as the storing key so it must already have been initialized. */ void proxy_store_name(struct proxy *px) { px->conf.by_name.key = px->id; ebis_insert(&proxy_by_name, &px->conf.by_name); }