]> source.dussan.org Git - nextcloud-server.git/commitdiff
Start a branch for easier OpenSSL configuration.
authorOwen Winkler <epithet@gmail.com>
Sun, 18 Aug 2013 17:11:48 +0000 (13:11 -0400)
committerringmaster <epithet@gmail.com>
Mon, 2 Sep 2013 13:58:19 +0000 (09:58 -0400)
apps/files_encryption/lib/crypt.php
apps/files_encryption/lib/helper.php
config/config.sample.php

index e129bc9313ef3836b0ff3709e26d8428efaf35ca..7eab620baa5f892a9f37a07d60ec61eefd605c21 100755 (executable)
@@ -52,6 +52,7 @@ class Crypt {
 \r
                $return = false;\r
 \r
+               $res = \OCA\Encryption\Helper::getOpenSSLPkey();\r
                $res = openssl_pkey_new(array('private_key_bits' => 4096));\r
 \r
                if ($res === false) {\r
index 0209a5d18b78a555bfd17397428aed58cded46e1..2cc905c291410f9c8ab7ac0cffbed3337128b417 100755 (executable)
@@ -265,7 +265,7 @@ class Helper {
         * @return bool true if configuration seems to be OK
         */
        public static function checkConfiguration() {
-               if(openssl_pkey_new(array('private_key_bits' => 4096))) {
+               if(self::getOpenSSLPkey()) {
                        return true;
                } else {
                        while ($msg = openssl_error_string()) {
@@ -275,6 +275,16 @@ class Helper {
                }
        }
 
+       /**
+        * Create an openssl pkey with config-supplied settings
+        * @return resource The pkey resource created
+        */
+       public static function getOpenSSLPkey() {
+               $config = array('private_key_bits' => 4096);
+               $config = array_merge(\OCP\Config::getSystemValue('openssl'), $config);
+               return openssl_pkey_new($config);
+       }
+
        /**
         * @brief glob uses different pattern than regular expressions, escape glob pattern only
         * @param unescaped path
index 5f748438bc7ab605623ad85c70a171255a48b437..6425baf87cbd178212f8a498d8a39d28124fd3d2 100644 (file)
@@ -214,4 +214,9 @@ $CONFIG = array(
 'preview_libreoffice_path' => '/usr/bin/libreoffice',
 /* cl parameters for libreoffice / openoffice */
 'preview_office_cl_parameters' => '',
+
+// Extra SSL options to be used for configuration
+'openssl' => array(
+       //'config' => '/path/to/openssl.cnf',
+),
 );