On Wed, Oct 19, 2011 at 02:47:36PM -0600, Eric Blake wrote:
Looks good (better would be using openpty(), once gnulib changes
that to LGPLv2+, but I'll deal with that in a later patch). So,
while waiting on gnulib changes, I'll temporarily #ifdef out this
code so that I don't break mingw compilation.
Unfortuntely it broke anyway.
ACK to the intent and to incorporating previous review comments.
Here's what I squashed in before pushing:
diff --git i/src/util/util.c w/src/util/util.c
index 1ec36f1..b2cdf6a 100644
--- i/src/util/util.c
+++ w/src/util/util.c
@@ -1106,6 +1106,12 @@ int virFileOpenTty(int *ttymaster,
{
int rc = -1;
+#ifdef WIN32
+ /* mingw completely lacks pseudo-terminals. */
+ errno = ENOSYS;
+
+#else /* !WIN32 */
+
if ((*ttymaster = posix_openpt(O_RDWR|O_NOCTTY|O_NONBLOCK)) < 0)
goto cleanup;
@@ -1144,8 +1150,8 @@ cleanup:
if (rc != 0)
VIR_FORCE_CLOSE(*ttymaster);
+#endif /* !WIN32 */
return rc;
-
}
cc1: warnings being treated as errors
../../src/util/util.c: In function 'virFileOpenTty':
../../src/util/util.c:1103:25: error: unused parameter 'ttymaster'
[-Wunused-parameter]
../../src/util/util.c:1104:27: error: unused parameter 'ttyName'
[-Wunused-parameter]
../../src/util/util.c:1105:24: error: unused parameter 'rawmode'
[-Wunused-parameter]
Here's what I'm pushing as a build breaker fix
diff --git a/src/util/util.c b/src/util/util.c
index 01146f5..af27344 100644
--- a/src/util/util.c
+++ b/src/util/util.c
@@ -1099,20 +1099,13 @@ virFileBuildPath(const char *dir, const char *name, const char
*ext)
return path;
}
-
+#ifndef WIN32
int virFileOpenTty(int *ttymaster,
char **ttyName,
int rawmode)
{
int rc = -1;
-#ifdef WIN32
- /* mingw completely lacks pseudo-terminals, and the gnulib
- * replacements are not (yet) license compatible. */
- errno = ENOSYS;
-
-#else /* !WIN32 */
-
if ((*ttymaster = posix_openpt(O_RDWR|O_NOCTTY|O_NONBLOCK)) < 0)
goto cleanup;
@@ -1151,9 +1144,19 @@ cleanup:
if (rc != 0)
VIR_FORCE_CLOSE(*ttymaster);
-#endif /* !WIN32 */
return rc;
}
+#else /* WIN32 */
+int virFileOpenTty(int *ttymaster ATTRIBUTE_UNUSED,
+ char **ttyName ATTRIBUTE_UNUSED,
+ int rawmode ATTRIBUTE_UNUSED)
+{
+ /* mingw completely lacks pseudo-terminals, and the gnulib
+ * replacements are not (yet) license compatible. */
+ errno = ENOSYS;
+ return -1;
+}
+#endif /* WIN32 */
/*
* Creates an absolute path for a potentially relative path.
Daniel
--
|:
http://berrange.com -o-
http://www.flickr.com/photos/dberrange/ :|
|:
http://libvirt.org -o-
http://virt-manager.org :|
|:
http://autobuild.org -o-
http://search.cpan.org/~danberr/ :|
|:
http://entangle-photo.org -o-
http://live.gnome.org/gtk-vnc :|