Commit a647e30b authored by Bruce Momjian's avatar Bruce Momjian

New patch with corrected README attached.

Also quickly added mention that it may be a qualified schema name.

Rod Taylor
parent ef2ba427
...@@ -8,7 +8,7 @@ pgstattuple README 2002/08/29 Tatsuo Ishii ...@@ -8,7 +8,7 @@ pgstattuple README 2002/08/29 Tatsuo Ishii
test=# \x test=# \x
Expanded display is on. Expanded display is on.
test=# select * from pgstattuple('pg_proc'); test=# select * from pgstattuple('pg_catalog.pg_proc');
-[ RECORD 1 ]------+------- -[ RECORD 1 ]------+-------
table_len | 458752 table_len | 458752
tuple_count | 1470 tuple_count | 1470
...@@ -45,9 +45,14 @@ free_percent -- free space in % ...@@ -45,9 +45,14 @@ free_percent -- free space in %
CREATE OR REPLACE FUNCTION pgstattuple(text) RETURNS pgstattuple_type CREATE OR REPLACE FUNCTION pgstattuple(text) RETURNS pgstattuple_type
AS 'MODULE_PATHNAME', 'pgstattuple' AS 'MODULE_PATHNAME', 'pgstattuple'
LANGUAGE 'c' WITH (isstrict); LANGUAGE 'c' STRICT;
The argument is the table name. Note that pgstattuple only returns CREATE OR REPLACE FUNCTION pgstattuple(oid) RETURNS pgstattuple_type
AS 'MODULE_PATHNAME', 'pgstattuplebyid'
LANGUAGE 'c' STRICT;
The argument is the table name (optionally it may be qualified)
or the OID of the table. Note that pgstattuple only returns
one row. one row.
4. Notes 4. Notes
......
/* /*
* $Header: /cvsroot/pgsql/contrib/pgstattuple/pgstattuple.c,v 1.9 2002/09/04 20:31:08 momjian Exp $ * $Header: /cvsroot/pgsql/contrib/pgstattuple/pgstattuple.c,v 1.10 2003/06/12 08:02:53 momjian Exp $
* *
* Copyright (c) 2001,2002 Tatsuo Ishii * Copyright (c) 2001,2002 Tatsuo Ishii
* *
...@@ -33,8 +33,12 @@ ...@@ -33,8 +33,12 @@
PG_FUNCTION_INFO_V1(pgstattuple); PG_FUNCTION_INFO_V1(pgstattuple);
PG_FUNCTION_INFO_V1(pgstattuplebyid);
extern Datum pgstattuple(PG_FUNCTION_ARGS); extern Datum pgstattuple(PG_FUNCTION_ARGS);
extern Datum pgstattuplebyid(PG_FUNCTION_ARGS);
static Datum pgstattuple_real(Relation rel);
/* ---------- /* ----------
* pgstattuple: * pgstattuple:
...@@ -46,7 +50,7 @@ extern Datum pgstattuple(PG_FUNCTION_ARGS); ...@@ -46,7 +50,7 @@ extern Datum pgstattuple(PG_FUNCTION_ARGS);
* ---------- * ----------
*/ */
#define DUMMY_TUPLE "pgstattuple_type" #define DUMMY_TUPLE "public.pgstattuple_type"
#define NCOLUMNS 9 #define NCOLUMNS 9
#define NCHARS 32 #define NCHARS 32
...@@ -56,6 +60,41 @@ pgstattuple(PG_FUNCTION_ARGS) ...@@ -56,6 +60,41 @@ pgstattuple(PG_FUNCTION_ARGS)
text *relname = PG_GETARG_TEXT_P(0); text *relname = PG_GETARG_TEXT_P(0);
RangeVar *relrv; RangeVar *relrv;
Relation rel; Relation rel;
Datum result;
/* open relation */
relrv = makeRangeVarFromNameList(textToQualifiedNameList(relname,
"pgstattuple"));
rel = heap_openrv(relrv, AccessShareLock);
result = pgstattuple_real(rel);
PG_RETURN_DATUM(result);
}
Datum
pgstattuplebyid(PG_FUNCTION_ARGS)
{
Oid relid = PG_GETARG_OID(0);
Relation rel;
Datum result;
/* open relation */
rel = heap_open(relid, AccessShareLock);
result = pgstattuple_real(rel);
PG_RETURN_DATUM(result);
}
/*
* pgstattuple_real
*
* The real work occurs here
*/
static Datum
pgstattuple_real(Relation rel)
{
HeapScanDesc scan; HeapScanDesc scan;
HeapTuple tuple; HeapTuple tuple;
BlockNumber nblocks; BlockNumber nblocks;
...@@ -92,11 +131,6 @@ pgstattuple(PG_FUNCTION_ARGS) ...@@ -92,11 +131,6 @@ pgstattuple(PG_FUNCTION_ARGS)
*/ */
attinmeta = TupleDescGetAttInMetadata(tupdesc); attinmeta = TupleDescGetAttInMetadata(tupdesc);
/* open relation */
relrv = makeRangeVarFromNameList(textToQualifiedNameList(relname,
"pgstattuple"));
rel = heap_openrv(relrv, AccessShareLock);
nblocks = RelationGetNumberOfBlocks(rel); nblocks = RelationGetNumberOfBlocks(rel);
scan = heap_beginscan(rel, SnapshotAny, 0, NULL); scan = heap_beginscan(rel, SnapshotAny, 0, NULL);
...@@ -187,5 +221,5 @@ pgstattuple(PG_FUNCTION_ARGS) ...@@ -187,5 +221,5 @@ pgstattuple(PG_FUNCTION_ARGS)
pfree(values[i]); pfree(values[i]);
pfree(values); pfree(values);
PG_RETURN_DATUM(result); return(result);
} }
...@@ -17,4 +17,9 @@ CREATE TYPE pgstattuple_type AS ( ...@@ -17,4 +17,9 @@ CREATE TYPE pgstattuple_type AS (
CREATE OR REPLACE FUNCTION pgstattuple(text) CREATE OR REPLACE FUNCTION pgstattuple(text)
RETURNS pgstattuple_type RETURNS pgstattuple_type
AS 'MODULE_PATHNAME', 'pgstattuple' AS 'MODULE_PATHNAME', 'pgstattuple'
LANGUAGE 'C' WITH (isstrict); LANGUAGE 'C' STRICT;
CREATE OR REPLACE FUNCTION pgstattuple(oid)
RETURNS pgstattuple_type
AS 'MODULE_PATHNAME', 'pgstattuplebyid'
LANGUAGE 'C' STRICT;
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
* *
* *
* IDENTIFICATION * IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/libpq/ip.c,v 1.12 2003/06/12 07:36:51 momjian Exp $ * $Header: /cvsroot/pgsql/src/backend/libpq/ip.c,v 1.13 2003/06/12 08:02:53 momjian Exp $
* *
* This file and the IPV6 implementation were initially provided by * This file and the IPV6 implementation were initially provided by
* Nigel Kukard <nkukard@lbsd.net>, Linux Based Systems Design * Nigel Kukard <nkukard@lbsd.net>, Linux Based Systems Design
...@@ -20,6 +20,8 @@ ...@@ -20,6 +20,8 @@
/* This is intended to be used in both frontend and backend, so use c.h */ /* This is intended to be used in both frontend and backend, so use c.h */
#include "c.h" #include "c.h"
#if !defined(_MSC_VER) && !defined(__BORLANDC__)
#include <errno.h> #include <errno.h>
#include <unistd.h> #include <unistd.h>
#include <sys/types.h> #include <sys/types.h>
...@@ -33,6 +35,8 @@ ...@@ -33,6 +35,8 @@
#include <arpa/inet.h> #include <arpa/inet.h>
#include <sys/file.h> #include <sys/file.h>
#endif
#include "libpq/ip.h" #include "libpq/ip.h"
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* Encoding names and routines for work with it. All * Encoding names and routines for work with it. All
* in this file is shared bedween FE and BE. * in this file is shared bedween FE and BE.
* *
* $Id: encnames.c,v 1.13 2003/05/15 16:35:29 momjian Exp $ * $Id: encnames.c,v 1.14 2003/06/12 08:02:53 momjian Exp $
*/ */
#ifdef FRONTEND #ifdef FRONTEND
#include "postgres_fe.h" #include "postgres_fe.h"
...@@ -13,7 +13,9 @@ ...@@ -13,7 +13,9 @@
#include "utils/builtins.h" #include "utils/builtins.h"
#endif #endif
#if !defined(_MSC_VER) && !defined(__BORLANDC__)
#include <unistd.h> #include <unistd.h>
#endif
#include "mb/pg_wchar.h" #include "mb/pg_wchar.h"
#include <ctype.h> #include <ctype.h>
......
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group * Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California * Portions Copyright (c) 1994, Regents of the University of California
* *
* $Id: c.h,v 1.147 2003/05/16 01:57:51 momjian Exp $ * $Id: c.h,v 1.148 2003/06/12 08:02:56 momjian Exp $
* *
*------------------------------------------------------------------------- *-------------------------------------------------------------------------
*/ */
...@@ -73,7 +73,7 @@ ...@@ -73,7 +73,7 @@
#include <SupportDefs.h> #include <SupportDefs.h>
#endif #endif
#ifdef WIN32 #if defined(WIN32) && !defined(_MSC_VER) && !defined(__BORLANDC__)
/* We have to redefine some system functions after they are included above */ /* We have to redefine some system functions after they are included above */
#include "pg_config_os.h" #include "pg_config_os.h"
#endif #endif
......
...@@ -16,15 +16,17 @@ ...@@ -16,15 +16,17 @@
* *
* Copyright (c) 2003, PostgreSQL Global Development Group * Copyright (c) 2003, PostgreSQL Global Development Group
* *
* $Id: getaddrinfo.h,v 1.3 2003/06/12 07:36:51 momjian Exp $ * $Id: getaddrinfo.h,v 1.4 2003/06/12 08:02:56 momjian Exp $
* *
*------------------------------------------------------------------------- *-------------------------------------------------------------------------
*/ */
#ifndef GETADDRINFO_H #ifndef GETADDRINFO_H
#define GETADDRINFO_H #define GETADDRINFO_H
#if !defined(WIN32) || (!defined(_MSC_VER) && !defined(__BORLANDC__))
#include <sys/socket.h> #include <sys/socket.h>
#include <netdb.h> #include <netdb.h>
#endif
#ifndef HAVE_STRUCT_ADDRINFO #ifndef HAVE_STRUCT_ADDRINFO
......
...@@ -21,6 +21,10 @@ ...@@ -21,6 +21,10 @@
#define HAVE_ATEXIT #define HAVE_ATEXIT
#define HAVE_MEMMOVE #define HAVE_MEMMOVE
#ifdef __BORLANDC__
#define HAVE_RANDOM
#endif
/* use _snprintf instead of snprintf */ /* use _snprintf instead of snprintf */
#define HAVE_DECL_SNPRINTF 1 #define HAVE_DECL_SNPRINTF 1
#define snprintf _snprintf #define snprintf _snprintf
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
* Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group * Portions Copyright (c) 1996-2002, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California * Portions Copyright (c) 1994, Regents of the University of California
* *
* $Id: port.h,v 1.3 2003/05/16 04:59:22 momjian Exp $ * $Id: port.h,v 1.4 2003/06/12 08:02:56 momjian Exp $
* *
*------------------------------------------------------------------------- *-------------------------------------------------------------------------
*/ */
...@@ -76,8 +76,10 @@ extern double rint(double x); ...@@ -76,8 +76,10 @@ extern double rint(double x);
#endif #endif
#ifndef HAVE_INET_ATON #ifndef HAVE_INET_ATON
#if !defined(WIN32) || (!defined(_MSC_VER) && !defined(__BORLANDC__))
# include <netinet/in.h> # include <netinet/in.h>
# include <arpa/inet.h> # include <arpa/inet.h>
#endif
extern int inet_aton(const char *cp, struct in_addr * addr); extern int inet_aton(const char *cp, struct in_addr * addr);
#endif #endif
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
# and a Win32 dynamic library libpq.dll with import library libpqdll.lib # and a Win32 dynamic library libpq.dll with import library libpqdll.lib
# Borland C++ base install directory goes here # Borland C++ base install directory goes here
BCB=d:\Borland\Bcc55 # BCB=d:\Borland\Bcc55
!MESSAGE Building the Win32 DLL and Static Library... !MESSAGE Building the Win32 DLL and Static Library...
!MESSAGE !MESSAGE
...@@ -63,8 +63,13 @@ LIB32=tlib.exe ...@@ -63,8 +63,13 @@ LIB32=tlib.exe
LIB32_FLAGS= LIB32_FLAGS=
LIB32_OBJS= \ LIB32_OBJS= \
"$(OUTDIR)\win32.obj" \ "$(OUTDIR)\win32.obj" \
"$(INTDIR)\getaddrinfo.obj" \
"$(INTDIR)\inet_aton.obj" \
"$(INTDIR)\crypt.obj" \
"$(INTDIR)\path.obj" \
"$(INTDIR)\dllist.obj" \ "$(INTDIR)\dllist.obj" \
"$(INTDIR)\md5.obj" \ "$(INTDIR)\md5.obj" \
"$(INTDIR)\ip.obj" \
"$(INTDIR)\fe-auth.obj" \ "$(INTDIR)\fe-auth.obj" \
"$(INTDIR)\fe-connect.obj" \ "$(INTDIR)\fe-connect.obj" \
"$(INTDIR)\fe-exec.obj" \ "$(INTDIR)\fe-exec.obj" \
...@@ -77,7 +82,7 @@ LIB32_OBJS= \ ...@@ -77,7 +82,7 @@ LIB32_OBJS= \
"$(INTDIR)\encnames.obj" "$(INTDIR)\encnames.obj"
RSC=brcc32.exe RSC=brcc32.exe
RSC_PROJ=/l 0x409 /fo"$(INTDIR)\libpq.res" RSC_PROJ=-l 0x409 -i$(BCB)\include -fo"$(INTDIR)\libpq.res"
LINK32=ilink32.exe LINK32=ilink32.exe
LINK32_FLAGS = -Gn -L$(BCB)\lib;$(INTDIR); -x -Tpd -v LINK32_FLAGS = -Gn -L$(BCB)\lib;$(INTDIR); -x -Tpd -v
...@@ -86,15 +91,20 @@ LINK32_OBJS= "$(INTDIR)\libpqdll.obj" ...@@ -86,15 +91,20 @@ LINK32_OBJS= "$(INTDIR)\libpqdll.obj"
# --------------------------------------------------------------------------- # ---------------------------------------------------------------------------
.path.obj = $(INTDIR) .path.obj = $(INTDIR)
.path.c = .;..\..\backend\libpq;..\..\backend\lib;..\..\backend\utils\mb .path.c = .;..\..\port;..\..\backend\libpq;..\..\backend\lib;..\..\backend\utils\mb
# --------------------------------------------------------------------------- # ---------------------------------------------------------------------------
ALL: "$(OUTDIR)" "$(OUTDIR)\blibpq.dll" "$(OUTDIR)\blibpq.lib" ALL: "$(OUTDIR)" "$(OUTDIR)\blibpq.dll" "$(OUTDIR)\blibpq.lib"
CLEAN : CLEAN :
-@erase "$(INTDIR)\getaddrinfo.obj"
-@erase "$(INTDIR)\inet_aton.obj"
-@erase "$(INTDIR)\crypt.obj"
-@erase "$(INTDIR)\path.obj"
-@erase "$(INTDIR)\dllist.obj" -@erase "$(INTDIR)\dllist.obj"
-@erase "$(INTDIR)\md5.obj" -@erase "$(INTDIR)\md5.obj"
-@erase "$(INTDIR)\ip.obj"
-@erase "$(INTDIR)\fe-auth.obj" -@erase "$(INTDIR)\fe-auth.obj"
-@erase "$(INTDIR)\fe-connect.obj" -@erase "$(INTDIR)\fe-connect.obj"
-@erase "$(INTDIR)\fe-exec.obj" -@erase "$(INTDIR)\fe-exec.obj"
...@@ -125,7 +135,7 @@ CLEAN : ...@@ -125,7 +135,7 @@ CLEAN :
"$(OUTDIR)\blibpq.lib" import32.lib cw32mti.lib, + "$(OUTDIR)\blibpq.lib" import32.lib cw32mti.lib, +
blibpqdll.def,"$(INTDIR)\libpq.res" blibpqdll.def,"$(INTDIR)\libpq.res"
! !
implib -a "$(OUTDIR)\blibpqdll.lib" blibpqdll.def $@ implib -w "$(OUTDIR)\blibpqdll.lib" blibpqdll.def $@
"$(INTDIR)\libpq.res" : "$(INTDIR)" libpq.rc "$(INTDIR)\libpq.res" : "$(INTDIR)" libpq.rc
$(RSC) $(RSC_PROJ) libpq.rc $(RSC) $(RSC_PROJ) libpq.rc
......
...@@ -96,7 +96,7 @@ EXPORTS ...@@ -96,7 +96,7 @@ EXPORTS
_pg_encoding_to_char @ 92 _pg_encoding_to_char @ 92
_pg_utf_mblen @ 93 _pg_utf_mblen @ 93
_PQunescapeBytea @ 94 _PQunescapeBytea @ 94
_PQfreeMem @ 95 _PQfreemem @ 95
; Aliases for MS compatible names ; Aliases for MS compatible names
PQconnectdb = _PQconnectdb PQconnectdb = _PQconnectdb
...@@ -193,5 +193,5 @@ EXPORTS ...@@ -193,5 +193,5 @@ EXPORTS
pg_encoding_to_char = _pg_encoding_to_char pg_encoding_to_char = _pg_encoding_to_char
pg_utf_mblen = _pg_utf_mblen pg_utf_mblen = _pg_utf_mblen
PQunescapeBytea = _PQunescapeBytea PQunescapeBytea = _PQunescapeBytea
PQfreeMem = _PQfreeMem PQfreemem = _PQfreemem
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
* *
* *
* IDENTIFICATION * IDENTIFICATION
* $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-connect.c,v 1.244 2003/06/12 07:36:51 momjian Exp $ * $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-connect.c,v 1.245 2003/06/12 08:02:57 momjian Exp $
* *
*------------------------------------------------------------------------- *-------------------------------------------------------------------------
*/ */
...@@ -49,6 +49,10 @@ ...@@ -49,6 +49,10 @@
#include "libpq/ip.h" #include "libpq/ip.h"
#include "mb/pg_wchar.h" #include "mb/pg_wchar.h"
/* For FNCTL_NONBLOCK */
#if defined(WIN32) || defined(__BEOS__)
long ioctlsocket_ret;
#endif
#define PGPASSFILE ".pgpass" #define PGPASSFILE ".pgpass"
......
...@@ -23,7 +23,7 @@ ...@@ -23,7 +23,7 @@
* Portions Copyright (c) 1994, Regents of the University of California * Portions Copyright (c) 1994, Regents of the University of California
* *
* IDENTIFICATION * IDENTIFICATION
* $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-misc.c,v 1.92 2003/06/08 17:43:00 tgl Exp $ * $Header: /cvsroot/pgsql/src/interfaces/libpq/fe-misc.c,v 1.93 2003/06/12 08:02:57 momjian Exp $
* *
*------------------------------------------------------------------------- *-------------------------------------------------------------------------
*/ */
...@@ -33,8 +33,11 @@ ...@@ -33,8 +33,11 @@
#include <errno.h> #include <errno.h>
#include <signal.h> #include <signal.h>
#include <time.h> #include <time.h>
#if !defined(_MSC_VER) && !defined(__BORLANDC__)
#include <netinet/in.h> #include <netinet/in.h>
#include <arpa/inet.h> #include <arpa/inet.h>
#endif
#ifdef WIN32 #ifdef WIN32
#include "win32.h" #include "win32.h"
......
...@@ -96,5 +96,5 @@ EXPORTS ...@@ -96,5 +96,5 @@ EXPORTS
pg_encoding_to_char @ 92 pg_encoding_to_char @ 92
pg_utf_mblen @ 93 pg_utf_mblen @ 93
PQunescapeBytea @ 94 PQunescapeBytea @ 94
PQfreeMem @ 95 PQfreemem @ 95
...@@ -36,8 +36,13 @@ OutDir=.\Release ...@@ -36,8 +36,13 @@ OutDir=.\Release
ALL : "$(OUTDIR)\libpq.lib" "$(OUTDIR)\libpq.dll" ALL : "$(OUTDIR)\libpq.lib" "$(OUTDIR)\libpq.dll"
CLEAN : CLEAN :
-@erase "$(INTDIR)\getaddrinfo.obj"
-@erase "$(INTDIR)\inet_aton.obj"
-@erase "$(INTDIR)\crypt.obj"
-@erase "$(INTDIR)\path.obj"
-@erase "$(INTDIR)\dllist.obj" -@erase "$(INTDIR)\dllist.obj"
-@erase "$(INTDIR)\md5.obj" -@erase "$(INTDIR)\md5.obj"
-@erase "$(INTDIR)\ip.obj"
-@erase "$(INTDIR)\fe-auth.obj" -@erase "$(INTDIR)\fe-auth.obj"
-@erase "$(INTDIR)\fe-connect.obj" -@erase "$(INTDIR)\fe-connect.obj"
-@erase "$(INTDIR)\fe-exec.obj" -@erase "$(INTDIR)\fe-exec.obj"
...@@ -72,8 +77,13 @@ LIB32=link.exe -lib ...@@ -72,8 +77,13 @@ LIB32=link.exe -lib
LIB32_FLAGS=$(LOPT) /nologo /out:"$(OUTDIR)\libpq.lib" LIB32_FLAGS=$(LOPT) /nologo /out:"$(OUTDIR)\libpq.lib"
LIB32_OBJS= \ LIB32_OBJS= \
"$(OUTDIR)\win32.obj" \ "$(OUTDIR)\win32.obj" \
"$(INTDIR)\getaddrinfo.obj" \
"$(INTDIR)\inet_aton.obj" \
"$(INTDIR)\crypt.obj" \
"$(INTDIR)\path.obj" \
"$(INTDIR)\dllist.obj" \ "$(INTDIR)\dllist.obj" \
"$(INTDIR)\md5.obj" \ "$(INTDIR)\md5.obj" \
"$(INTDIR)\ip.obj" \
"$(INTDIR)\fe-auth.obj" \ "$(INTDIR)\fe-auth.obj" \
"$(INTDIR)\fe-connect.obj" \ "$(INTDIR)\fe-connect.obj" \
"$(INTDIR)\fe-exec.obj" \ "$(INTDIR)\fe-exec.obj" \
...@@ -112,6 +122,25 @@ LINK32_OBJS= \ ...@@ -112,6 +122,25 @@ LINK32_OBJS= \
$(LINK32_FLAGS) $(LINK32_OBJS) $(LINK32_FLAGS) $(LINK32_OBJS)
<< <<
"$(OUTDIR)\getaddrinfo.obj" : ..\..\port\getaddrinfo.c
$(CPP) @<<
$(CPP_PROJ) ..\..\port\getaddrinfo.c
<<
"$(OUTDIR)\inet_aton.obj" : ..\..\port\inet_aton.c
$(CPP) @<<
$(CPP_PROJ) ..\..\port\inet_aton.c
<<
"$(OUTDIR)\crypt.obj" : ..\..\port\crypt.c
$(CPP) @<<
$(CPP_PROJ) ..\..\port\crypt.c
<<
"$(OUTDIR)\path.obj" : ..\..\port\path.c
$(CPP) @<<
$(CPP_PROJ) ..\..\port\path.c
<<
"$(OUTDIR)\dllist.obj" : ..\..\backend\lib\dllist.c "$(OUTDIR)\dllist.obj" : ..\..\backend\lib\dllist.c
$(CPP) @<< $(CPP) @<<
...@@ -124,6 +153,10 @@ LINK32_OBJS= \ ...@@ -124,6 +153,10 @@ LINK32_OBJS= \
$(CPP_PROJ) ..\..\backend\libpq\md5.c $(CPP_PROJ) ..\..\backend\libpq\md5.c
<< <<
"$(OUTDIR)\ip.obj" : ..\..\backend\libpq\ip.c
$(CPP) @<<
$(CPP_PROJ) ..\..\backend\libpq\ip.c
<<
"$(INTDIR)\wchar.obj" : ..\..\backend\utils\mb\wchar.c "$(INTDIR)\wchar.obj" : ..\..\backend\utils\mb\wchar.c
$(CPP) @<< $(CPP) @<<
......
...@@ -50,8 +50,12 @@ __RCSID("$NetBSD: crypt.c,v 1.18 2001/03/01 14:37:35 wiz Exp $"); ...@@ -50,8 +50,12 @@ __RCSID("$NetBSD: crypt.c,v 1.18 2001/03/01 14:37:35 wiz Exp $");
#include <sys/types.h> #include <sys/types.h>
#include <limits.h> #include <limits.h>
#include <stdlib.h> #include <stdlib.h>
#include <unistd.h>
#ifdef WIN32
#include <windows.h> #include <windows.h>
#else
#include <unistd.h>
#endif
static int des_setkey(const char *key); static int des_setkey(const char *key);
static int des_cipher(const char *in, char *out, long salt, int num_iter); static int des_cipher(const char *in, char *out, long salt, int num_iter);
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
* *
* *
* IDENTIFICATION * IDENTIFICATION
* $Header: /cvsroot/pgsql/src/port/getaddrinfo.c,v 1.4 2003/06/12 07:36:51 momjian Exp $ * $Header: /cvsroot/pgsql/src/port/getaddrinfo.c,v 1.5 2003/06/12 08:02:57 momjian Exp $
* *
*------------------------------------------------------------------------- *-------------------------------------------------------------------------
*/ */
...@@ -16,6 +16,7 @@ ...@@ -16,6 +16,7 @@
/* This is intended to be used in both frontend and backend, so use c.h */ /* This is intended to be used in both frontend and backend, so use c.h */
#include "c.h" #include "c.h"
#if !defined(_MSC_VER) && !defined(__BORLANDC__)
#include <sys/types.h> #include <sys/types.h>
#include <sys/socket.h> #include <sys/socket.h>
#include <netdb.h> #include <netdb.h>
...@@ -24,6 +25,7 @@ ...@@ -24,6 +25,7 @@
#ifdef HAVE_UNIX_SOCKETS #ifdef HAVE_UNIX_SOCKETS
#include <sys/un.h> #include <sys/un.h>
#endif #endif
#endif
#include "getaddrinfo.h" #include "getaddrinfo.h"
......
/* $Id: inet_aton.c,v 1.2 2002/09/02 02:47:07 momjian Exp $ /* $Id: inet_aton.c,v 1.3 2003/06/12 08:02:57 momjian Exp $
* *
* This inet_aton() function was taken from the GNU C library and * This inet_aton() function was taken from the GNU C library and
* incorporated into Postgres for those systems which do not have this * incorporated into Postgres for those systems which do not have this
...@@ -44,8 +44,10 @@ ...@@ -44,8 +44,10 @@
#include "c.h" #include "c.h"
#if !defined(WIN32) || (!defined(_MSC_VER) && !defined(__BORLANDC__))
#include <netinet/in.h> #include <netinet/in.h>
#include <ctype.h> #include <ctype.h>
#endif
/* /*
* Check whether "cp" is a valid ascii representation * Check whether "cp" is a valid ascii representation
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment