* Allows vendor and TLV context to persist across $INCLUDEs
*/
typedef struct {
- fr_dict_t *dict; //!< The dictionary before the current BEGIN-PROTOCOL block.
char *filename; //!< name of the file where we read this entry
int line; //!< line number where we read this entry
fr_dict_attr_t const *da; //!< the da we care about
}
dctx->stack[++dctx->stack_depth] = (dict_tokenize_frame_t) {
- .dict = dctx->stack[dctx->stack_depth - 1].dict,
.da = da,
.filename = dctx->filename,
.line = dctx->line,
fr_assert(!dctx->stack[dctx->stack_depth].finalise);
dctx->stack_depth--; /* nuke the BEGIN-PROTOCOL */
- dctx->dict = CURRENT_FRAME(dctx)->dict;
+ dctx->dict = UNCONST(fr_dict_t *, found);
return 0;
}
memset(&dctx, 0, sizeof(dctx));
dctx.dict = dict;
dict_fixup_init(NULL, &dctx.fixup);
- dctx.stack[0].dict = dict;
dctx.stack[0].da = dict->root;
dctx.stack[0].nest = NEST_TOP;
memset(&dctx, 0, sizeof(dctx));
dctx.dict = dict;
- dctx.stack[0].dict = dict;
- dctx.stack[0].da = dict->root;
dctx.stack[0].nest = NEST_TOP;
if (dict_fixup_init(NULL, &dctx.fixup) < 0) return -1;