From Jason Tishler <jt@dothill.com>

* doc/FAQ_MSWIN: Update to be consistent with software -- mainly change
comment from lack of Cygwin UNIX domain socket support and to list of
current Cygwin UNIX domain socket issues.
* src/include/config.h.in: Enable UNIX domain sockets for Cygwin.
* src/include/port/win.h: Disable UNIX domain sockets for Cygwin b20.1.
* src/test/regress/pg_regress.sh: Use UNIX domain sockets for Cygwin
instead of TCP/IP.
This commit is contained in:
Peter Eisentraut 2001-01-19 23:43:36 +00:00
parent d4067b53f1
commit 58f4028518
4 changed files with 24 additions and 14 deletions

View File

@ -1,19 +1,19 @@
How do I installing PostgreSQL on Windows NT or Windows 2000?
=============================================================
$Date: 2000/10/18 21:14:56 $
$Date: 2001/01/19 23:43:35 $
1. Install the Cygwin package.
The Cygwin package provides a UNIX-like API on top of the Win32
API. It is available at <http://sources.redhat.com/cygwin/>.
The 1.1.x series is recommended (1.1.4 was the latest at the time
The 1.1.x series is recommended (1.1.7 was the latest at the time
of this writing); using 1.0 or B20 might require extra efforts.
For B20 you also need to download the separate crypt library at the
same location.
2. Install the cygipc package, available at
<http://cygutils.netpedia.net/V1.1/cygipc/>. Do not use versions
prior to 1.04, they will not work.
<http://www.neuro.gatech.edu/users/cwilson/cygutils/V1.1/cygipc/>.
Do not use versions prior to 1.04, they will not work.
3. Optional: The "Andy Piper Tools" at <http://www.xemacs.freeserve.co.uk/>
are a collection of pre-compiled libraries and utilities that you
@ -29,10 +29,13 @@ $Date: 2000/10/18 21:14:56 $
6. Proceed according to the INSTALL file. (./configure; make; etc.)
NOTE: By default, PostgreSQL clients like psql communicate using Unix
domain sockets, which do not work on Windows. Start the postmaster
with -i, and when connecting to the database from a client, set the
PGHOST environment variable to `localhost' or supply the hostname on
the command line.
NOTE: There are two issues with Cygwin's current UNIX domain socket
support:
1. psql (and other clients) will hang if postmaster is not running and
the socket file (e.g., /tmp/.s.PGSQL.5432) exists.
2. Cygwin's AF_UNIX sockets are really implemented as AF_INET sockets
so they are inherently insecure.
Problem reports can be sent to <pgsql-ports@postgresql.org>.

View File

@ -8,7 +8,7 @@
* or in config.h afterwards. Of course, if you edit config.h, then your
* changes will be overwritten the next time you run configure.
*
* $Id: config.h.in,v 1.155 2001/01/09 18:40:15 petere Exp $
* $Id: config.h.in,v 1.156 2001/01/19 23:43:35 petere Exp $
*/
#ifndef CONFIG_H
@ -228,7 +228,7 @@
/*
* Define this if your operating system supports AF_UNIX family sockets.
*/
#if !defined(__CYGWIN__) && !defined(__QNX__) && !defined(__BEOS__)
#if !defined(__QNX__) && !defined(__BEOS__)
# define HAVE_UNIX_SOCKETS 1
#endif

View File

@ -9,3 +9,10 @@ typedef unsigned char slock_t;
#define HAVE_INT_TIMEZONE /* has int _timezone */
#include <cygwin/version.h>
/*
* Check for b20.1 and disable AF_UNIX family socket support.
*/
#if CYGWIN_VERSION_DLL_MAJOR < 1001
# undef HAVE_UNIX_SOCKETS
#endif

View File

@ -1,5 +1,5 @@
#! /bin/sh
# $Header: /cvsroot/pgsql/src/test/regress/Attic/pg_regress.sh,v 1.17 2001/01/13 03:25:48 petere Exp $
# $Header: /cvsroot/pgsql/src/test/regress/Attic/pg_regress.sh,v 1.18 2001/01/19 23:43:36 petere Exp $
me=`basename $0`
: ${TMPDIR=/tmp}
@ -156,11 +156,11 @@ done
# ----------
# When on Windows, QNX or BeOS, don't use Unix sockets.
# When on QNX or BeOS, don't use Unix sockets.
# ----------
case $host_platform in
*-*-cygwin* | *-*-qnx* | *beos*)
*-*-qnx* | *beos*)
unix_sockets=no;;
*)
unix_sockets=yes;;