diff --git a/src/modules/textopsx/textopsx.c b/src/modules/textopsx/textopsx.c index 7f8ee82c9e7..9210d07445d 100644 --- a/src/modules/textopsx/textopsx.c +++ b/src/modules/textopsx/textopsx.c @@ -107,96 +107,94 @@ static int pv_parse_bl_iterator_name(pv_spec_t *sp, str *in); static int pv_get_bl_iterator_value( sip_msg_t *msg, pv_param_t *param, pv_value_t *res); -static pv_export_t mod_pvs[] = {{{"hfitname", sizeof("hfitname") - 1}, - PVT_OTHER, pv_get_hf_iterator_hname, 0, - pv_parse_hf_iterator_name, 0, 0, 0}, - {{"hfitbody", sizeof("hfitbody") - 1}, PVT_OTHER, - pv_get_hf_iterator_hbody, 0, pv_parse_hf_iterator_name, 0, 0, - 0}, - {{"blitval", sizeof("blitval") - 1}, PVT_OTHER, - pv_get_bl_iterator_value, 0, pv_parse_bl_iterator_name, 0, 0, - 0}, - {{0, 0}, 0, 0, 0, 0, 0, 0, 0}}; +/* clang-format off */ +static pv_export_t mod_pvs[] = { + {{"hfitname", sizeof("hfitname") - 1}, PVT_OTHER, + pv_get_hf_iterator_hname, 0, pv_parse_hf_iterator_name, 0, 0, 0}, + {{"hfitbody", sizeof("hfitbody") - 1}, PVT_OTHER, + pv_get_hf_iterator_hbody, 0, pv_parse_hf_iterator_name, 0, 0, 0}, + {{"blitval", sizeof("blitval") - 1}, PVT_OTHER, + pv_get_bl_iterator_value, 0, pv_parse_bl_iterator_name, 0, 0, 0}, + {{0, 0}, 0, 0, 0, 0, 0, 0, 0} +}; /* cfg functions */ -/* clag-format off */ static cmd_export_t cmds[] = { - {"msg_apply_changes", (cmd_function)msg_apply_changes_f, 0, 0, 0, - REQUEST_ROUTE | ONREPLY_ROUTE}, - {"msg_set_buffer", (cmd_function)msg_set_buffer_f, 1, fixup_spve_null, - fixup_free_spve_null, REQUEST_ROUTE | ONREPLY_ROUTE}, - {"change_reply_status", change_reply_status_f, 2, - change_reply_status_fixup, 0, ONREPLY_ROUTE}, - {"change_reply_status_code", change_reply_status_code_f, 1, - fixup_igp_null, 0, ONREPLY_ROUTE}, - {"remove_body", (cmd_function)w_remove_body_f, 0, 0, 0, ANY_ROUTE}, - {"keep_hf", (cmd_function)w_keep_hf_f, 0, fixup_regexp_null, 0, - ANY_ROUTE}, - {"keep_hf", (cmd_function)w_keep_hf_f, 1, fixup_regexp_null, 0, - ANY_ROUTE}, - {"fnmatch", (cmd_function)w_fnmatch2_f, 2, fixup_fnmatch, 0, ANY_ROUTE}, - {"fnmatch", (cmd_function)w_fnmatch3_f, 3, fixup_fnmatch, 0, ANY_ROUTE}, - {"append_hf_value", insupddel_hf_value_f, 2, append_hf_value_fixup, 0, - REQUEST_ROUTE | ONREPLY_ROUTE | FAILURE_ROUTE | BRANCH_ROUTE}, - {"insert_hf_value", insupddel_hf_value_f, 2, insert_hf_value_fixup, 0, - REQUEST_ROUTE | ONREPLY_ROUTE | FAILURE_ROUTE | BRANCH_ROUTE}, - {"remove_hf_value", insupddel_hf_value_f, 1, remove_hf_value_fixup, 0, - REQUEST_ROUTE | ONREPLY_ROUTE | FAILURE_ROUTE | BRANCH_ROUTE}, - {"assign_hf_value", insupddel_hf_value_f, 2, assign_hf_value_fixup, 0, - REQUEST_ROUTE | ONREPLY_ROUTE | FAILURE_ROUTE | BRANCH_ROUTE}, - {"remove_hf_value2", insupddel_hf_value_f, 1, remove_hf_value2_fixup, 0, - REQUEST_ROUTE | ONREPLY_ROUTE | FAILURE_ROUTE | BRANCH_ROUTE}, - {"assign_hf_value2", insupddel_hf_value_f, 2, assign_hf_value2_fixup, 0, - REQUEST_ROUTE | ONREPLY_ROUTE | FAILURE_ROUTE | BRANCH_ROUTE}, - {"include_hf_value", incexc_hf_value_f, 2, include_hf_value_fixup, 0, - REQUEST_ROUTE | ONREPLY_ROUTE | FAILURE_ROUTE | BRANCH_ROUTE}, - {"exclude_hf_value", incexc_hf_value_f, 2, exclude_hf_value_fixup, 0, - REQUEST_ROUTE | ONREPLY_ROUTE | FAILURE_ROUTE | BRANCH_ROUTE}, - {"hf_value_exists", incexc_hf_value_f, 2, hf_value_exists_fixup, 0, - REQUEST_ROUTE | ONREPLY_ROUTE | FAILURE_ROUTE | BRANCH_ROUTE}, - {"hf_iterator_start", w_hf_iterator_start, 1, fixup_spve_null, - fixup_free_spve_null, ANY_ROUTE}, - {"hf_iterator_next", w_hf_iterator_next, 1, fixup_spve_null, - fixup_free_spve_null, ANY_ROUTE}, - {"hf_iterator_prev", w_hf_iterator_prev, 1, fixup_spve_null, - fixup_free_spve_null, ANY_ROUTE}, - {"hf_iterator_end", w_hf_iterator_end, 1, fixup_spve_null, - fixup_free_spve_null, ANY_ROUTE}, - {"hf_iterator_rm", w_hf_iterator_rm, 1, fixup_spve_null, - fixup_free_spve_null, ANY_ROUTE}, - {"hf_iterator_append", w_hf_iterator_append, 2, fixup_spve_spve, - fixup_free_spve_spve, ANY_ROUTE}, - {"hf_iterator_insert", w_hf_iterator_insert, 2, fixup_spve_spve, - fixup_free_spve_spve, ANY_ROUTE}, - {"bl_iterator_start", w_bl_iterator_start, 1, fixup_spve_null, - fixup_free_spve_null, ANY_ROUTE}, - {"bl_iterator_next", w_bl_iterator_next, 1, fixup_spve_null, - fixup_free_spve_null, ANY_ROUTE}, - {"bl_iterator_end", w_bl_iterator_end, 1, fixup_spve_null, - fixup_free_spve_null, ANY_ROUTE}, - {"bl_iterator_rm", w_bl_iterator_rm, 1, fixup_spve_null, - fixup_free_spve_null, ANY_ROUTE}, - {"bl_iterator_append", w_bl_iterator_append, 2, fixup_spve_spve, - fixup_free_spve_spve, ANY_ROUTE}, - {"bl_iterator_insert", w_bl_iterator_insert, 2, fixup_spve_spve, - fixup_free_spve_spve, ANY_ROUTE}, - - {"bind_textopsx", (cmd_function)bind_textopsx, 1, 0, 0, ANY_ROUTE}, - - {0, 0, 0, 0, 0, 0}}; + {"msg_apply_changes", (cmd_function)msg_apply_changes_f, 0, 0, 0, + REQUEST_ROUTE | ONREPLY_ROUTE}, + {"msg_set_buffer", (cmd_function)msg_set_buffer_f, 1, fixup_spve_null, + fixup_free_spve_null, REQUEST_ROUTE | ONREPLY_ROUTE}, + {"change_reply_status", change_reply_status_f, 2, + change_reply_status_fixup, 0, ONREPLY_ROUTE}, + {"change_reply_status_code", change_reply_status_code_f, 1, + fixup_igp_null, 0, ONREPLY_ROUTE}, + {"remove_body", (cmd_function)w_remove_body_f, 0, 0, 0, ANY_ROUTE}, + {"keep_hf", (cmd_function)w_keep_hf_f, 0, fixup_regexp_null, 0, ANY_ROUTE}, + {"keep_hf", (cmd_function)w_keep_hf_f, 1, fixup_regexp_null, 0, ANY_ROUTE}, + {"fnmatch", (cmd_function)w_fnmatch2_f, 2, fixup_fnmatch, 0, ANY_ROUTE}, + {"fnmatch", (cmd_function)w_fnmatch3_f, 3, fixup_fnmatch, 0, ANY_ROUTE}, + {"append_hf_value", insupddel_hf_value_f, 2, append_hf_value_fixup, 0, + REQUEST_ROUTE | ONREPLY_ROUTE | FAILURE_ROUTE | BRANCH_ROUTE}, + {"insert_hf_value", insupddel_hf_value_f, 2, insert_hf_value_fixup, 0, + REQUEST_ROUTE | ONREPLY_ROUTE | FAILURE_ROUTE | BRANCH_ROUTE}, + {"remove_hf_value", insupddel_hf_value_f, 1, remove_hf_value_fixup, 0, + REQUEST_ROUTE | ONREPLY_ROUTE | FAILURE_ROUTE | BRANCH_ROUTE}, + {"assign_hf_value", insupddel_hf_value_f, 2, assign_hf_value_fixup, 0, + REQUEST_ROUTE | ONREPLY_ROUTE | FAILURE_ROUTE | BRANCH_ROUTE}, + {"remove_hf_value2", insupddel_hf_value_f, 1, remove_hf_value2_fixup, 0, + REQUEST_ROUTE | ONREPLY_ROUTE | FAILURE_ROUTE | BRANCH_ROUTE}, + {"assign_hf_value2", insupddel_hf_value_f, 2, assign_hf_value2_fixup, 0, + REQUEST_ROUTE | ONREPLY_ROUTE | FAILURE_ROUTE | BRANCH_ROUTE}, + {"include_hf_value", incexc_hf_value_f, 2, include_hf_value_fixup, 0, + REQUEST_ROUTE | ONREPLY_ROUTE | FAILURE_ROUTE | BRANCH_ROUTE}, + {"exclude_hf_value", incexc_hf_value_f, 2, exclude_hf_value_fixup, 0, + REQUEST_ROUTE | ONREPLY_ROUTE | FAILURE_ROUTE | BRANCH_ROUTE}, + {"hf_value_exists", incexc_hf_value_f, 2, hf_value_exists_fixup, 0, + REQUEST_ROUTE | ONREPLY_ROUTE | FAILURE_ROUTE | BRANCH_ROUTE}, + {"hf_iterator_start", w_hf_iterator_start, 1, fixup_spve_null, + fixup_free_spve_null, ANY_ROUTE}, + {"hf_iterator_next", w_hf_iterator_next, 1, fixup_spve_null, + fixup_free_spve_null, ANY_ROUTE}, + {"hf_iterator_prev", w_hf_iterator_prev, 1, fixup_spve_null, + fixup_free_spve_null, ANY_ROUTE}, + {"hf_iterator_end", w_hf_iterator_end, 1, fixup_spve_null, + fixup_free_spve_null, ANY_ROUTE}, + {"hf_iterator_rm", w_hf_iterator_rm, 1, fixup_spve_null, + fixup_free_spve_null, ANY_ROUTE}, + {"hf_iterator_append", w_hf_iterator_append, 2, fixup_spve_spve, + fixup_free_spve_spve, ANY_ROUTE}, + {"hf_iterator_insert", w_hf_iterator_insert, 2, fixup_spve_spve, + fixup_free_spve_spve, ANY_ROUTE}, + {"bl_iterator_start", w_bl_iterator_start, 1, fixup_spve_null, + fixup_free_spve_null, ANY_ROUTE}, + {"bl_iterator_next", w_bl_iterator_next, 1, fixup_spve_null, + fixup_free_spve_null, ANY_ROUTE}, + {"bl_iterator_end", w_bl_iterator_end, 1, fixup_spve_null, + fixup_free_spve_null, ANY_ROUTE}, + {"bl_iterator_rm", w_bl_iterator_rm, 1, fixup_spve_null, + fixup_free_spve_null, ANY_ROUTE}, + {"bl_iterator_append", w_bl_iterator_append, 2, fixup_spve_spve, + fixup_free_spve_spve, ANY_ROUTE}, + {"bl_iterator_insert", w_bl_iterator_insert, 2, fixup_spve_spve, + fixup_free_spve_spve, ANY_ROUTE}, + + {"bind_textopsx", (cmd_function)bind_textopsx, 1, 0, 0, ANY_ROUTE}, + + {0, 0, 0, 0, 0, 0} +}; /* module exports structure */ struct module_exports exports = { - "textopsx", /* module name */ - DEFAULT_DLFLAGS, /* dlopen flags */ - cmds, /* exported cfg functions */ - 0, /* exported cfg parameters */ - 0, /* exported RPC methods */ - mod_pvs, /* exported pseudo-variables */ - 0, /* response handling function */ - mod_init, /* module init function */ - 0, /* per-child init function */ - 0, /* destroy function */ + "textopsx", /* module name */ + DEFAULT_DLFLAGS, /* dlopen flags */ + cmds, /* exported cfg functions */ + 0, /* exported cfg parameters */ + 0, /* exported RPC methods */ + mod_pvs, /* exported pseudo-variables */ + 0, /* response handling function */ + mod_init, /* module init function */ + 0, /* per-child init function */ + 0, /* destroy function */ }; /* clag-format on */