Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 12 May 2012 15:35:19 -0400
From:      Gary Palmer <gjp@in-addr.com>
To:        freebsd-emulation@freebsd.org
Subject:   Re: headless virtualbox crashing - possible problem with interaction with libvncserver (including patch)
Message-ID:  <20120512193519.GC31698@in-addr.com>
In-Reply-To: <20120512193138.GB31698@in-addr.com>
References:  <20120512193138.GB31698@in-addr.com>

next in thread | previous in thread | raw e-mail | index | archive | help

--jho1yZJdad60DJr+
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

On Sat, May 12, 2012 at 03:31:38PM -0400, Gary Palmer wrote:
> Hi,
> 
> I have virtualbox-ose-4.1.14 and libvncserver-0.9.9 installed on FreeBSD 9
> and while I could start one VM using VBoxHeadless fine, the 2nd one would
> start but if I tried to attach to the VNC server it would crash with a bus
> error.  The only thing I noticed in the startup messages was
> 
> 12/05/2012 19:01:24 Listening for VNC connections on TCP port 5901
> 12/05/2012 19:01:24 rfbListenOnTCP6Port: error in bind IPv6 socket: Address already in use
> 
> I tracked this down to libvncserver having IPv6 support but virtualbox
> not setting the IPv6 port, just the IPv4 port.  I recompiled with debugging
> symbols and the attached patch and the crashes have stopped.  I'm
> inclined to suspect that the patch stops the crash.  I'm half pondering
> altering the patch a little so that if a port isn't specified it uses the
> autoprobe feature of libvncserver to find a free port rather than blindly
> assuming 5900 all the time.

The patch got stripped, probably for having the wrong MIME type.  Let me
try again.

Gary

--jho1yZJdad60DJr+
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment;
	filename="patch-src-VBox-Frontends-VBoxHeadless-FramebufferVNC.cpp.txt"

--- src/VBox/Frontends/VBoxHeadless/FramebufferVNC.cpp.orig	2012-05-12 19:50:26.807639833 +0100
+++ src/VBox/Frontends/VBoxHeadless/FramebufferVNC.cpp	2012-05-12 19:50:38.568636058 +0100
@@ -89,7 +89,10 @@
     vncServer = rfbGetScreen(0, NULL, mWidth, mHeight, 8, 3, 1);
     vncServer->screenData = (void*)this;
     if (mVncPort)
+    {
         vncServer->port = mVncPort;
+        vncServer->ipv6port = mVncPort;
+    }
     char *pszDesktopName;
     rc = RTStrAPrintf(&pszDesktopName, "%s - VirtualBox", pszName);
     if (rc >= 0)

--jho1yZJdad60DJr+--



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