mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-01 18:09:41 +00:00
app_voicemail: Fix test_voicemail_notify_endl test.
The test_voicemail_notify_endl test checks the end-of-line characters of an email message to confirm that they are consistent. The test wrongfully assumed that reading from the email message into a buffer will always result in more than 1 character being read. This is incorrect. If only 1 character was read the test would go outside of the buffer and access other memory causing a crash. The test now checks to ensure that 2 or more characters are read in ensuring the test stays within the buffer. ASTERISK-25874 #close Change-Id: Ic2c89cea6e90f2c0bc2d8138306ebbffd4f8b710
This commit is contained in:
@@ -14456,11 +14456,13 @@ AST_TEST_DEFINE(test_voicemail_notify_endl)
|
||||
rewind(file);
|
||||
while (fgets(buf, sizeof(buf), file)) {
|
||||
if (
|
||||
(strlen(buf) > 1 &&
|
||||
#ifdef IMAP_STORAGE
|
||||
buf[strlen(buf) - 2] != '\r'
|
||||
#else
|
||||
buf[strlen(buf) - 2] == '\r'
|
||||
#endif
|
||||
)
|
||||
|| buf[strlen(buf) - 1] != '\n') {
|
||||
res = AST_TEST_FAIL;
|
||||
}
|
||||
|
Reference in New Issue
Block a user