X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Fecoli_node_any.c;fp=src%2Fecoli_node_any.c;h=fbcc460c62812b800c6e220fa3303924971c1bff;hb=30e5cbaaadb72f5a1bc42335c22d0a92606dedbd;hp=9166dbbd5fa0799794c25f31d74ea72799b2bfec;hpb=61a84a21fe4f71327d652b183a4cd80900510f4f;p=protos%2Flibecoli.git diff --git a/src/ecoli_node_any.c b/src/ecoli_node_any.c index 9166dbb..fbcc460 100644 --- a/src/ecoli_node_any.c +++ b/src/ecoli_node_any.c @@ -99,6 +99,38 @@ static struct ec_node_type ec_node_any_type = { EC_NODE_TYPE_REGISTER(ec_node_any_type); +struct ec_node * +ec_node_any(const char *id, const char *attr) +{ + struct ec_config *config = NULL; + struct ec_node *gen_node = NULL; + int ret; + + gen_node = ec_node_from_type(&ec_node_any_type, id); + if (gen_node == NULL) + return NULL; + + config = ec_config_dict(); + if (config == NULL) + goto fail; + + ret = ec_config_dict_set(config, "attr", ec_config_string(attr)); + if (ret < 0) + goto fail; + + ret = ec_node_set_config(gen_node, config); + config = NULL; + if (ret < 0) + goto fail; + + return gen_node; + +fail: + ec_config_free(config); + ec_node_free(gen_node); + return NULL; +} + /* LCOV_EXCL_START */ static int ec_node_any_testcase(void) {