diff options
author | Martin Wilke <miwi@FreeBSD.org> | 2010-03-15 20:54:35 +0000 |
---|---|---|
committer | Martin Wilke <miwi@FreeBSD.org> | 2010-03-15 20:54:35 +0000 |
commit | 2a547baa1bcd9985be840b08a7804396f7d13cbb (patch) | |
tree | 90ae025ac61d42ae952a7102f887009dcc7626ab /emulators/virtualbox-ose-legacy/files/patch-src-VBox-Runtime-r3-freebsd-rtProcInitExePath-freebsd.cpp | |
parent | Update to 2.2.1-rc2 (initial wctdm24xxp support). (diff) |
Presenting VirtualBox 3.1.4 for FreeBSD
Changelog from VirtualBox is available here:
http://www.virtualbox.org/wiki/Changelog
Changes in the port:
- VirtualBox and Guest Additions iso updated to 3.1.4
- Add UNIQUENAME to fix options file clashes between the virtualbox ports [0]
- Fixed vtophys problems on CURRENT and STABLE kernes newer than
January 23th [1]
- Fixed page double wiring issue in rtR0MemObjNativeAllocPage [2]
PR: ports/143361 [0]
Submitted by: Martin Birgmeier <martin.birgmeier AT aon.at> [0]
Alexander Eichner <Alexander.Eichner AT Sun.COM> [1]
Thanks To: All testers on emulation@ and current@ [1]
Giovanni Trematerra <giovanni.trematerra AT gmail.com> [1]
Ian Freislich <ianf AT clue.co.za> [1]
Reported by: Alan Cox <alc AT cs dot rice dot edu> [2]
Notes
Notes:
svn path=/head/; revision=251101
Diffstat (limited to 'emulators/virtualbox-ose-legacy/files/patch-src-VBox-Runtime-r3-freebsd-rtProcInitExePath-freebsd.cpp')
-rw-r--r-- | emulators/virtualbox-ose-legacy/files/patch-src-VBox-Runtime-r3-freebsd-rtProcInitExePath-freebsd.cpp | 81 |
1 files changed, 0 insertions, 81 deletions
diff --git a/emulators/virtualbox-ose-legacy/files/patch-src-VBox-Runtime-r3-freebsd-rtProcInitExePath-freebsd.cpp b/emulators/virtualbox-ose-legacy/files/patch-src-VBox-Runtime-r3-freebsd-rtProcInitExePath-freebsd.cpp deleted file mode 100644 index 2332212ead14..000000000000 --- a/emulators/virtualbox-ose-legacy/files/patch-src-VBox-Runtime-r3-freebsd-rtProcInitExePath-freebsd.cpp +++ /dev/null @@ -1,81 +0,0 @@ ---- src/VBox/Runtime/r3/freebsd/rtProcInitExePath-freebsd.cpp (revision 25471) -+++ src/VBox/Runtime/r3/freebsd/rtProcInitExePath-freebsd.cpp (revision 25472) -@@ -32,6 +32,8 @@ - * Header Files * - *******************************************************************************/ - #define LOG_GROUP RTLOGGROUP_PROCESS -+#include <sys/param.h> -+#include <sys/sysctl.h> - #include <unistd.h> - #include <errno.h> - #include <dlfcn.h> -@@ -47,17 +49,20 @@ - - DECLHIDDEN(int) rtProcInitExePath(char *pszPath, size_t cchPath) - { -- /* -- * Read the /proc/curproc/file link, convert to native and return it. -- */ -- int cchLink = readlink("/proc/curproc/file", pszPath, cchPath - 1); -- if (cchLink > 0 && (size_t)cchLink <= cchPath - 1) -- { -- pszPath[cchLink] = '\0'; -+ int aiName[4]; -+ size_t cchExePath; - -+ aiName[0] = CTL_KERN; -+ aiName[1] = KERN_PROC; -+ aiName[2] = KERN_PROC_PATHNAME; -+ aiName[3] = getpid(); -+ -+ cchExePath = cchPath - 1; -+ if(sysctl(aiName, RT_ELEMENTS(aiName), pszPath, &cchExePath, NULL, 0) == 0) -+ { - char *pszTmp = NULL; - int rc = rtPathFromNative(&pszTmp, pszPath); -- AssertMsgRCReturn(rc, ("rc=%Rrc pszLink=\"%s\"\nhex: %.*Rhsx\n", rc, pszPath, cchLink, pszPath), rc); -+ AssertMsgRCReturn(rc, ("rc=%Rrc pszLink=\"%s\"\nhex: %.*Rhsx\n", rc, pszPath, cchExePath, pszPath), rc); - - size_t cch = strlen(pszTmp); - AssertReturn(cch <= cchPath, VERR_BUFFER_OVERFLOW); -@@ -68,39 +73,8 @@ - return VINF_SUCCESS; - } - -- int err = errno; -- -- /* -- * Fall back on the dynamic linker since /proc is optional. -- */ -- void *hExe = dlopen(NULL, 0); -- if (hExe) -- { -- struct link_map const *pLinkMap = 0; -- if (dlinfo(hExe, RTLD_DI_LINKMAP, &pLinkMap) == 0) -- { -- const char *pszImageName = pLinkMap->l_name; -- if (*pszImageName == '/') /* this may not always be absolute, despite the docs. :-( */ -- { -- char *pszTmp = NULL; -- int rc = rtPathFromNative(&pszTmp, pszImageName); -- AssertMsgRCReturn(rc, ("rc=%Rrc pszImageName=\"%s\"\n", rc, pszImageName), rc); -- -- size_t cch = strlen(pszTmp); -- AssertReturn(cch <= cchPath, VERR_BUFFER_OVERFLOW); -- -- memcpy(pszPath, pszTmp, cch + 1); -- RTStrFree(pszTmp); -- -- return VINF_SUCCESS; -- } -- /** @todo Try search the PATH for the file name or append the current -- * directory, which ever makes sense... */ -- } -- } -- -- int rc = RTErrConvertFromErrno(err); -- AssertMsgFailed(("rc=%Rrc err=%d cchLink=%d hExe=%p\n", rc, err, cchLink, hExe)); -+ int rc = RTErrConvertFromErrno(errno); -+ AssertMsgFailed(("rc=%Rrc errno=%d cchLink=%d\n", rc, errno, cchExePath)); - return rc; - } |