]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
Merge branch 'master' into smgmaster
authorMoises Silva <moy@sangoma.com>
Wed, 28 Sep 2011 16:27:10 +0000 (12:27 -0400)
committerMoises Silva <moy@sangoma.com>
Wed, 28 Sep 2011 16:27:10 +0000 (12:27 -0400)
Conflicts:
build/modules.conf.in
libs/esl/fs_cli.c

1  2 
libs/esl/fs_cli.c
src/mod/applications/mod_commands/mod_commands.c
src/mod/endpoints/mod_sofia/mod_sofia.c
src/mod/endpoints/mod_sofia/mod_sofia.h
src/switch.c
src/switch_apr.c
src/switch_core.c
src/switch_loadable_module.c

index 5d0c7eb8c182959ed74cd0a6f1e79a0bdadd9ce5,22906e710fb1d3c0a170c3e255d8556ba5c12039..6ef6d8953d8a2976f55efe10353c5e9aace0fde5
@@@ -6,14 -6,16 +6,17 @@@
  #include <stdlib.h>
  #include <esl.h>
  #include <signal.h>
+ #include <getopt.h>
  
  #define CMD_BUFLEN 1024
- static int WARN_STOP = 0;
 +#define PROMPT_PREFIX "netborder-ss7"
  
- #ifdef WIN32
+ #ifndef WIN32
+ #include <sys/select.h>
+ #include <unistd.h>
+ #include <time.h>
+ #else
  #define strdup(src) _strdup(src)
- #define usleep(time) Sleep(time/1000)
  #define fileno _fileno
  #define read _read
  #include <io.h>
@@@ -847,22 -866,24 +867,43 @@@ static const char *basic_gets(int *cnt
  }
  #endif
  
++<<<<<<< HEAD
 +
 +static void print_banner(FILE *stream)
 +{
 +      fprintf(stream,
 +                      
 +
 +                      "\n"
 +                      "*******************************************************\n"
 +                      "* Netborder SS7 Gateway                               *\n"
 +                      "* Powered by FreeSWITCH (http://www.freeswitch.org)   *\n"
 +                      "*******************************************************\n"
 +                      "\n"
 +                        "Type /help <enter> to see a list of commands\n\n\n"
 +                      );
 +}
 +
++=======
+ static const char *banner =
+       "            _____ ____     ____ _     ___              \n"
+       "           |  ___/ ___|   / ___| |   |_ _|             \n"
+       "           | |_  \\___ \\  | |   | |    | |            \n"
+       "           |  _|  ___) | | |___| |___ | |              \n"
+       "           |_|   |____/   \\____|_____|___|            \n"
+       "\n"
+       "*******************************************************\n"
+       "* Anthony Minessale II, Ken Rice,                     *\n"
+       "* Michael Jerris, Travis Cross                        *\n"
+       "* FreeSWITCH (http://www.freeswitch.org)              *\n"
+       "* Paypal Donations Appreciated: paypal@freeswitch.org *\n"
+       "* Brought to you by ClueCon http://www.cluecon.com/   *\n"
+       "*******************************************************\n"
+       "\n"
+       "Type /help <enter> to see a list of commands\n\n\n";
+ static void print_banner(FILE *stream) { fprintf(stream, "%s%s", output_text_color, banner); }
++>>>>>>> master
  
  static void set_fn_keys(cli_profile_t *profile)
  {
@@@ -998,18 -1104,15 +1124,21 @@@ int main(int argc, char *argv[]
        int count = 0;
        const char *line = NULL;
        char cmd_str[1024] = "";
-       esl_config_t cfg;
        cli_profile_t *profile = NULL;
-       int rv = 0;
  #ifndef WIN32
++<<<<<<< HEAD
 +      char hfile[512] = "/etc/nbess7_cli_history";
 +      char cfile[512] = "/etc/nbess7_cli.conf";
 +      char dft_cfile[512] = "/etc/nbess7_cli.conf";
++=======
+       char hfile[512] = "/tmp/fs_cli_history";
+       char cfile[512] = "/etc/fs_cli.conf";
+       char dft_cfile[512] = "/etc/fs_cli.conf";
++>>>>>>> master
  #else
 -      char hfile[512] = "fs_cli_history";
 -      char cfile[512] = "fs_cli.conf";
 -      char dft_cfile[512] = "fs_cli.conf";
 +      char hfile[512] = "nbess7_cli_history";
 +      char cfile[512] = "nbess7_cli.conf";
 +      char dft_cfile[512] = "nbess7_cli.conf";
  #endif
        char *home = getenv("HOME");
        /* Vars for optargs */
        strncpy(internal_profile.host, "127.0.0.1", sizeof(internal_profile.host));
        strncpy(internal_profile.pass, "ClueCon", sizeof(internal_profile.pass));
        strncpy(internal_profile.name, "internal", sizeof(internal_profile.name));
 -      internal_profile.port = 8021;
 +      internal_profile.port = 8821;
        set_fn_keys(&internal_profile);
+       esl_set_string(internal_profile.prompt_color, prompt_color);
+       esl_set_string(internal_profile.input_text_color, input_text_color);
+       esl_set_string(internal_profile.output_text_color, output_text_color);
        if (home) {
 -              snprintf(hfile, sizeof(hfile), "%s/.fs_cli_history", home);
 -              snprintf(cfile, sizeof(cfile), "%s/.fs_cli_conf", home);
 +              snprintf(hfile, sizeof(hfile), "%s/.nbess7_cli_history", home);
 +              snprintf(cfile, sizeof(cfile), "%s/.nbess7_cli_conf", home);
        }
-       
        signal(SIGINT, handle_SIGINT);
  #ifdef SIGTSTP
        signal(SIGTSTP, handle_SIGINT);
                printf("\n");
                return usage(argv[0]);
        }
++<<<<<<< HEAD
 +
 +      if (!(rv = esl_config_open_file(&cfg, cfile))) {
 +              rv = esl_config_open_file(&cfg, dft_cfile);
 +      }
 +
 +      if (rv) {
 +              char *var, *val;
 +              char cur_cat[128] = "";
 +
 +              while (esl_config_next_pair(&cfg, &var, &val)) {
 +                      if (strcmp(cur_cat, cfg.category)) {
 +                              esl_set_string(cur_cat, cfg.category);
 +                              esl_set_string(profiles[pcount].name, cur_cat);
 +                              esl_set_string(profiles[pcount].host, "localhost");
 +                              esl_set_string(profiles[pcount].pass, "ClueCon");
 +                              profiles[pcount].port = 8821;
 +                              set_fn_keys(&profiles[pcount]);
 +                              esl_log(ESL_LOG_DEBUG, "Found Profile [%s]\n", profiles[pcount].name);
 +                              pcount++;
 +                      }
 +                      
 +                      if (!strcasecmp(var, "host")) {
 +                              esl_set_string(profiles[pcount-1].host, val);
 +                      } else if (!strcasecmp(var, "user")) {
 +                              esl_set_string(profiles[pcount-1].user, val);
 +                      } else if (!strcasecmp(var, "password")) {
 +                              esl_set_string(profiles[pcount-1].pass, val);
 +                      } else if (!strcasecmp(var, "port")) {
 +                              int pt = atoi(val);
 +                              if (pt > 0) {
 +                                      profiles[pcount-1].port = (esl_port_t)pt;
 +                              }
 +                      } else if (!strcasecmp(var, "debug")) {
 +                              int dt = atoi(val);
 +                              if (dt > -1 && dt < 8){
 +                                       profiles[pcount-1].debug = dt;
 +                              }       
 +                      } else if(!strcasecmp(var, "loglevel")) {
 +                              esl_set_string(profiles[pcount-1].loglevel, val);
 +                      } else if(!strcasecmp(var, "quiet")) {
 +                              profiles[pcount-1].quiet = esl_true(val);
 +                      } else if (!strncasecmp(var, "key_F", 5)) {
 +                              char *key = var + 5;
 +
 +                              if (key) {
 +                                      int i = atoi(key);
 +                              
 +                                      if (i > 0 && i < 13) {
 +                                              profiles[pcount-1].console_fnkeys[i - 1] = strdup(val);
 +                                      }
 +                              }
 +                      } 
 +              }
 +              esl_config_close_file(&cfg);
 +      }
 +      
++=======
+       read_config(dft_cfile, cfile);
++>>>>>>> master
        if (optind < argc) {
                get_profile(argv[optind], &profile);
        }
                esl_set_string(profile->loglevel, argv_loglevel);
                profile->quiet = 0;
        }
        esl_log(ESL_LOG_DEBUG, "Using profile %s [%s]\n", profile->name, profile->host);
-       
+       esl_set_string(prompt_color, profile->prompt_color);
+       esl_set_string(input_text_color, profile->input_text_color);
+       esl_set_string(output_text_color, profile->output_text_color);
        if (argv_host) {
 -              if (argv_port && profile->port != 8021) {
 -                      snprintf(bare_prompt_str, sizeof(bare_prompt_str), "freeswitch@%s:%u@%s> ", profile->host, profile->port, profile->name);
 +              if (argv_port && profile->port != 8821) {
 +                      snprintf(prompt_str, sizeof(prompt_str), PROMPT_PREFIX "@%s:%u@%s> ", profile->host, profile->port, profile->name);
                } else {
 -                      snprintf(bare_prompt_str, sizeof(bare_prompt_str), "freeswitch@%s@%s> ", profile->host, profile->name);
 +                      snprintf(prompt_str, sizeof(prompt_str), PROMPT_PREFIX "@%s@%s> ", profile->host, profile->name);
                }
        } else {
 -              snprintf(bare_prompt_str, sizeof(bare_prompt_str), "freeswitch@%s> ", profile->name);
 +              snprintf(prompt_str, sizeof(prompt_str), PROMPT_PREFIX "@%s> ", profile->name);
        }
+       bare_prompt_str_len = (int)strlen(bare_prompt_str);
+ #ifdef WIN32
+       snprintf(prompt_str, sizeof(prompt_str), "%s", bare_prompt_str); /* Not supporting this for now */
+ #else
+       snprintf(prompt_str, sizeof(prompt_str), "%s%s%s", prompt_color, bare_prompt_str, input_text_color);
+ #endif
   connect:
-       CONNECTED = 0;
+       connected = 0;
        while (--loops > 0) {
                memset(&handle, 0, sizeof(handle));
                if (esl_connect(&handle, profile->host, profile->port, profile->user, profile->pass)) {
                wOldColorAttrs = csbiInfo.wAttributes;
        }
  #endif
        if (!argv_quiet && !profile->quiet) {
-               snprintf(cmd_str, sizeof(cmd_str), "log %s\n\n", profile->loglevel);    
+               snprintf(cmd_str, sizeof(cmd_str), "log %s\n\n", profile->loglevel);
                esl_send_recv(&handle, cmd_str);
        }
        print_banner(stdout);
++<<<<<<< HEAD
 +
 +      esl_log(ESL_LOG_INFO, "Netborder SS7 CLI Ready.\nenter /help for a list of commands.\n");
 +      printf("%s\n", handle.last_sr_reply);
 +
++=======
+       esl_log(ESL_LOG_INFO, "FS CLI Ready.\nenter /help for a list of commands.\n");
+       output_printf("%s\n", handle.last_sr_reply);
++>>>>>>> master
        while (running > 0) {
                int r;
-               
  #ifdef HAVE_EDITLINE
                line = el_gets(el, &count);
  #else
diff --cc src/switch.c
Simple merge
Simple merge
Simple merge
Simple merge