Lines Matching refs:mdp
39 static void md_free_prop(mmd_t *mdp, md_prop_t *propp);
40 static void md_free_string(mmd_t *mdp, md_string_t *msp);
41 static void md_free_data_block(mmd_t *mdp, md_data_block_t *mdbp);
58 md_find_string(mmd_t *mdp, char *strp, uint32_t *hashp)
68 CHAIN_ITER(mdp->string_list, msp) {
77 md_new_string(mmd_t *mdp, char *strp)
82 msp = md_find_string(mdp, strp, &hash);
96 CHAIN_ADD(mdp->string_list, msp);
104 md_find_data_block(mmd_t *mdp, uint8_t *datap, int len, uint32_t *hashp)
114 CHAIN_ITER(mdp->data_block_list, dbp) {
124 md_new_data_block(mmd_t *mdp, uint8_t *bufp, int len)
129 dbp = md_find_data_block(mdp, bufp, len, &hash);
144 CHAIN_ADD(mdp->data_block_list, dbp);
152 md_new_node(mmd_t *mdp, char *sp)
159 nodep->typep = md_new_string(mdp, sp);
164 CHAIN_ADD(mdp->node_list, nodep);
170 md_new_property(mmd_t *mdp, md_node_t *nodep, uint8_t type, char *sp)
178 propp->sp = md_new_string(mdp, sp);
190 md_add_value_property(mmd_t *mdp, md_node_t *nodep, char *sp, uint64_t value)
194 propp = md_new_property(mdp, nodep, MDET_PROP_VAL, sp);
202 md_add_string_property(mmd_t *mdp, md_node_t *nodep, char *sp, char *bufp)
207 dbp = md_new_data_block(mdp, (uint8_t *)bufp, strlen(bufp) + 1);
210 propp = md_new_property(mdp, nodep, MDET_PROP_STR, sp);
212 md_free_data_block(mdp, dbp);
220 md_add_data_property(mmd_t *mdp, md_node_t *nodep, char *sp, int len,
226 dbp = md_new_data_block(mdp, bufp, len);
230 propp = md_new_property(mdp, nodep, MDET_PROP_DAT, sp);
232 md_free_data_block(mdp, dbp);
240 md_add_arc_property(mmd_t *mdp, md_node_t *nodep, char *arcnamep,
245 propp = md_new_property(mdp, nodep, MDET_PROP_ARC, arcnamep);
254 md_link_new_node(mmd_t *mdp, char *nodenamep, md_node_t *parentnodep,
259 nodep = md_new_node(mdp, nodenamep);
266 if (md_add_arc_property(mdp, parentnodep, linktonewp, nodep) != 0) {
271 if (md_add_arc_property(mdp,
281 md_destroy(mmd_t *mdp)
285 for (nodep = CHAIN_START(mdp->node_list); nodep != NULL; ) {
289 md_free_node(mdp, nodep);
295 ASSERT(CHAIN_LENGTH(mdp->string_list) == 0);
296 free(mdp);
300 md_free_node(mmd_t *mdp, md_node_t *nodep)
305 md_free_string(mdp, nodep->typep);
311 md_free_prop(mdp, propp);
320 md_free_prop(mmd_t *mdp, md_prop_t *propp)
323 md_free_string(mdp, propp->sp);
334 md_free_data_block(mdp, propp->d.dbp);
345 md_free_string(mmd_t *mdp, md_string_t *msp)
353 mdp->string_list.startp = msp->nextp;
359 md_free_data_block(mmd_t *mdp, md_data_block_t *mdbp)
367 mdp->data_block_list.startp = mdbp->nextp;
427 md_gen_bin(mmd_t *mdp, uint8_t **bufvalp)
446 for (msp = CHAIN_START(mdp->string_list); msp != NULL;
458 for (mdbp = CHAIN_START(mdp->data_block_list); mdbp != NULL;
473 for (nodep = CHAIN_START(mdp->node_list); nodep != NULL;
512 for (nodep = CHAIN_START(mdp->node_list); nodep != NULL;
543 for (msp = CHAIN_START(mdp->string_list); msp != NULL;
554 for (mdbp = CHAIN_START(mdp->data_block_list); mdbp != NULL;