From 041b8ab252739d43dfcc1e898a3e94483287c51b Mon Sep 17 00:00:00 2001 From: Sami Kerola Date: Wed, 29 Feb 2012 00:42:16 +0100 Subject: mesg: use rpmatch to yes/no question Signed-off-by: Sami Kerola --- term-utils/mesg.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) (limited to 'term-utils/mesg.c') diff --git a/term-utils/mesg.c b/term-utils/mesg.c index 13d4fb757..4fad6f57a 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(); } } -- cgit v1.2.3-55-g7522