svn commit: r220919 - stable/8/sbin/conscontrol

Ruslan Ermilov ru at FreeBSD.org
Thu Apr 21 09:34:45 UTC 2011


Author: ru
Date: Thu Apr 21 09:34:44 2011
New Revision: 220919
URL: http://svn.freebsd.org/changeset/base/220919

Log:
  MFC r220801:
  
  Changed "conscontrol unset" to accept an existing virtual
  console device as an argument.  Unsetting virtual console
  using /dev/console seems to have never worked.

Modified:
  stable/8/sbin/conscontrol/conscontrol.8
  stable/8/sbin/conscontrol/conscontrol.c
Directory Properties:
  stable/8/sbin/conscontrol/   (props changed)

Modified: stable/8/sbin/conscontrol/conscontrol.8
==============================================================================
--- stable/8/sbin/conscontrol/conscontrol.8	Thu Apr 21 09:03:48 2011	(r220918)
+++ stable/8/sbin/conscontrol/conscontrol.8	Thu Apr 21 09:34:44 2011	(r220919)
@@ -25,7 +25,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd October 23, 2001
+.Dd April 14, 2011
 .Dt CONSCONTROL 8
 .Os
 .Sh NAME
@@ -40,7 +40,7 @@
 .Cm add | delete
 .Ar console
 .Nm
-.Cm set Ar console | Cm unset
+.Cm set | unset Ar console
 .Sh DESCRIPTION
 The
 .Nm
@@ -91,7 +91,7 @@ the name of the directory may be omitted
 Change the state of console muting.
 All console output is suppressed when console muting is
 .Cm on .
-.It Cm set Ar console | Cm unset
+.It Cm set | unset Ar console
 Set or unset the virtual console.
 When unset, output from the system, such as the kernel
 .Xr printf 9 ,

Modified: stable/8/sbin/conscontrol/conscontrol.c
==============================================================================
--- stable/8/sbin/conscontrol/conscontrol.c	Thu Apr 21 09:03:48 2011	(r220918)
+++ stable/8/sbin/conscontrol/conscontrol.c	Thu Apr 21 09:34:44 2011	(r220919)
@@ -50,7 +50,7 @@ usage(void)
 	    "usage: conscontrol [list]",
 	    "       conscontrol mute on | off",
 	    "       conscontrol add | delete console",
-	    "       conscontrol set console | unset");
+	    "       conscontrol set | unset console");
 	exit(1);
 }
 
@@ -153,28 +153,16 @@ consdel(char *devnam)
 }
 
 static void
-consset(char *devnam)
+consset(char *devnam, int flag)
 {
-	int ttyfd, flag = 1;
+	int ttyfd;
 
 	ttyfd = open(devnam, O_RDONLY);
 	if (ttyfd == -1)
 		err(1, "opening %s", devnam);
 	if (ioctl(ttyfd, TIOCCONS, &flag) == -1)
-		err(1, "could not set %s as virtual console", devnam);
-	close(ttyfd);
-}
-
-static void
-consunset(void)
-{
-	int ttyfd, flag = 0;
-
-	ttyfd = open(DEVDIR "console", O_RDONLY);
-	if (ttyfd == -1)
-		err(1, "opening virtual console");
-	if (ioctl(ttyfd, TIOCCONS, &flag) == -1)
-		err(1, "could not unset virtual console");
+		err(1, "could not %s %s as virtual console",
+		    flag ? "set" : "unset", devnam);
 	close(ttyfd);
 }
 
@@ -188,9 +176,7 @@ main(int argc, char **argv)
 	argv += optind;
 
 	if (argc > 0 && strcmp(argv[0], "list") != 0) {
-		if (argc == 1 && strcmp(argv[0], "unset") == 0)
-			consunset();
-		else if (argc != 2)
+		if (argc != 2)
 			usage();
 		else if (strcmp(argv[0], "mute") == 0)
 			consmute(argv[1]);
@@ -199,7 +185,9 @@ main(int argc, char **argv)
 		else if (strcmp(argv[0], "delete") == 0)
 			consdel(argv[1]);
 		else if (strcmp(argv[0], "set") == 0)
-			consset(argv[1]);
+			consset(argv[1], 1);
+		else if (strcmp(argv[0], "unset") == 0)
+			consset(argv[1], 0);
 		else
 			usage();
 	}


More information about the svn-src-stable-8 mailing list