summaryrefslogtreecommitdiffstats
path: root/cddl
diff options
context:
space:
mode:
authorsmh <smh@FreeBSD.org>2014-05-08 08:17:12 +0000
committersmh <smh@FreeBSD.org>2014-05-08 08:17:12 +0000
commitc84c4e2d80adee539f6299caa883885e5fa1f29c (patch)
tree7b1a0c1b33602fb3b6e1cc7a665e7efa7ef0eb49 /cddl
parent8c4230087267cddda71bf6da3df6f9fd04d46b5e (diff)
downloadFreeBSD-src-c84c4e2d80adee539f6299caa883885e5fa1f29c.zip
FreeBSD-src-c84c4e2d80adee539f6299caa883885e5fa1f29c.tar.gz
MFC r264851
Eliminated optarg global being used outside of the function which called getopt Sponsored by: Multiplay
Diffstat (limited to 'cddl')
-rw-r--r--cddl/contrib/opensolaris/cmd/zfs/zfs_main.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c b/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c
index 84b05eb..4464b6a 100644
--- a/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c
+++ b/cddl/contrib/opensolaris/cmd/zfs/zfs_main.c
@@ -495,9 +495,8 @@ usage(boolean_t requested)
}
static int
-parseprop(nvlist_t *props)
+parseprop(nvlist_t *props, char *propname)
{
- char *propname = optarg;
char *propval, *strval;
if ((propval = strchr(propname, '=')) == NULL) {
@@ -526,7 +525,7 @@ parse_depth(char *opt, int *flags)
depth = (int)strtol(opt, &tmp, 0);
if (*tmp) {
(void) fprintf(stderr,
- gettext("%s is not an integer\n"), optarg);
+ gettext("%s is not an integer\n"), opt);
usage(B_FALSE);
}
if (depth < 0) {
@@ -617,7 +616,7 @@ zfs_do_clone(int argc, char **argv)
while ((c = getopt(argc, argv, "o:p")) != -1) {
switch (c) {
case 'o':
- if (parseprop(props))
+ if (parseprop(props, optarg))
return (1);
break;
case 'p':
@@ -767,7 +766,7 @@ zfs_do_create(int argc, char **argv)
nomem();
break;
case 'o':
- if (parseprop(props))
+ if (parseprop(props, optarg))
goto error;
break;
case 's':
@@ -3636,7 +3635,7 @@ zfs_do_snapshot(int argc, char **argv)
while ((c = getopt(argc, argv, "ro:")) != -1) {
switch (c) {
case 'o':
- if (parseprop(props))
+ if (parseprop(props, optarg))
return (1);
break;
case 'r':
OpenPOWER on IntegriCloud