Hi Dom,
This patch could knock off a todo item with a little tweaking - interested in enhancing it a little?
Basically, the host parameter in the connection string can also be set to a path to the socket - if it starts with a /
it'sassumed that it is a path rather than a hostname.
http://www.postgresql.org/docs/8.0/interactive/libpq.html#LIBPQ-CONNECT
It'd be great to see an updated patch :-)
Regards, Dave
> -----Original Message-----
> From: pgadmin-support-owner@postgresql.org
> [mailto:pgadmin-support-owner@postgresql.org] On Behalf Of
> Dominique Quatravaux
> Sent: 13 April 2005 17:02
> To: pgadmin-support@postgresql.org
> Subject: [pgadmin-support] [PATCH] Connect to database using
> UNIX domain sockets
>
> Dear pgadmin hackers,
>
> Enclosed is a small, nonintrusive patch that allows one to connect to
> a database using the UNIX domain socket under Linux and BSD (a must
> for secure, password-less operation). One simply leaves the "hostname"
> field blank when filling in the database connection form.
>
> Since this patch leverages the clever fallback mechanism already built
> into libpq, I see no reason why it would break anything under Windows.
>
> Thanks for your work on pgadmin. Regards, Dom
>
> ------------
>
> --- pgadmin3-1.0.2/src/db/pgConn.cpp.ORIG 2005-04-13
> 12:49:43.000000000 +0200
> +++ pgadmin3-1.0.2/src/db/pgConn.cpp 2005-04-13
> 14:38:50.000000000 +0200
> @@ -44,6 +48,8 @@
> wxLogInfo(wxT("Creating pgConn object"));
> wxString msg, hostip;
>
> + hostip.Empty();
> +
> conv = &wxConvLibc;
> needColQuoting = false;
>
> @@ -54,6 +60,7 @@
> majorVersion=0;
> noticeArg=0;
>
> + if (! server.IsEmpty()) {
> #ifdef __WXMSW__
> struct in_addr ipaddr;
> #else
> @@ -78,13 +85,14 @@
> }
> else
> hostip = server;
> + }
>
> resolvedIP = TRUE;
> wxLogInfo(wxT("Server name: %s (resolved to: %s)"),
> server.c_str(), hostip.c_str());
>
> // Create the connection string
> wxString connstr;
> - if (!server.IsEmpty()) {
> + if (!hostip.IsEmpty()) {
> connstr.Append(wxT(" hostaddr="));
> connstr.Append(hostip);
> }
>
>
> --
> Dominique QUATRAVAUX Ingénieur senior
> 01 44 42 00 08 IDEALX
>
>
>
> ---------------------------(end of
> broadcast)---------------------------
> TIP 5: Have you checked our extensive FAQ?
>
> http://www.postgresql.org/docs/faq
>