Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 7 Aug 2008 18:14:04 GMT
From:      Ed Schouten <ed@FreeBSD.org>
To:        Perforce Change Reviews <perforce@FreeBSD.org>
Subject:   PERFORCE change 146846 for review
Message-ID:  <200808071814.m77IE4Hv088079@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=146846

Change 146846 by ed@ed_dull on 2008/08/07 18:13:58

	Revert changes to openpty(). There is no real need to trim away
	the function calls. This still makes libutil work when used with
	an older kernel + C library from pre-mpsafetty.

Affected files ...

.. //depot/projects/mpsafetty/lib/libutil/pty.c#2 integrate

Differences ...

==== //depot/projects/mpsafetty/lib/libutil/pty.c#2 (text+ko) ====

@@ -60,9 +60,31 @@
 	if (master == -1)
 		return (-1);
 
-	if ((slavename = ptsname(master)) == NULL ||
-	    (slave = open(slavename, O_RDWR)) == -1) {
+	if (grantpt(master) == -1) {
+		close(master);
+		return (-1);
+	}
+
+	slavename = ptsname(master);
+	if (slavename == NULL) {
+		close(master);
+		return (-1);
+	}
+
+	if (revoke(slavename) == -1) {
+		close(master);
+		return (-1);
+	}
+
+	slave = open(slavename, O_RDWR);
+	if (slave == -1) {
+		close(master);
+		return (-1);
+	}
+
+	if (unlockpt(master) == -1) {
 		close(master);
+		close(slave);
 		return (-1);
 	}
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200808071814.m77IE4Hv088079>