From eb41fcfaadb4cf18fbcc216181468679ab029903 Mon Sep 17 00:00:00 2001 From: Pierre Pronchery Date: Thu, 14 Jul 2005 16:58:16 +0000 Subject: [PATCH] Fixed -m command line option (only numerical form is supported) --- src/mkfifo.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/mkfifo.c b/src/mkfifo.c index ba64994..ad261ed 100644 --- a/src/mkfifo.c +++ b/src/mkfifo.c @@ -36,21 +36,21 @@ int main(int argc, char * argv[]) mode_t mode = 0777; int errcode = 0; int o; + char * p; int i; while((o = getopt(argc, argv, "m:")) != -1) - { switch(o) { case 'm': - /* FIXME */ - if((mode = strtol(optarg, NULL, 8)) > 0777) + /* FIXME mode may be an expression */ + mode = strtol(optarg, &p, 8); + if(*optarg == '\0' || *p != '\0' || mode > 0777) return _usage(); break; - case '?': + default: return _usage(); } - } if(argc == optind) return _usage(); for(i = optind; i < argc; i++)