Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package xrootd for openSUSE:Factory checked 
in at 2021-07-21 19:06:38
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/xrootd (Old)
 and      /work/SRC/openSUSE:Factory/.xrootd.new.2632 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "xrootd"

Wed Jul 21 19:06:38 2021 rev:21 rq:907463 version:4.12.8

Changes:
--------
--- /work/SRC/openSUSE:Factory/xrootd/xrootd.changes    2021-03-02 
12:48:48.392522081 +0100
+++ /work/SRC/openSUSE:Factory/.xrootd.new.2632/xrootd.changes  2021-07-21 
19:07:53.283448727 +0200
@@ -1,0 +2,10 @@
+Fri Jul  2 00:31:47 UTC 2021 - Atri Bhattacharya <badshah...@gmail.com>
+
+- Update to version 4.12.8:
+  * [XrdTpc] Buffer starting at the right offset.
+  * [XrdHttp] Store a new header in the headers map before
+    mangling it, fixes gh#xrootd/xrootd#1399.
+  * [XrdHttp] Fix chunked transfer with 100-continue.
+- Drop xrootd-build-with-glibc2.33.patch: integrated upstream.
+
+-------------------------------------------------------------------

Old:
----
  xrootd-4.12.7.tar.gz
  xrootd-build-with-glibc2.33.patch

New:
----
  xrootd-4.12.8.tar.gz

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

Other differences:
------------------
++++++ xrootd.spec ++++++
--- /var/tmp/diff_new_pack.tLdenc/_old  2021-07-21 19:07:53.711449470 +0200
+++ /var/tmp/diff_new_pack.tLdenc/_new  2021-07-21 19:07:53.715449477 +0200
@@ -27,7 +27,7 @@
 %define __builder ninja
 
 Name:           xrootd
-Version:        4.12.7
+Version:        4.12.8
 Release:        0
 %define plugver 4
 Summary:        An eXtended Root Daemon
@@ -36,8 +36,6 @@
 URL:            http://xrootd.org/
 Source0:        
https://github.com/xrootd/xrootd/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
 Source100:      xrootd-rpmlintrc
-# PATCH-FIX-UPSTREAM xrootd-build-with-glibc2.33.patch gh#xrootd/xrootd#1315 
badshah...@gmail.com -- Fix build with glibc 2.33; patch taken from upstream 
commit
-Patch0:         xrootd-build-with-glibc2.33.patch
 BuildRequires:  cmake >= 2.8
 BuildRequires:  doxygen
 BuildRequires:  fdupes
@@ -90,7 +88,6 @@
 hierarchical filesystem-like namespace, based on the concept
 of a directory.
 
-
 %package        ceph
 Summary:        Ceph back-end plug-in for XRootD
 Group:          System/Filesystems
@@ -103,7 +100,6 @@
 This package contains Ceph storage back-end plug-in for the
 XRootD server.
 
-
 %package        ceph-devel
 Summary:        Ceph back-end plug-in for XRootD
 Group:          Development/Libraries/C and C++
@@ -117,7 +113,6 @@
 This package contains header files and development libraries
 for XRootD Ceph storage back-end plug-in development.
 
-
 %package        client
 Summary:        XRootD command line client tools
 Group:          Productivity/Clustering/Computing
@@ -133,7 +128,6 @@
 This package contains the command line tools used to
 communicate with XRootD servers.
 
-
 %package        client-libs
 Summary:        Libraries used by XRootD clients
 Group:          System/Libraries
@@ -145,7 +139,6 @@
 
 This package contains libraries used by XRootD clients.
 
-
 %package        client-devel
 Summary:        Development files for XRootD clients
 Group:          Development/Libraries/C and C++
@@ -162,7 +155,6 @@
 This package contains header files and development libraries
 for XRootD client development
 
-
 %package        doc
 Summary:        Developer documentation for the XRootD libraries
 Group:          Documentation/Other
@@ -175,7 +167,6 @@
 This package contains the API documentation of the XRootD
 libraries.
 
-
 %package        fuse
 Summary:        FUSE-based XRootD filesystem mount
 Group:          System/Filesystems
@@ -190,7 +181,6 @@
 This package contains the FUSE (file system in user space)
 XRootD mount tool.
 
-
 %package        libs
 Summary:        XRootD core libraries
 Group:          System/Libraries
@@ -205,7 +195,6 @@
 This package contains libraries used by the XRootD servers and
 clients.
 
-
 %package        libs-devel
 Summary:        Development files for XRootD core libraries
 Group:          Development/Libraries/C and C++
@@ -218,7 +207,6 @@
 This package contains header files and development libraries
 for XRootD development.
 
-
 %package        private-devel
 Summary:        Private XRootD development files
 Group:          Development/Libraries/C and C++
@@ -233,7 +221,6 @@
 Backwards compatibility between versions is not guaranteed for
 them.
 
-
 %package        server
 Summary:        XRootD (eXtended Root Daemon) server
 Group:          System/Daemons
@@ -248,7 +235,6 @@
 
 The XRootD (eXtended Root Daemon) server binaries.
 
-
 %package        server-libs
 Summary:        Libraries used by XRootD servers
 Group:          System/Daemons
@@ -257,9 +243,9 @@
 Requires:       logrotate
 Requires:       systemd
 Requires(pre):    systemd
-Requires(preun):  systemd
+Requires(preun):systemd
 Requires(post):   systemd
-Requires(postun): systemd
+Requires(postun):systemd
 
 %description    server-libs
 The XROOTD project gives access to data repositories.
@@ -282,7 +268,6 @@
 This package contains header files and development libraries
 for XRootD server development.
 
-
 %package     -n python3-%{name}
 Summary:        Python 3 bindings for XRootD
 Group:          Development/Libraries/Python
@@ -294,7 +279,6 @@
 
 This package provides the python 3 bindings for XRootD.
 
-
 %prep
 %autosetup -p1
 

++++++ xrootd-4.12.7.tar.gz -> xrootd-4.12.8.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xrootd-4.12.7/VERSION_INFO 
new/xrootd-4.12.8/VERSION_INFO
--- old/xrootd-4.12.7/VERSION_INFO      2021-02-05 10:30:35.000000000 +0100
+++ new/xrootd-4.12.8/VERSION_INFO      2021-03-01 12:14:02.000000000 +0100
@@ -1,3 +1,3 @@
-RefNames:  (tag: v4.12.7)
-ShortHash: 0582b6b1167
-Date: 2021-02-05 10:30:35 +0100
+RefNames:  (tag: v4.12.8, stable-4.12.x)
+ShortHash: 7cf7f97cbd5
+Date: 2020-11-02 09:47:25 +0100
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xrootd-4.12.7/docs/ReleaseNotes.txt 
new/xrootd-4.12.8/docs/ReleaseNotes.txt
--- old/xrootd-4.12.7/docs/ReleaseNotes.txt     2021-02-05 10:30:35.000000000 
+0100
+++ new/xrootd-4.12.8/docs/ReleaseNotes.txt     2021-03-01 12:14:02.000000000 
+0100
@@ -6,6 +6,16 @@
 =============
 
 --------------
+Version 4.12.8
+--------------
+
++ **Major bug fixes**
+  * **[XrdTpc]** Buffer starting at the right offset.
+  * **[XrdHttp]** Store a new header in the headers map before
+                  mangling it, fixes #1399
+  * **[XrdHttp]** Fix chunked transfer with 100-continue.
+
+--------------
 Version 4.12.7
 --------------
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xrootd-4.12.7/src/XrdHttp/XrdHttpReq.cc 
new/xrootd-4.12.8/src/XrdHttp/XrdHttpReq.cc
--- old/xrootd-4.12.7/src/XrdHttp/XrdHttpReq.cc 2021-02-05 10:30:35.000000000 
+0100
+++ new/xrootd-4.12.8/src/XrdHttp/XrdHttpReq.cc 2021-03-01 12:14:02.000000000 
+0100
@@ -234,6 +234,12 @@
     // Trim left
     while ( (!isgraph(*val) || (!*val)) && (val < line+len)) val++;
 
+    // We memorize the headers also as a string                                
                                                                                
                              
+    // because external plugins may need to process it differently             
                                                                                
                             
+    std::string ss = val;
+    trim(ss);
+    allheaders[key] = ss;
+         
     // Here we are supposed to initialize whatever flag or variable that is 
needed
     // by looking at the first token of the line
     // The token is key
@@ -287,11 +293,7 @@
       }
     }
 
-    // We memorize the heaers also as a string
-    // because external plugins may need to process it differently
-    std::string ss = val;
-    trim(ss);
-    allheaders[key] = ss;
+
     line[pos] = ':';
   }
 
@@ -1358,7 +1360,7 @@
         // We want to be invoked again after this request is finished
         // Only if there is data to fetch from the socket or there will
         // never be more data
-        if (prot->BuffUsed() > 0 || length == 0)
+        if (prot->BuffUsed() > 0 || (length == 0 && !sendcontinue))
           return 0;
 
         return 1;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xrootd-4.12.7/src/XrdOuc/XrdOucPsx.cc 
new/xrootd-4.12.8/src/XrdOuc/XrdOucPsx.cc
--- old/xrootd-4.12.7/src/XrdOuc/XrdOucPsx.cc   2021-02-05 10:30:35.000000000 
+0100
+++ new/xrootd-4.12.8/src/XrdOuc/XrdOucPsx.cc   2021-03-01 12:14:02.000000000 
+0100
@@ -712,7 +712,7 @@
 {
     char  kword[256], *val;
     int   kval, noGo;
-    static struct {const char *Sopt; const char *Copt; int isT;} Sopts[]  =
+    static struct sopts {const char *Sopt; const char *Copt; int isT;} Sopts[] 
=
        {
          {"ConnectTimeout",        "ConnectionWindow",1},    // Default  120
          {"ConnectionRetry",       "ConnectionRetry",1},     // Default    5
@@ -741,7 +741,7 @@
          {"TransactionTimeout",    "",1},
          {"WorkerThreads",         "WorkerThreads",0}        // Set To    64
        };
-    int i, numopts = sizeof(Sopts)/sizeof(const char *);
+    int i, numopts = sizeof(Sopts)/sizeof(struct sopts);
 
     if (!(val = Config.GetWord()))
        {Eroute->Emsg("Config", "setopt keyword not specified"); return false;}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xrootd-4.12.7/src/XrdPosix/XrdPosix.cc 
new/xrootd-4.12.8/src/XrdPosix/XrdPosix.cc
--- old/xrootd-4.12.7/src/XrdPosix/XrdPosix.cc  2021-02-05 10:30:35.000000000 
+0100
+++ new/xrootd-4.12.8/src/XrdPosix/XrdPosix.cc  2021-03-01 12:14:02.000000000 
+0100
@@ -375,7 +375,7 @@
 //
    return (Xroot.myFD(fildes)
           ? Xroot.Fstat(fildes, buf)
-#ifdef __linux__
+#if defined(__linux__) and defined(_STAT_VER)
           : Xunix.Fstat64(_STAT_VER, fildes, (struct stat64 *)buf));
 #else
           : Xunix.Fstat64(           fildes, (struct stat64 *)buf));
@@ -387,7 +387,11 @@
 {
    return (Xroot.myFD(fildes)
           ? Xroot.Fstat(fildes, buf)
+#ifdef _STAT_VER
           : Xunix.Fstat64(ver, fildes, (struct stat64 *)buf));
+#else
+          : Xunix.Fstat64(     fildes, (struct stat64 *)buf));
+#endif
 }
 #endif
 }
@@ -559,7 +563,7 @@
 // Return the results of an open of a Unix file
 //
    return (!(myPath = XrootPath.URL(path, buff, sizeof(buff)))
-#ifdef __linux__
+#if defined(__linux__) and defined(_STAT_VER)
           ? Xunix.Lstat64(_STAT_VER, path, (struct stat64 *)buf)
 #else
           ? Xunix.Lstat64(           path, (struct stat64 *)buf)
@@ -887,7 +891,7 @@
 // Return the results of an open of a Unix file
 //
    return (!(myPath = XrootPath.URL(path, buff, sizeof(buff)))
-#ifdef __linux__
+#if defined(__linux__) and defined(_STAT_VER)
           ? Xunix.Stat64(_STAT_VER, path, (struct stat64 *)buf)
 #else
           ? Xunix.Stat64(           path, (struct stat64 *)buf)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xrootd-4.12.7/src/XrdPosix/XrdPosixLinkage.hh 
new/xrootd-4.12.8/src/XrdPosix/XrdPosixLinkage.hh
--- old/xrootd-4.12.7/src/XrdPosix/XrdPosixLinkage.hh   2021-02-05 
10:30:35.000000000 +0100
+++ new/xrootd-4.12.8/src/XrdPosix/XrdPosixLinkage.hh   2021-03-01 
12:14:02.000000000 +0100
@@ -116,7 +116,7 @@
 #define Retv_Fseeko64 int
 #define Args_Fseeko64 FILE *, off64_t, int
 
-#ifdef __linux__
+#if defined(__linux__) and defined(_STAT_VER)
 #define Symb_Fstat UNIX_PFX "__fxstat"
 #define Retv_Fstat int
 #define Args_Fstat int, int, struct stat *
@@ -126,7 +126,7 @@
 #define Args_Fstat int, struct stat *
 #endif
 
-#ifdef __linux__
+#if defined(__linux__) and defined(_STAT_VER)
 #define Symb_Fstat64 UNIX_PFX "__fxstat64"
 #define Retv_Fstat64 int
 #define Args_Fstat64 int, int, struct stat64 *
@@ -184,7 +184,7 @@
 #define Retv_Lseek64 off64_t
 #define Args_Lseek64 int, off64_t, int
 
-#ifdef __linux__
+#if defined(__linux__) and defined(_STAT_VER)
 #define Symb_Lstat UNIX_PFX "__lxstat"
 #define Retv_Lstat int
 #define Args_Lstat int, const char *, struct stat *
@@ -194,7 +194,7 @@
 #define Args_Lstat const char *, struct stat *
 #endif
 
-#ifdef __linux__
+#if defined(__linux__) and defined(_STAT_VER)
 #define Symb_Lstat64 UNIX_PFX "__lxstat64"
 #define Retv_Lstat64 int
 #define Args_Lstat64 int, const char *, struct stat64 *
@@ -290,7 +290,7 @@
 #define Args_Stat const char *, struct stat *
 #endif
 
-#ifdef __linux__
+#if defined(__linux__) and defined(_STAT_VER)
 #define Symb_Stat64 UNIX_PFX "__xstat64"
 #define Retv_Stat64 int
 #define Args_Stat64 int, const char *, struct stat64 *
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xrootd-4.12.7/src/XrdPosix/XrdPosixPreload32.cc 
new/xrootd-4.12.8/src/XrdPosix/XrdPosixPreload32.cc
--- old/xrootd-4.12.7/src/XrdPosix/XrdPosixPreload32.cc 2021-02-05 
10:30:35.000000000 +0100
+++ new/xrootd-4.12.8/src/XrdPosix/XrdPosixPreload32.cc 2021-03-01 
12:14:02.000000000 +0100
@@ -230,7 +230,7 @@
 {
    static int Init = Xunix.Init(&Init);
 
-#ifdef __linux__
+#if defined(__linux__) and defined(_STAT_VER)
    if (!XrdPosixXrootd::myFD(fildes)) return Xunix.Fstat(ver, fildes, buf);
 #else
    if (!XrdPosixXrootd::myFD(fildes)) return Xunix.Fstat(     fildes, buf);
@@ -315,7 +315,7 @@
    static int Init = Xunix.Init(&Init);
 
    if (!XrdPosix_isMyPath(path))
-#ifdef __linux__
+#if defined(__linux__) and defined(_STAT_VER)
       return Xunix.Lstat(ver, path, buf);
 #else
       return Xunix.Lstat(     path, buf);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xrootd-4.12.7/src/XrdSsi/XrdSsiDir.cc 
new/xrootd-4.12.8/src/XrdSsi/XrdSsiDir.cc
--- old/xrootd-4.12.7/src/XrdSsi/XrdSsiDir.cc   2021-02-05 10:30:35.000000000 
+0100
+++ new/xrootd-4.12.8/src/XrdSsi/XrdSsiDir.cc   2021-03-01 12:14:02.000000000 
+0100
@@ -199,7 +199,7 @@
 
 // Check if this directory is actually open
 //
-   if (!dirP) return dirP->FName();
+   if (dirP) return dirP->FName();
    XrdSsiUtils::Emsg(epname, EBADF, epname, "???", error);
    return "";
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/xrootd-4.12.7/src/XrdTpc/XrdTpcStream.cc 
new/xrootd-4.12.8/src/XrdTpc/XrdTpcStream.cc
--- old/xrootd-4.12.7/src/XrdTpc/XrdTpcStream.cc        2021-02-05 
10:30:35.000000000 +0100
+++ new/xrootd-4.12.8/src/XrdTpc/XrdTpcStream.cc        2021-03-01 
12:14:02.000000000 +0100
@@ -120,7 +120,7 @@
                 avail_count ++;
             }
             else if (bytes_accepted != size && size) {
-                size_t new_accept = (*entry_iter)->Accept(offset + 
bytes_accepted, buf, size - bytes_accepted);
+                size_t new_accept = (*entry_iter)->Accept(offset + 
bytes_accepted, buf + bytes_accepted, size - bytes_accepted);
                     // Partial accept; buffer should be writable which means 
we should free it up
                     // for next iteration
                 if (new_accept && new_accept != size - bytes_accepted) {
@@ -143,7 +143,7 @@
             m_error_buf = "No empty buffers available to place unordered 
data.";
             return SFS_ERROR;
         }
-        if (avail_entry->Accept(offset + bytes_accepted, buf, size - 
bytes_accepted) != size - bytes_accepted) {  // Empty buffer cannot accept?!?
+        if (avail_entry->Accept(offset + bytes_accepted, buf + bytes_accepted, 
size - bytes_accepted) != size - bytes_accepted) {  // Empty buffer cannot 
accept?!?
             m_error_buf = "Empty re-ordering buffer was unable to to accept 
data; internal logic error.";
             return SFS_ERROR;
         }

Reply via email to