Changeset: e11bb346f5ed for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=e11bb346f5ed
Modified Files:
        cmake/monetdb-findpackages.cmake
        cmake/monetdb-options.cmake
        monetdb5/mal/mal_authorize.c
Branch: default
Log Message:

make crypto optional for the embedded case (only). Everything will still build 
but
server will not start.


diffs (55 lines):

diff --git a/cmake/monetdb-findpackages.cmake b/cmake/monetdb-findpackages.cmake
--- a/cmake/monetdb-findpackages.cmake
+++ b/cmake/monetdb-findpackages.cmake
@@ -34,10 +34,12 @@ if(WITH_PCRE)
   find_package(PCRE)
 endif()
 
-if(${CMAKE_SYSTEM_NAME} STREQUAL "Darwin" AND ${CMAKE_HOST_SYSTEM_VERSION} 
VERSION_LESS "19.0.0")
-  find_package(CommonCrypto)
-else()
-  find_package(OpenSSL)
+if(WITH_CRYPTO)
+       if(${CMAKE_SYSTEM_NAME} STREQUAL "Darwin" AND 
${CMAKE_HOST_SYSTEM_VERSION} VERSION_LESS "19.0.0")
+       find_package(CommonCrypto)
+       else()
+       find_package(OpenSSL)
+       endif()
 endif()
 
 if(WITH_BZ2)
diff --git a/cmake/monetdb-options.cmake b/cmake/monetdb-options.cmake
--- a/cmake/monetdb-options.cmake
+++ b/cmake/monetdb-options.cmake
@@ -140,3 +140,7 @@ option(CMAKE_SUMMARY
 option(CMAKE_UNITTESTS
   "Build and run the unittest for the build system"
   OFF)
+
+option(WITH_CRYPTO
+  "Only in very some special cases we build without crypto dependencies"
+  ON)
diff --git a/monetdb5/mal/mal_authorize.c b/monetdb5/mal/mal_authorize.c
--- a/monetdb5/mal/mal_authorize.c
+++ b/monetdb5/mal/mal_authorize.c
@@ -390,8 +390,10 @@ AUTHinitTables(const char *passwd) {
                if (passwd == NULL)
                        passwd = "monetdb";     /* default password */
                pw = mcrypt_BackendSum(passwd, strlen(passwd));
-               if(!pw)
+               if(!pw && !GDKembedded())
                        throw(MAL, "initTables", SQLSTATE(42000) "Crypt backend 
hash not found");
+               else
+                       pw = strdup(passwd);
                msg = AUTHaddUser(&uid, NULL, "monetdb", pw);
                free(pw);
                if (msg)
@@ -989,6 +991,8 @@ AUTHverifyPassword(const char *passwd)
 
        return(MAL_SUCCEED);
 #else
+       if (GDKembedded())
+               return(MAL_SUCCEED);
        (void) passwd;
        throw(MAL, "verifyPassword", "Unknown backend hash algorithm: %s",
                  MONETDB5_PASSWDHASH);
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to