|
@@ -61,6 +61,7 @@ DO_CONFIG(config_verbatimchar);
|
|
|
DO_CONFIG(config_verbose);
|
|
DO_CONFIG(config_verbose);
|
|
|
DO_CONFIG(config_wordwrap);
|
|
DO_CONFIG(config_wordwrap);
|
|
|
DO_CONFIG(config_iac_ga);
|
|
DO_CONFIG(config_iac_ga);
|
|
|
|
|
+DO_CONFIG(config_multi_trigger);
|
|
|
|
|
|
|
|
typedef struct session *CONFIG (struct session *ses, char *arg1, char *arg2, int index);
|
|
typedef struct session *CONFIG (struct session *ses, char *arg1, char *arg2, int index);
|
|
|
|
|
|
|
@@ -312,6 +313,13 @@ struct config_type config_table[] =
|
|
|
config_iac_ga
|
|
config_iac_ga
|
|
|
},
|
|
},
|
|
|
|
|
|
|
|
|
|
+ {
|
|
|
|
|
+ "MULTI TRIGGER",
|
|
|
|
|
+ "Trigger off all #action that matched server output",
|
|
|
|
|
+ "Just trigger off one #action only",
|
|
|
|
|
+ config_multi_trigger
|
|
|
|
|
+ },
|
|
|
|
|
+
|
|
|
{
|
|
{
|
|
|
"",
|
|
"",
|
|
|
"",
|
|
"",
|
|
@@ -1376,3 +1384,27 @@ DO_CONFIG(config_iac_ga)
|
|
|
|
|
|
|
|
return ses;
|
|
return ses;
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+DO_CONFIG(config_multi_trigger)
|
|
|
|
|
+{
|
|
|
|
|
+ if (*arg2)
|
|
|
|
|
+ {
|
|
|
|
|
+ if (is_abbrev(arg2, "ON"))
|
|
|
|
|
+ {
|
|
|
|
|
+ SET_BIT(ses->config_flags, CONFIG_FLAG_MULTI_TRIGGER);
|
|
|
|
|
+ }
|
|
|
|
|
+ else if (is_abbrev(arg2, "OFF"))
|
|
|
|
|
+ {
|
|
|
|
|
+ DEL_BIT(ses->config_flags, CONFIG_FLAG_MULTI_TRIGGER);
|
|
|
|
|
+ }
|
|
|
|
|
+ else
|
|
|
|
|
+ {
|
|
|
|
|
+ show_error(ses, LIST_CONFIG, "#SYNTAX: #CONFIG {%s} <ON|OFF>", config_table[index].name);
|
|
|
|
|
+
|
|
|
|
|
+ return NULL;
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ strcpy(arg2, HAS_BIT(ses->config_flags, CONFIG_FLAG_MULTI_TRIGGER) ? "ON" : "OFF");
|
|
|
|
|
+
|
|
|
|
|
+ return ses;
|
|
|
|
|
+}
|