From 93ee70a8e8143dba97f4242549d3ea35457d7b3e Mon Sep 17 00:00:00 2001
From: Jacob Champion <jacob.champion@enterprisedb.com>
Date: Fri, 4 Sep 2026 14:30:45 -0700
Subject: [PATCH v2 2/3] pg_checksums: Disallow --filenode 0

Matching a relfile with InvalidRelFileNumber doesn't make too much
sense. In anticipation of modifying pg_checksums to only validate known
relfiles, forbid that.

Discussion: https://postgr.es/m/CAOYmi%2B%3DE0zz%2B_MgQXAoOyn5C0vW53740izzRiTv6excqtCJfRg%40mail.gmail.com
---
 src/bin/pg_checksums/pg_checksums.c | 2 +-
 src/bin/pg_checksums/t/001_basic.pl | 5 +++++
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/bin/pg_checksums/pg_checksums.c b/src/bin/pg_checksums/pg_checksums.c
index 3b58c6ca608..5bb7a7bd200 100644
--- a/src/bin/pg_checksums/pg_checksums.c
+++ b/src/bin/pg_checksums/pg_checksums.c
@@ -488,7 +488,7 @@ main(int argc, char *argv[])
 				mode = PG_MODE_ENABLE;
 				break;
 			case 'f':
-				if (!option_parse_int(optarg, "-f/--filenode", 0,
+				if (!option_parse_int(optarg, "-f/--filenode", 1,
 									  INT_MAX,
 									  NULL))
 					exit(1);
diff --git a/src/bin/pg_checksums/t/001_basic.pl b/src/bin/pg_checksums/t/001_basic.pl
index fc5d431c2b0..996670d81c7 100644
--- a/src/bin/pg_checksums/t/001_basic.pl
+++ b/src/bin/pg_checksums/t/001_basic.pl
@@ -10,4 +10,9 @@ program_help_ok('pg_checksums');
 program_version_ok('pg_checksums');
 program_options_handling_ok('pg_checksums');
 
+command_fails_like(
+	[ 'pg_checksums', '--filenode' => '0' ],
+	qr@\Qpg_checksums: error: -f/--filenode must be in range 1..2147483647\E@,
+	'pg_checksums: --filenode must be in range');
+
 done_testing();
-- 
2.34.1

