mirror of
				https://github.com/asterisk/asterisk.git
				synced 2025-10-31 02:37:10 +00:00 
			
		
		
		
	Check the return value of opendir(3), or we may crash.
(closes issue #15720) Reported by: tobias_e git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@212627 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
		| @@ -3576,7 +3576,10 @@ static int last_message_index(struct ast_vm_user *vmu, char *dir) | ||||
| 	 * doing a stat repeatedly on a predicted sequence.  I suspect this | ||||
| 	 * is partially due to stat(2) internally doing a readdir(2) itself to | ||||
| 	 * find each file. */ | ||||
| 	msgdir = opendir(dir); | ||||
| 	if (!(msgdir = opendir(dir))) { | ||||
| 		return -1; | ||||
| 	} | ||||
|  | ||||
| 	while ((msgdirent = readdir(msgdir))) { | ||||
| 		if (sscanf(msgdirent->d_name, "msg%30d", &msgdirint) == 1 && msgdirint < MAXMSGLIMIT) | ||||
| 			map[msgdirint] = 1; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user