]> source.dussan.org Git - nextcloud-server.git/commitdiff
Fixes based on suggestions
authorjosh4trunks <joshruehlig@gmail.com>
Thu, 12 Jun 2014 04:47:45 +0000 (21:47 -0700)
committerjosh4trunks <joshruehlig@gmail.com>
Thu, 12 Jun 2014 04:47:45 +0000 (21:47 -0700)
I use the term socket for any extension, either unix socket, or internet socket (port).

I check if the socket is all digits
* only integers 0 and larger would pass this test.
I then check if the string is less than or equal to the maximum port number.

By using "if($socket)" I make sure socket isn't false, empty, or the string '0'.

I don't believe I need to initialize $port because $port will always be set if $socket is true. Please show me if I am wrong here. Thanks

lib/private/db.php

index f5fd9fb6ad94a7e0af54e07267155b378f38142a..eec2b9220e24ff20dd56f6da412a13e5ba6eca77 100644 (file)
@@ -64,14 +64,10 @@ class OC_DB {
                $pass = OC_Config::getValue( "dbpassword", "" );
                $type = OC_Config::getValue( "dbtype", "sqlite" );
                if(strpos($host, ':')) {
-                       list($host, $port)=explode(':', $host, 2);
-                       if(!is_int($port)||$port<1||$port>65535) {
-                               $socket=true;
-                       } else {
-                               $socket=false;
-                       }
+                       list($host, $socket)=explode(':', $host, 2);
+                       $port = ctype_digit($socket) && $socket<=65535;
                } else {
-                       $port=false;
+                       $socket=FALSE;
                }
 
                $factory = new \OC\DB\ConnectionFactory();
@@ -93,11 +89,11 @@ class OC_DB {
                                'host' => $host,
                                'dbname' => $name,
                        );
-                       if (!empty($port)) {
-                               if ($socket) {
-                                       $connectionParams['unix_socket'] = $port;
+                       if ($socket) {
+                               if ($port) {
+                                       $connectionParams['port'] = $socket;
                                } else {
-                                       $connectionParams['port'] = $port;
+                                       $connectionParams['unix_socket'] = $socket;
                                }
                        }
                }