aboutsummaryrefslogtreecommitdiff
path: root/src/bin/pg_basebackup/walmethods.c
diff options
context:
space:
mode:
authorThomas Munro <tmunro@postgresql.org>2025-01-09 13:17:36 +1300
committerThomas Munro <tmunro@postgresql.org>2025-01-09 16:04:23 +1300
commit970b97eeb8f036e534abe183fd41604671f7674d (patch)
treedc1d6c84de613d6a3c147925198195634c98da8c /src/bin/pg_basebackup/walmethods.c
parent026762dae39d6efcbfa99a18a15fdfeecbd5b9cc (diff)
downloadpostgresql-970b97eeb8f036e534abe183fd41604671f7674d.tar.gz
postgresql-970b97eeb8f036e534abe183fd41604671f7674d.zip
Fix off_t overflow in pg_basebackup on Windows.
walmethods.c used off_t to navigate around a pg_wal.tar file that could exceed 2GB, which doesn't work on Windows and would fail with misleading errors. Use pgoff_t instead. Back-patch to all supported branches. Author: Davinder Singh <davinder.singh@enterprisedb.com> Reported-by: Jakub Wartak <jakub.wartak@enterprisedb.com> Discussion: https://postgr.es/m/CAKZiRmyM4YnokK6Oenw5JKwAQ3rhP0YTz2T-tiw5dAQjGRXE3Q%40mail.gmail.com
Diffstat (limited to 'src/bin/pg_basebackup/walmethods.c')
-rw-r--r--src/bin/pg_basebackup/walmethods.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/bin/pg_basebackup/walmethods.c b/src/bin/pg_basebackup/walmethods.c
index 5329c83a2b7..eaaabc5f374 100644
--- a/src/bin/pg_basebackup/walmethods.c
+++ b/src/bin/pg_basebackup/walmethods.c
@@ -691,7 +691,7 @@ static const WalWriteMethodOps WalTarMethodOps = {
typedef struct TarMethodFile
{
Walfile base;
- off_t ofs_start; /* Where does the *header* for this file start */
+ pgoff_t ofs_start; /* Where does the *header* for this file start */
char header[TAR_BLOCK_SIZE];
size_t pad_to_size;
} TarMethodFile;