Re: [PATCH 6/7] pipesz: report default size in --help, instead of referring the user
Nathan Sharp <[email protected]>
| Newsgroups | org.kernel.vger.util-linux |
|---|---|
| Message-ID | <MN0P221MB153040E15108F790D57E9698C2852@MN0P221MB1530.NAMP221.PROD.OUTLOOK.COM> |
Hello Benno Schulenberg,
I do not think that this change is a good idea, especially in this location. If it is to be done at all, it MUST be done inside the usage() function; so that it is unlikely that future changes will introduce a read of an uninitialized global variable.
However, I do not think this is a good idea in isolation, as it deprives the user of the knowledge of where the default size comes from, and additionally could cause the help message to print a warning! A path forwards that I would support is to keep the existing text but include the value read from the file as a parenthetical, if and only if the parse was successful.
Kind regards,
Nathan Sharp
Principal Consultant
Scherpzinnige Oplossingen, B.V.
________________________________________
From: Benno Schulenberg <[email protected]>
Sent: Thursday, April 24, 2025 11:32 AM
To: [email protected] <[email protected]>
Cc: Nathan Sharp <[email protected]>
Subject: [PATCH 6/7] pipesz: report default size in --help, instead of referring the user
The man page says where this default size can be found. In the --help
text it is more useful to directly say what this default size is.
CC: Nathan Sharp <[email protected]>
Signed-off-by: Benno Schulenberg <[email protected]>
---
misc-utils/pipesz.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/misc-utils/pipesz.c b/misc-utils/pipesz.c
index 48f07aed7..c317959e4 100644
--- a/misc-utils/pipesz.c
+++ b/misc-utils/pipesz.c
@@ -71,11 +71,8 @@ static void __attribute__((__noreturn__)) usage(void)
fputs(USAGE_OPTIONS, stdout);
fputsln(_(" -g, --get examine pipe buffers"), stdout);
- /* TRANSLATORS: '%s' refers to a system file */
fprintf(stdout,
- _(" -s, --set <size> set pipe buffer sizes\n"
- " size defaults to %s\n"),
- PIPESZ_DEFAULT_SIZE_FILE);
+ _(" -s, --set <size> the buffer size to be used (default: %u)\n"), opt_size);
fputs(USAGE_SEPARATOR, stdout);
fputsln(_(" -f, --file <path> act on a file"), stdout);
@@ -232,6 +229,8 @@ int main(int argc, char **argv)
while ((c = getopt_long(argc, argv, shortopts, longopts, NULL)) != -1) {
switch (c) {
case 'h':
+ if (ul_path_read_s32(NULL, &opt_size, PIPESZ_DEFAULT_SIZE_FILE))
+ warn(_("cannot parse %s"), PIPESZ_DEFAULT_SIZE_FILE);
usage();
case 'V':
print_version(EXIT_SUCCESS);
--
2.48.1