Index: /trunk/doc/manual/user_ChangeLogImpl.xml
===================================================================
--- /trunk/doc/manual/user_ChangeLogImpl.xml	(revision 76907)
+++ /trunk/doc/manual/user_ChangeLogImpl.xml	(revision 76908)
@@ -53,4 +53,9 @@
       </listitem>
 
+      <listitem>
+        <para>Serial: fixed connecting to pseudo terminals on POSIX hosts
+          (6.0.0 regression; bug #18319)</para>
+      </listitem>
+
     </itemizedlist>
   </sect1>
Index: /trunk/src/VBox/Runtime/r3/posix/serialport-posix.cpp
===================================================================
--- /trunk/src/VBox/Runtime/r3/posix/serialport-posix.cpp	(revision 76907)
+++ /trunk/src/VBox/Runtime/r3/posix/serialport-posix.cpp	(revision 76908)
@@ -266,5 +266,5 @@
                 int fTiocmClear = TIOCM_LOOP;
                 rcPsx = ioctl(pThis->iFd, TIOCMBIC, &fTiocmClear);
-                if (rcPsx == -1)
+                if (rcPsx == -1 && errno != EINVAL) /* Pseudo terminals don't support loopback mode so ignore an error here. */
                     rc = RTErrConvertFromErrno(errno);
             }
@@ -623,5 +623,5 @@
         }
     }
-    else if (errno == ENOTTY)
+    else if (errno == ENOTTY || errno == EINVAL)
         rc = VERR_NOT_SUPPORTED;
     else
