diff options
Diffstat (limited to 'recipes/mozilla/nss-3.12/85_security_load.dpatch')
-rw-r--r-- | recipes/mozilla/nss-3.12/85_security_load.dpatch | 57 |
1 files changed, 0 insertions, 57 deletions
diff --git a/recipes/mozilla/nss-3.12/85_security_load.dpatch b/recipes/mozilla/nss-3.12/85_security_load.dpatch deleted file mode 100644 index 8581f9b28f..0000000000 --- a/recipes/mozilla/nss-3.12/85_security_load.dpatch +++ /dev/null @@ -1,57 +0,0 @@ -Index: mozilla/security/nss/lib/freebl/genload.c -=================================================================== ---- mozilla.orig/security/nss/lib/freebl/genload.c 2008-07-23 20:27:21.000000000 +0200 -+++ mozilla/security/nss/lib/freebl/genload.c 2008-07-23 20:28:57.000000000 +0200 -@@ -113,9 +113,14 @@ - - /* Remove the trailing filename from referencePath and add the new one */ - c = strrchr(referencePath, PR_GetDirectorySeparator()); -+ if (!c) { /* referencePath doesn't contain a / means that dladdr gave us argv[0] -+ * and program was called from $PATH. Hack to get libs from /usr/lib */ -+ referencePath = "/usr/lib/"; -+ c = &referencePath[8]; /* last / */ -+ } - if (c) { - size_t referencePathSize = 1 + c - referencePath; -- fullName = (char*) PORT_Alloc(strlen(name) + referencePathSize + 1); -+ fullName = (char*) PORT_Alloc(strlen(name) + referencePathSize + 5); - if (fullName) { - memcpy(fullName, referencePath, referencePathSize); - strcpy(fullName + referencePathSize, name); -@@ -125,7 +130,17 @@ - #endif - libSpec.type = PR_LibSpec_Pathname; - libSpec.value.pathname = fullName; -+ if ((referencePathSize >= 4) && -+ (strncmp(fullName + referencePathSize - 4, "bin", 3) == 0)) { -+ memcpy(fullName + referencePathSize -4, "lib", 3); -+ } -+ strcpy(fullName + referencePathSize, "nss/"); -+ strcpy(fullName + referencePathSize + 4, name); - dlh = PR_LoadLibraryWithFlags(libSpec, PR_LD_NOW | PR_LD_LOCAL); -+ if (! dlh) { -+ strcpy(fullName + referencePathSize, name); -+ dlh = PR_LoadLibraryWithFlags(libSpec, PR_LD_NOW | PR_LD_LOCAL); -+ } - PORT_Free(fullName); - } - } -Index: mozilla/security/nss/lib/pk11wrap/pk11load.c -=================================================================== ---- mozilla.orig/security/nss/lib/pk11wrap/pk11load.c 2008-07-23 20:27:22.000000000 +0200 -+++ mozilla/security/nss/lib/pk11wrap/pk11load.c 2008-07-23 20:28:57.000000000 +0200 -@@ -331,6 +331,14 @@ - #endif - - if (library == NULL) { -+ full_name = rindex(mod->dllName, PR_GetDirectorySeparator()); -+ if (full_name) -+ full_name++; -+ else -+ full_name = mod->dllName; -+ library = loader_LoadLibrary(full_name); -+ } -+ if (library == NULL) { - return SECFailure; - } - |