Laszlo Ersek
2023-Apr-14 07:59 UTC
[Libguestfs] [libnbd PATCH 0/4] copy: wrap source code at 80 characters
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2172516 I figured I'd work on the libnbd line wrapping in shorter waves than how long the nbdkit patch series was. Laszlo Laszlo Ersek (4): copy: rename (LONG|SHORT)_OPTIONS to (LONG|SHORT)_OPTIONS_OPTION copy: rename <purpose>_OPTION to OPT_<purpose> copy: fix layout of "long_options" table copy: rewrap error message about stuck NBD server copy/main.c | 76 ++++++++++---------- copy/nbd-ops.c | 5 +- 2 files changed, 42 insertions(+), 39 deletions(-) base-commit: 30d8e6414bdeff079394552e4227d80304b08532
Laszlo Ersek
2023-Apr-14 07:59 UTC
[Libguestfs] [libnbd PATCH 1/4] copy: rename (LONG|SHORT)_OPTIONS to (LONG|SHORT)_OPTIONS_OPTION
Two of the enum constants that denote command line options are
inconsistently named with the rest: all identifiers should be
<purpose>_OPTION, but LONG_OPTIONS and SHORT_OPTIONS (which are supposed
to list the long and short options) don't conform. Rename them.
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2172516
Signed-off-by: Laszlo Ersek <lersek at redhat.com>
---
copy/main.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/copy/main.c b/copy/main.c
index f9a714c4f677..bb67e97ff97a 100644
--- a/copy/main.c
+++ b/copy/main.c
@@ -107,8 +107,8 @@ main (int argc, char *argv[])
{
enum {
HELP_OPTION = CHAR_MAX + 1,
- LONG_OPTIONS,
- SHORT_OPTIONS,
+ LONG_OPTIONS_OPTION,
+ SHORT_OPTIONS_OPTION,
ALLOCATED_OPTION,
DESTINATION_IS_ZERO_OPTION,
FLUSH_OPTION,
@@ -120,7 +120,7 @@ main (int argc, char *argv[])
const char *short_options = "C:pR:S:T:vV";
const struct option long_options[] = {
{ "help", no_argument, NULL, HELP_OPTION },
- { "long-options", no_argument, NULL, LONG_OPTIONS },
+ { "long-options", no_argument, NULL,
LONG_OPTIONS_OPTION },
{ "allocated", no_argument, NULL, ALLOCATED_OPTION
},
{ "connections", required_argument, NULL, 'C' },
{ "destination-is-zero",no_argument, NULL,
DESTINATION_IS_ZERO_OPTION },
@@ -130,7 +130,7 @@ main (int argc, char *argv[])
{ "queue-size", required_argument, NULL,
QUEUE_SIZE_OPTION },
{ "request-size", required_argument, NULL,
REQUEST_SIZE_OPTION },
{ "requests", required_argument, NULL, 'R' },
- { "short-options", no_argument, NULL, SHORT_OPTIONS },
+ { "short-options", no_argument, NULL,
SHORT_OPTIONS_OPTION },
{ "sparse", required_argument, NULL, 'S' },
{ "synchronous", no_argument, NULL,
SYNCHRONOUS_OPTION },
{ "target-is-zero", no_argument, NULL,
DESTINATION_IS_ZERO_OPTION },
@@ -155,7 +155,7 @@ main (int argc, char *argv[])
case HELP_OPTION:
usage (stdout, EXIT_SUCCESS);
- case LONG_OPTIONS:
+ case LONG_OPTIONS_OPTION:
for (i = 0; long_options[i].name != NULL; ++i) {
if (strcmp (long_options[i].name, "long-options") != 0
&&
strcmp (long_options[i].name, "short-options") != 0)
@@ -163,7 +163,7 @@ main (int argc, char *argv[])
}
exit (EXIT_SUCCESS);
- case SHORT_OPTIONS:
+ case SHORT_OPTIONS_OPTION:
for (i = 0; short_options[i]; ++i) {
if (short_options[i] != ':' && short_options[i] !=
'+')
printf ("-%c\n", short_options[i]);
Laszlo Ersek
2023-Apr-14 07:59 UTC
[Libguestfs] [libnbd PATCH 2/4] copy: rename <purpose>_OPTION to OPT_<purpose>
Rename <purpose>_OPTION to OPT_<purpose> for two reasons:
- it is more idiomatic for enum constants to have the same prefix than for
them to have the same suffix,
- we hew away three characters (length-wise) from each option name, which
happens to reduce the max width of "copy/main.c" to 79 characters.
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2172516
Signed-off-by: Laszlo Ersek <lersek at redhat.com>
---
copy/main.c | 62 ++++++++++----------
1 file changed, 31 insertions(+), 31 deletions(-)
diff --git a/copy/main.c b/copy/main.c
index bb67e97ff97a..8055b3a656ba 100644
--- a/copy/main.c
+++ b/copy/main.c
@@ -106,34 +106,34 @@ int
main (int argc, char *argv[])
{
enum {
- HELP_OPTION = CHAR_MAX + 1,
- LONG_OPTIONS_OPTION,
- SHORT_OPTIONS_OPTION,
- ALLOCATED_OPTION,
- DESTINATION_IS_ZERO_OPTION,
- FLUSH_OPTION,
- NO_EXTENTS_OPTION,
- QUEUE_SIZE_OPTION,
- REQUEST_SIZE_OPTION,
- SYNCHRONOUS_OPTION,
+ OPT_HELP = CHAR_MAX + 1,
+ OPT_LONG_OPTIONS,
+ OPT_SHORT_OPTIONS,
+ OPT_ALLOCATED,
+ OPT_DESTINATION_IS_ZERO,
+ OPT_FLUSH,
+ OPT_NO_EXTENTS,
+ OPT_QUEUE_SIZE,
+ OPT_REQUEST_SIZE,
+ OPT_SYNCHRONOUS,
};
const char *short_options = "C:pR:S:T:vV";
const struct option long_options[] = {
- { "help", no_argument, NULL, HELP_OPTION },
- { "long-options", no_argument, NULL,
LONG_OPTIONS_OPTION },
- { "allocated", no_argument, NULL, ALLOCATED_OPTION
},
+ { "help", no_argument, NULL, OPT_HELP },
+ { "long-options", no_argument, NULL, OPT_LONG_OPTIONS
},
+ { "allocated", no_argument, NULL, OPT_ALLOCATED },
{ "connections", required_argument, NULL, 'C' },
- { "destination-is-zero",no_argument, NULL,
DESTINATION_IS_ZERO_OPTION },
- { "flush", no_argument, NULL, FLUSH_OPTION },
- { "no-extents", no_argument, NULL,
NO_EXTENTS_OPTION },
+ { "destination-is-zero",no_argument, NULL,
OPT_DESTINATION_IS_ZERO },
+ { "flush", no_argument, NULL, OPT_FLUSH },
+ { "no-extents", no_argument, NULL, OPT_NO_EXTENTS
},
{ "progress", optional_argument, NULL, 'p' },
- { "queue-size", required_argument, NULL,
QUEUE_SIZE_OPTION },
- { "request-size", required_argument, NULL,
REQUEST_SIZE_OPTION },
+ { "queue-size", required_argument, NULL, OPT_QUEUE_SIZE
},
+ { "request-size", required_argument, NULL, OPT_REQUEST_SIZE
},
{ "requests", required_argument, NULL, 'R' },
- { "short-options", no_argument, NULL,
SHORT_OPTIONS_OPTION },
+ { "short-options", no_argument, NULL,
OPT_SHORT_OPTIONS },
{ "sparse", required_argument, NULL, 'S' },
- { "synchronous", no_argument, NULL,
SYNCHRONOUS_OPTION },
- { "target-is-zero", no_argument, NULL,
DESTINATION_IS_ZERO_OPTION },
+ { "synchronous", no_argument, NULL, OPT_SYNCHRONOUS
},
+ { "target-is-zero", no_argument, NULL,
OPT_DESTINATION_IS_ZERO },
{ "threads", required_argument, NULL, 'T' },
{ "verbose", no_argument, NULL, 'v' },
{ "version", no_argument, NULL, 'V' },
@@ -152,10 +152,10 @@ main (int argc, char *argv[])
break;
switch (c) {
- case HELP_OPTION:
+ case OPT_HELP:
usage (stdout, EXIT_SUCCESS);
- case LONG_OPTIONS_OPTION:
+ case OPT_LONG_OPTIONS:
for (i = 0; long_options[i].name != NULL; ++i) {
if (strcmp (long_options[i].name, "long-options") != 0
&&
strcmp (long_options[i].name, "short-options") != 0)
@@ -163,30 +163,30 @@ main (int argc, char *argv[])
}
exit (EXIT_SUCCESS);
- case SHORT_OPTIONS_OPTION:
+ case OPT_SHORT_OPTIONS:
for (i = 0; short_options[i]; ++i) {
if (short_options[i] != ':' && short_options[i] !=
'+')
printf ("-%c\n", short_options[i]);
}
exit (EXIT_SUCCESS);
- case ALLOCATED_OPTION:
+ case OPT_ALLOCATED:
allocated = true;
break;
- case DESTINATION_IS_ZERO_OPTION:
+ case OPT_DESTINATION_IS_ZERO:
destination_is_zero = true;
break;
- case FLUSH_OPTION:
+ case OPT_FLUSH:
flush = true;
break;
- case NO_EXTENTS_OPTION:
+ case OPT_NO_EXTENTS:
extents = false;
break;
- case SYNCHRONOUS_OPTION:
+ case OPT_SYNCHRONOUS:
synchronous = true;
break;
@@ -209,7 +209,7 @@ main (int argc, char *argv[])
}
break;
- case QUEUE_SIZE_OPTION:
+ case OPT_QUEUE_SIZE:
if (sscanf (optarg, "%u", &queue_size) != 1) {
fprintf (stderr, "%s: --queue-size: could not parse: %s\n",
prog, optarg);
@@ -217,7 +217,7 @@ main (int argc, char *argv[])
}
break;
- case REQUEST_SIZE_OPTION:
+ case OPT_REQUEST_SIZE:
if (sscanf (optarg, "%u", &request_size) != 1) {
fprintf (stderr, "%s: --request-size: could not parse: %s\n",
prog, optarg);
Laszlo Ersek
2023-Apr-14 07:59 UTC
[Libguestfs] [libnbd PATCH 3/4] copy: fix layout of "long_options" table
The "destination-is-zero" row is missing a space character between the
first two columns, in the "long_options" table; supply it. This
increases
the max width of "copy/main.c" to 80 chars, so we're still good
like that.
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2172516
Signed-off-by: Laszlo Ersek <lersek at redhat.com>
---
copy/main.c | 36 ++++++++++----------
1 file changed, 18 insertions(+), 18 deletions(-)
diff --git a/copy/main.c b/copy/main.c
index 8055b3a656ba..28ac0f319676 100644
--- a/copy/main.c
+++ b/copy/main.c
@@ -119,24 +119,24 @@ main (int argc, char *argv[])
};
const char *short_options = "C:pR:S:T:vV";
const struct option long_options[] = {
- { "help", no_argument, NULL, OPT_HELP },
- { "long-options", no_argument, NULL, OPT_LONG_OPTIONS
},
- { "allocated", no_argument, NULL, OPT_ALLOCATED },
- { "connections", required_argument, NULL, 'C' },
- { "destination-is-zero",no_argument, NULL,
OPT_DESTINATION_IS_ZERO },
- { "flush", no_argument, NULL, OPT_FLUSH },
- { "no-extents", no_argument, NULL, OPT_NO_EXTENTS
},
- { "progress", optional_argument, NULL, 'p' },
- { "queue-size", required_argument, NULL, OPT_QUEUE_SIZE
},
- { "request-size", required_argument, NULL, OPT_REQUEST_SIZE
},
- { "requests", required_argument, NULL, 'R' },
- { "short-options", no_argument, NULL,
OPT_SHORT_OPTIONS },
- { "sparse", required_argument, NULL, 'S' },
- { "synchronous", no_argument, NULL, OPT_SYNCHRONOUS
},
- { "target-is-zero", no_argument, NULL,
OPT_DESTINATION_IS_ZERO },
- { "threads", required_argument, NULL, 'T' },
- { "verbose", no_argument, NULL, 'v' },
- { "version", no_argument, NULL, 'V' },
+ { "help", no_argument, NULL, OPT_HELP },
+ { "long-options", no_argument, NULL,
OPT_LONG_OPTIONS },
+ { "allocated", no_argument, NULL, OPT_ALLOCATED
},
+ { "connections", required_argument, NULL, 'C' },
+ { "destination-is-zero", no_argument, NULL,
OPT_DESTINATION_IS_ZERO },
+ { "flush", no_argument, NULL, OPT_FLUSH },
+ { "no-extents", no_argument, NULL, OPT_NO_EXTENTS
},
+ { "progress", optional_argument, NULL, 'p' },
+ { "queue-size", required_argument, NULL, OPT_QUEUE_SIZE
},
+ { "request-size", required_argument, NULL,
OPT_REQUEST_SIZE },
+ { "requests", required_argument, NULL, 'R' },
+ { "short-options", no_argument, NULL,
OPT_SHORT_OPTIONS },
+ { "sparse", required_argument, NULL, 'S' },
+ { "synchronous", no_argument, NULL, OPT_SYNCHRONOUS
},
+ { "target-is-zero", no_argument, NULL,
OPT_DESTINATION_IS_ZERO },
+ { "threads", required_argument, NULL, 'T' },
+ { "verbose", no_argument, NULL, 'v' },
+ { "version", no_argument, NULL, 'V' },
{ NULL }
};
int c;
Laszlo Ersek
2023-Apr-14 07:59 UTC
[Libguestfs] [libnbd PATCH 4/4] copy: rewrap error message about stuck NBD server
Wrap "copy/nbd-ops.c" at 80 characters.
I couldn't find a way to test that this change is unobservable.
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2172516
Signed-off-by: Laszlo Ersek <lersek at redhat.com>
---
copy/nbd-ops.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/copy/nbd-ops.c b/copy/nbd-ops.c
index d3e50864125f..843b7c1746e3 100644
--- a/copy/nbd-ops.c
+++ b/copy/nbd-ops.c
@@ -482,7 +482,10 @@ nbd_ops_get_extents (struct rw *rw, size_t index,
/* The server should always make progress. */
if (offset == old_offset) {
- fprintf (stderr, "%s: NBD server is broken: it is not returning
extent information.\nTry nbdcopy --no-extents as a workaround.\n",
+ fprintf (stderr,
+ "%s: NBD server is broken: it is not returning extent
"
+ "information.\n"
+ "Try nbdcopy --no-extents as a workaround.\n",
rw->name);
exit (EXIT_FAILURE);
}
Reasonably Related Threads
- [libnbd PATCH 2/4] copy: rename <purpose>_OPTION to OPT_<purpose>
- [libnbd PATCH v2 0/3] copy: wrap source code at 80 characters
- [PATCH nbdkit v2 0/2] build: Replace ./nbdkit with a C program.
- [PATCH nbdkit v3 0/4] build: Replace ./nbdkit with a C program.
- [PATCH 0/2] build: Replace ./nbdkit with a C program.