svn commit: r314232 - head/usr.sbin/efivar

Warner Losh imp at FreeBSD.org
Sat Feb 25 00:09:27 UTC 2017


Author: imp
Date: Sat Feb 25 00:09:26 2017
New Revision: 314232
URL: https://svnweb.freebsd.org/changeset/base/314232

Log:
  Exit when we can't print a variable.
  
  Exit after printing a message on stderr when we can't get a
  message. This is slightly different than linux, but keeps shell
  scripts from thinking the value of the variable is the error message
  and so is a net win.
  
  Sponsored by: Netflix

Modified:
  head/usr.sbin/efivar/efivar.c

Modified: head/usr.sbin/efivar/efivar.c
==============================================================================
--- head/usr.sbin/efivar/efivar.c	Sat Feb 25 00:09:21 2017	(r314231)
+++ head/usr.sbin/efivar/efivar.c	Sat Feb 25 00:09:26 2017	(r314232)
@@ -205,21 +205,20 @@ print_var(efi_guid_t *guid, char *name)
 	int rv;
 
 	efi_guid_to_str(guid, &gname);
-	if (!Nflag)
-		printf("%s-%s", gname, name);
 	if (pflag) {
 		rv = efi_get_variable(*guid, name, &data, &datalen, &att);
 
 		if (rv < 0)
-			printf("\n --- Error getting value --- %d", errno);
-		else {
-			if (Aflag)
-				asciidump(data, datalen);
-			else if (bflag)
-				bindump(data, datalen);
-			else
-				hexdump(data, datalen);
-		}
+			err(1, "%s-%s", gname, name);
+
+		if (!Nflag)
+			printf("%s-%s", gname, name);
+		if (Aflag)
+			asciidump(data, datalen);
+		else if (bflag)
+			bindump(data, datalen);
+		else
+			hexdump(data, datalen);
 	}
 	free(gname);
 	if (!Nflag)


More information about the svn-src-head mailing list