|
|
|
[PATCH 04/17] mesg: use rpmatch to yes/no question | |
| [Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] | |
Signed-off-by: Sami Kerola <kerolasa@xxxxxx>
---
term-utils/mesg.c | 14 +++++++++-----
1 file changed, 9 insertions(+), 5 deletions(-)
diff --git a/term-utils/mesg.c b/term-utils/mesg.c
index 13d4fb7..4fad6f5 100644
--- a/term-utils/mesg.c
+++ b/term-utils/mesg.c
@@ -66,6 +66,8 @@
static void __attribute__ ((__noreturn__)) usage(FILE * out)
{
fputs(_("\nUsage:\n"), out);
+ /* TRANSLATORS: this program uses for y and n rpmatch(3),
+ * which means they can be translated. */
fprintf(out,
_(" %s [options] [y | n]\n"), program_invocation_short_name);
@@ -127,8 +129,8 @@ int main(int argc, char *argv[])
return IS_NOT_ALLOWED;
}
- switch (*argv[0]) {
- case 'y':
+ switch (rpmatch(argv[0])) {
+ case 1:
#ifdef USE_TTY_GROUP
if (chmod(tty, sb.st_mode | S_IWGRP) < 0)
#else
@@ -138,14 +140,16 @@ int main(int argc, char *argv[])
if (verbose)
puts(_("write access to your terminal is allowed"));
return IS_ALLOWED;
- case 'n':
+ case 0:
if (chmod(tty, sb.st_mode & ~(S_IWGRP|S_IWOTH)) < 0)
err(MESG_EXIT_FAILURE, _("change %s mode failed"), tty);
if (verbose)
puts(_("write access to your terminal is denied"));
return IS_NOT_ALLOWED;
- default:
- warnx(_("invalid argument: %c"), *argv[0]);
+ case -1:
+ warnx(_("invalid argument: %s"), argv[0]);
usage(stderr);
+ default:
+ abort();
}
}
--
1.7.9.2
--
To unsubscribe from this list: send the line "unsubscribe util-linux" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
[Site Home] [Netdev] [Ethernet Bridging] [Linux Wireless] [Kernel Newbies] [Memory] [Security] [Linux for Hams] [Netfilter] [Bugtraq] [Rubini] [Photo] [Yosemite] [Yosemite News] [MIPS Linux] [ARM Linux] [Linux RAID] [Linux Admin] [Samba] [Video 4 Linux] [Linux Resources]