]> git.ipfire.org Git - thirdparty/xfsprogs-dev.git/commitdiff
xfs_repair: fix getsubopt name definitions to use enums
authorDarrick J. Wong <darrick.wong@oracle.com>
Thu, 12 Apr 2018 15:34:11 +0000 (10:34 -0500)
committerEric Sandeen <sandeen@redhat.com>
Thu, 12 Apr 2018 15:34:11 +0000 (10:34 -0500)
Convert the getsubopt usage in xfs_repair to use enums and explicitly
initialized array elements, similar to mkfs.  This also fixes the hole
in the o_opts table caused by 42fa89bc1b8dc8 ("xfs_repair: remove
pre_65_beta option") that causes segfaults in xfs/179 and xfs/202.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Fixes: 42fa89bc1b ("xfs_repair: remove pre_65_beta option")
Reviewed-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: Eric Sandeen <sandeen@sandeen.net>
repair/xfs_repair.c

index b2a243204cc78f400d6e93d20cd538e75437d7ca..ff6a7384250a10a88e77611f892774ba123b9682 100644 (file)
 /*
  * -o: user-supplied override options
  */
+enum o_opt_nums {
+       ASSUME_XFS = 0,
+       IHASH_SIZE,
+       BHASH_SIZE,
+       AG_STRIDE,
+       FORCE_GEO,
+       PHASE2_THREADS,
+       O_MAX_OPTS,
+};
+
 static char *o_opts[] = {
-#define ASSUME_XFS     0
-       "assume_xfs",
-#define        IHASH_SIZE      2
-       "ihash",
-#define        BHASH_SIZE      3
-       "bhash",
-#define        AG_STRIDE       4
-       "ag_stride",
-#define FORCE_GEO      5
-       "force_geometry",
-#define PHASE2_THREADS 6
-       "phase2_threads",
-       NULL
+       [ASSUME_XFS]            = "assume_xfs",
+       [IHASH_SIZE]            = "ihash",
+       [BHASH_SIZE]            = "bhash",
+       [AG_STRIDE]             = "ag_stride",
+       [FORCE_GEO]             = "force_geometry",
+       [PHASE2_THREADS]        = "phase2_threads",
+       [O_MAX_OPTS]            = NULL,
 };
 
 /*
  * -c: conversion options
  */
+enum c_opt_nums {
+       CONVERT_LAZY_COUNT = 0,
+       C_MAX_OPTS,
+};
+
 static char *c_opts[] = {
-#define CONVERT_LAZY_COUNT     0
-       "lazycount",
-       NULL
+       [CONVERT_LAZY_COUNT]    = "lazycount",
+       [C_MAX_OPTS]            = NULL,
 };