Example #1
0
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));
}
Example #4
0
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));
}
Example #5
0
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));
}
Example #6
0
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);
}