This is not exploitable as far as I know but it is probably best
that we use the newer function just in case.
Closes #649 (although the attack mentioned in that issue was not
feasible).
// and one byte is the terminating null
std::vector<char> buffer(parm.length() * 2 + 1);
// and one byte is the terminating null
std::vector<char> buffer(parm.length() * 2 + 1);
- // The return value of mysql_escape_string() is the length of the encoded string,
+ // The return value of mysql_real_escape_string() is the length of the encoded string,
// not including the terminating null
// not including the terminating null
- unsigned long escapedsize = mysql_escape_string(&buffer[0], parm.c_str(), parm.length());
-// mysql_real_escape_string(connection, queryend, paramscopy[paramnum].c_str(), paramscopy[paramnum].length());
+ unsigned long escapedsize = mysql_real_escape_string(connection, &buffer[0], parm.c_str(), parm.length());
res.append(&buffer[0], escapedsize);
}
}
res.append(&buffer[0], escapedsize);
}
}