[asterisk-bugs] [JIRA] (ASTERISK-23929) [patch]Segfault forwarding voicemail with ODBC storage enabled and realtime voicemail_data is used

Rusty Newton (JIRA) noreply at issues.asterisk.org
Wed Jun 25 08:51:57 CDT 2014


Rusty Newton created ASTERISK-23929:
---------------------------------------

             Summary: [patch]Segfault forwarding voicemail with ODBC storage enabled and realtime voicemail_data is used
                 Key: ASTERISK-23929
                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-23929
             Project: Asterisk
          Issue Type: Bug
      Security Level: None
          Components: Applications/app_voicemail, Applications/app_voicemail/ODBC
    Affects Versions: 11.9.0
            Reporter: Stas Kobzar
            Assignee: Michael L. Young
            Severity: Minor


Hello,

Asterisk is crashing with with segfaul on VoiceMail application when using option 8 (forward message to another voicemail box). This happens when Asterisk is compiled with voicemail ODBC storage and voicemail_data realtime is enabled in extconfig.conf.

To reproduce:
- Asterisk configured with voicemail storage ODBC
- realtime voicemail_data family enabled
- Call to Voicemail and use option 8 to forward new voicemail. When prompted forward options press "2". Asterisk will crash with segfault. 

This is happens because in function _copy_plain_file_ Asterisk is trying to load a voicemail message from realtime voicemail_data family:
{code}
if (ast_check_realtime("voicemail_data")) {
  var = ast_load_realtime("voicemail_data", "filename", frompath, SENTINEL);
  for (tmp = var; tmp; tmp = tmp->next) {
    if (!strcasecmp(tmp->name, "origmailbox")) {
      origmailbox = tmp->value;
}
  ...
{code}

If the record does not exists, following assignment will crash Asterisk:
{code}origmailbox = tmp->value;{code}

Patch attached.

Thank you,
Stas Kobzar






--
This message was sent by Atlassian JIRA
(v6.2#6252)



More information about the asterisk-bugs mailing list