CLI: Remove special handling of 'core set verbose' from rasterisk.
authorCorey Farrell <git@cfware.com>
Wed, 13 Dec 2017 15:50:59 +0000 (10:50 -0500)
committerCorey Farrell <git@cfware.com>
Wed, 13 Dec 2017 17:10:37 +0000 (11:10 -0600)
rasterisk does not need to handle setting verbose levels locally, it
should just tell the daemon what it wants and print what it is given.
Just max out the verbose level on the local client so all filtering
happens on the daemon.

ASTERISK-20281 #close

Change-Id: Ia305f75f1fc424a9169bfa30ef70d626ace2c8a8

main/asterisk.c

index 5c658d0..92398b7 100644 (file)
@@ -2387,52 +2387,6 @@ static int remoteconsolehandler(const char *s)
            (s[4] == '\0' || isspace(s[4]))) {
                quit_handler(0, SHUTDOWN_FAST, 0);
                ret = 1;
-       } else if (s[0]) {
-               char *shrunk = ast_strdupa(s);
-               char *cur;
-               char *prev;
-
-               /*
-                * Remove duplicate spaces from shrunk for matching purposes.
-                *
-                * shrunk has at least one character in it to start with or we
-                * couldn't get here.
-                */
-               for (prev = shrunk, cur = shrunk + 1; *cur; ++cur) {
-                       if (*prev == ' ' && *cur == ' ') {
-                               /* Skip repeated space delimiter. */
-                               continue;
-                       }
-                       *++prev = *cur;
-               }
-               *++prev = '\0';
-
-               if (strncasecmp(shrunk, "core set verbose ", 17) == 0) {
-                       /*
-                        * We need to still set the rasterisk option_verbose in case we are
-                        * talking to an earlier version which doesn't prefilter verbose
-                        * levels.  This is really a compromise as we should always take
-                        * whatever the server sends.
-                        */
-
-                       if (!strncasecmp(shrunk + 17, "off", 3)) {
-                               ast_verb_console_set(0);
-                       } else {
-                               int verbose_new;
-                               int atleast;
-
-                               atleast = 8;
-                               if (strncasecmp(shrunk + 17, "atleast ", atleast)) {
-                                       atleast = 0;
-                               }
-
-                               if (sscanf(shrunk + 17 + atleast, "%30d", &verbose_new) == 1) {
-                                       if (!atleast || ast_verb_console_get() < verbose_new) {
-                                               ast_verb_console_set(verbose_new);
-                                       }
-                               }
-                       }
-               }
        }
 
        return ret;
@@ -2756,6 +2710,9 @@ static void send_rasterisk_connect_commands(void)
                fdsend(ast_consock, buf);
        }
 
+       /* Leave verbose filtering to the server. */
+       option_verbose = INT_MAX;
+
        if (!ast_opt_mute) {
                fdsend(ast_consock, "logger mute silent");
        } else {