#include <cstdarg>
#include <memory>
-#include <safe-buffer.h>
-
namespace CKM {
namespace DB {
namespace // anonymous
void SqlConnection::DataCommand::BindBlob(
SqlConnection::ArgumentIndex position,
- const SafeBuffer &raw)
+ const RawBuffer &raw)
{
if (raw.size() == 0) {
BindNull(position);
void SqlConnection::DataCommand::BindBlob(
SqlConnection::ArgumentIndex position,
- const boost::optional<SafeBuffer> &value)
+ const boost::optional<RawBuffer> &value)
{
if (!!value) {
BindBlob(position, *value);
return std::string(value);
}
-SafeBuffer SqlConnection::DataCommand::GetColumnBlob(
+RawBuffer SqlConnection::DataCommand::GetColumnBlob(
SqlConnection::ColumnIndex column)
{
LogPedantic("SQL data command get column blog: [" << column << "]");
sqlcipher3_column_blob(m_stmt, column));
if (value == NULL) {
- return SafeBuffer();
+ return RawBuffer();
}
int length = sqlcipher3_column_bytes(m_stmt, column);
LogPedantic("Got blob of length: " << length);
- return SafeBuffer(value, value + length);
+ return RawBuffer(value, value + length);
}
boost::optional<int> SqlConnection::DataCommand::GetColumnOptionalInteger(
return boost::optional<String>(s);
}
-boost::optional<SafeBuffer> SqlConnection::DataCommand::GetColumnOptionalBlob(
+boost::optional<RawBuffer> SqlConnection::DataCommand::GetColumnOptionalBlob(
SqlConnection::ColumnIndex column)
{
LogPedantic("SQL data command get column blog: [" << column << "]");
CheckColumnIndex(column);
if (sqlcipher3_column_type(m_stmt, column) == SQLCIPHER_NULL) {
- return boost::optional<SafeBuffer>();
+ return boost::optional<RawBuffer>();
}
const unsigned char *value = reinterpret_cast<const unsigned char*>(
sqlcipher3_column_blob(m_stmt, column));
int length = sqlcipher3_column_bytes(m_stmt, column);
LogPedantic("Got blob of length: " << length);
- SafeBuffer temp(value, value + length);
- return boost::optional<SafeBuffer>(temp);
+ RawBuffer temp(value, value + length);
+ return boost::optional<RawBuffer>(temp);
}
void SqlConnection::Connect(const std::string &address,
void rawToHexString(TransitoryString& str,
std::size_t offset,
- const SafeBuffer &raw) {
+ const RawBuffer &raw) {
for (std::size_t i = 0; i < raw.size(); i++)
sprintf(&str[offset + i*2], "%02X", raw[i]);
}
-TransitoryString createHexPass(const SafeBuffer &rawPass){
+TransitoryString createHexPass(const RawBuffer &rawPass){
TransitoryString pass = TransitoryString('0', SQLCIPHER_RAW_PREFIX.length() +
//We are required to pass 64byte
//long hex password made out of
}
-void SqlConnection::SetKey(const SafeBuffer &rawPass){
+void SqlConnection::SetKey(const RawBuffer &rawPass){
if (m_connection == NULL) {
LogPedantic("Cannot set key. No connection to DB!");
return;
m_isKeySet = true;
};
-void SqlConnection::ResetKey(const SafeBuffer &rawPassOld,
- const SafeBuffer &rawPassNew)
-{
+void SqlConnection::ResetKey(const RawBuffer &rawPassOld,
+ const RawBuffer &rawPassNew) {
if (m_connection == NULL) {
LogPedantic("Cannot reset key. No connection to DB!");
return;