[Asterisk-cvs] asterisk/apps app_voicemail.c,1.151.2.7,1.151.2.8

russell at lists.digium.com russell at lists.digium.com
Wed Dec 15 18:08:49 CST 2004


Update of /usr/cvsroot/asterisk/apps
In directory mongoose.digium.com:/tmp/cvs-serv32660/apps

Modified Files:
      Tag: v1-0
	app_voicemail.c 
Log Message:
don't allow '#' as a voicemail password (bug #3066)


Index: app_voicemail.c
===================================================================
RCS file: /usr/cvsroot/asterisk/apps/app_voicemail.c,v
retrieving revision 1.151.2.7
retrieving revision 1.151.2.8
diff -u -d -r1.151.2.7 -r1.151.2.8
--- app_voicemail.c	3 Dec 2004 01:59:08 -0000	1.151.2.7
+++ app_voicemail.c	15 Dec 2004 23:05:28 -0000	1.151.2.8
@@ -3124,19 +3124,24 @@
 			}
 			newpassword[1] = '\0';
 			newpassword[0] = cmd = ast_play_and_wait(chan,"vm-newpassword");
-			if (cmd < 0)
-				break;
-			if ((cmd = ast_readstring(chan,newpassword + strlen(newpassword),sizeof(newpassword)-1,2000,10000,"#")) < 0) {
-				break;
-            }
+			if (cmd == '#')
+				newpassword[0] = '\0';
+			else {
+				if (cmd < 0)
+					break;
+				if ((cmd = ast_readstring(chan,newpassword + strlen(newpassword),sizeof(newpassword)-1,2000,10000,"#")) < 0)
+					break;
+			}
 			newpassword2[1] = '\0';
 			newpassword2[0] = cmd = ast_play_and_wait(chan,"vm-reenterpassword");
-			if (cmd < 0)
-				break;
-
-			if ((cmd = ast_readstring(chan,newpassword2 + strlen(newpassword2),sizeof(newpassword2)-1,2000,10000,"#"))) {
-				break;
-            }
+			if (cmd == '#')
+				newpassword2[0] = '\0';
+			else {
+				if (cmd < 0)
+					break;
+				if ((cmd = ast_readstring(chan,newpassword2 + strlen(newpassword2),sizeof(newpassword2)-1,2000,10000,"#")))
+					break;
+                        }
 			if (strcmp(newpassword, newpassword2)) {
 				ast_log(LOG_NOTICE,"Password mismatch for user %s (%s != %s)\n", vms->username, newpassword, newpassword2);
 				cmd = ast_play_and_wait(chan, "vm-mismatch");




More information about the svn-commits mailing list