Thanks a lot for your help! I have committed a patch now that should fix this
issue once and for all.

http://svnweb.freebsd.org/ports?view=revision&revision=336768

The analysis has shown that the vbox buildsystem has a strange check as
part of their hardening that strips away rpath for Hardened-R3
binaries. It looks
like that is supposed to protect against world writable RPATH paths which would
allow a user to inject malicious shared objects. Our gcc48 path is definitely a
safe place so I decided to disable that check for FreeBSD.

I will send that patch upstream and discuss the implications with the vbox
developers to see if that has some additional risks.


On Sat, Dec 14, 2013 at 1:25 AM, Joe Maloney <jpm...@gmail.com> wrote:
> [jmaloney@jm-desk-pc] ~% sudo ldd /usr/local/bin/VirtualBox
> Password:
> /usr/local/bin/VirtualBox:
> libthr.so.3 => /lib/libthr.so.3 (0x800822000)
> libstdc++.so.6 => /usr/local/lib/gcc46/libstdc++.so.6 (0x800a47000)
> libm.so.5 => /lib/libm.so.5 (0x800d4b000)
> libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x800f71000)
> libc.so.7 => /lib/libc.so.7 (0x80117e000)
>
> On Dec 13, 2013, at 5:02 PM, Bernhard Fröhlich <de...@bluelife.at> wrote:
>
>
> Am 12.12.2013 21:24 schrieb "Joe Maloney" <jpm...@gmail.com>:
>>
>> I cannot get the qt4 interface to start in FreeBSD 10.  VboxManage seems
>> to work fine.  This was just tested with the latest port a few hours ago
>> after Makefile change 336267 Virtualbox 4.2.20.  Below is a backtrace.
>>
>> Joe Maloney
>>
>> [jmaloney@jm-desk-pc] ~% sudo gdb /usr/local/lib/virtualbox/VirtualBox
>> GNU gdb 6.1.1 [FreeBSD]
>> Copyright 2004 Free Software Foundation, Inc.
>> GDB is free software, covered by the GNU General Public License, and you
>> are
>> welcome to change it and/or distribute copies of it under certain
>> conditions.
>> Type "show copying" to see the conditions.
>> There is absolutely no warranty for GDB.  Type "show warranty" for
>> details.
>> This GDB was configured as "amd64-marcel-freebsd"...
>> (gdb) run
>> Starting program: /usr/local/lib/virtualbox/VirtualBox
>> [New LWP 101456]
>> [New Thread 801c06400 (LWP 101456/VirtualBox)]
>> Type Manifest File: /root/.VirtualBox/xpti.dat
>> nsNativeComponentLoader: autoregistering begins.
>> nsNativeComponentLoader: autoregistering succeeded
>> nNCL: registering deferred (0)
>> [New Thread 801c11400 (LWP 100154/VirtualBox)]
>> [New Thread 801c0b400 (LWP 101680/VirtualBox)]
>>
>> Program received signal SIGSEGV, Segmentation fault.
>> [Switching to Thread 801c06400 (LWP 101456/VirtualBox)]
>> 0x0000000000000000 in ?? ()
>> (gdb) backtrace
>> #0  0x0000000000000000 in ?? ()
>> #1  0x0000000800afc072 in __dynamic_cast (src_ptr=0x7fffffffc7d0,
>> src_type=0x8080087c0, dst_type=0x808d1cea0, src2dst=0)
>>     at ../../.././../gcc-4.6.4/libstdc++-v3/libsupc++/dyncast.cc:61
>> #2  0x000000081142e759 in QtCurve::Style::eventFilter ()
>> from /usr/local/lib/qt4/plugins/styles/qtcurve.so
>> #3  0x0000000807c987cd in
>> QCoreApplicationPrivate::sendThroughObjectEventFilters ()
>> from /usr/local/lib/qt4/libQtCore.so.4
>> #4  0x000000080822750a in QApplicationPrivate::notify_helper ()
>> from /usr/local/lib/qt4/libQtGui.so.4
>> #5  0x000000080822a1f8 in QApplication::notify ()
>> from /usr/local/lib/qt4/libQtGui.so.4
>> #6  0x0000000807c984e5 in QCoreApplication::notifyInternal ()
>> from /usr/local/lib/qt4/libQtCore.so.4
>> #7  0x0000000808266ec8 in QWidgetPrivate::propagatePaletteChange ()
>> from /usr/local/lib/qt4/libQtGui.so.4
>> #8  0x000000080826baa1 in QWidget::setBackgroundRole ()
>> from /usr/local/lib/qt4/libQtGui.so.4
>> #9  0x000000081142a33f in QtCurve::Style::polish ()
>> from /usr/local/lib/qt4/plugins/styles/qtcurve.so
>> #10 0x0000000808273e21 in QWidget::event ()
>> from /usr/local/lib/qt4/libQtGui.so.4
>> #11 0x000000080864567f in QMenuBar::event ()
>> from /usr/local/lib/qt4/libQtGui.so.4
>> #12 0x000000080822751b in QApplicationPrivate::notify_helper ()
>> from /usr/local/lib/qt4/libQtGui.so.4
>> #13 0x000000080822a1f8 in QApplication::notify ()
>> from /usr/local/lib/qt4/libQtGui.so.4
>> #14 0x0000000807c984e5 in QCoreApplication::notifyInternal ()
>> from /usr/local/lib/qt4/libQtCore.so.4
>> #15 0x000000080826965e in QWidget::ensurePolished ()
>> from /usr/local/lib/qt4/libQtGui.so.4
>> #16 0x000000080826970f in QWidget::ensurePolished ()
>> from /usr/local/lib/qt4/libQtGui.so.4
>> #17 0x000000080824f39d in QLayout::totalMinimumSize ()
>> from /usr/local/lib/qt4/libQtGui.so.4
>> #18 0x0000000808273569 in QWidget::minimumSizeHint ()
>> from /usr/local/lib/qt4/libQtGui.so.4
>> #19 0x000000080548c8cc in UISelectorWindow::loadSettings
>> (this=0x801ed4000)
>>
>> at
>> /usr/ports/emulators/virtualbox-ose/work/VirtualBox-4.2.20/src/VBox/Frontends/VirtualBox/src/selector/UISelectorWindow.cpp:135
>> #20 0x0000000805485d4e in UISelectorWindow (this=0x801ed4000,
>> ppSelf=0x805c98300, pParent=0x0, flags={i = -10976})
>>
>> at
>> /usr/ports/emulators/virtualbox-ose/work/VirtualBox-4.2.20/src/VBox/Frontends/VirtualBox/src/selector/UISelectorWindow.cpp:102
>> #21 0x00000008053d32fa in VBoxGlobal::selectorWnd (this=0x805c981e0)
>> from /usr/local/lib/virtualbox/VirtualBox.so
>> #22 0x0000000805367f84 in TrustedMain (argc=1, argv=0x7fffffffd8b8) at
>> qglobal.h:1510
>> #23 0x00000000004024cb in SUPR3HardenedMain (pszProgName=0x404d14
>> "VirtualBox", fFlags=1, argc=1, argv=0x7fffffffd8b8,
>> envp=0x7fffffffd8c8)
>>
>> at
>> /usr/ports/emulators/virtualbox-ose/work/VirtualBox-4.2.20/src/VBox/HostDrivers/Support/SUPR3HardenedMain.cpp:346
>> #24 0x00000000004013cf in main (argc=1, argv=0x7fffffffd8b8,
>> envp=0x7fffffffd8c8)
>>
>> at
>> /usr/ports/emulators/virtualbox-ose/work/VirtualBox-4.2.20/src/VBox/Frontends/VirtualBox/src/hardenedmain.cpp:32
>
> Could you please send me the output of: ldd /usr/local/binVirtualBox
>
>



-- 
Bernhard Fröhlich
http://www.bluelife.at/
_______________________________________________
freebsd-emulation@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-emulation
To unsubscribe, send any mail to "freebsd-emulation-unsubscr...@freebsd.org"

Reply via email to