Skip to content

Commit

Permalink
Deprecated POOLMEM ** in favor of POOLMEM *&
Browse files Browse the repository at this point in the history
Don't use POOLMEM ** construct but use POOLMEM *& to use the C++
pass byreference of the POOLMEM pointer. Also drop the use of WCHAR
in favor of wchar_t which was used sometimes and sometimes not.
  • Loading branch information
Marco van Wieringen committed Sep 22, 2015
1 parent a934352 commit b678beb
Show file tree
Hide file tree
Showing 67 changed files with 370 additions and 463 deletions.
2 changes: 1 addition & 1 deletion src/cats/bdb_dbi.h
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ class B_DB_DBI: public B_DB_PRIV {
void db_escape_string(JCR *jcr, char *snew, char *old, int len);
char *db_escape_object(JCR *jcr, char *old, int len);
void db_unescape_object(JCR *jcr, char *from, int32_t expected_len,
POOLMEM **dest, int32_t *len);
POOLMEM *&dest, int32_t *len);
void db_start_transaction(JCR *jcr);
void db_end_transaction(JCR *jcr);
bool db_sql_query(const char *query, DB_RESULT_HANDLER *result_handler, void *ctx);
Expand Down
2 changes: 1 addition & 1 deletion src/cats/bdb_mysql.h
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ class B_DB_MYSQL: public B_DB_PRIV {
void db_escape_string(JCR *jcr, char *snew, char *old, int len);
char *db_escape_object(JCR *jcr, char *old, int len);
void db_unescape_object(JCR *jcr, char *from, int32_t expected_len,
POOLMEM **dest, int32_t *len);
POOLMEM *&dest, int32_t *len);
void db_start_transaction(JCR *jcr);
void db_end_transaction(JCR *jcr);
bool db_sql_query(const char *query, DB_RESULT_HANDLER *result_handler, void *ctx);
Expand Down
2 changes: 1 addition & 1 deletion src/cats/bdb_postgresql.h
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ class B_DB_POSTGRESQL: public B_DB_PRIV {
void db_escape_string(JCR *jcr, char *snew, char *old, int len);
char *db_escape_object(JCR *jcr, char *old, int len);
void db_unescape_object(JCR *jcr, char *from, int32_t expected_len,
POOLMEM **dest, int32_t *len);
POOLMEM *&dest, int32_t *len);
void db_start_transaction(JCR *jcr);
void db_end_transaction(JCR *jcr);
bool db_sql_query(const char *query, DB_RESULT_HANDLER *result_handler, void *ctx);
Expand Down
10 changes: 5 additions & 5 deletions src/cats/cats.c
Original file line number Diff line number Diff line change
Expand Up @@ -222,18 +222,18 @@ char *B_DB::db_escape_object(JCR *jcr, char *old, int len)
* We base64 encode the data so its normal ASCII
*/
void B_DB::db_unescape_object(JCR *jcr, char *from, int32_t expected_len,
POOLMEM **dest, int32_t *dest_len)
POOLMEM *&dest, int32_t *dest_len)
{
if (!from) {
*dest[0] = '\0';
dest[0] = '\0';
*dest_len = 0;
return;
}

*dest = check_pool_memory_size(*dest, expected_len + 1);
base64_to_bin(*dest, expected_len + 1, from, strlen(from));
dest = check_pool_memory_size(dest, expected_len + 1);
base64_to_bin(dest, expected_len + 1, from, strlen(from));
*dest_len = expected_len;
(*dest)[expected_len] = '\0';
dest[expected_len] = '\0';
}

#endif /* HAVE_SQLITE3 || HAVE_MYSQL || HAVE_POSTGRESQL || HAVE_INGRES || HAVE_DBI */
2 changes: 1 addition & 1 deletion src/cats/cats.h
Original file line number Diff line number Diff line change
Expand Up @@ -568,7 +568,7 @@ class CATS_IMP_EXP B_DB: public SMARTALLOC {
virtual void db_escape_string(JCR *jcr, char *snew, char *old, int len);
virtual char *db_escape_object(JCR *jcr, char *old, int len);
virtual void db_unescape_object(JCR *jcr, char *from, int32_t expected_len,
POOLMEM **dest, int32_t *len);
POOLMEM *&dest, int32_t *len);

/* Pure virtual low level methods */
virtual bool db_open_database(JCR *jcr) = 0;
Expand Down
10 changes: 5 additions & 5 deletions src/cats/dbi.c
Original file line number Diff line number Diff line change
Expand Up @@ -471,17 +471,17 @@ char *B_DB_DBI::db_escape_object(JCR *jcr, char *old, int len)
* Unescape binary object so that DBI is happy
*/
void B_DB_DBI::db_unescape_object(JCR *jcr, char *from, int32_t expected_len,
POOLMEM **dest, int32_t *dest_len)
POOLMEM *&dest, int32_t *dest_len)
{
if (!from) {
*dest[0] = 0;
dest[0] = '\0';
*dest_len = 0;
return;
}
*dest = check_pool_memory_size(*dest, expected_len+1);
dest = check_pool_memory_size(dest, expected_len + 1);
*dest_len = expected_len;
memcpy(*dest, from, expected_len);
(*dest)[expected_len]=0;
memcpy(dest, from, expected_len);
dest[expected_len] = '\0';
}

/*
Expand Down
15 changes: 7 additions & 8 deletions src/cats/mysql.c
Original file line number Diff line number Diff line change
Expand Up @@ -156,8 +156,7 @@ bool B_DB_MYSQL::db_open_database(JCR *jcr)

if ((errstat=rwl_init(&m_lock)) != 0) {
berrno be;
Mmsg1(&errmsg, _("Unable to initialize DB lock. ERR=%s\n"),
be.bstrerror(errstat));
Mmsg1(errmsg, _("Unable to initialize DB lock. ERR=%s\n"), be.bstrerror(errstat));
goto bail_out;
}

Expand Down Expand Up @@ -198,7 +197,7 @@ bool B_DB_MYSQL::db_open_database(JCR *jcr)
(m_db_password == NULL) ? "(NULL)" : m_db_password);

if (m_db_handle == NULL) {
Mmsg2(&errmsg, _("Unable to connect to MySQL server.\n"
Mmsg2(errmsg, _("Unable to connect to MySQL server.\n"
"Database=%s User=%s\n"
"MySQL connect failed either server not running or your authorization is incorrect.\n"),
m_db_name, m_db_user);
Expand Down Expand Up @@ -368,17 +367,17 @@ char *B_DB_MYSQL::db_escape_object(JCR *jcr, char *old, int len)
* Unescape binary object so that MySQL is happy
*/
void B_DB_MYSQL::db_unescape_object(JCR *jcr, char *from, int32_t expected_len,
POOLMEM **dest, int32_t *dest_len)
POOLMEM *&dest, int32_t *dest_len)
{
if (!from) {
*dest[0] = 0;
dest[0] = '\0';
*dest_len = 0;
return;
}
*dest = check_pool_memory_size(*dest, expected_len+1);
dest = check_pool_memory_size(dest, expected_len + 1);
*dest_len = expected_len;
memcpy(*dest, from, expected_len);
(*dest)[expected_len]=0;
memcpy(dest, from, expected_len);
dest[expected_len] = '\0';
}

void B_DB_MYSQL::db_start_transaction(JCR *jcr)
Expand Down
24 changes: 12 additions & 12 deletions src/cats/postgresql.c
Original file line number Diff line number Diff line change
Expand Up @@ -200,7 +200,7 @@ bool B_DB_POSTGRESQL::db_open_database(JCR *jcr)

if ((errstat = rwl_init(&m_lock)) != 0) {
berrno be;
Mmsg1(&errmsg, _("Unable to initialize DB lock. ERR=%s\n"), be.bstrerror(errstat));
Mmsg1(errmsg, _("Unable to initialize DB lock. ERR=%s\n"), be.bstrerror(errstat));
goto bail_out;
}

Expand Down Expand Up @@ -241,7 +241,7 @@ bool B_DB_POSTGRESQL::db_open_database(JCR *jcr)
(m_db_password == NULL) ? "(NULL)" : m_db_password);

if (PQstatus(m_db_handle) != CONNECTION_OK) {
Mmsg2(&errmsg, _("Unable to connect to PostgreSQL server. Database=%s User=%s\n"
Mmsg2(errmsg, _("Unable to connect to PostgreSQL server. Database=%s User=%s\n"
"Possible causes: SQL server not running; password incorrect; max_connections exceeded.\n"),
m_db_name, m_db_user);
goto bail_out;
Expand Down Expand Up @@ -413,13 +413,13 @@ char *B_DB_POSTGRESQL::db_escape_object(JCR *jcr, char *old, int len)
*
*/
void B_DB_POSTGRESQL::db_unescape_object(JCR *jcr, char *from, int32_t expected_len,
POOLMEM **dest, int32_t *dest_len)
POOLMEM *&dest, int32_t *dest_len)
{
size_t new_len;
unsigned char *obj;

if (!from) {
*dest[0] = 0;
dest[0] = '\0';
*dest_len = 0;
return;
}
Expand All @@ -431,9 +431,9 @@ void B_DB_POSTGRESQL::db_unescape_object(JCR *jcr, char *from, int32_t expected_
}

*dest_len = new_len;
*dest = check_pool_memory_size(*dest, new_len+1);
memcpy(*dest, obj, new_len);
(*dest)[new_len]=0;
dest = check_pool_memory_size(dest, new_len + 1);
memcpy(dest, obj, new_len);
dest[new_len] = '\0';

PQfreemem(obj);

Expand Down Expand Up @@ -881,7 +881,7 @@ uint64_t B_DB_POSTGRESQL::sql_insert_autokey_record(const char *query, const cha
Dmsg2(500, "got value '%s' which became %d\n", PQgetvalue(pg_result, 0, 0), id);
} else {
Dmsg1(50, "Result status failed: %s\n", getkeyval_query);
Mmsg1(&errmsg, _("error fetching currval: %s\n"), PQerrorMessage(m_db_handle));
Mmsg1(errmsg, _("error fetching currval: %s\n"), PQerrorMessage(m_db_handle));
}

bail_out:
Expand Down Expand Up @@ -1072,7 +1072,7 @@ bool B_DB_POSTGRESQL::sql_batch_start(JCR *jcr)
return true;

bail_out:
Mmsg1(&errmsg, _("error starting batch mode: %s"), PQerrorMessage(m_db_handle));
Mmsg1(errmsg, _("error starting batch mode: %s"), PQerrorMessage(m_db_handle));
m_status = 0;
PQclear(m_result);
m_result = NULL;
Expand Down Expand Up @@ -1102,7 +1102,7 @@ bool B_DB_POSTGRESQL::sql_batch_end(JCR *jcr, const char *error)
if (res <= 0) {
Dmsg0(500, "we failed\n");
m_status = 0;
Mmsg1(&errmsg, _("error ending batch mode: %s"), PQerrorMessage(m_db_handle));
Mmsg1(errmsg, _("error ending batch mode: %s"), PQerrorMessage(m_db_handle));
Dmsg1(500, "failure %s\n", errmsg);
}

Expand All @@ -1111,7 +1111,7 @@ bool B_DB_POSTGRESQL::sql_batch_end(JCR *jcr, const char *error)
*/
pg_result = PQgetResult(m_db_handle);
if (PQresultStatus(pg_result) != PGRES_COMMAND_OK) {
Mmsg1(&errmsg, _("error ending batch mode: %s"), PQerrorMessage(m_db_handle));
Mmsg1(errmsg, _("error ending batch mode: %s"), PQerrorMessage(m_db_handle));
m_status = 0;
}

Expand Down Expand Up @@ -1159,7 +1159,7 @@ bool B_DB_POSTGRESQL::sql_batch_insert(JCR *jcr, ATTR_DBR *ar)
if (res <= 0) {
Dmsg0(500, "we failed\n");
m_status = 0;
Mmsg1(&errmsg, _("error copying in batch mode: %s"), PQerrorMessage(m_db_handle));
Mmsg1(errmsg, _("error copying in batch mode: %s"), PQerrorMessage(m_db_handle));
Dmsg1(500, "failure %s\n", errmsg);
}

Expand Down
6 changes: 3 additions & 3 deletions src/cats/protos.h
Original file line number Diff line number Diff line change
Expand Up @@ -78,8 +78,8 @@ bool db_delete_pool_record(JCR *jcr, B_DB *db, POOL_DBR *pool_dbr);
bool db_delete_media_record(JCR *jcr, B_DB *mdb, MEDIA_DBR *mr);

/* sql_find.c */
bool db_find_last_job_start_time(JCR *jcr, B_DB *mdb, JOB_DBR *jr, POOLMEM **stime, char *job, int JobLevel);
bool db_find_job_start_time(JCR *jcr, B_DB *mdb, JOB_DBR *jr, POOLMEM **stime, char *job);
bool db_find_last_job_start_time(JCR *jcr, B_DB *mdb, JOB_DBR *jr, POOLMEM *&stime, char *job, int JobLevel);
bool db_find_job_start_time(JCR *jcr, B_DB *mdb, JOB_DBR *jr, POOLMEM *&stime, char *job);
bool db_find_last_jobid(JCR *jcr, B_DB *mdb, const char *Name, JOB_DBR *jr);
int db_find_next_volume(JCR *jcr, B_DB *mdb, int index, bool InChanger, MEDIA_DBR *mr, const char *unwanted_volumes);
bool db_find_failed_job_since(JCR *jcr, B_DB *mdb, JOB_DBR *jr, POOLMEM *stime, int &JobLevel);
Expand All @@ -92,7 +92,7 @@ bool db_get_base_file_list(JCR *jcr, B_DB *mdb, bool use_md5,
int db_get_path_record(JCR *jcr, B_DB *mdb);
bool db_get_pool_record(JCR *jcr, B_DB *db, POOL_DBR *pdbr);
bool db_get_job_record(JCR *jcr, B_DB *mdb, JOB_DBR *jr);
int db_get_job_volume_names(JCR *jcr, B_DB *mdb, JobId_t JobId, POOLMEM **VolumeNames);
int db_get_job_volume_names(JCR *jcr, B_DB *mdb, JobId_t JobId, POOLMEM *&VolumeNames);
bool db_get_file_attributes_record(JCR *jcr, B_DB *mdb, char *fname, JOB_DBR *jr, FILE_DBR *fdbr);
int db_get_fileset_record(JCR *jcr, B_DB *mdb, FILESET_DBR *fsr);
bool db_get_media_record(JCR *jcr, B_DB *mdb, MEDIA_DBR *mr);
Expand Down
20 changes: 10 additions & 10 deletions src/cats/sql.c
Original file line number Diff line number Diff line change
Expand Up @@ -219,7 +219,7 @@ bool QueryDB(const char *file, int line, JCR *jcr, B_DB *mdb, char *cmd)
sql_free_result(mdb);
Dmsg1(1000, "query: %s\n", cmd);
if (!sql_query(mdb, cmd, QF_STORE_RESULT)) {
m_msg(file, line, &mdb->errmsg, _("query %s failed:\n%s\n"), cmd, sql_strerror(mdb));
m_msg(file, line, mdb->errmsg, _("query %s failed:\n%s\n"), cmd, sql_strerror(mdb));
j_msg(file, line, jcr, M_FATAL, 0, "%s", mdb->errmsg);
if (verbose) {
j_msg(file, line, jcr, M_INFO, 0, "%s\n", cmd);
Expand All @@ -240,7 +240,7 @@ bool InsertDB(const char *file, int line, JCR *jcr, B_DB *mdb, char *cmd)
int num_rows;

if (!sql_query(mdb, cmd)) {
m_msg(file, line, &mdb->errmsg, _("insert %s failed:\n%s\n"), cmd, sql_strerror(mdb));
m_msg(file, line, mdb->errmsg, _("insert %s failed:\n%s\n"), cmd, sql_strerror(mdb));
j_msg(file, line, jcr, M_FATAL, 0, "%s", mdb->errmsg);
if (verbose) {
j_msg(file, line, jcr, M_INFO, 0, "%s\n", cmd);
Expand All @@ -250,7 +250,7 @@ bool InsertDB(const char *file, int line, JCR *jcr, B_DB *mdb, char *cmd)
num_rows = sql_affected_rows(mdb);
if (num_rows != 1) {
char ed1[30];
m_msg(file, line, &mdb->errmsg, _("Insertion problem: affected_rows=%s\n"),
m_msg(file, line, mdb->errmsg, _("Insertion problem: affected_rows=%s\n"),
edit_uint64(num_rows, ed1));
if (verbose) {
j_msg(file, line, jcr, M_INFO, 0, "%s\n", cmd);
Expand All @@ -271,7 +271,7 @@ bool UpdateDB(const char *file, int line, JCR *jcr, B_DB *mdb, char *cmd, int nr
int num_rows;

if (!sql_query(mdb, cmd)) {
m_msg(file, line, &mdb->errmsg, _("update %s failed:\n%s\n"), cmd, sql_strerror(mdb));
m_msg(file, line, mdb->errmsg, _("update %s failed:\n%s\n"), cmd, sql_strerror(mdb));
j_msg(file, line, jcr, M_ERROR, 0, "%s", mdb->errmsg);
if (verbose) {
j_msg(file, line, jcr, M_INFO, 0, "%s\n", cmd);
Expand All @@ -283,7 +283,7 @@ bool UpdateDB(const char *file, int line, JCR *jcr, B_DB *mdb, char *cmd, int nr
num_rows = sql_affected_rows(mdb);
if (num_rows < nr_afr) {
char ed1[30];
m_msg(file, line, &mdb->errmsg, _("Update failed: affected_rows=%s for %s\n"),
m_msg(file, line, mdb->errmsg, _("Update failed: affected_rows=%s for %s\n"),
edit_uint64(num_rows, ed1), cmd);
if (verbose) {
// j_msg(file, line, jcr, M_INFO, 0, "%s\n", cmd);
Expand All @@ -306,7 +306,7 @@ int DeleteDB(const char *file, int line, JCR *jcr, B_DB *mdb, char *cmd)
{

if (!sql_query(mdb, cmd)) {
m_msg(file, line, &mdb->errmsg, _("delete %s failed:\n%s\n"), cmd, sql_strerror(mdb));
m_msg(file, line, mdb->errmsg, _("delete %s failed:\n%s\n"), cmd, sql_strerror(mdb));
j_msg(file, line, jcr, M_ERROR, 0, "%s", mdb->errmsg);
if (verbose) {
j_msg(file, line, jcr, M_INFO, 0, "%s\n", cmd);
Expand All @@ -332,14 +332,14 @@ int get_sql_record_max(JCR *jcr, B_DB *mdb)

if (QUERY_DB(jcr, mdb, mdb->cmd)) {
if ((row = sql_fetch_row(mdb)) == NULL) {
Mmsg1(&mdb->errmsg, _("error fetching row: %s\n"), sql_strerror(mdb));
Mmsg1(mdb->errmsg, _("error fetching row: %s\n"), sql_strerror(mdb));
retval = -1;
} else {
retval = str_to_int64(row[0]);
}
sql_free_result(mdb);
} else {
Mmsg1(&mdb->errmsg, _("error fetching row: %s\n"), sql_strerror(mdb));
Mmsg1(mdb->errmsg, _("error fetching row: %s\n"), sql_strerror(mdb));
retval = -1;
}
return retval;
Expand Down Expand Up @@ -400,7 +400,7 @@ void split_path_and_file(JCR *jcr, B_DB *mdb, const char *fname)
memcpy(mdb->path, fname, mdb->pnl);
mdb->path[mdb->pnl] = 0;
} else {
Mmsg1(&mdb->errmsg, _("Path length is zero. File=%s\n"), fname);
Mmsg1(mdb->errmsg, _("Path length is zero. File=%s\n"), fname);
Jmsg(jcr, M_ERROR, 0, "%s", mdb->errmsg);
mdb->path[0] = 0;
mdb->pnl = 0;
Expand Down Expand Up @@ -813,7 +813,7 @@ bool db_open_batch_connection(JCR *jcr, B_DB *mdb)
if (!jcr->db_batch) {
jcr->db_batch = db_clone_database_connection(mdb, jcr, multi_db, multi_db);
if (!jcr->db_batch) {
Mmsg0(&mdb->errmsg, _("Could not init database batch connection\n"));
Mmsg0(mdb->errmsg, _("Could not init database batch connection\n"));
Jmsg(jcr, M_FATAL, 0, "%s", mdb->errmsg);
return false;
}
Expand Down

0 comments on commit b678beb

Please sign in to comment.