From: Chuck Lever Date: Wed, 17 Dec 2008 19:23:43 +0000 (-0500) Subject: text-based mount command: use po_get_numeric() for handling retry X-Git-Tag: nfs-utils-1-1-5~42 X-Git-Url: https://git.decadent.org.uk/gitweb/?p=nfs-utils.git;a=commitdiff_plain;h=3f23f712477df48fd1d57376b65c44bb2a19ec16;hp=b5009d23525181846777349f2fc0e4a72b89d24d text-based mount command: use po_get_numeric() for handling retry Replace the logic in nfs_parse_retry_option() with a call to the new po_get_numeric() function. Signed-off-by: Chuck Lever Signed-off-by: Steve Dickson --- diff --git a/utils/mount/stropts.c b/utils/mount/stropts.c index 09fca86..43791e6 100644 --- a/utils/mount/stropts.c +++ b/utils/mount/stropts.c @@ -99,19 +99,21 @@ struct nfsmount_info { static time_t nfs_parse_retry_option(struct mount_options *options, unsigned int timeout_minutes) { - char *retry_option, *endptr; + long tmp; - retry_option = po_get(options, "retry"); - if (retry_option) { - long tmp; - - errno = 0; - tmp = strtol(retry_option, &endptr, 10); - if (errno == 0 && endptr != retry_option && tmp >= 0) + switch (po_get_numeric(options, "retry", &tmp)) { + case PO_NOT_FOUND: + break; + case PO_FOUND: + if (tmp >= 0) { timeout_minutes = tmp; - else if (verbose) + break; + } + case PO_BAD_VALUE: + if (verbose) nfs_error(_("%s: invalid retry timeout was specified; " "using default timeout"), progname); + break; } return time(NULL) + (time_t)(timeout_minutes * 60);