Browse Source

Merge branch 'candidate-6.4.14'

Signed-off-by: Richard Chapman <rchapman@hpccsystems.com>
Richard Chapman 7 years ago
parent
commit
a4372d562d

+ 2 - 0
cmake_modules/dependencies/bionic.cmake

@@ -0,0 +1,2 @@
+# Ubuntu 18.04
+SET_DEPENDENCIES ( CPACK_DEBIAN_PACKAGE_DEPENDS g++ openssh-client openssh-server expect rsync libapr1 python psmisc )

+ 37 - 8
common/remote/sockfile.cpp

@@ -495,6 +495,38 @@ static const char *getRFSERRText(unsigned err)
     return "RFSERR_Unknown";
 }
 
+unsigned mapDafilesrvixCodes(unsigned err)
+{
+    // old Solaris dali/remote/daliservix.cpp uses
+    // different values for these error codes.
+    switch (err)
+    {
+        case 8200:
+            return RFSERR_InvalidCommand;
+        case 8201:
+            return RFSERR_NullFileIOHandle;
+        case 8202:
+            return RFSERR_InvalidFileIOHandle;
+        case 8203:
+            return RFSERR_TimeoutFileIOHandle;
+        case 8204:
+            return RFSERR_OpenFailed;
+        case 8205:
+            return RFSERR_ReadFailed;
+        case 8206:
+            return RFSERR_WriteFailed;
+        case 8207:
+            return RFSERR_RenameFailed;
+        case 8208:
+            return RFSERR_SetReadOnlyFailed;
+        case 8209:
+            return RFSERR_GetDirFailed;
+        case 8210:
+            return RFSERR_MoveFailed;
+    }
+    return err;
+}
+
 #define ThrottleText(throttleClass) #throttleClass
 const char *ThrottleStrings[] =
 {
@@ -1272,7 +1304,9 @@ protected: friend class CRemoteFileIO;
         unsigned errCode;
         reply.read(errCode);
         if (errCode) {
-
+            // old Solaris daliservix.cpp error code conversion
+            if ( (errCode >= 8200) && (errCode <= 8210) )
+                errCode = mapDafilesrvixCodes(errCode);
             StringBuffer msg;
             if (filename.get())
                 msg.append(filename);
@@ -1296,10 +1330,7 @@ protected: friend class CRemoteFileIO;
                         msg.appendf(" %2x",(int)rest[i]);
                 }
             }
-            //TODO This magic number 8209 defined in Solrais daliservix.cpp as RFSERR_GetDirFailed
-            //should clarify why it is different and use an RFSERR_xxx macro instead
-            else if (errCode == 8209)
-                msg.append("Failed to open directory.");
+            // NB: could append getRFSERRText for all error codes
             else if (errCode == RFSERR_GetDirFailed)
                 msg.append(RFSERR_GetDirFailed_Text);
             else
@@ -2006,9 +2037,7 @@ public:
             }
             catch (IDAFS_Exception * e)
             {
-                // TODO This magic number 8209 defined in Solrais daliservix.cpp as RFSERR_GetDirFailed
-                //should clarify why it is different and use an RFSERR_xxx macro instead
-                if ((e->errorCode() == RFSERR_GetDirFailed) || (e->errorCode() == 8209))
+                if (e->errorCode() == RFSERR_GetDirFailed)
                 {
                     e->Release();
                     return (offset_t)-1;

+ 2 - 0
system/security/zcrypt/zcrypt.cpp

@@ -206,7 +206,9 @@ RSAZCryptor::~RSAZCryptor()
 
     if(bio_err)
     {
+#ifndef OPENSSL_NO_CRYPTO_MDEBUG
         CRYPTO_mem_leaks(bio_err);
+#endif
         BIO_free(bio_err);
     }