Please accept the attached patch.  It allows connecting to the database
via UNIX domain socket (in the case that the DB is on the same host as
the web server and the user leaves DBhost and DBport empty in
/etc/ledgersmb/ledgersmb.conf, as well as leave the port and host blank
in the individual user config).

Regards,

-Roberto

-- 
Roberto C. Sánchez
http://people.connexer.com/~roberto
http://www.connexer.com
diff -uNr ledgersmb-1.2.15.orig/LedgerSMB/Sysconfig.pm ledgersmb-1.2.15/LedgerSMB/Sysconfig.pm
--- ledgersmb-1.2.15.orig/LedgerSMB/Sysconfig.pm	2008-09-01 14:38:19.000000000 -0400
+++ ledgersmb-1.2.15/LedgerSMB/Sysconfig.pm	2008-09-01 15:48:59.000000000 -0400
@@ -122,9 +122,18 @@
 
 #putting this in an if clause for now so not to break other devel users
 if ( $config{globaldb}{DBname} ) {
-    my $dbconnect = "dbi:Pg:dbname=$globalDBname host=$globalDBhost
-		port=$globalDBport user=$globalDBUserName
-		password=$globalDBPassword";    # for easier debugging
+    my $dbconnect = "dbi:Pg:dbname=$globalDBname ";
+    if ( $globalDBhost ) {
+        $dbconnect .= " host=$globalDBhost";
+	if ( $globalDBport ) {
+            $dbconnect .= " port=$globalDBport";
+	} else {
+            $dbconnect .= " port=5432";
+	}
+    }
+    $dbconnect .= " user=$globalDBUserName" if $globalDBUserName;
+    $dbconnect .= " password=$globalDBPassword" if $globalDBPassword;
+
     $GLOBALDBH = DBI->connect($dbconnect);
     if ( !$GLOBALDBH ) {
         $form = new Form;
diff -uNr ledgersmb-1.2.15.orig/LedgerSMB/User.pm ledgersmb-1.2.15/LedgerSMB/User.pm
--- ledgersmb-1.2.15.orig/LedgerSMB/User.pm	2008-08-18 14:15:07.000000000 -0400
+++ ledgersmb-1.2.15/LedgerSMB/User.pm	2008-09-01 22:46:10.000000000 -0400
@@ -74,13 +74,15 @@
         chomp( $self->{dbname} );
         chomp( $self->{dbhost} );
 
-        $self->{dbconnect} =
-            'dbi:Pg:dbname='
-          . $self->{dbname}
-          . ';host='
-          . $self->{dbhost}
-          . ';port='
-          . $self->{dbport};
+        $self->{dbconnect} = 'dbi:Pg:dbname=' . $self->{dbname};
+        if ( $self->{dbhost} ) {
+            $self->{dbconnect} .= ';host=' . $self->{dbhost};
+            if ( $self->{dbport} ) {
+                $self->{dbconnect} .= ';port=' . $self->{dbport};
+            } else {
+                $self->{dbconnect} .= ';port=5432';
+            }
+        }
 
         if ( $self->{username} ) {
             $self->{login} = $login;
@@ -160,13 +162,15 @@
     chomp( $myconfig{'dbhost'} );
 
     $myconfig{'login'} = $login;
-    $myconfig{'dbconnect'} =
-        'dbi:Pg:dbname='
-      . $myconfig{'dbname'}
-      . ';host='
-      . $myconfig{'dbhost'}
-      . ';port='
-      . $myconfig{'dbport'};
+    $myconfig{'dbconnect'} = 'dbi:Pg:dbname=' . $myconfig{'dbname'};
+    if ( $myconfig{'dbhost'} ) {
+        $myconfig{'dbconnect'} .= ';host=' . $myconfig{'dbhost'};
+        if ( $myconfig{'dbport'} ) {
+            $myconfig{'dbconnect'} .= ';port=' . $myconfig{'dbport'};
+        } else {
+            $myconfig{'dbconnect'} .= ';port=5432';
+        }
+    }
 
     return \%myconfig;
 }
@@ -295,8 +299,14 @@
     $form->{dboptions} = $dboptions{ $form->{dbdriver} }{ $form->{dateformat} };
 
     $form->{dbconnect} = "dbi:$form->{dbdriver}:dbname=$db";
-    $form->{dbconnect} .= ";host=$form->{dbhost}";
-    $form->{dbconnect} .= ";port=$form->{dbport}";
+    if ( $form->{dbhost} ) {
+        $form->{dbconnect} .= ";host=$form->{dbhost}";
+        if ( $form->{dbport} ) {
+            $form->{dbconnect} .= ";port=$form->{dbport}";
+        } else {
+            $form->{dbconnect} .= ";port=5432";
+        }
+    }
 
 }
 

Attachment: signature.asc
Description: Digital signature

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Ledger-smb-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ledger-smb-devel

Reply via email to