diff options
Diffstat (limited to 'fs/ncpfs/getopt.c')
| -rw-r--r-- | fs/ncpfs/getopt.c | 23 | 
1 files changed, 12 insertions, 11 deletions
diff --git a/fs/ncpfs/getopt.c b/fs/ncpfs/getopt.c index 0af3349de85..344889cd120 100644 --- a/fs/ncpfs/getopt.c +++ b/fs/ncpfs/getopt.c @@ -2,6 +2,8 @@   * getopt.c   */ +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt +  #include <linux/kernel.h>  #include <linux/string.h> @@ -46,29 +48,28 @@ int ncp_getopt(const char *caller, char **options, const struct ncp_option *opts  				if (opts->has_arg & OPT_NOPARAM) {  					return opts->val;  				} -				printk(KERN_INFO "%s: the %s option requires an argument\n", -				       caller, token); +				pr_info("%s: the %s option requires an argument\n", +					caller, token);  				return -EINVAL;  			}  			if (opts->has_arg & OPT_INT) { -				char* v; +				int rc = kstrtoul(val, 0, value); -				*value = simple_strtoul(val, &v, 0); -				if (!*v) { -					return opts->val; +				if (rc) { +					pr_info("%s: invalid numeric value in %s=%s\n", +						caller, token, val); +					return rc;  				} -				printk(KERN_INFO "%s: invalid numeric value in %s=%s\n", -					caller, token, val); -				return -EDOM; +				return opts->val;  			}  			if (opts->has_arg & OPT_STRING) {  				return opts->val;  			} -			printk(KERN_INFO "%s: unexpected argument %s to the %s option\n", +			pr_info("%s: unexpected argument %s to the %s option\n",  				caller, val, token);  			return -EINVAL;  		}  	} -	printk(KERN_INFO "%s: Unrecognized mount option %s\n", caller, token); +	pr_info("%s: Unrecognized mount option %s\n", caller, token);  	return -EOPNOTSUPP;  }  | 
