From 4db82314621e66c74bca9d10406a25b0a8a12dab Mon Sep 17 00:00:00 2001 From: Grigory Smolkin Date: Fri, 25 Sep 2020 13:22:15 +0300 Subject: [PATCH] [Issue #260] fix integer overflow --- src/backup.c | 4 ++-- src/checkdb.c | 2 +- src/ptrack.c | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/backup.c b/src/backup.c index 6fea8b62..1a443728 100644 --- a/src/backup.c +++ b/src/backup.c @@ -1269,7 +1269,7 @@ get_database_map(PGconn *conn) db_map_entry *db_entry = (db_map_entry *) pgut_malloc(sizeof(db_map_entry)); /* get Oid */ - db_entry->dbOid = atoi(PQgetvalue(res, i, 0)); + db_entry->dbOid = atoll(PQgetvalue(res, i, 0)); /* get datname */ datname = PQgetvalue(res, i, 1); @@ -2644,7 +2644,7 @@ IdentifySystem(StreamThreadArg *stream_thread_arg) } stream_conn_sysidentifier_str = PQgetvalue(res, 0, 0); - stream_conn_tli = atoi(PQgetvalue(res, 0, 1)); + stream_conn_tli = atoll(PQgetvalue(res, 0, 1)); /* Additional sanity, primary for PG 9.5, * where system id can be obtained only via "IDENTIFY SYSTEM" diff --git a/src/checkdb.c b/src/checkdb.c index 3a97fc2c..e8911f7d 100644 --- a/src/checkdb.c +++ b/src/checkdb.c @@ -439,7 +439,7 @@ get_index_list(const char *dbname, bool first_db_with_amcheck, char *namespace = NULL; /* index oid */ - ind->indexrelid = atoi(PQgetvalue(res, i, 0)); + ind->indexrelid = atoll(PQgetvalue(res, i, 0)); /* index relname */ name = PQgetvalue(res, i, 1); diff --git a/src/ptrack.c b/src/ptrack.c index 1119a76e..06ba44ee 100644 --- a/src/ptrack.c +++ b/src/ptrack.c @@ -284,8 +284,8 @@ pg_ptrack_clear(PGconn *backup_conn, int ptrack_version_num) if (strcmp(dbname, "template0") == 0) continue; - dbOid = atoi(PQgetvalue(res_db, i, 1)); - tblspcOid = atoi(PQgetvalue(res_db, i, 2)); + dbOid = atoll(PQgetvalue(res_db, i, 1)); + tblspcOid = atoll(PQgetvalue(res_db, i, 2)); tmp_conn = pgut_connect(instance_config.conn_opt.pghost, instance_config.conn_opt.pgport, dbname,