Reverting revision 10998 that was accidentaly committed to trunk. My apologies.
authorOlle Johansson <oej@edvina.net>
Fri, 24 Feb 2006 10:50:43 +0000 (10:50 +0000)
committerOlle Johansson <oej@edvina.net>
Fri, 24 Feb 2006 10:50:43 +0000 (10:50 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@10989 65c4cc65-6c06-0410-ace0-fbb531ad65f3

apps/app_voicemail.c
config.c
include/asterisk/config.h
include/asterisk/utils.h
pbx/pbx_config.c
pbx/pbx_spool.c
res/res_musiconhold.c

index ee51df6..dc2db6e 100644 (file)
@@ -103,8 +103,7 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
 #define eol "\r\n"
 
 #define MAX_DATETIME_FORMAT    512
-#define MAX_NUM_CID_CONTEXTS   10
-#define MSGNUM_LENGTH          80
+#define MAX_NUM_CID_CONTEXTS 10
 
 #define VM_REVIEW              (1 << 0)
 #define VM_OPERATOR            (1 << 1)
@@ -252,12 +251,12 @@ struct vm_zone {
 };
 
 struct vm_state {
-       char curbox[80];                /*!< Current mailbox */
-       char username[80];              /*!< User name */
-       char curdir[AST_MAX_FILENAME_LEN];              /*!< Current directory */
-       char vmbox[256];                /*!< Voicemail box */
-       char fn[AST_MAX_FILENAME_LEN];
-       char fn2[AST_MAX_FILENAME_LEN];
+       char curbox[80];
+       char username[80];
+       char curdir[256];
+       char vmbox[256];
+       char fn[256];
+       char fn2[256];
        int *deleted;
        int *heard;
        int curmsg;
@@ -300,7 +299,7 @@ static char odbc_table[80];
 
 static char VM_SPOOL_DIR[AST_CONFIG_MAX_PATH];
 
-static char ext_pass_cmd[AST_MAX_SHELL_COMMAND];
+static char ext_pass_cmd[128];
 
 static char *tdesc = "Comedian Mail (Voicemail System)";
 
@@ -394,8 +393,8 @@ static int maxsilence;
 static int maxmsg;
 static int silencethreshold = 128;
 static char serveremail[80];
-static char mailcmd[AST_MAX_SHELL_COMMAND];    /* Configurable mail cmd */
-static char externnotify[AST_MAX_SHELL_COMMAND]; 
+static char mailcmd[160];      /* Configurable mail cmd */
+static char externnotify[160]; 
 #ifdef WITH_SMDI
 static struct ast_smdi_interface *smdi_iface = NULL;
 #endif
@@ -764,8 +763,8 @@ static void vm_change_password(struct ast_vm_user *vmu, const char *newpassword)
 
 static void vm_change_password_shell(struct ast_vm_user *vmu, char *newpassword)
 {
-       char buf[AST_MAX_SHELL_COMMAND];
-       snprintf(buf, sizeof(buf), "%s %s %s %s", ext_pass_cmd, vmu->context, vmu->mailbox, newpassword);
+       char buf[255];
+       snprintf(buf,255,"%s %s %s %s",ext_pass_cmd,vmu->context,vmu->mailbox,newpassword);
        if (!ast_safe_system(buf))
                ast_copy_string(vmu->password, newpassword, sizeof(vmu->password));
 }
@@ -850,9 +849,9 @@ static int retrieve_file(char *dir, int msgnum)
        SQLULEN colsize;
        FILE *f=NULL;
        char rowdata[80];
-       char fn[AST_MAX_FILENAME_LEN];
-       char full_fn[AST_MAX_FILENAME_LEN];
-       char msgnums[MSGNUM_LENGTH];
+       char fn[256];
+       char full_fn[256];
+       char msgnums[80];
        
        odbc_obj *obj;
        obj = fetch_odbc_obj(odbc_database, 0);
@@ -974,9 +973,9 @@ yuck:
 
 static int remove_file(char *dir, int msgnum)
 {
-       char fn[AST_MAX_FILENAME_LEN];
-       char full_fn[AST_MAX_FILENAME_LEN];
-       char msgnums[MSGNUM_LENGTH];
+       char fn[256];
+       char full_fn[256];
+       char msgnums[80];
        
        if (msgnum > -1) {
                snprintf(msgnums, sizeof(msgnums), "%d", msgnum);
@@ -1047,7 +1046,7 @@ static int message_exists(char *dir, int msgnum)
        SQLHSTMT stmt;
        char sql[256];
        char rowdata[20];
-       char msgnums[MSGNUM_LENGTH];
+       char msgnums[20];
        
        odbc_obj *obj;
        obj = fetch_odbc_obj(odbc_database, 0);
@@ -1104,7 +1103,7 @@ static void delete_file(char *sdir, int smsg)
        int res;
        SQLHSTMT stmt;
        char sql[256];
-       char msgnums[MSGNUM_LENGTH];
+       char msgnums[20];
        
        odbc_obj *obj;
        obj = fetch_odbc_obj(odbc_database, 0);
@@ -1142,8 +1141,8 @@ static void copy_file(char *sdir, int smsg, char *ddir, int dmsg, char *dmailbox
        int res;
        SQLHSTMT stmt;
        char sql[512];
-       char msgnums[MSGNUM_LENGTH];
-       char msgnumd[MSGNUM_LENGTH];
+       char msgnums[20];
+       char msgnumd[20];
        odbc_obj *obj;
 
        delete_file(ddir, dmsg);
@@ -1201,9 +1200,9 @@ static int store_file(char *dir, char *mailboxuser, char *mailboxcontext, int ms
        SQLHSTMT stmt;
        SQLINTEGER len;
        char sql[256];
-       char msgnums[MSGNUM_LENGTH];
-       char fn[AST_MAX_FILENAME_LEN];
-       char full_fn[AST_MAX_FILENAME_LEN];
+       char msgnums[20];
+       char fn[256];
+       char full_fn[256];
        char fmt[80]="";
        char *c;
        char *context="", *macrocontext="", *callerid="", *origtime="", *duration="";
@@ -1320,8 +1319,8 @@ static void rename_file(char *sdir, int smsg, char *mailboxuser, char *mailboxco
        int res;
        SQLHSTMT stmt;
        char sql[256];
-       char msgnums[MSGNUM_LENGTH];
-       char msgnumd[MSGNUM_LENGTH];
+       char msgnums[20];
+       char msgnumd[20];
        odbc_obj *obj;
 
        delete_file(ddir, dmsg);
@@ -1396,9 +1395,9 @@ static int count_messages(struct ast_vm_user *vmu, char *dir)
 
 static void rename_file(char *sfn, char *dfn)
 {
-       char stxt[AST_MAX_FILENAME_LEN];
-       char dtxt[AST_MAX_FILENAME_LEN];
-       ast_filerename(sfn, dfn, NULL);
+       char stxt[256];
+       char dtxt[256];
+       ast_filerename(sfn,dfn,NULL);
        snprintf(stxt, sizeof(stxt), "%s.txt", sfn);
        snprintf(dtxt, sizeof(dtxt), "%s.txt", dfn);
        rename(stxt, dtxt);
@@ -1456,8 +1455,7 @@ static int copy(char *infile, char *outfile)
 
 static void copy_file(char *frompath, char *topath)
 {
-       char frompath2[AST_MAX_FILENAME_LEN], topath2[AST_MAX_FILENAME_LEN];
-
+       char frompath2[256],topath2[256];
        ast_filecopy(frompath, topath, NULL);
        snprintf(frompath2, sizeof(frompath2), "%s.txt", frompath);
        snprintf(topath2, sizeof(topath2), "%s.txt", topath);
@@ -1470,7 +1468,7 @@ static void copy_file(char *frompath, char *topath)
 static int last_message_index(struct ast_vm_user *vmu, char *dir)
 {
        int x;
-       char fn[AST_MAX_FILENAME_LEN];
+       char fn[256];
 
        if (vm_lock_path(dir))
                return ERROR_LOCK_PATH;
@@ -1684,10 +1682,10 @@ static int sendmail(char *srcemail, struct ast_vm_user *vmu, int msgnum, char *c
        char host[MAXHOSTNAMELEN] = "";
        char who[256];
        char bound[256];
-       char fname[AST_MAX_FILENAME_LEN];
+       char fname[256];
        char dur[256];
-       char tmp[AST_MAX_FILENAME_LEN] = "/tmp/astmail-XXXXXX";
-       char mailcommand[AST_MAX_SHELL_COMMAND];
+       char tmp[80] = "/tmp/astmail-XXXXXX";
+       char tmp2[256];
        struct tm tm;
 
        if (vmu && ast_strlen_zero(vmu->email)) {
@@ -1696,8 +1694,7 @@ static int sendmail(char *srcemail, struct ast_vm_user *vmu, int msgnum, char *c
        }
        if (!strcmp(format, "wav49"))
                format = "WAV";
-       if (option_debug)
-               ast_log(LOG_DEBUG, "Attaching file '%s', format '%s', uservm is '%d', global is %d\n", attach, format, attach_user_voicemail, ast_test_flag((&globalflags), VM_ATTACH));
+       ast_log(LOG_DEBUG, "Attaching file '%s', format '%s', uservm is '%d', global is %d\n", attach, format, attach_user_voicemail, ast_test_flag((&globalflags), VM_ATTACH));
        /* Make a temporary file instead of piping directly to sendmail, in case the mail
           command hangs */
        p = vm_mkftemp(tmp);
@@ -1804,10 +1801,9 @@ static int sendmail(char *srcemail, struct ast_vm_user *vmu, int msgnum, char *c
                        fprintf(p, "\n\n--%s--\n.\n", bound);
                }
                fclose(p);
-               snprintf(mailcommand, sizeof(mailcommand), "( %s < %s ; rm -f %s ) &", mailcmd, tmp, tmp);
-               ast_safe_system(mailcommand);
-               if (option_debug)
-                       ast_log(LOG_DEBUG, "Sent mail to %s with command '%s'\n", vmu->email, mailcmd);
+               snprintf(tmp2, sizeof(tmp2), "( %s < %s ; rm -f %s ) &", mailcmd, tmp, tmp);
+               ast_safe_system(tmp2);
+               ast_log(LOG_DEBUG, "Sent mail to %s with command '%s'\n", vmu->email, mailcmd);
        }
        return 0;
 }
@@ -1818,8 +1814,8 @@ static int sendpage(char *srcemail, char *pager, int msgnum, char *context, char
        char host[MAXHOSTNAMELEN]="";
        char who[256];
        char dur[256];
-       char tmp[AST_MAX_FILENAME_LEN] = "/tmp/astmail-XXXXXX";
-       char mailcommand[AST_MAX_SHELL_COMMAND];
+       char tmp[80] = "/tmp/astmail-XXXXXX";
+       char tmp2[256];
        struct tm tm;
        FILE *p = vm_mkftemp(tmp);
 
@@ -1854,7 +1850,7 @@ static int sendpage(char *srcemail, char *pager, int msgnum, char *context, char
                } else
                        fprintf(p, "From: Asterisk PBX <%s>\n", who);
                fprintf(p, "To: %s\n", pager);
-               if (pagersubject) {
+               if (pagersubject) {
                        struct ast_channel *ast;
                        if ((ast = ast_channel_alloc(0))) {
                                char *passdata;
@@ -1888,10 +1884,9 @@ static int sendpage(char *srcemail, char *pager, int msgnum, char *context, char
                                        "from %s, on %s", dur, mailbox, (cidname ? cidname : (cidnum ? cidnum : "unknown")), date);
                }
                fclose(p);
-               snprintf(mailcommand, sizeof(mailcommand), "( %s < %s ; rm -f %s ) &", mailcmd, tmp, tmp);
-               ast_safe_system(mailcommand);
-               if (option_debug)
-                       ast_log(LOG_DEBUG, "Sent page to %s with command '%s'\n", pager, mailcmd);
+               snprintf(tmp2, sizeof(tmp2), "( %s < %s ; rm -f %s ) &", mailcmd, tmp, tmp);
+               ast_safe_system(tmp2);
+               ast_log(LOG_DEBUG, "Sent page to %s with command '%s'\n", pager, mailcmd);
        }
        return 0;
 }
@@ -1908,8 +1903,7 @@ static int get_date(char *s, int len)
 static int invent_message(struct ast_channel *chan, char *context, char *ext, int busy, char *ecodes)
 {
        int res;
-       char fn[AST_MAX_FILENAME_LEN];
-
+       char fn[256];
        snprintf(fn, sizeof(fn), "%s%s/%s/greet", VM_SPOOL_DIR, context, ext);
        RETRIEVE(fn, -1);
        if (ast_fileexists(fn, NULL, NULL) > 0) {
@@ -2164,12 +2158,11 @@ static int has_voicemail(const char *mailbox, const char *folder)
 {
        DIR *dir;
        struct dirent *de;
-       char fn[AST_MAX_FILENAME_LEN];
+       char fn[256];
        char tmp[256]="";
        char *mb, *cur;
        char *context;
        int ret;
-
        if (!folder)
                folder = "INBOX";
        /* If no mailbox, return immediately */
@@ -2213,12 +2206,11 @@ static int messagecount(const char *mailbox, int *newmsgs, int *oldmsgs)
 {
        DIR *dir;
        struct dirent *de;
-       char fn[AST_MAX_FILENAME_LEN];
+       char fn[256];
        char tmp[256]="";
        char *mb, *cur;
        char *context;
        int ret;
-
        if (newmsgs)
                *newmsgs = 0;
        if (oldmsgs)
@@ -2287,7 +2279,7 @@ static int notify_new_message(struct ast_channel *chan, struct ast_vm_user *vmu,
 
 static int copy_message(struct ast_channel *chan, struct ast_vm_user *vmu, int imbox, int msgnum, long duration, struct ast_vm_user *recip, char *fmt)
 {
-       char fromdir[AST_MAX_FILENAME_LEN], todir[AST_MAX_FILENAME_LEN], frompath[AST_MAX_FILENAME_LEN], topath[AST_MAX_FILENAME_LEN];
+       char fromdir[256], todir[256], frompath[256], topath[256];
        char *frombox = mbox(imbox);
        int recipmsgnum;
 
@@ -2321,8 +2313,8 @@ static int copy_message(struct ast_channel *chan, struct ast_vm_user *vmu, int i
 
 static void run_externnotify(char *context, char *extension)
 {
-       char arguments[AST_MAX_SHELL_COMMAND];
-       char ext_context[AST_MAX_EXTENSION] = "";
+       char arguments[255];
+       char ext_context[256] = "";
        int newvoicemails = 0, oldvoicemails = 0;
 #ifdef WITH_SMDI
        struct ast_smdi_mwi_message *mwi_msg;
@@ -2359,8 +2351,7 @@ static void run_externnotify(char *context, char *extension)
                        ast_log(LOG_ERROR, "Problem in calculating number of voicemail messages available for extension %s\n", extension);
                } else {
                        snprintf(arguments, sizeof(arguments), "%s %s %s %d&", externnotify, context, extension, newvoicemails);
-                       if (option_debug)
-                               ast_log(LOG_DEBUG, "Executing external notification: %s\n", arguments);
+                       ast_log(LOG_DEBUG, "Executing %s\n", arguments);
                        ast_safe_system(arguments);
                }
        }
@@ -2373,7 +2364,7 @@ struct leave_vm_options {
 
 static int leave_voicemail(struct ast_channel *chan, char *ext, struct leave_vm_options *options)
 {
-       char txtfile[AST_MAX_FILENAME_LEN];
+       char txtfile[256];
        char callerid[256];
        FILE *txt;
        int res = 0;
@@ -2383,14 +2374,14 @@ static int leave_voicemail(struct ast_channel *chan, char *ext, struct leave_vm_
        int ousemacro = 0;
        char date[256];
        char dir[256];
-       char fn[AST_MAX_FILENAME_LEN];
-       char prefile[AST_MAX_FILENAME_LEN]="";
-       char tempfile[AST_MAX_FILENAME_LEN]="";
-       char ext_context[AST_MAX_EXTENSION] = "";
+       char fn[256];
+       char prefile[256]="";
+       char tempfile[256]="";
+       char ext_context[256] = "";
        char fmt[80];
        char *context;
        char ecodes[16] = "#";
-       char tmp[AST_MAX_EXTENSION] = "", *tmpptr;
+       char tmp[256] = "", *tmpptr;
        struct ast_vm_user *vmu;
        struct ast_vm_user svm;
        const char *category = NULL;
@@ -2466,14 +2457,12 @@ static int leave_voicemail(struct ast_channel *chan, char *ext, struct leave_vm_
                        if (ast_streamfile(chan, prefile, chan->language) > -1) 
                                res = ast_waitstream(chan, ecodes);
                } else {
-                       if (option_debug)
-                               ast_log(LOG_DEBUG, "%s doesn't exist, doing what we can\n", prefile);
+                       ast_log(LOG_DEBUG, "%s doesn't exist, doing what we can\n", prefile);
                        res = invent_message(chan, vmu->context, ext, ast_test_flag(options, OPT_BUSY_GREETING), ecodes);
                }
                DISPOSE(prefile, -1);
                if (res < 0) {
-                       if (option_debug)
-                               ast_log(LOG_DEBUG, "Hang up during prefile playback\n");
+                       ast_log(LOG_DEBUG, "Hang up during prefile playback\n");
                        free_user(vmu);
                        pbx_builtin_setvar_helper(chan, "VMSTATUS", "FAILED");
                        return -1;
@@ -2665,8 +2654,8 @@ static int resequence_mailbox(struct ast_vm_user *vmu, char *dir)
        /* we know max messages, so stop process when number is hit */
 
        int x,dest;
-       char sfn[AST_MAX_FILENAME_LEN];
-       char dfn[AST_MAX_FILENAME_LEN];
+       char sfn[256];
+       char dfn[256];
 
        if (vm_lock_path(dir))
                return ERROR_LOCK_PATH;
@@ -2698,12 +2687,11 @@ static int say_and_wait(struct ast_channel *chan, int num, const char *language)
 
 static int save_to_folder(struct ast_vm_user *vmu, char *dir, int msg, char *context, char *username, int box)
 {
-       char sfn[AST_MAX_FILENAME_LEN];
-       char dfn[AST_MAX_FILENAME_LEN];
-       char ddir[AST_MAX_FILENAME_LEN];
+       char sfn[256];
+       char dfn[256];
+       char ddir[256];
        char *dbox = mbox(box);
        int x;
-
        make_file(sfn, sizeof(sfn), dir, msg);
        create_dirpath(ddir, sizeof(ddir), context, username, dbox);
 
@@ -2842,8 +2830,7 @@ static int adsi_load_vmail(struct ast_channel *chan, int *useadsi)
        bytes += adsi_voice_mode(buf + bytes, 0);
        adsi_transmit_message(chan, buf, bytes, ADSI_MSG_DOWNLOAD);
 
-       if (option_debug)
-               ast_log(LOG_DEBUG, "Done downloading scripts...\n");
+       ast_log(LOG_DEBUG, "Done downloading scripts...\n");
 
 #ifdef DISPLAY
        /* Add last dot */
@@ -2851,8 +2838,7 @@ static int adsi_load_vmail(struct ast_channel *chan, int *useadsi)
        bytes += adsi_display(buf + bytes, ADSI_COMM_PAGE, 4, ADSI_JUST_CENT, 0, "   ......", "");
        bytes += adsi_set_line(buf + bytes, ADSI_COMM_PAGE, 1);
 #endif
-       if (option_debug)
-               ast_log(LOG_DEBUG, "Restarting session...\n");
+       ast_log(LOG_DEBUG, "Restarting session...\n");
 
        bytes = 0;
        /* Load the session now */
@@ -2869,7 +2855,6 @@ static int adsi_load_vmail(struct ast_channel *chan, int *useadsi)
 static void adsi_begin(struct ast_channel *chan, int *useadsi)
 {
        int x;
-
        if (!adsi_available(chan))
                return;
        x = adsi_load_session(chan, adsifdn, adsiver, 1);
@@ -3218,16 +3203,15 @@ static void adsi_goodbye(struct ast_channel *chan)
        adsi_transmit_message(chan, buf, bytes, ADSI_MSG_DISPLAY);
 }
 
-/*! get_folder: voicemail Folder menu 
- * Plays "press 1 for INBOX messages" etc
- * Should possibly be internationalized
+/*--- get_folder: Folder menu ---*/
+/* Plays "press 1 for INBOX messages" etc
+   Should possibly be internationalized
  */
 static int get_folder(struct ast_channel *chan, int start)
 {
        int x;
        int d;
-       char fn[AST_MAX_FILENAME_LEN];
-
+       char fn[256];
        d = ast_play_and_wait(chan, "vm-press");        /* "Press" */
        if (d)
                return d;
@@ -3314,8 +3298,7 @@ static int vm_forwardoptions(struct ast_channel *chan, struct ast_vm_user *vmu,
 
 static int notify_new_message(struct ast_channel *chan, struct ast_vm_user *vmu, int msgnum, long duration, char *fmt, char *cidnum, char *cidname)
 {
-       char todir[AST_MAX_FILENAME_LEN], fn[AST_MAX_FILENAME_LEN];
-       char ext_context[AST_MAX_EXTENSION], *stringp;
+       char todir[256], fn[256], ext_context[256], *stringp;
        int newmsgs = 0, oldmsgs = 0;
        const char *category = pbx_builtin_getvar_helper(chan, "VM_CATEGORY");
 
@@ -3362,15 +3345,15 @@ static int forward_message(struct ast_channel *chan, char *context, char *dir, i
                           char *fmt, int flag, signed char record_gain)
 {
        char username[70]="";
-       char sys[AST_MAX_SHELL_COMMAND];
-       char todir[AST_MAX_FILENAME_LEN];
+       char sys[256];
+       char todir[256];
        int todircount=0;
        int duration;
        struct ast_config *mif;
-       char miffile[AST_MAX_FILENAME_LEN];
-       char fn[AST_MAX_FILENAME_LEN];
+       char miffile[256];
+       char fn[256];
        char callerid[512];
-       char ext_context[AST_MAX_EXTENSION]="";
+       char ext_context[256]="";
        int res = 0, cmd = 0;
        struct ast_vm_user *receiver = NULL, *vmtmp;
        AST_LIST_HEAD_NOLOCK_STATIC(extensions, ast_vm_user);
@@ -3506,8 +3489,7 @@ static int forward_message(struct ast_channel *chan, char *context, char *dir, i
                                snprintf(todir, sizeof(todir), "%s%s/%s/INBOX",  VM_SPOOL_DIR, vmtmp->context, vmtmp->mailbox);
                                snprintf(sys, sizeof(sys), "mkdir -p %s\n", todir);
                                snprintf(ext_context, sizeof(ext_context), "%s@%s", vmtmp->mailbox, vmtmp->context);
-                               if (option_debug)
-                                       ast_log(LOG_DEBUG, "Running cmd: %s", sys);
+                               ast_log(LOG_DEBUG, "%s", sys);
                                ast_safe_system(sys);
                
                                res = count_messages(receiver, todir);
@@ -3527,13 +3509,11 @@ static int forward_message(struct ast_channel *chan, char *context, char *dir, i
                                        if (!strcasecmp(s, "wav49"))
                                                s = "WAV";
                                        snprintf(sys, sizeof(sys), "cp %s/msg%04d.%s %s/msg%04d.%s\n", dir, curmsg, s, todir, todircount, s);
-                                       if (option_debug)
-                                               ast_log(LOG_DEBUG, "Running cmd: %s", sys);
+                                       ast_log(LOG_DEBUG, "%s", sys);
                                        ast_safe_system(sys);
                                }
                                snprintf(sys, sizeof(sys), "cp %s/msg%04d.txt %s/msg%04d.txt\n", dir, curmsg, todir, todircount);
-                               if (option_debug)
-                                       ast_log(LOG_DEBUG, "Running cmd: %s", sys);
+                               ast_log(LOG_DEBUG, "%s", sys);
                                ast_safe_system(sys);
                                snprintf(fn, sizeof(fn), "%s/msg%04d", todir,todircount);
 
@@ -3690,7 +3670,7 @@ static int play_message_callerid(struct ast_channel *chan, struct vm_state *vms,
        int res = 0;
        int i;
        char *callerid, *name;
-       char prefile[AST_MAX_FILENAME_LEN]="";
+       char prefile[256]="";
        
 
        /* If voicemail cid is not enabled, or we didn't get cid or context from the attribute file, leave now. */
@@ -3699,15 +3679,13 @@ static int play_message_callerid(struct ast_channel *chan, struct vm_state *vms,
                return res;
 
        /* Strip off caller ID number from name */
-       if (option_debug > 1)
-               ast_log(LOG_DEBUG, "VM-CID: composite caller ID received: %s, context: %s\n", cid, context);
+       ast_log(LOG_DEBUG, "VM-CID: composite caller ID received: %s, context: %s\n", cid, context);
        ast_callerid_parse(cid, &name, &callerid);
        if ((!ast_strlen_zero(callerid)) && strcmp(callerid, "Unknown")) {
                /* Check for internal contexts and only */
                /* say extension when the call didn't come from an internal context in the list */
                for (i = 0 ; i < MAX_NUM_CID_CONTEXTS ; i++){
-                       if (option_debug > 1)
-                               ast_log(LOG_DEBUG, "VM-CID: comparing internalcontext: %s\n", cidinternalcontexts[i]);
+                       ast_log(LOG_DEBUG, "VM-CID: comparing internalcontext: %s\n", cidinternalcontexts[i]);
                        if ((strcmp(cidinternalcontexts[i], context) == 0))
                                break;
                }
@@ -3734,8 +3712,7 @@ static int play_message_callerid(struct ast_channel *chan, struct vm_state *vms,
                }
 
                else if (!res){
-                       if (option_debug > 1)
-                               ast_log(LOG_DEBUG, "VM-CID: Numeric caller id: (%s)\n", callerid);
+                       ast_log(LOG_DEBUG, "VM-CID: Numeric caller id: (%s)\n",callerid);
                        /* BB: Since this is all nicely figured out, why not say "from phone number" in this case" */
                        if (!callback)
                                res = wait_file2(chan, vms, "vm-from-phonenumber");
@@ -3743,8 +3720,7 @@ static int play_message_callerid(struct ast_channel *chan, struct vm_state *vms,
                }
        } else {
                /* Number unknown */
-               if (option_debug > 1)
-                       ast_log(LOG_DEBUG, "VM-CID: From an unknown number\n");
+               ast_log(LOG_DEBUG, "VM-CID: From an unknown number\n");
                /* Say "from an unknown caller" as one phrase - it is already recorded by "the voice" anyhow */
                res = wait_file2(chan, vms, "vm-unknown-caller");
        }
@@ -3764,8 +3740,7 @@ static int play_message_duration(struct ast_channel *chan, struct vm_state *vms,
        durations=atoi(duration);
        durationm=(durations / 60);
 
-       if (option_debug > 1)
-               ast_log(LOG_DEBUG, "VM-Duration: duration is: %d seconds converted to: %d minutes\n", durations, durationm);
+       ast_log(LOG_DEBUG, "VM-Duration: duration is: %d seconds converted to: %d minutes\n", durations, durationm);
 
        if((!res)&&(durationm>=minduration)) {
                res = ast_say_number(chan, durationm, AST_DIGIT_ANY, chan->language, (char *) NULL);
@@ -3777,7 +3752,7 @@ static int play_message_duration(struct ast_channel *chan, struct vm_state *vms,
 static int play_message(struct ast_channel *chan, struct ast_vm_user *vmu, struct vm_state *vms)
 {
        int res = 0;
-       char filename[AST_MAX_FILENAME_LEN], *origtime, *cid, *context, *duration;
+       char filename[256],*origtime, *cid, *context, *duration;
        char *category;
        struct ast_config *msg_cfg;
 
@@ -4606,12 +4581,11 @@ static int vm_newuser(struct ast_channel *chan, struct ast_vm_user *vmu, struct
        int tries = 0;
        char newpassword[80] = "";
        char newpassword2[80] = "";
-       char prefile[AST_MAX_FILENAME_LEN]="";
+       char prefile[256]="";
+       unsigned char buf[256];
        int bytes=0;
 
        if (adsi_available(chan)) {
-               unsigned char buf[256];
-
                bytes += adsi_logo(buf + bytes);
                bytes += adsi_display(buf + bytes, ADSI_COMM_PAGE, 3, ADSI_JUST_CENT, 0, "New User Setup", "");
                bytes += adsi_display(buf + bytes, ADSI_COMM_PAGE, 4, ADSI_JUST_CENT, 0, "Not Done", "");
@@ -4685,12 +4659,12 @@ static int vm_options(struct ast_channel *chan, struct ast_vm_user *vmu, struct
        int duration = 0;
        char newpassword[80] = "";
        char newpassword2[80] = "";
-       char prefile[AST_MAX_FILENAME_LEN]="";
+       char prefile[256]="";
+       unsigned char buf[256];
        int bytes=0;
 
-       if (adsi_available(chan)) {
-               unsigned char buf[256];
-
+       if (adsi_available(chan))
+       {
                bytes += adsi_logo(buf + bytes);
                bytes += adsi_display(buf + bytes, ADSI_COMM_PAGE, 3, ADSI_JUST_CENT, 0, "Options Menu", "");
                bytes += adsi_display(buf + bytes, ADSI_COMM_PAGE, 4, ADSI_JUST_CENT, 0, "Not Done", "");
@@ -4754,8 +4728,7 @@ static int vm_options(struct ast_channel *chan, struct ast_vm_user *vmu, struct
                                vm_change_password(vmu,newpassword);
                        else 
                                vm_change_password_shell(vmu,newpassword);
-                       if (option_debug > 1)
-                               ast_log(LOG_DEBUG, "User %s set password to %s of length %d\n", vms->username, newpassword, (int)strlen(newpassword));
+                       ast_log(LOG_DEBUG,"User %s set password to %s of length %d\n",vms->username,newpassword,(int)strlen(newpassword));
                        cmd = ast_play_and_wait(chan,"vm-passchanged");
                        break;
                case '*': 
@@ -4781,7 +4754,7 @@ static int vm_tempgreeting(struct ast_channel *chan, struct ast_vm_user *vmu, st
        int cmd = 0;
        int retries = 0;
        int duration = 0;
-       char prefile[AST_MAX_FILENAME_LEN]="";
+       char prefile[256]="";
        unsigned char buf[256];
        int bytes=0;
 
@@ -5066,7 +5039,7 @@ static int vm_execmain(struct ast_channel *chan, void *data)
        int valid = 0;
        struct localuser *u;
        char prefixstr[80] ="";
-       char ext_context[AST_MAX_EXTENSION]="";
+       char ext_context[256]="";
        int box;
        int useadsi = 0;
        int skipuser = 0;
@@ -5762,10 +5735,8 @@ static int handle_show_voicemail_users(int fd, int argc, char *argv[])
        struct ast_vm_user *vmu;
        char *output_format = "%-10s %-5s %-25s %-10s %6s\n";
 
-       if ((argc < 3) || (argc > 5) || (argc == 4))
-               return RESULT_SHOWUSAGE;
-       else if ((argc == 5) && strcmp(argv[3],"for"))
-               return RESULT_SHOWUSAGE;
+       if ((argc < 3) || (argc > 5) || (argc == 4)) return RESULT_SHOWUSAGE;
+       else if ((argc == 5) && strcmp(argv[3],"for")) return RESULT_SHOWUSAGE;
 
        AST_LIST_LOCK(&users);
        if (!AST_LIST_EMPTY(&users)) {
@@ -5786,7 +5757,7 @@ static int handle_show_voicemail_users(int fd, int argc, char *argv[])
                        }
                }
                AST_LIST_TRAVERSE(&users, vmu, list) {
-                       char dirname[AST_MAX_FILENAME_LEN];
+                       char dirname[256];
                        DIR *vmdir;
                        struct dirent *vment;
                        int vmcount = 0;
@@ -5819,8 +5790,7 @@ static int handle_show_voicemail_zones(int fd, int argc, char *argv[])
        struct vm_zone *zone = zones;
        char *output_format = "%-15s %-20s %-45s\n";
 
-       if (argc != 3)
-               return RESULT_SHOWUSAGE;
+       if (argc != 3) return RESULT_SHOWUSAGE;
 
        if (zone) {
                ast_cli(fd, output_format, "Zone", "Timezone", "Message Format");
@@ -5991,8 +5961,7 @@ static int load_config(void)
                
                if ((notifystr = ast_variable_retrieve(cfg, "general", "externnotify"))) {
                        ast_copy_string(externnotify, notifystr, sizeof(externnotify));
-                       if (option_debug > 1)
-                               ast_log(LOG_DEBUG, "found externnotify: %s\n", externnotify);
+                       ast_log(LOG_DEBUG, "found externnotify: %s\n", externnotify);
 #ifdef WITH_SMDI
                        if (!strcasecmp(externnotify, "smdi")) {
                                ast_log(LOG_DEBUG, "Using SMDI for external voicemail notification\n");
@@ -6085,8 +6054,7 @@ static int load_config(void)
                ast_set2_flag((&globalflags), ast_true(astattach), VM_FORCEGREET);
 
                if ((s = ast_variable_retrieve(cfg, "general", "cidinternalcontexts"))){
-                       if (option_debug > 1)
-                               ast_log(LOG_DEBUG,"VM_CID Internal context string: %s\n",s);
+                       ast_log(LOG_DEBUG,"VM_CID Internal context string: %s\n",s);
                        stringp = ast_strdupa(s);
                        for (x = 0 ; x < MAX_NUM_CID_CONTEXTS ; x++){
                                if (!ast_strlen_zero(stringp)) {
@@ -6094,51 +6062,44 @@ static int load_config(void)
                                        while ((*q == ' ')||(*q == '\t')) /* Eat white space between contexts */
                                                q++;
                                        ast_copy_string(cidinternalcontexts[x], q, sizeof(cidinternalcontexts[x]));
-                                       if (option_debug > 1)
-                                               ast_log(LOG_DEBUG,"VM_CID Internal context %d: %s\n", x, cidinternalcontexts[x]);
+                                       ast_log(LOG_DEBUG,"VM_CID Internal context %d: %s\n", x, cidinternalcontexts[x]);
                                } else {
                                        cidinternalcontexts[x][0] = '\0';
                                }
                        }
                }
                if (!(astreview = ast_variable_retrieve(cfg, "general", "review"))){
-                       if (option_debug > 1)
-                               ast_log(LOG_DEBUG,"VM Review Option disabled globally\n");
+                       ast_log(LOG_DEBUG,"VM Review Option disabled globally\n");
                        astreview = "no";
                }
                ast_set2_flag((&globalflags), ast_true(astreview), VM_REVIEW);  
 
                if (!(astcallop = ast_variable_retrieve(cfg, "general", "operator"))){
-                       if (option_debug > 1)
-                               ast_log(LOG_DEBUG,"VM Operator break disabled globally\n");
+                       ast_log(LOG_DEBUG,"VM Operator break disabled globally\n");
                        astcallop = "no";
                }
                ast_set2_flag((&globalflags), ast_true(astcallop), VM_OPERATOR);        
 
                if (!(astsaycid = ast_variable_retrieve(cfg, "general", "saycid"))) {
-                       if (option_debug > 1)
-                               ast_log(LOG_DEBUG,"VM CID Info before msg disabled globally\n");
+                       ast_log(LOG_DEBUG,"VM CID Info before msg disabled globally\n");
                        astsaycid = "no";
                } 
                ast_set2_flag((&globalflags), ast_true(astsaycid), VM_SAYCID);  
 
                if (!(send_voicemail = ast_variable_retrieve(cfg,"general", "sendvoicemail"))){
-                       if (option_debug > 1)
-                               ast_log(LOG_DEBUG,"Send Voicemail msg disabled globally\n");
+                       ast_log(LOG_DEBUG,"Send Voicemail msg disabled globally\n");
                        send_voicemail = "no";
                }
                ast_set2_flag((&globalflags), ast_true(send_voicemail), VM_SVMAIL);
        
                if (!(asthearenv = ast_variable_retrieve(cfg, "general", "envelope"))) {
-                       if (option_debug > 1)
-                               ast_log(LOG_DEBUG,"ENVELOPE before msg enabled globally\n");
+                       ast_log(LOG_DEBUG,"ENVELOPE before msg enabled globally\n");
                        asthearenv = "yes";
                }
                ast_set2_flag((&globalflags), ast_true(asthearenv), VM_ENVELOPE);       
 
                if (!(astsaydurationinfo = ast_variable_retrieve(cfg, "general", "sayduration"))) {
-                       if (option_debug > 1)
-                               ast_log(LOG_DEBUG,"Duration info before msg enabled globally\n");
+                       ast_log(LOG_DEBUG,"Duration info before msg enabled globally\n");
                        astsaydurationinfo = "yes";
                }
                ast_set2_flag((&globalflags), ast_true(astsaydurationinfo), VM_SAYDURATION);    
@@ -6153,32 +6114,28 @@ static int load_config(void)
                }
 
                if (!(astskipcmd = ast_variable_retrieve(cfg, "general", "nextaftercmd"))) {
-                       if (option_debug > 1)
-                               ast_log(LOG_DEBUG,"We are not going to skip to the next msg after save/delete\n");
+                       ast_log(LOG_DEBUG,"We are not going to skip to the next msg after save/delete\n");
                        astskipcmd = "no";
                }
                ast_set2_flag((&globalflags), ast_true(astskipcmd), VM_SKIPAFTERCMD);
 
                if ((dialoutcxt = ast_variable_retrieve(cfg, "general", "dialout"))) {
                        ast_copy_string(dialcontext, dialoutcxt, sizeof(dialcontext));
-                       if (option_debug > 1)
-                               ast_log(LOG_DEBUG, "found dialout context: %s\n", dialcontext);
+                       ast_log(LOG_DEBUG, "found dialout context: %s\n", dialcontext);
                } else {
                        dialcontext[0] = '\0';  
                }
                
                if ((callbackcxt = ast_variable_retrieve(cfg, "general", "callback"))) {
                        ast_copy_string(callcontext, callbackcxt, sizeof(callcontext));
-                       if (option_debug > 1)
-                               ast_log(LOG_DEBUG, "found callback context: %s\n", callcontext);
+                       ast_log(LOG_DEBUG, "found callback context: %s\n", callcontext);
                } else {
                        callcontext[0] = '\0';
                }
 
                if ((exitcxt = ast_variable_retrieve(cfg, "general", "exitcontext"))) {
                        ast_copy_string(exitcontext, exitcxt, sizeof(exitcontext));
-                       if (option_debug > 1)
-                               ast_log(LOG_DEBUG, "found operator context: %s\n", exitcontext);
+                       ast_log(LOG_DEBUG, "found operator context: %s\n", exitcontext);
                } else {
                        exitcontext[0] = '\0';
                }
index 6234e8f..977226e 100644 (file)
--- a/config.c
+++ b/config.c
@@ -82,7 +82,7 @@ struct ast_comment {
 };
 
 struct ast_category {
-       char name[AST_MAX_CONFIG_CATEGORY];
+       char name[80];
        int ignored;                    /* do not let user of the config see this category */
        struct ast_variable *root;
        struct ast_variable *last;
@@ -522,11 +522,11 @@ static int process_text_line(struct ast_config *cfg, struct ast_category **cat,
 
 static struct ast_config *config_text_file_load(const char *database, const char *table, const char *filename, struct ast_config *cfg)
 {
-       char fn[AST_MAX_FILENAME_LEN];
+       char fn[256];
        char buf[8192];
        char *new_buf, *comment_p, *process_buf;
        FILE *f;
-       int lineno = 0;
+       int lineno=0;
        int comment = 0, nest[MAX_NESTED_COMMENTS];
        struct ast_category *cat = NULL;
        int count = 0;
@@ -669,7 +669,7 @@ static struct ast_config *config_text_file_load(const char *database, const char
 int config_text_file_save(const char *configfile, const struct ast_config *cfg, const char *generator)
 {
        FILE *f;
-       char fn[AST_MAX_FILENAME_LEN];
+       char fn[256];
        char date[256]="";
        time_t t;
        struct ast_variable *var;
@@ -929,8 +929,8 @@ static struct ast_config_engine text_file_engine = {
 
 struct ast_config *ast_config_internal_load(const char *filename, struct ast_config *cfg)
 {
-       char db[AST_MAX_FILENAME_LEN];
-       char table[AST_MAX_FILENAME_LEN];
+       char db[256];
+       char table[256];
        struct ast_config_engine *loader = &text_file_engine;
        struct ast_config *result;
 
@@ -983,8 +983,8 @@ struct ast_config *ast_config_load(const char *filename)
 struct ast_variable *ast_load_realtime(const char *family, ...)
 {
        struct ast_config_engine *eng;
-       char db[AST_MAX_FILENAME_LEN]="";
-       char table[AST_MAX_FILENAME_LEN]="";
+       char db[256]="";
+       char table[256]="";
        struct ast_variable *res=NULL;
        va_list ap;
 
@@ -1012,8 +1012,8 @@ int ast_check_realtime(const char *family)
 struct ast_config *ast_load_realtime_multientry(const char *family, ...)
 {
        struct ast_config_engine *eng;
-       char db[AST_MAX_FILENAME_LEN]="";
-       char table[AST_MAX_FILENAME_LEN]="";
+       char db[256]="";
+       char table[256]="";
        struct ast_config *res=NULL;
        va_list ap;
 
@@ -1030,8 +1030,8 @@ int ast_update_realtime(const char *family, const char *keyfield, const char *lo
 {
        struct ast_config_engine *eng;
        int res = -1;
-       char db[AST_MAX_FILENAME_LEN]="";
-       char table[AST_MAX_FILENAME_LEN]="";
+       char db[256]="";
+       char table[256]="";
        va_list ap;
 
        va_start(ap, lookup);
index 92267a7..2f23f2a 100644 (file)
@@ -33,10 +33,6 @@ struct ast_config;
 
 struct ast_category;
 
-#define AST_MAX_CONFIG_CATEGORY 80     /*!< Maximum length of configuration section, which also
-                                            sets the maximum length of a device name in channels
-                                            and a context in the dial plan */
-
 struct ast_variable {
        char *name;
        char *value;
index a611331..416f362 100644 (file)
@@ -142,15 +142,14 @@ struct ast_hostent {
 
 struct hostent *ast_gethostbyname(const char *host, struct ast_hostent *hp);
 
-/*! \brief Produces MD5 hash based on input string */
+/* ast_md5_hash 
+       \brief Produces MD5 hash based on input string */
 void ast_md5_hash(char *output, char *input);
 /* ast_sha1_hash
        \brief Produces SHA1 hash based on input string */
 void ast_sha1_hash(char *output, char *input);
 
-/*! \brief Encode string into Base 64 encoded string */
 int ast_base64encode(char *dst, const unsigned char *src, int srclen, int max);
-/*! \brief Decode Base 64 encoded string */
 int ast_base64decode(unsigned char *dst, const char *src, int max);
 
 /*! ast_uri_encode
@@ -167,6 +166,7 @@ int ast_base64decode(unsigned char *dst, const char *src, int max);
        \param buflen   Size of output buffer
        \param doreserved       Convert reserved characters
 */
+
 char *ast_uri_encode(const char *string, char *outbuf, int buflen, int doreserved);
 
 /*!    \brief Decode URI, URN, URL (overwrite string)
@@ -217,13 +217,14 @@ const char *ast_inet_ntoa(char *buf, int bufsiz, struct in_addr ia);
 int ast_utils_init(void);
 int ast_wait_for_input(int fd, int ms);
 
-/*! \brief Compares the source address and port of two sockaddr_in */
+/*! Compares the source address and port of two sockaddr_in */
 static force_inline int inaddrcmp(const struct sockaddr_in *sin1, const struct sockaddr_in *sin2)
 {
        return ((sin1->sin_addr.s_addr != sin2->sin_addr.s_addr) 
                || (sin1->sin_port != sin2->sin_port));
 }
 
+#define AST_STACKSIZE 256 * 1024
 #define ast_pthread_create(a,b,c,d) ast_pthread_create_stack(a,b,c,d,0)
 int ast_pthread_create_stack(pthread_t *thread, pthread_attr_t *attr, void *(*start_routine)(void *), void *data, size_t stacksize);
 
@@ -239,10 +240,6 @@ char *ast_process_quotes_and_slashes(char *start, char find, char replace_with);
 int getloadavg(double *list, int nelem);
 #endif
 
-#define AST_STACKSIZE 256 * 1024
-#define AST_MAX_FILENAME_LEN   256     /*!< Maximum length of file names */
-#define AST_MAX_SHELL_COMMAND  512     /*!< Maximum length of shell commands */
-
 #ifdef linux
 #define ast_random random
 #else
index d98bdd7..5194716 100644 (file)
@@ -924,7 +924,7 @@ static char *complete_context_add_include(const char *line, const char *word, in
  */
 static int handle_save_dialplan(int fd, int argc, char *argv[])
 {
-       char filename[AST_MAX_FILENAME_LEN];
+       char filename[256];
        struct ast_context *c;
        struct ast_config *cfg;
        struct ast_variable *v;
index 21ef3d2..a03085e 100644 (file)
@@ -57,7 +57,7 @@ static char *tdesc = "Outgoing Spool Support";
 static char qdir[255];
 
 struct outgoing {
-       char fn[AST_MAX_FILENAME_LEN];
+       char fn[256];
        /* Current number of retries */
        int retries;
        /* Maximum number of retries permitted */
@@ -78,8 +78,8 @@ struct outgoing {
        char data[256];
 
        /* If extension/context/priority */
-       char exten[AST_MAX_EXTENSION];
-       char context[AST_MAX_CONTEXT];
+       char exten[256];
+       char context[256];
        int priority;
 
        /* CallerID Information */
@@ -355,7 +355,7 @@ static void *scan_thread(void *unused)
        struct stat st;
        DIR *dir;
        struct dirent *de;
-       char fn[AST_MAX_FILENAME_LEN];
+       char fn[256];
        int res;
        time_t last = 0, next = 0, now;
        for(;;) {
index 00cd689..9b61264 100644 (file)
@@ -124,7 +124,7 @@ struct moh_files_state {
 
 struct mohclass {
        char name[MAX_MUSICCLASS];
-       char dir[AST_MAX_FILENAME_LEN];
+       char dir[256];
        char args[256];
        char mode[80];
        char filearray[MAX_MOHFILES][MAX_MOHFILE_LEN];