static void register_console_fq_commands() { noit_console_state_t *tl; cmd_info_t *showcmd; tl = noit_console_state_initial(); showcmd = noit_console_state_get_cmd(tl, "show"); assert(showcmd && showcmd->dstate); noit_console_state_add_cmd(showcmd->dstate, NCSCMD("fq", noit_console_show_fq, NULL, NULL, NULL)); }
noit_console_state_t * noit_console_mksubdelegate(noit_console_state_t *parent, const char *cmd) { noit_console_state_t *child; cmd_info_t *existing; existing = noit_console_state_get_cmd(parent, cmd); if(existing) return existing->dstate; child = noit_console_state_alloc(); noit_console_state_add_cmd(parent, NCSCMD(cmd, noit_console_state_delegate, noit_console_opt_delegate, child, NULL)); return child; }
static void register_console_dns_cache_commands() { noit_console_state_t *tl; cmd_info_t *showcmd, *nocmd; tl = noit_console_state_initial(); showcmd = noit_console_state_get_cmd(tl, "show"); assert(showcmd && showcmd->dstate); nocmd = noit_console_state_get_cmd(tl, "no"); assert(nocmd && nocmd->dstate); noit_console_state_add_cmd(showcmd->dstate, NCSCMD("dns_cache", noit_console_show_dns_cache, NULL, NULL, NULL)); noit_console_state_add_cmd(tl, NCSCMD("dns_cache", noit_console_manip_dns_cache, NULL, NULL, NULL)); noit_console_state_add_cmd(nocmd->dstate, NCSCMD("dns_cache", noit_console_manip_dns_cache, NULL, NULL, (void *)0x1)); }
static void register_console_filter_commands() { noit_console_state_t *tl, *filterset_state, *nostate; cmd_info_t *confcmd, *conf_t_cmd, *no_cmd; tl = noit_console_state_initial(); confcmd = noit_console_state_get_cmd(tl, "configure"); assert(confcmd && confcmd->dstate); conf_t_cmd = noit_console_state_get_cmd(confcmd->dstate, "terminal"); assert(conf_t_cmd && conf_t_cmd->dstate); nostate = noit_console_state_alloc(); noit_console_state_add_cmd(nostate, NCSCMD("rule", noit_console_rule_configure, NULL, NULL, (void *)1)); filterset_state = noit_console_state_alloc(); noit_console_state_add_cmd(filterset_state, NCSCMD("exit", noit_console_config_cd, NULL, NULL, "..")); noit_console_state_add_cmd(filterset_state, NCSCMD("status", noit_console_filter_show, NULL, NULL, NULL)); noit_console_state_add_cmd(filterset_state, NCSCMD("rule", noit_console_rule_configure, NULL, NULL, NULL)); noit_console_state_add_cmd(filterset_state, NCSCMD("no", noit_console_state_delegate, noit_console_opt_delegate, nostate, NULL)); filterset_state->console_prompt_function = conf_t_filterset_prompt; noit_console_state_add_cmd(conf_t_cmd->dstate, NCSCMD("filterset", noit_console_filter_configure, NULL, filterset_state, NULL)); no_cmd = noit_console_state_get_cmd(conf_t_cmd->dstate, "no"); assert(no_cmd && no_cmd->dstate); noit_console_state_add_cmd(no_cmd->dstate, NCSCMD("filterset", noit_console_filter_configure, NULL, NULL, (void *)1)); }
static void register_console_check_commands() { noit_console_state_t *tl; cmd_info_t *showcmd; tl = noit_console_state_initial(); showcmd = noit_console_state_get_cmd(tl, "show"); assert(showcmd && showcmd->dstate); noit_console_state_add_cmd(showcmd->dstate, NCSCMD("checks", noit_console_show_checks, NULL, NULL, NULL)); noit_console_state_add_cmd(showcmd->dstate, NCSCMD("watches", noit_console_show_watchlist, NULL, NULL, NULL)); }
static void register_console_config_check_commands() { cmd_info_t *showcmd, *nocmd, *confcmd, *conftcmd, *conftnocmd, *lscmd; noit_console_state_t *tl, *_conf_t_check_state, *_unset_state, *_attr_state, *_uattr_state; tl = noit_console_state_initial(); showcmd = noit_console_state_get_cmd(tl, "show"); nocmd = noit_console_state_get_cmd(tl, "no"); confcmd = noit_console_state_get_cmd(tl, "configure"); conftcmd = noit_console_state_get_cmd(confcmd->dstate, "terminal"); conftnocmd = noit_console_state_get_cmd(conftcmd->dstate, "no"); lscmd = noit_console_state_get_cmd(conftcmd->dstate, "ls"); lscmd->func = noit_console_config_show; /* attribute <attrname> <value> */ NEW_STATE(_attr_state); noit_console_state_add_check_attrs(_attr_state, noit_conf_check_set_attr, "/checks"); /* no attribute <attrname> <value> */ NEW_STATE(_uattr_state); noit_console_state_add_check_attrs(_uattr_state, noit_conf_check_unset_attr, "/checks"); NEW_STATE(_unset_state); DELEGATE_CMD(_unset_state, "attribute", noit_console_opt_delegate, _uattr_state); ADD_CMD(_unset_state, "config", noit_console_config_unsetconfig, NULL, NULL, NULL); DELEGATE_CMD(conftnocmd->dstate, "attribute", noit_console_opt_delegate, _uattr_state); ADD_CMD(conftnocmd->dstate, "config", noit_console_config_unsetconfig, NULL, NULL, NULL); ADD_CMD(conftnocmd->dstate, "check", noit_console_config_nocheck, NULL, NULL, NULL); NEW_STATE(_conf_t_check_state); _conf_t_check_state->console_prompt_function = conf_t_check_prompt; DELEGATE_CMD(_conf_t_check_state, "attribute", noit_console_opt_delegate, _attr_state); DELEGATE_CMD(_conf_t_check_state, "no", noit_console_opt_delegate, _unset_state); ADD_CMD(_conf_t_check_state, "config", noit_console_config_setconfig, NULL, NULL, NULL); ADD_CMD(_conf_t_check_state, "status", noit_console_show_check, NULL, NULL, NULL); ADD_CMD(_conf_t_check_state, "exit", noit_console_config_cd, NULL, NULL, ".."); ADD_CMD(_conf_t_check_state, "check", noit_console_check, noit_console_conf_check_opts, _conf_t_check_state, ".."); ADD_CMD(conftcmd->dstate, "config", noit_console_config_setconfig, NULL, NULL, NULL); ADD_CMD(conftcmd->dstate, "check", noit_console_check, noit_console_conf_check_opts, _conf_t_check_state, NULL); ADD_CMD(showcmd->dstate, "check", noit_console_show_check, noit_console_check_opts, NULL, NULL); ADD_CMD(tl, "watch", noit_console_watch_check, noit_console_check_opts, NULL, (void *)1); ADD_CMD(nocmd->dstate, "watch", noit_console_watch_check, noit_console_check_opts, NULL, (void *)0); DELEGATE_CMD(conftcmd->dstate, "attribute", noit_console_opt_delegate, _attr_state); ADD_CMD(tl, "reload", noit_conf_checks_reload, NULL, NULL, NULL); }