Fix newline issue (bug #4632)
authorMark Spencer <markster@digium.com>
Fri, 5 Aug 2005 21:44:19 +0000 (21:44 +0000)
committerMark Spencer <markster@digium.com>
Fri, 5 Aug 2005 21:44:19 +0000 (21:44 +0000)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6291 65c4cc65-6c06-0410-ace0-fbb531ad65f3

apps/app_authenticate.c
channels/chan_alsa.c
channels/chan_oss.c

index 887bf23..903e7b4 100755 (executable)
@@ -125,6 +125,7 @@ static int auth_exec(struct ast_channel *chan, void *data)
                                        while (!feof(f)) {
                                                fgets(buf, sizeof(buf), f);
                                                if (!feof(f) && !ast_strlen_zero(buf)) {
+                                                       buf[strlen(buf) - 1] = '\0';
                                                        if (strchr(opts, 'm')) {
                                                                md5secret = strchr(buf, ':');
                                                                if (md5secret == NULL)
@@ -133,12 +134,16 @@ static int auth_exec(struct ast_channel *chan, void *data)
                                                                md5secret++;
                                                                ast_md5_hash(md5passwd, passwd);
                                                                if (!strcmp(md5passwd, md5secret)) {
-                                                                       ast_cdr_setaccount(chan, buf);
+                                                                       if (strchr(opts, 'a'))
+                                                                               ast_cdr_setaccount(chan, buf);
                                                                        break;
                                                                }
                                                        } else {
-                                                               if(!strcmp(passwd, buf))
+                                                               if(!strcmp(passwd, buf)) {
+                                                                       if (strchr(opts, 'a'))
+                                                                               ast_cdr_setaccount(chan, buf);
                                                                        break;
+                                                               }
                                                        }
                                                }
                                        }
index 0fd4492..fe82470 100755 (executable)
@@ -901,6 +901,7 @@ static int console_sendtext(int fd, int argc, char *argv[])
                        strncat(text2send, argv[tmparg++], sizeof(text2send) - strlen(text2send) - 1);
                        strncat(text2send, " ", sizeof(text2send) - strlen(text2send) - 1);
                }
+               text2send[strlen(text2send) - 1] = '\n';
                f.data = text2send;
                f.datalen = strlen(text2send) + 1;
                grab_owner();
index 4635f78..92080fe 100755 (executable)
@@ -1019,6 +1019,7 @@ static int console_sendtext(int fd, int argc, char *argv[])
                        sizeof(text2send) - strlen(text2send) - 1);
        }
        if (!ast_strlen_zero(text2send)) {
+               text2send[strlen(text2send) - 1] = '\n';
                f.frametype = AST_FRAME_TEXT;
                f.subclass = 0;
                f.data = text2send;