void pa_policy_context_add_property_action(struct pa_policy_context_rule *rule, int lineno, enum pa_policy_object_type obj_type, enum pa_classify_method obj_classify, const char *obj_name, const char *prop_name, enum pa_policy_value_type value_type, ... /* value_arg */) { union pa_policy_context_action *action; struct pa_policy_set_property *setprop; va_list value_arg; action = pa_xmalloc0(sizeof(*action)); setprop = &action->setprop; setprop->type = pa_policy_set_property; setprop->lineno = lineno; setprop->object.type = obj_type; match_setup(&setprop->object.match, obj_classify, obj_name, NULL); setprop->property = pa_xstrdup(prop_name); va_start(value_arg, value_type); value_setup(&setprop->value, value_type, value_arg); va_end(value_arg); append_action(&rule->actions, action); }
void x_connective_setup(void) { pdint_setup(); pdfloat_setup(); pdsymbol_setup(); bang_setup(); send_setup(); receive_setup(); select_setup(); route_setup(); pack_setup(); unpack_setup(); trigger_setup(); spigot_setup(); moses_setup(); until_setup(); makefilename_setup(); swap_setup(); change_setup(); value_setup(); }