changeset 13046:b615ff9cec13

6971008 nwamcfg revert emits confusing message
author Anurag S. Maskey <Anurag.Maskey@Oracle.COM>
date Fri, 06 Aug 2010 14:58:14 -0400
parents 3ebd0e96f669
children 0847ab4cffd0
files usr/src/cmd/cmd-inet/usr.sbin/nwamcfg/nwamcfg.c
diffstat 1 files changed, 15 insertions(+), 9 deletions(-) [+]
line wrap: on
line diff
--- a/usr/src/cmd/cmd-inet/usr.sbin/nwamcfg/nwamcfg.c	Fri Aug 06 11:55:21 2010 -0700
+++ b/usr/src/cmd/cmd-inet/usr.sbin/nwamcfg/nwamcfg.c	Fri Aug 06 14:58:14 2010 -0400
@@ -20,8 +20,7 @@
  */
 
 /*
- * Copyright 2010 Sun Microsystems, Inc.  All rights reserved.
- * Use is subject to license terms.
+ * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
  */
 
 /*
@@ -1770,11 +1769,12 @@
 void
 revert_func(cmd_t *cmd)
 {
-	nwam_error_t	ret;
-	char		*name = NULL;
-	nwam_ncu_type_t ncu_type;
-
-	switch (active_object_type()) {
+	nwam_error_t		ret;
+	char			*name = NULL;
+	nwam_ncu_type_t		ncu_type;
+	nwam_object_type_t	object_type = active_object_type();
+
+	switch (object_type) {
 	case NWAM_OBJECT_TYPE_NCU:
 		/* retrieve name and type to use later */
 		if ((ret = nwam_ncu_get_ncu_type(ncu_h, &ncu_type))
@@ -1813,12 +1813,18 @@
 	}
 
 	/* Exit this scope because handle already freed (call do_cancel()) */
-	free(name);
 	need_to_commit = B_FALSE;
+
 	if (ret != NWAM_SUCCESS) {
-		nwamerr(ret, "Revert error");
+		if (ret == NWAM_ENTITY_NOT_FOUND) {
+			nerr("%s '%s' does not exist to revert to, removing it",
+			    nwam_object_type_to_string(object_type), name);
+		} else {
+			nwamerr(ret, "Revert error");
+		}
 		do_cancel();
 	}
+	free(name);
 	return;
 
 name_error: