[asterisk-bugs] [JIRA] (ASTERISK-25263) CDR insert failure due to reversed if logic
Elazar Broad (JIRA)
noreply at issues.asterisk.org
Fri Jul 17 15:02:32 CDT 2015
[ https://issues.asterisk.org/jira/browse/ASTERISK-25263?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Elazar Broad updated ASTERISK-25263:
------------------------------------
Description:
The logic in the if statement which determines whether to use quoted statements in cdr_adaptive_odbc.c is reversed, resulting in a reference to tableptr->quoted_identifiers which is null, which terminates the sql buffer resulting in a truncated SQL statement[INSERT INTO table (].
--
if (quoted) {
ast_str_append(&sql, 0, "%s%s", separator, entry->name);
} else {
ast_str_append(&sql, 0, "%s%c%s%c", separator, tableptr->quoted_identifiers, entry->name, tableptr->quoted_identifiers);
}
--
should be
--
if (!quoted) {
ast_str_append(&sql, 0, "%s%s", separator, entry->name);
} else {
ast_str_append(&sql, 0, "%s%c%s%c", separator, tableptr->quoted_identifiers, entry->name, tableptr->quoted_identifiers);
}
--
was:
The logic in the if statement which determines whether to use quoted statements in cdr_adaptive_odbc.c is reversed, resulting in a reference to tableptr->quoted_identifiers which is null, which terminates the sql buffer resulting in a truncated SQL statement[INSERT INTO table (].
--
if (quoted) {
ast_str_append(&sql, 0, "%s%s", separator, entry->name);
} else {
ast_str_append(&sql, 0, "%s%c%s%c", separator, tableptr->quoted_identifiers, entry->name, tableptr->quoted_identifiers);
}
--
should be
--
if !(quoted) {
ast_str_append(&sql, 0, "%s%s", separator, entry->name);
} else {
ast_str_append(&sql, 0, "%s%c%s%c", separator, tableptr->quoted_identifiers, entry->name, tableptr->quoted_identifiers);
}
--
> CDR insert failure due to reversed if logic
> -------------------------------------------
>
> Key: ASTERISK-25263
> URL: https://issues.asterisk.org/jira/browse/ASTERISK-25263
> Project: Asterisk
> Issue Type: Bug
> Security Level: None
> Components: CDR/cdr_adaptive_odbc
> Affects Versions: SVN
> Environment: Slackware Linux
> Reporter: Elazar Broad
> Severity: Critical
>
> The logic in the if statement which determines whether to use quoted statements in cdr_adaptive_odbc.c is reversed, resulting in a reference to tableptr->quoted_identifiers which is null, which terminates the sql buffer resulting in a truncated SQL statement[INSERT INTO table (].
> --
> if (quoted) {
> ast_str_append(&sql, 0, "%s%s", separator, entry->name);
> } else {
> ast_str_append(&sql, 0, "%s%c%s%c", separator, tableptr->quoted_identifiers, entry->name, tableptr->quoted_identifiers);
> }
> --
> should be
> --
> if (!quoted) {
> ast_str_append(&sql, 0, "%s%s", separator, entry->name);
> } else {
> ast_str_append(&sql, 0, "%s%c%s%c", separator, tableptr->quoted_identifiers, entry->name, tableptr->quoted_identifiers);
> }
> --
--
This message was sent by Atlassian JIRA
(v6.2#6252)
More information about the asterisk-bugs
mailing list