-----Original Message-----
From: Vishal Verma [mailto:vishal.l.verma@intel.com]
Sent: Saturday, July 28, 2018 3:31 AM
To: linux-nvdimm(a)lists.01.org
Cc: Vishal Verma <vishal.l.verma(a)intel.com>; Qi, Fuli/斉 福利
<qi.fuli(a)jp.fujitsu.com>
Subject: [ndctl PATCH] ndctl: deprecate undocumented short-options
The inject-smart and monitor man pages refrained from displaying short options for
various arguments (alarms, daemon) due to a lack of a coherent letter that could
be made to relate to the event name. It was expected that the user will always use
the long option for these. Since the OPT_STRING helper refused to take an empty string
for the short option, we used bogus characters for each of them.
However there is a better way to provide no short options, and that is by using
'\0'
for the short option field to OPT_STRING. Replace the bogus characters with '\0'
so that the 'short help' also becomes consistent with the man pages.
Cc: Cc: QI Fuli <qi.fuli(a)jp.fujitsu.com>
Signed-off-by: Vishal Verma <vishal.l.verma(a)intel.com>
---
ndctl/inject-smart.c | 7 ++++---
ndctl/monitor.c | 2 +-
2 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/ndctl/inject-smart.c b/ndctl/inject-smart.c index 006ea2a..edb87e1
100644
--- a/ndctl/inject-smart.c
+++ b/ndctl/inject-smart.c
@@ -73,7 +73,7 @@ OPT_STRING('M', "media-temperature-threshold", \
¶m.media_temperature_threshold, \
"set smart media temperature threshold", \
"set threshold value for smart media temperature"), \
-OPT_STRING('x',
"media-temperature-alarm", ¶m.media_temperature_alarm, \
+OPT_STRING('\0', "media-temperature-alarm",
+¶m.media_temperature_alarm, \
"smart media temperature alarm", \
"enable or disable the smart media temperature alarm"), \
OPT_STRING('c',
"ctrl-temperature", ¶m.ctrl_temperature, \ @@ -83,7 +83,7 @@
OPT_STRING('C',
"ctrl-temperature-threshold", \
¶m.ctrl_temperature_threshold, \
"set smart controller temperature threshold", \
"set threshold value for smart controller temperature"), \
-OPT_STRING('y',
"ctrl-temperature-alarm", ¶m.ctrl_temperature_alarm, \
+OPT_STRING('\0', "ctrl-temperature-alarm",
+¶m.ctrl_temperature_alarm, \
"smart controller temperature alarm", \
"enable or disable the smart controller temperature alarm"),
\ OPT_STRING('s', "spares", ¶m.spares, \ @@ -92,13 +92,14 @@
OPT_STRING('s',
"spares", ¶m.spares, \ OPT_STRING('S',
"spares-threshold",
¶m.spares_threshold, \
"set smart spares threshold", \
"set a threshold value for smart spares"), \ -OPT_STRING('z',
"spares-alarm",
¶m.spares_alarm, \
+OPT_STRING('\0', "spares-alarm", ¶m.spares_alarm, \
"smart spares alarm", \
"enable or disable the smart spares alarm"), \ OPT_BOOLEAN('f',
"fatal",
¶m.fatal, "inject fatal smart health status"), \
OPT_BOOLEAN('U',
"unsafe-shutdown", ¶m.unsafe_shutdown, \
"inject smart unsafe shutdown status")
+
static const struct option smart_opts[] = {
SMART_OPTIONS(),
OPT_END(),
diff --git a/ndctl/monitor.c b/ndctl/monitor.c index b97d1ea..c6419ad 100644
--- a/ndctl/monitor.c
+++ b/ndctl/monitor.c
@@ -583,7 +583,7 @@ int cmd_monitor(int argc, const char **argv, void *ctx)
"where to output the monitor's notification"),
OPT_FILENAME('c', "config-file", &monitor.config_file,
"config-file", "override the default config"),
- OPT_BOOLEAN('x', "daemon", &monitor.daemon,
+ OPT_BOOLEAN('\0', "daemon", &monitor.daemon,
"run ndctl monitor as a daemon"),
OPT_BOOLEAN('u', "human", &monitor.human,
"use human friendly output formats"),
Looks good to me.
Please feel free to add: Reviewed-by: QI Fuli <qi.fuli(a)jp.fujitsu.com>
Thanks,
QI
--
2.14.4