Hello community,

here is the log from the commit of package mozilla-nspr for openSUSE:Factory 
checked in at 2020-09-03 01:07:55
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/mozilla-nspr (Old)
 and      /work/SRC/openSUSE:Factory/.mozilla-nspr.new.3399 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "mozilla-nspr"

Thu Sep  3 01:07:55 2020 rev:76 rq:829608 version:4.27

Changes:
--------
--- /work/SRC/openSUSE:Factory/mozilla-nspr/mozilla-nspr.changes        
2020-07-30 09:58:25.911135524 +0200
+++ /work/SRC/openSUSE:Factory/.mozilla-nspr.new.3399/mozilla-nspr.changes      
2020-09-03 01:08:11.500347738 +0200
@@ -1,0 +2,12 @@
+Sat Aug 22 06:38:40 UTC 2020 - Wolfgang Rosenauer <[email protected]>
+
+- update to version 4.27
+  * the macOS platform code for shared library loading was
+    changed to support macOS 11.
+    If the absolute path parameter given to PR_LoadLibrary
+    begins with either /System/ or /usr/lib/ then no test is
+    performed if the library exists at a file.
+  * An include statement for a Windows system library header
+    was added
+
+-------------------------------------------------------------------

Old:
----
  nspr-4.26.tar.gz

New:
----
  nspr-4.27.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ mozilla-nspr.spec ++++++
--- /var/tmp/diff_new_pack.9bF9EA/_old  2020-09-03 01:08:19.028350247 +0200
+++ /var/tmp/diff_new_pack.9bF9EA/_new  2020-09-03 01:08:19.032350248 +0200
@@ -18,7 +18,7 @@
 
 
 Name:           mozilla-nspr
-Version:        4.26
+Version:        4.27
 Release:        0
 Summary:        Netscape Portable Runtime
 License:        MPL-2.0

++++++ nspr-4.26.tar.gz -> nspr-4.27.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nspr-4.26/nspr/.hg_archival.txt 
new/nspr-4.27/nspr/.hg_archival.txt
--- old/nspr-4.26/nspr/.hg_archival.txt 2020-06-24 15:26:09.000000000 +0200
+++ new/nspr-4.27/nspr/.hg_archival.txt 2020-07-23 15:54:12.000000000 +0200
@@ -1,4 +1,4 @@
 repo: a4b34919bf34db2ee22acbbc305693c8980b6dc6
-node: aff47ef77dd5f037f24bf8473ca0b9eb1fb13d5f
+node: a75540f0e0c0053a22271acad5aaff2320bdb065
 branch: default
-tag: NSPR_4_26_RTM
+tag: NSPR_4_27_RTM
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nspr-4.26/nspr/configure new/nspr-4.27/nspr/configure
--- old/nspr-4.26/nspr/configure        2020-06-24 15:26:09.000000000 +0200
+++ new/nspr-4.27/nspr/configure        2020-07-23 15:54:12.000000000 +0200
@@ -2486,7 +2486,7 @@
   program_prefix=${target_alias}-
 
 MOD_MAJOR_VERSION=4
-MOD_MINOR_VERSION=26
+MOD_MINOR_VERSION=27
 MOD_PATCH_VERSION=0
 NSPR_MODNAME=nspr20
 _HAVE_PTHREADS=
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nspr-4.26/nspr/configure.in 
new/nspr-4.27/nspr/configure.in
--- old/nspr-4.26/nspr/configure.in     2020-06-24 15:26:09.000000000 +0200
+++ new/nspr-4.27/nspr/configure.in     2020-07-23 15:54:12.000000000 +0200
@@ -15,7 +15,7 @@
 dnl = Defaults
 dnl ========================================================
 MOD_MAJOR_VERSION=4
-MOD_MINOR_VERSION=26
+MOD_MINOR_VERSION=27
 MOD_PATCH_VERSION=0
 NSPR_MODNAME=nspr20
 _HAVE_PTHREADS=
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nspr-4.26/nspr/pr/include/prinit.h 
new/nspr-4.27/nspr/pr/include/prinit.h
--- old/nspr-4.26/nspr/pr/include/prinit.h      2020-06-24 15:26:09.000000000 
+0200
+++ new/nspr-4.27/nspr/pr/include/prinit.h      2020-07-23 15:54:12.000000000 
+0200
@@ -31,9 +31,9 @@
 ** The format of the version string is
 **     "<major version>.<minor version>[.<patch level>] [<Beta>]"
 */
-#define PR_VERSION  "4.26"
+#define PR_VERSION  "4.27"
 #define PR_VMAJOR   4
-#define PR_VMINOR   26
+#define PR_VMINOR   27
 #define PR_VPATCH   0
 #define PR_BETA     PR_FALSE
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nspr-4.26/nspr/pr/src/linking/prlink.c 
new/nspr-4.27/nspr/pr/src/linking/prlink.c
--- old/nspr-4.26/nspr/pr/src/linking/prlink.c  2020-06-24 15:26:09.000000000 
+0200
+++ new/nspr-4.27/nspr/pr/src/linking/prlink.c  2020-07-23 15:54:12.000000000 
+0200
@@ -776,6 +776,9 @@
         int dl_flags = 0;
 #endif
         void *h = NULL;
+#if defined(DARWIN)
+        PRBool okToLoad = PR_FALSE;
+#endif
 
         if (flags & PR_LD_LAZY) {
             dl_flags |= RTLD_LAZY;
@@ -790,12 +793,36 @@
             dl_flags |= RTLD_LOCAL;
         }
 #if defined(DARWIN)
-        /* ensure the file exists if it contains a slash character i.e. path */
-        /* DARWIN's dlopen ignores the provided path and checks for the */
-        /* plain filename in DYLD_LIBRARY_PATH */
-        if (strchr(name, PR_DIRECTORY_SEPARATOR) == NULL ||
-            PR_Access(name, PR_ACCESS_EXISTS) == PR_SUCCESS) {
-            h = dlopen(name, dl_flags);
+        /* If the file contains an absolute or relative path (slash)
+         * and the path doesn't look like a System path, then require
+         * the file exists.
+         * The reason is that DARWIN's dlopen ignores the provided path
+         * and checks for the plain filename in DYLD_LIBRARY_PATH,
+         * which could load an unexpected version of a library. */
+        if (strchr(name, PR_DIRECTORY_SEPARATOR) == NULL) {
+          /* no slash, allow to load from any location */
+          okToLoad = PR_TRUE;
+        } else {
+          const char systemPrefix1[] = "/System/";
+          const size_t systemPrefixLen1 = strlen(systemPrefix1);
+          const char systemPrefix2[] = "/usr/lib/";
+          const size_t systemPrefixLen2 = strlen(systemPrefix2);
+          const name_len = strlen(name);
+          if (((name_len > systemPrefixLen1) &&
+               (strncmp(name, systemPrefix1, systemPrefixLen1) == 0)) ||
+             ((name_len > systemPrefixLen2) &&
+               (strncmp(name, systemPrefix2, systemPrefixLen2) == 0))) {
+            /* found at beginning, it's a system library.
+             * Skip filesystem check (required for macOS 11),
+             * allow loading from any location */
+            okToLoad = PR_TRUE;
+          } else if (PR_Access(name, PR_ACCESS_EXISTS) == PR_SUCCESS) {
+            /* file exists, allow to load */
+            okToLoad = PR_TRUE;
+          }
+        }
+        if (okToLoad) {
+          h = dlopen(name, dl_flags);
         }
 #else
         h = dlopen(name, dl_flags);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nspr-4.26/nspr/pr/src/md/windows/w95sock.c 
new/nspr-4.27/nspr/pr/src/md/windows/w95sock.c
--- old/nspr-4.26/nspr/pr/src/md/windows/w95sock.c      2020-06-24 
15:26:09.000000000 +0200
+++ new/nspr-4.27/nspr/pr/src/md/windows/w95sock.c      2020-07-23 
15:54:12.000000000 +0200
@@ -7,6 +7,9 @@
  *
  */
 
+#if defined(_WIN64)
+#include <winsock2.h>
+#endif
 #include "primpl.h"
 
 #define READ_FD     1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/nspr-4.26/nspr/pr/tests/vercheck.c 
new/nspr-4.27/nspr/pr/tests/vercheck.c
--- old/nspr-4.26/nspr/pr/tests/vercheck.c      2020-06-24 15:26:09.000000000 
+0200
+++ new/nspr-4.27/nspr/pr/tests/vercheck.c      2020-07-23 15:54:12.000000000 
+0200
@@ -41,7 +41,7 @@
     "4.10.5", "4.10.6", "4.10.7", "4.10.8", "4.10.9",
     "4.10.10", "4.11", "4.12", "4.13", "4.14", "4.15",
     "4.16", "4.17", "4.18", "4.19", "4.20", "4.21", "4.22",
-    "4.23", "4.24", "4.25",
+    "4.23", "4.24", "4.25", "4,26",
     PR_VERSION
 };
 
@@ -57,8 +57,8 @@
     "3.0", "3.0.1",
     "3.1", "3.1.1", "3.1.2", "3.1.3",
     "3.5", "3.5.1",
-    "4.26.1",
-    "4.27", "4.27.1",
+    "4.27.1",
+    "4.28", "4.28.1",
     "10.0", "11.1", "12.14.20"
 };
 


Reply via email to