summaryrefslogtreecommitdiff
path: root/src/interfaces/perl5
diff options
context:
space:
mode:
authorCVS to git conversion script <webmaster@postgresql.org>2002-06-20 20:29:55 +0000
committerCVS to git conversion script <webmaster@postgresql.org>2002-06-20 20:29:55 +0000
commit05dedace84ef8c93fea5309c3ac55f889011429b (patch)
tree4c7f513afbbc03060039a165d1770e11be711773 /src/interfaces/perl5
parentd84fe82230c593f3dc5d7f427849b99d1efa8a0a (diff)
This commit was manufactured by cvs2git to create branch 'ecpg_big_bison'.
Sprout from master 2002-06-20 20:29:54 UTC Bruce Momjian <bruce@momjian.us> 'Update copyright to 2002.' Delete: COPYRIGHT GNUmakefile.in HISTORY INSTALL Makefile README aclocal.m4 config/ac_func_accept_argtypes.m4 config/c-compiler.m4 config/c-library.m4 config/config.guess config/config.sub config/cxx.m4 config/docbook.m4 config/general.m4 config/install-sh config/java.m4 config/libtool.m4 config/missing config/mkinstalldirs config/perl.m4 config/prep_buildtree config/programs.m4 config/python.m4 config/tcl.m4 configure configure.in contrib/Makefile contrib/README contrib/array/Makefile contrib/array/README.array_iterator contrib/array/array_iterator.c contrib/array/array_iterator.h contrib/array/array_iterator.sql.in contrib/btree_gist/Makefile contrib/btree_gist/README.btree_gist contrib/btree_gist/btree_gist.c contrib/btree_gist/btree_gist.sql.in contrib/btree_gist/data/test_btree.data contrib/btree_gist/data/test_btree_ts.data contrib/btree_gist/expected/btree_gist.out contrib/btree_gist/sql/btree_gist.sql contrib/chkpass/Makefile contrib/chkpass/README.chkpass contrib/chkpass/chkpass.c contrib/chkpass/chkpass.sql.in contrib/contrib-global.mk contrib/cube/Makefile contrib/cube/README.cube contrib/cube/buffer.c contrib/cube/buffer.h contrib/cube/cube.c contrib/cube/cube.sql.in contrib/cube/cubedata.h contrib/cube/cubeparse.y contrib/cube/cubescan.l contrib/cube/data/test_cube.data contrib/cube/expected/cube.out contrib/cube/sql/cube.sql contrib/dbase/Makefile contrib/dbase/README.dbf2pg contrib/dbase/dbf.c contrib/dbase/dbf.h contrib/dbase/dbf2pg.1 contrib/dbase/dbf2pg.c contrib/dbase/endian.c contrib/dblink/Makefile contrib/dblink/README.dblink contrib/dblink/dblink.c contrib/dblink/dblink.h contrib/dblink/dblink.sql.in contrib/dbsize/Makefile contrib/dbsize/README.dbsize contrib/dbsize/dbsize.c contrib/dbsize/dbsize.sql.in contrib/earthdistance/Makefile contrib/earthdistance/README.earthdistance contrib/earthdistance/earthdistance.c contrib/earthdistance/earthdistance.sql.in contrib/findoidjoins/Makefile contrib/findoidjoins/README.findoidjoins contrib/findoidjoins/findoidjoins.c contrib/findoidjoins/make_oidjoins_check contrib/fulltextindex/Makefile contrib/fulltextindex/README.fti contrib/fulltextindex/TODO contrib/fulltextindex/fti.c contrib/fulltextindex/fti.pl contrib/fulltextindex/fti.sql.in contrib/fulltextindex/timings.sh contrib/fuzzystrmatch/Makefile contrib/fuzzystrmatch/README.fuzzystrmatch contrib/fuzzystrmatch/README.soundex contrib/fuzzystrmatch/fuzzystrmatch.c contrib/fuzzystrmatch/fuzzystrmatch.h contrib/fuzzystrmatch/fuzzystrmatch.sql.in contrib/intagg/Makefile contrib/intagg/README.int_aggregate contrib/intagg/int_aggregate.c contrib/intagg/int_aggregate.sql.in contrib/intarray/Makefile contrib/intarray/README.intarray contrib/intarray/_int.c contrib/intarray/_int.sql.in contrib/intarray/bench/bench.pl contrib/intarray/bench/create_test.pl contrib/intarray/data/test__int.data contrib/intarray/expected/_int.out contrib/intarray/sql/_int.sql contrib/ipc_check/README contrib/ipc_check/ipc_check.pl contrib/isbn_issn/Makefile contrib/isbn_issn/README.isbn_issn contrib/isbn_issn/isbn_issn.c contrib/isbn_issn/isbn_issn.sql.in contrib/lo/Makefile contrib/lo/README.lo contrib/lo/lo.c contrib/lo/lo.sql.in contrib/lo/lo_drop.sql contrib/lo/lo_test.sql contrib/mSQL-interface/Makefile contrib/mSQL-interface/README.mpgsql contrib/mSQL-interface/mpgsql.c contrib/mac/README.mac contrib/mac/createoui contrib/mac/dropoui contrib/mac/ouiparse.awk contrib/mac/updateoui contrib/miscutil/Makefile contrib/miscutil/README.misc_utils contrib/miscutil/misc_utils.c contrib/miscutil/misc_utils.h contrib/miscutil/misc_utils.sql.in contrib/mysql/README contrib/mysql/my2pg.pl contrib/mysql/mysql2pgsql contrib/noupdate/Makefile contrib/noupdate/README.noup contrib/noupdate/noup.c contrib/noupdate/noup.sql.in contrib/oid2name/Makefile contrib/oid2name/README.oid2name contrib/oid2name/oid2name.c contrib/oracle/CHANGES contrib/oracle/Ora2Pg.pm contrib/oracle/README.ora2pg contrib/oracle/TODO contrib/oracle/ora2pg.html contrib/oracle/ora2pg.pl contrib/pg_controldata/Makefile contrib/pg_controldata/README.pg_controldata contrib/pg_controldata/pg_controldata.c contrib/pg_dumplo/Makefile contrib/pg_dumplo/README.pg_dumplo contrib/pg_dumplo/lo_export.c contrib/pg_dumplo/lo_import.c contrib/pg_dumplo/main.c contrib/pg_dumplo/pg_dumplo.h contrib/pg_dumplo/utils.c contrib/pg_logger/Makefile contrib/pg_logger/README.pg_logger contrib/pg_logger/pg_logger.c contrib/pg_resetxlog/Makefile contrib/pg_resetxlog/README.pg_resetxlog contrib/pg_resetxlog/pg_resetxlog.c contrib/pg_upgrade/README contrib/pg_upgrade/pg_upgrade contrib/pg_upgrade/pg_upgrade.1 contrib/pgbench/Makefile contrib/pgbench/README.pgbench contrib/pgbench/README.pgbench_jis contrib/pgbench/pgbench.c contrib/pgcrypto/API contrib/pgcrypto/Makefile contrib/pgcrypto/README.pgcrypto contrib/pgcrypto/blf.c contrib/pgcrypto/blf.h contrib/pgcrypto/crypt-blowfish.c contrib/pgcrypto/crypt-des.c contrib/pgcrypto/crypt-gensalt.c contrib/pgcrypto/crypt-md5.c contrib/pgcrypto/expected/blowfish.out contrib/pgcrypto/expected/crypt-blowfish.out contrib/pgcrypto/expected/crypt-des.out contrib/pgcrypto/expected/crypt-md5.out contrib/pgcrypto/expected/crypt-xdes.out contrib/pgcrypto/expected/hmac-md5.out contrib/pgcrypto/expected/hmac-sha1.out contrib/pgcrypto/expected/init.out contrib/pgcrypto/expected/md5.out contrib/pgcrypto/expected/rijndael.out contrib/pgcrypto/expected/sha1.out contrib/pgcrypto/internal.c contrib/pgcrypto/md5.c contrib/pgcrypto/md5.h contrib/pgcrypto/mhash.c contrib/pgcrypto/misc.c contrib/pgcrypto/openssl.c contrib/pgcrypto/pgcrypto.c contrib/pgcrypto/pgcrypto.h contrib/pgcrypto/pgcrypto.sql.in contrib/pgcrypto/px-crypt.c contrib/pgcrypto/px-crypt.h contrib/pgcrypto/px-hmac.c contrib/pgcrypto/px.c contrib/pgcrypto/px.h contrib/pgcrypto/random.c contrib/pgcrypto/rijndael.c contrib/pgcrypto/rijndael.h contrib/pgcrypto/rijndael.tbl contrib/pgcrypto/sha1.c contrib/pgcrypto/sha1.h contrib/pgcrypto/sql/blowfish.sql contrib/pgcrypto/sql/crypt-blowfish.sql contrib/pgcrypto/sql/crypt-des.sql contrib/pgcrypto/sql/crypt-md5.sql contrib/pgcrypto/sql/crypt-xdes.sql contrib/pgcrypto/sql/hmac-md5.sql contrib/pgcrypto/sql/hmac-sha1.sql contrib/pgcrypto/sql/init.sql contrib/pgcrypto/sql/md5.sql contrib/pgcrypto/sql/rijndael.sql contrib/pgcrypto/sql/sha1.sql contrib/pgstattuple/Makefile contrib/pgstattuple/README.pgstattuple contrib/pgstattuple/README.pgstattuple.euc_jp contrib/pgstattuple/pgstattuple.c contrib/pgstattuple/pgstattuple.sql.in contrib/retep/CHANGELOG contrib/retep/Implementation contrib/retep/Makefile contrib/retep/README contrib/retep/build.xml contrib/retep/data/cds.dtd contrib/retep/data/cds.xml contrib/retep/retep.jpx contrib/retep/uk/org/retep/dtu/DCollection.java contrib/retep/uk/org/retep/dtu/DConstants.java contrib/retep/uk/org/retep/dtu/DElement.java contrib/retep/uk/org/retep/dtu/DEnvironment.java contrib/retep/uk/org/retep/dtu/DModule.java contrib/retep/uk/org/retep/dtu/DModuleXML.java contrib/retep/uk/org/retep/dtu/DNode.java contrib/retep/uk/org/retep/dtu/DProcessor.java contrib/retep/uk/org/retep/dtu/DTransform.java contrib/retep/uk/org/retep/tools/Tool.java contrib/retep/uk/org/retep/tools.properties contrib/retep/uk/org/retep/util/ExceptionDialog.java contrib/retep/uk/org/retep/util/Globals.java contrib/retep/uk/org/retep/util/Logger.java contrib/retep/uk/org/retep/util/Main.java contrib/retep/uk/org/retep/util/StandaloneApp.java contrib/retep/uk/org/retep/util/hba/Editor.java contrib/retep/uk/org/retep/util/hba/Main.java contrib/retep/uk/org/retep/util/hba/Record.java contrib/retep/uk/org/retep/util/misc/IPAddress.java contrib/retep/uk/org/retep/util/misc/PropertiesIO.java contrib/retep/uk/org/retep/util/misc/WStringTokenizer.java contrib/retep/uk/org/retep/util/models/HBATableModel.java contrib/retep/uk/org/retep/util/models/PropertiesTableModel.java contrib/retep/uk/org/retep/util/proped/Main.java contrib/retep/uk/org/retep/util/proped/PropertyEditor.java contrib/retep/uk/org/retep/xml/core/XMLFactory.java contrib/retep/uk/org/retep/xml/core/XMLFactoryException.java contrib/retep/uk/org/retep/xml/jdbc/XMLDatabase.java contrib/retep/uk/org/retep/xml/jdbc/XMLResultSet.java contrib/retep/uk/org/retep/xml/parser/TagHandler.java contrib/retep/uk/org/retep/xml/parser/TagListener.java contrib/retep/uk/org/retep/xml/test/XMLExport.java contrib/rserv/ApplySnapshot.in contrib/rserv/CleanLog.in contrib/rserv/GetSyncID.in contrib/rserv/InitRservTest.in contrib/rserv/Makefile contrib/rserv/MasterAddTable.in contrib/rserv/MasterInit.in contrib/rserv/MasterSync.in contrib/rserv/PrepareSnapshot.in contrib/rserv/README.rserv contrib/rserv/RServ.pm contrib/rserv/Replicate.in contrib/rserv/RservTest.in contrib/rserv/SlaveAddTable.in contrib/rserv/SlaveInit.in contrib/rserv/master.sql.in contrib/rserv/regress.sh contrib/rserv/rserv.c contrib/rserv/slave.sql.in contrib/rtree_gist/Makefile contrib/rtree_gist/README.rtree_gist contrib/rtree_gist/bench/bench.pl contrib/rtree_gist/bench/create_test.pl contrib/rtree_gist/data/test_box.data contrib/rtree_gist/expected/rtree_gist.out contrib/rtree_gist/rtree_gist.c contrib/rtree_gist/rtree_gist.sql.in contrib/rtree_gist/sql/rtree_gist.sql contrib/seg/Makefile contrib/seg/README.seg contrib/seg/buffer.c contrib/seg/buffer.h contrib/seg/data/test_seg.data contrib/seg/expected/seg.out contrib/seg/seg-validate.pl contrib/seg/seg.c contrib/seg/seg.sql.in contrib/seg/segdata.h contrib/seg/segparse.y contrib/seg/segscan.l contrib/seg/sort-segments.pl contrib/seg/sql/seg.sql contrib/spi/Makefile contrib/spi/README.spi contrib/spi/autoinc.c contrib/spi/autoinc.example contrib/spi/autoinc.sql.in contrib/spi/insert_username.c contrib/spi/insert_username.example contrib/spi/insert_username.sql.in contrib/spi/moddatetime.c contrib/spi/moddatetime.example contrib/spi/moddatetime.sql.in contrib/spi/preprocessor/README.MAX contrib/spi/preprocessor/example.sql contrib/spi/preprocessor/step1.c contrib/spi/preprocessor/step1.e contrib/spi/preprocessor/step2.pl contrib/spi/refint.c contrib/spi/refint.example contrib/spi/refint.sql.in contrib/spi/timetravel.c contrib/spi/timetravel.example contrib/spi/timetravel.sql.in contrib/start-scripts/freebsd contrib/start-scripts/linux contrib/string/Makefile contrib/string/README.string_io contrib/string/string_io.c contrib/string/string_io.h contrib/string/string_io.sql.in contrib/tips/Makefile contrib/tips/README.apachelog contrib/tools/add-emacs-variables contrib/tools/find-sources contrib/tools/make-tags contrib/tsearch/Makefile contrib/tsearch/README.tsearch contrib/tsearch/crc32.c contrib/tsearch/crc32.h contrib/tsearch/data/test_tsearch.data contrib/tsearch/deflex.h contrib/tsearch/dict/porter_english.dct contrib/tsearch/dict/russian_stemming.dct contrib/tsearch/dict.h contrib/tsearch/expected/tsearch.out contrib/tsearch/gistidx.c contrib/tsearch/gistidx.h contrib/tsearch/makedict/makedict.pl contrib/tsearch/morph.c contrib/tsearch/morph.h contrib/tsearch/parser.h contrib/tsearch/parser.l contrib/tsearch/query.c contrib/tsearch/query.h contrib/tsearch/rewrite.c contrib/tsearch/rewrite.h contrib/tsearch/sql/tsearch.sql contrib/tsearch/tsearch.sql.in contrib/tsearch/txtidx.c contrib/tsearch/txtidx.h contrib/userlock/Makefile contrib/userlock/README.user_locks contrib/userlock/user_locks.c contrib/userlock/user_locks.h contrib/userlock/user_locks.sql.in contrib/vacuumlo/Makefile contrib/vacuumlo/README.vacuumlo contrib/vacuumlo/vacuumlo.c contrib/xml/Makefile contrib/xml/README contrib/xml/TODO contrib/xml/pgxml.c contrib/xml/pgxml.h contrib/xml/pgxml.source contrib/xml/pgxml_dom.c contrib/xml/pgxml_dom.source doc/FAQ doc/FAQ_AIX doc/FAQ_DEV doc/FAQ_HPUX doc/FAQ_IRIX doc/FAQ_MSWIN doc/FAQ_QNX4 doc/FAQ_SCO doc/FAQ_Solaris doc/FAQ_german doc/FAQ_japanese doc/FAQ_polish doc/FAQ_russian doc/KNOWN_BUGS doc/MISSING_FEATURES doc/Makefile doc/README.mb.big5 doc/README.mb.jp doc/TODO doc/TODO.detail/README doc/TODO.detail/atttypmod doc/TODO.detail/crossdb doc/TODO.detail/cursor doc/TODO.detail/drop doc/TODO.detail/exists doc/TODO.detail/foreign doc/TODO.detail/fsync doc/TODO.detail/inheritance doc/TODO.detail/java doc/TODO.detail/mmap doc/TODO.detail/namedatalen doc/TODO.detail/optimizer doc/TODO.detail/performance doc/TODO.detail/persistent doc/TODO.detail/pool doc/TODO.detail/prepare doc/TODO.detail/privileges doc/TODO.detail/replication doc/TODO.detail/schema doc/TODO.detail/tablespaces doc/TODO.detail/thread doc/TODO.detail/transactions doc/TODO.detail/typeconv doc/TODO.detail/update doc/TODO.detail/vacuum doc/TODO.detail/view doc/TODO.detail/win32 doc/TODO.detail/yacc doc/bug.template doc/src/FAQ/FAQ.html doc/src/FAQ/FAQ_DEV.html doc/src/FAQ/FAQ_german.html doc/src/FAQ/FAQ_japanese.html doc/src/FAQ/FAQ_polish.html doc/src/FAQ/FAQ_russian.html doc/src/Makefile doc/src/graphics/catalogs.ag doc/src/graphics/catalogs.cgm doc/src/graphics/catalogs.gif doc/src/graphics/catalogs.ps doc/src/graphics/clientserver.ag doc/src/graphics/clientserver.gif doc/src/graphics/connections.ag doc/src/graphics/connections.gif doc/src/sgml/Makefile doc/src/sgml/admin.sgml doc/src/sgml/advanced.sgml doc/src/sgml/arch-dev.sgml doc/src/sgml/arch-pg.sgml doc/src/sgml/array.sgml doc/src/sgml/backup.sgml doc/src/sgml/biblio.sgml doc/src/sgml/bki.sgml doc/src/sgml/book-decl.sgml doc/src/sgml/catalogs.sgml doc/src/sgml/charset.sgml doc/src/sgml/client-auth.sgml doc/src/sgml/compiler.sgml doc/src/sgml/contacts.sgml doc/src/sgml/cvs.sgml doc/src/sgml/datatype.sgml doc/src/sgml/datetime.sgml doc/src/sgml/developer.sgml doc/src/sgml/dfunc.sgml doc/src/sgml/diskusage.sgml doc/src/sgml/docguide.sgml doc/src/sgml/ecpg.sgml doc/src/sgml/extend.sgml doc/src/sgml/features.sgml doc/src/sgml/filelist.sgml doc/src/sgml/fixrtf doc/src/sgml/func-ref.sgml doc/src/sgml/func.sgml doc/src/sgml/geqo.sgml doc/src/sgml/gist.sgml doc/src/sgml/history.sgml doc/src/sgml/indexcost.sgml doc/src/sgml/indices.sgml doc/src/sgml/info.sgml doc/src/sgml/inherit.sgml doc/src/sgml/install-win32.sgml doc/src/sgml/installation.sgml doc/src/sgml/intro.sgml doc/src/sgml/jdbc.sgml doc/src/sgml/keywords.sgml doc/src/sgml/legal.sgml doc/src/sgml/libpgeasy.sgml doc/src/sgml/libpgtcl.sgml doc/src/sgml/libpq++.sgml doc/src/sgml/libpq.sgml doc/src/sgml/lobj.sgml doc/src/sgml/maintenance.sgml doc/src/sgml/manage-ag.sgml doc/src/sgml/manage.sgml doc/src/sgml/monitoring.sgml doc/src/sgml/mvcc.sgml doc/src/sgml/nls.sgml doc/src/sgml/notation.sgml doc/src/sgml/odbc.sgml doc/src/sgml/page.sgml doc/src/sgml/perform.sgml doc/src/sgml/plperl.sgml doc/src/sgml/plpython.sgml doc/src/sgml/plsql.sgml doc/src/sgml/pltcl.sgml doc/src/sgml/postgres.sgml doc/src/sgml/problems.sgml doc/src/sgml/programmer.sgml doc/src/sgml/protocol.sgml doc/src/sgml/pygresql.sgml doc/src/sgml/queries.sgml doc/src/sgml/query.sgml doc/src/sgml/recovery.sgml doc/src/sgml/ref/abort.sgml doc/src/sgml/ref/allfiles.sgml doc/src/sgml/ref/alter_database.sgml doc/src/sgml/ref/alter_group.sgml doc/src/sgml/ref/alter_table.sgml doc/src/sgml/ref/alter_trigger.sgml doc/src/sgml/ref/alter_user.sgml doc/src/sgml/ref/analyze.sgml doc/src/sgml/ref/begin.sgml doc/src/sgml/ref/checkpoint.sgml doc/src/sgml/ref/close.sgml doc/src/sgml/ref/cluster.sgml doc/src/sgml/ref/comment.sgml doc/src/sgml/ref/commit.sgml doc/src/sgml/ref/copy.sgml doc/src/sgml/ref/create_aggregate.sgml doc/src/sgml/ref/create_constraint.sgml doc/src/sgml/ref/create_database.sgml doc/src/sgml/ref/create_domain.sgml doc/src/sgml/ref/create_function.sgml doc/src/sgml/ref/create_group.sgml doc/src/sgml/ref/create_index.sgml doc/src/sgml/ref/create_language.sgml doc/src/sgml/ref/create_operator.sgml doc/src/sgml/ref/create_rule.sgml doc/src/sgml/ref/create_schema.sgml doc/src/sgml/ref/create_sequence.sgml doc/src/sgml/ref/create_table.sgml doc/src/sgml/ref/create_table_as.sgml doc/src/sgml/ref/create_trigger.sgml doc/src/sgml/ref/create_type.sgml doc/src/sgml/ref/create_user.sgml doc/src/sgml/ref/create_view.sgml doc/src/sgml/ref/createdb.sgml doc/src/sgml/ref/createlang.sgml doc/src/sgml/ref/createuser.sgml doc/src/sgml/ref/current_date.sgml doc/src/sgml/ref/current_time.sgml doc/src/sgml/ref/current_timestamp.sgml doc/src/sgml/ref/current_user.sgml doc/src/sgml/ref/declare.sgml doc/src/sgml/ref/delete.sgml doc/src/sgml/ref/drop_aggregate.sgml doc/src/sgml/ref/drop_database.sgml doc/src/sgml/ref/drop_domain.sgml doc/src/sgml/ref/drop_function.sgml doc/src/sgml/ref/drop_group.sgml doc/src/sgml/ref/drop_index.sgml doc/src/sgml/ref/drop_language.sgml doc/src/sgml/ref/drop_operator.sgml doc/src/sgml/ref/drop_rule.sgml doc/src/sgml/ref/drop_sequence.sgml doc/src/sgml/ref/drop_table.sgml doc/src/sgml/ref/drop_trigger.sgml doc/src/sgml/ref/drop_type.sgml doc/src/sgml/ref/drop_user.sgml doc/src/sgml/ref/drop_view.sgml doc/src/sgml/ref/dropdb.sgml doc/src/sgml/ref/droplang.sgml doc/src/sgml/ref/dropuser.sgml doc/src/sgml/ref/ecpg-ref.sgml doc/src/sgml/ref/end.sgml doc/src/sgml/ref/explain.sgml doc/src/sgml/ref/fetch.sgml doc/src/sgml/ref/grant.sgml doc/src/sgml/ref/initdb.sgml doc/src/sgml/ref/initlocation.sgml doc/src/sgml/ref/insert.sgml doc/src/sgml/ref/ipcclean.sgml doc/src/sgml/ref/listen.sgml doc/src/sgml/ref/load.sgml doc/src/sgml/ref/lock.sgml doc/src/sgml/ref/move.sgml doc/src/sgml/ref/notify.sgml doc/src/sgml/ref/pg_config-ref.sgml doc/src/sgml/ref/pg_ctl-ref.sgml doc/src/sgml/ref/pg_dump.sgml doc/src/sgml/ref/pg_dumpall.sgml doc/src/sgml/ref/pg_restore.sgml doc/src/sgml/ref/pgaccess-ref.sgml doc/src/sgml/ref/pgtclsh.sgml doc/src/sgml/ref/pgtksh.sgml doc/src/sgml/ref/postgres-ref.sgml doc/src/sgml/ref/postmaster.sgml doc/src/sgml/ref/psql-ref.sgml doc/src/sgml/ref/reindex.sgml doc/src/sgml/ref/reset.sgml doc/src/sgml/ref/revoke.sgml doc/src/sgml/ref/rollback.sgml doc/src/sgml/ref/select.sgml doc/src/sgml/ref/select_into.sgml doc/src/sgml/ref/set.sgml doc/src/sgml/ref/set_constraints.sgml doc/src/sgml/ref/set_session_auth.sgml doc/src/sgml/ref/set_transaction.sgml doc/src/sgml/ref/show.sgml doc/src/sgml/ref/truncate.sgml doc/src/sgml/ref/unlisten.sgml doc/src/sgml/ref/update.sgml doc/src/sgml/ref/vacuum.sgml doc/src/sgml/ref/vacuumdb.sgml doc/src/sgml/refentry.sgml doc/src/sgml/reference.ced doc/src/sgml/reference.sgml doc/src/sgml/regress.sgml doc/src/sgml/release.sgml doc/src/sgml/rules.sgml doc/src/sgml/runtime.sgml doc/src/sgml/sources.sgml doc/src/sgml/spi.sgml doc/src/sgml/sql.sgml doc/src/sgml/standalone-install.sgml doc/src/sgml/start.sgml doc/src/sgml/stylesheet.css doc/src/sgml/stylesheet.dsl doc/src/sgml/syntax.sgml doc/src/sgml/trigger.sgml doc/src/sgml/tutorial.sgml doc/src/sgml/typeconv.sgml doc/src/sgml/user-manag.sgml doc/src/sgml/user.sgml doc/src/sgml/version.sgml doc/src/sgml/wal.sgml doc/src/sgml/xaggr.sgml doc/src/sgml/xfunc.sgml doc/src/sgml/xindex.sgml doc/src/sgml/xoper.sgml doc/src/sgml/xplang.sgml doc/src/sgml/xtypes.sgml doc/src/sgml/y2k.sgml register.txt src/DEVELOPERS src/Makefile src/Makefile.global.in src/Makefile.shlib src/backend/Makefile src/backend/access/Makefile src/backend/access/common/Makefile src/backend/access/common/heaptuple.c src/backend/access/common/indextuple.c src/backend/access/common/indexvalid.c src/backend/access/common/printtup.c src/backend/access/common/scankey.c src/backend/access/common/tupdesc.c src/backend/access/gist/Makefile src/backend/access/gist/gist.c src/backend/access/gist/gistget.c src/backend/access/gist/gistscan.c src/backend/access/gist/giststrat.c src/backend/access/hash/Makefile src/backend/access/hash/hash.c src/backend/access/hash/hashfunc.c src/backend/access/hash/hashinsert.c src/backend/access/hash/hashovfl.c src/backend/access/hash/hashpage.c src/backend/access/hash/hashscan.c src/backend/access/hash/hashsearch.c src/backend/access/hash/hashstrat.c src/backend/access/hash/hashutil.c src/backend/access/heap/Makefile src/backend/access/heap/heapam.c src/backend/access/heap/hio.c src/backend/access/heap/tuptoaster.c src/backend/access/index/Makefile src/backend/access/index/genam.c src/backend/access/index/indexam.c src/backend/access/index/istrat.c src/backend/access/nbtree/Makefile src/backend/access/nbtree/README src/backend/access/nbtree/nbtcompare.c src/backend/access/nbtree/nbtinsert.c src/backend/access/nbtree/nbtpage.c src/backend/access/nbtree/nbtree.c src/backend/access/nbtree/nbtsearch.c src/backend/access/nbtree/nbtsort.c src/backend/access/nbtree/nbtstrat.c src/backend/access/nbtree/nbtutils.c src/backend/access/rtree/Makefile src/backend/access/rtree/rtget.c src/backend/access/rtree/rtproc.c src/backend/access/rtree/rtree.c src/backend/access/rtree/rtscan.c src/backend/access/rtree/rtstrat.c src/backend/access/transam/Makefile src/backend/access/transam/clog.c src/backend/access/transam/rmgr.c src/backend/access/transam/transam.c src/backend/access/transam/varsup.c src/backend/access/transam/xact.c src/backend/access/transam/xid.c src/backend/access/transam/xlog.c src/backend/access/transam/xlogutils.c src/backend/bootstrap/.cvsignore src/backend/bootstrap/Makefile src/backend/bootstrap/bootparse.y src/backend/bootstrap/bootscanner.l src/backend/bootstrap/bootstrap.c src/backend/catalog/Makefile src/backend/catalog/README src/backend/catalog/aclchk.c src/backend/catalog/catalog.c src/backend/catalog/genbki.sh src/backend/catalog/heap.c src/backend/catalog/index.c src/backend/catalog/indexing.c src/backend/catalog/namespace.c src/backend/catalog/pg_aggregate.c src/backend/catalog/pg_largeobject.c src/backend/catalog/pg_namespace.c src/backend/catalog/pg_operator.c src/backend/catalog/pg_proc.c src/backend/catalog/pg_type.c src/backend/commands/Makefile src/backend/commands/_deadcode/recipe.c src/backend/commands/_deadcode/recipe.h src/backend/commands/_deadcode/version.c src/backend/commands/aggregatecmds.c src/backend/commands/analyze.c src/backend/commands/async.c src/backend/commands/cluster.c src/backend/commands/comment.c src/backend/commands/copy.c src/backend/commands/dbcommands.c src/backend/commands/define.c src/backend/commands/explain.c src/backend/commands/functioncmds.c src/backend/commands/indexcmds.c src/backend/commands/lockcmds.c src/backend/commands/operatorcmds.c src/backend/commands/portalcmds.c src/backend/commands/proclang.c src/backend/commands/schemacmds.c src/backend/commands/sequence.c src/backend/commands/tablecmds.c src/backend/commands/trigger.c src/backend/commands/typecmds.c src/backend/commands/user.c src/backend/commands/vacuum.c src/backend/commands/vacuumlazy.c src/backend/commands/variable.c src/backend/commands/view.c src/backend/executor/Makefile src/backend/executor/README src/backend/executor/_deadcode/nodeTee.c src/backend/executor/execAmi.c src/backend/executor/execJunk.c src/backend/executor/execMain.c src/backend/executor/execProcnode.c src/backend/executor/execQual.c src/backend/executor/execScan.c src/backend/executor/execTuples.c src/backend/executor/execUtils.c src/backend/executor/functions.c src/backend/executor/instrument.c src/backend/executor/nodeAgg.c src/backend/executor/nodeAppend.c src/backend/executor/nodeFunctionscan.c src/backend/executor/nodeGroup.c src/backend/executor/nodeHash.c src/backend/executor/nodeHashjoin.c src/backend/executor/nodeIndexscan.c src/backend/executor/nodeLimit.c src/backend/executor/nodeMaterial.c src/backend/executor/nodeMergejoin.c src/backend/executor/nodeNestloop.c src/backend/executor/nodeResult.c src/backend/executor/nodeSeqscan.c src/backend/executor/nodeSetOp.c src/backend/executor/nodeSort.c src/backend/executor/nodeSubplan.c src/backend/executor/nodeSubqueryscan.c src/backend/executor/nodeTidscan.c src/backend/executor/nodeUnique.c src/backend/executor/spi.c src/backend/lib/Makefile src/backend/lib/bit.c src/backend/lib/dllist.c src/backend/lib/lispsort.c src/backend/lib/stringinfo.c src/backend/libpq/Makefile src/backend/libpq/README.SSL src/backend/libpq/auth.c src/backend/libpq/be-fsstubs.c src/backend/libpq/be-secure.c src/backend/libpq/crypt.c src/backend/libpq/hba.c src/backend/libpq/md5.c src/backend/libpq/pg_hba.conf.sample src/backend/libpq/pg_ident.conf.sample src/backend/libpq/pqcomm.c src/backend/libpq/pqformat.c src/backend/libpq/pqsignal.c src/backend/main/Makefile src/backend/main/main.c src/backend/nodes/Makefile src/backend/nodes/README src/backend/nodes/copyfuncs.c src/backend/nodes/equalfuncs.c src/backend/nodes/list.c src/backend/nodes/makefuncs.c src/backend/nodes/nodeFuncs.c src/backend/nodes/nodes.c src/backend/nodes/outfuncs.c src/backend/nodes/print.c src/backend/nodes/read.c src/backend/nodes/readfuncs.c src/backend/optimizer/Makefile src/backend/optimizer/README src/backend/optimizer/geqo/Makefile src/backend/optimizer/geqo/geqo_copy.c src/backend/optimizer/geqo/geqo_cx.c src/backend/optimizer/geqo/geqo_erx.c src/backend/optimizer/geqo/geqo_eval.c src/backend/optimizer/geqo/geqo_main.c src/backend/optimizer/geqo/geqo_misc.c src/backend/optimizer/geqo/geqo_mutation.c src/backend/optimizer/geqo/geqo_ox1.c src/backend/optimizer/geqo/geqo_ox2.c src/backend/optimizer/geqo/geqo_pmx.c src/backend/optimizer/geqo/geqo_pool.c src/backend/optimizer/geqo/geqo_px.c src/backend/optimizer/geqo/geqo_recombination.c src/backend/optimizer/geqo/geqo_selection.c src/backend/optimizer/path/Makefile src/backend/optimizer/path/_deadcode/predmig.c src/backend/optimizer/path/_deadcode/xfunc.c src/backend/optimizer/path/allpaths.c src/backend/optimizer/path/clausesel.c src/backend/optimizer/path/costsize.c src/backend/optimizer/path/indxpath.c src/backend/optimizer/path/joinpath.c src/backend/optimizer/path/joinrels.c src/backend/optimizer/path/orindxpath.c src/backend/optimizer/path/pathkeys.c src/backend/optimizer/path/tidpath.c src/backend/optimizer/plan/Makefile src/backend/optimizer/plan/README src/backend/optimizer/plan/createplan.c src/backend/optimizer/plan/initsplan.c src/backend/optimizer/plan/planmain.c src/backend/optimizer/plan/planner.c src/backend/optimizer/plan/setrefs.c src/backend/optimizer/plan/subselect.c src/backend/optimizer/prep/Makefile src/backend/optimizer/prep/_deadcode/prepkeyset.c src/backend/optimizer/prep/prepqual.c src/backend/optimizer/prep/preptlist.c src/backend/optimizer/prep/prepunion.c src/backend/optimizer/util/Makefile src/backend/optimizer/util/clauses.c src/backend/optimizer/util/joininfo.c src/backend/optimizer/util/pathnode.c src/backend/optimizer/util/plancat.c src/backend/optimizer/util/relnode.c src/backend/optimizer/util/restrictinfo.c src/backend/optimizer/util/tlist.c src/backend/optimizer/util/var.c src/backend/parser/.cvsignore src/backend/parser/Makefile src/backend/parser/README src/backend/parser/analyze.c src/backend/parser/gram.y src/backend/parser/keywords.c src/backend/parser/parse_agg.c src/backend/parser/parse_clause.c src/backend/parser/parse_coerce.c src/backend/parser/parse_expr.c src/backend/parser/parse_func.c src/backend/parser/parse_node.c src/backend/parser/parse_oper.c src/backend/parser/parse_relation.c src/backend/parser/parse_target.c src/backend/parser/parse_type.c src/backend/parser/parser.c src/backend/parser/scan.l src/backend/parser/scansup.c src/backend/po/Makefile src/backend/po/cs.po src/backend/po/de.po src/backend/po/hu.po src/backend/po/nls.mk src/backend/po/ru.po src/backend/po/zh_CN.po src/backend/po/zh_TW.po src/backend/port/Makefile src/backend/port/aix/mkldexport.sh src/backend/port/beos/Makefile src/backend/port/beos/sem.c src/backend/port/beos/shm.c src/backend/port/beos/support.c src/backend/port/darwin/Makefile src/backend/port/darwin/README src/backend/port/darwin/system.c src/backend/port/dynloader/README.dlfcn.aix src/backend/port/dynloader/aix.c src/backend/port/dynloader/aix.h src/backend/port/dynloader/beos.c src/backend/port/dynloader/beos.h src/backend/port/dynloader/bsdi.c src/backend/port/dynloader/bsdi.h src/backend/port/dynloader/darwin.c src/backend/port/dynloader/darwin.h src/backend/port/dynloader/dgux.c src/backend/port/dynloader/dgux.h src/backend/port/dynloader/freebsd.c src/backend/port/dynloader/freebsd.h src/backend/port/dynloader/hpux.c src/backend/port/dynloader/hpux.h src/backend/port/dynloader/irix5.c src/backend/port/dynloader/irix5.h src/backend/port/dynloader/linux.c src/backend/port/dynloader/linux.h src/backend/port/dynloader/netbsd.c src/backend/port/dynloader/netbsd.h src/backend/port/dynloader/nextstep.c src/backend/port/dynloader/nextstep.h src/backend/port/dynloader/openbsd.c src/backend/port/dynloader/openbsd.h src/backend/port/dynloader/osf.c src/backend/port/dynloader/osf.h src/backend/port/dynloader/qnx4.c src/backend/port/dynloader/qnx4.h src/backend/port/dynloader/sco.c src/backend/port/dynloader/sco.h src/backend/port/dynloader/solaris.c src/backend/port/dynloader/solaris.h src/backend/port/dynloader/sunos4.c src/backend/port/dynloader/sunos4.h src/backend/port/dynloader/svr4.c src/backend/port/dynloader/svr4.h src/backend/port/dynloader/ultrix4.c src/backend/port/dynloader/ultrix4.h src/backend/port/dynloader/univel.c src/backend/port/dynloader/univel.h src/backend/port/dynloader/unixware.c src/backend/port/dynloader/unixware.h src/backend/port/dynloader/win.c src/backend/port/dynloader/win.h src/backend/port/gethostname.c src/backend/port/getrusage.c src/backend/port/hpux/tas.c.template src/backend/port/inet_aton.c src/backend/port/inet_aton.h src/backend/port/ipc_test.c src/backend/port/isinf.c src/backend/port/memcmp.c src/backend/port/nextstep/Makefile src/backend/port/nextstep/port.c src/backend/port/posix_sema.c src/backend/port/qnx4/Makefile src/backend/port/qnx4/ipc.h src/backend/port/qnx4/isnan.c src/backend/port/qnx4/rint.c src/backend/port/qnx4/sem.c src/backend/port/qnx4/sem.h src/backend/port/qnx4/shm.c src/backend/port/qnx4/shm.h src/backend/port/qnx4/tstrint.c src/backend/port/qnx4/tstsem.c src/backend/port/qnx4/tstshm.c src/backend/port/random.c src/backend/port/snprintf.c src/backend/port/srandom.c src/backend/port/strcasecmp.c src/backend/port/strerror.c src/backend/port/strtol.c src/backend/port/strtoul.c src/backend/port/sunos4/Makefile src/backend/port/sunos4/float.h src/backend/port/sysv_sema.c src/backend/port/sysv_shmem.c src/backend/port/tas/dummy.s src/backend/port/tas/hpux.s src/backend/port/tas/solaris_i386.s src/backend/port/tas/solaris_sparc.s src/backend/postmaster/Makefile src/backend/postmaster/pgstat.c src/backend/postmaster/postmaster.c src/backend/regex/COPYRIGHT src/backend/regex/Makefile src/backend/regex/WHATSNEW src/backend/regex/engine.c src/backend/regex/re_format.7 src/backend/regex/regcomp.c src/backend/regex/regerror.c src/backend/regex/regex.3 src/backend/regex/regexec.c src/backend/regex/regfree.c src/backend/regex/retest.c src/backend/rewrite/Makefile src/backend/rewrite/rewriteDefine.c src/backend/rewrite/rewriteHandler.c src/backend/rewrite/rewriteManip.c src/backend/rewrite/rewriteRemove.c src/backend/rewrite/rewriteSupport.c src/backend/storage/Makefile src/backend/storage/buffer/Makefile src/backend/storage/buffer/README src/backend/storage/buffer/buf_init.c src/backend/storage/buffer/buf_table.c src/backend/storage/buffer/bufmgr.c src/backend/storage/buffer/freelist.c src/backend/storage/buffer/localbuf.c src/backend/storage/file/Makefile src/backend/storage/file/buffile.c src/backend/storage/file/fd.c src/backend/storage/freespace/Makefile src/backend/storage/freespace/freespace.c src/backend/storage/ipc/Makefile src/backend/storage/ipc/README src/backend/storage/ipc/ipc.c src/backend/storage/ipc/ipci.c src/backend/storage/ipc/pmsignal.c src/backend/storage/ipc/shmem.c src/backend/storage/ipc/shmqueue.c src/backend/storage/ipc/sinval.c src/backend/storage/ipc/sinvaladt.c src/backend/storage/large_object/Makefile src/backend/storage/large_object/inv_api.c src/backend/storage/lmgr/Makefile src/backend/storage/lmgr/README src/backend/storage/lmgr/deadlock.c src/backend/storage/lmgr/lmgr.c src/backend/storage/lmgr/lock.c src/backend/storage/lmgr/lwlock.c src/backend/storage/lmgr/proc.c src/backend/storage/lmgr/s_lock.c src/backend/storage/lmgr/spin.c src/backend/storage/page/Makefile src/backend/storage/page/bufpage.c src/backend/storage/page/itemptr.c src/backend/storage/smgr/Makefile src/backend/storage/smgr/README src/backend/storage/smgr/md.c src/backend/storage/smgr/mm.c src/backend/storage/smgr/smgr.c src/backend/storage/smgr/smgrtype.c src/backend/tcop/Makefile src/backend/tcop/dest.c src/backend/tcop/fastpath.c src/backend/tcop/postgres.c src/backend/tcop/pquery.c src/backend/tcop/utility.c src/backend/tioga/Arr_TgRecipe.h src/backend/tioga/Makefile src/backend/tioga/Varray.c src/backend/tioga/Varray.h src/backend/tioga/tgRecipe.c src/backend/tioga/tgRecipe.h src/backend/utils/.cvsignore src/backend/utils/Gen_fmgrtab.sh src/backend/utils/Makefile src/backend/utils/adt/Makefile src/backend/utils/adt/acl.c src/backend/utils/adt/arrayfuncs.c src/backend/utils/adt/arrayutils.c src/backend/utils/adt/ascii.c src/backend/utils/adt/bool.c src/backend/utils/adt/cash.c src/backend/utils/adt/char.c src/backend/utils/adt/date.c src/backend/utils/adt/datetime.c src/backend/utils/adt/datum.c src/backend/utils/adt/encode.c src/backend/utils/adt/float.c src/backend/utils/adt/format_type.c src/backend/utils/adt/formatting.c src/backend/utils/adt/geo_ops.c src/backend/utils/adt/geo_selfuncs.c src/backend/utils/adt/inet_net_ntop.c src/backend/utils/adt/inet_net_pton.c src/backend/utils/adt/int.c src/backend/utils/adt/int8.c src/backend/utils/adt/like.c src/backend/utils/adt/like_match.c src/backend/utils/adt/mac.c src/backend/utils/adt/misc.c src/backend/utils/adt/nabstime.c src/backend/utils/adt/name.c src/backend/utils/adt/network.c src/backend/utils/adt/not_in.c src/backend/utils/adt/numeric.c src/backend/utils/adt/numutils.c src/backend/utils/adt/oid.c src/backend/utils/adt/oracle_compat.c src/backend/utils/adt/pg_locale.c src/backend/utils/adt/pg_lzcompress.c src/backend/utils/adt/pgstatfuncs.c src/backend/utils/adt/quote.c src/backend/utils/adt/regexp.c src/backend/utils/adt/regproc.c src/backend/utils/adt/ri_triggers.c src/backend/utils/adt/ruleutils.c src/backend/utils/adt/selfuncs.c src/backend/utils/adt/sets.c src/backend/utils/adt/tid.c src/backend/utils/adt/timestamp.c src/backend/utils/adt/varbit.c src/backend/utils/adt/varchar.c src/backend/utils/adt/varlena.c src/backend/utils/adt/version.c src/backend/utils/cache/Makefile src/backend/utils/cache/catcache.c src/backend/utils/cache/fcache.c src/backend/utils/cache/inval.c src/backend/utils/cache/lsyscache.c src/backend/utils/cache/relcache.c src/backend/utils/cache/syscache.c src/backend/utils/error/Makefile src/backend/utils/error/assert.c src/backend/utils/error/elog.c src/backend/utils/error/exc.c src/backend/utils/error/excabort.c src/backend/utils/error/excid.c src/backend/utils/error/format.c src/backend/utils/fmgr/Makefile src/backend/utils/fmgr/README src/backend/utils/fmgr/dfmgr.c src/backend/utils/fmgr/fmgr.c src/backend/utils/hash/Makefile src/backend/utils/hash/dynahash.c src/backend/utils/hash/hashfn.c src/backend/utils/hash/pg_crc.c src/backend/utils/init/Makefile src/backend/utils/init/findbe.c src/backend/utils/init/globals.c src/backend/utils/init/miscinit.c src/backend/utils/init/postinit.c src/backend/utils/mb/Makefile src/backend/utils/mb/README src/backend/utils/mb/Unicode/ISO10646-GB18030.TXT src/backend/utils/mb/Unicode/Makefile src/backend/utils/mb/Unicode/UCS_to_8859.pl src/backend/utils/mb/Unicode/UCS_to_BIG5.pl src/backend/utils/mb/Unicode/UCS_to_EUC_CN.pl src/backend/utils/mb/Unicode/UCS_to_EUC_JP.pl src/backend/utils/mb/Unicode/UCS_to_EUC_KR.pl src/backend/utils/mb/Unicode/UCS_to_EUC_TW.pl src/backend/utils/mb/Unicode/UCS_to_GB18030.pl src/backend/utils/mb/Unicode/UCS_to_GBK.pl src/backend/utils/mb/Unicode/UCS_to_JOHAB.pl src/backend/utils/mb/Unicode/UCS_to_SJIS.pl src/backend/utils/mb/Unicode/UCS_to_UHC.pl src/backend/utils/mb/Unicode/UCS_to_WIN874.pl src/backend/utils/mb/Unicode/UCS_to_WINX.pl src/backend/utils/mb/Unicode/UCS_to_cyrillic.pl src/backend/utils/mb/Unicode/alt_to_utf8.map src/backend/utils/mb/Unicode/big5_to_utf8.map src/backend/utils/mb/Unicode/euc_cn_to_utf8.map src/backend/utils/mb/Unicode/euc_jp_to_utf8.map src/backend/utils/mb/Unicode/euc_kr_to_utf8.map src/backend/utils/mb/Unicode/euc_tw_to_utf8.map src/backend/utils/mb/Unicode/gb18030_to_utf8.map src/backend/utils/mb/Unicode/gbk_to_utf8.map src/backend/utils/mb/Unicode/iso8859_10_to_utf8.map src/backend/utils/mb/Unicode/iso8859_13_to_utf8.map src/backend/utils/mb/Unicode/iso8859_14_to_utf8.map src/backend/utils/mb/Unicode/iso8859_15_to_utf8.map src/backend/utils/mb/Unicode/iso8859_16_to_utf8.map src/backend/utils/mb/Unicode/iso8859_2_to_utf8.map src/backend/utils/mb/Unicode/iso8859_3_to_utf8.map src/backend/utils/mb/Unicode/iso8859_4_to_utf8.map src/backend/utils/mb/Unicode/iso8859_5_to_utf8.map src/backend/utils/mb/Unicode/iso8859_6_to_utf8.map src/backend/utils/mb/Unicode/iso8859_7_to_utf8.map src/backend/utils/mb/Unicode/iso8859_8_to_utf8.map src/backend/utils/mb/Unicode/iso8859_9_to_utf8.map src/backend/utils/mb/Unicode/johab_to_utf8.map src/backend/utils/mb/Unicode/koi8r_to_utf8.map src/backend/utils/mb/Unicode/sjis_to_utf8.map src/backend/utils/mb/Unicode/tcvn_to_utf8.map src/backend/utils/mb/Unicode/ucs2utf.pl src/backend/utils/mb/Unicode/uhc_to_utf8.map src/backend/utils/mb/Unicode/utf8_to_alt.map src/backend/utils/mb/Unicode/utf8_to_big5.map src/backend/utils/mb/Unicode/utf8_to_euc_cn.map src/backend/utils/mb/Unicode/utf8_to_euc_jp.map src/backend/utils/mb/Unicode/utf8_to_euc_kr.map src/backend/utils/mb/Unicode/utf8_to_euc_tw.map src/backend/utils/mb/Unicode/utf8_to_gb18030.map src/backend/utils/mb/Unicode/utf8_to_gbk.map src/backend/utils/mb/Unicode/utf8_to_iso8859_10.map src/backend/utils/mb/Unicode/utf8_to_iso8859_13.map src/backend/utils/mb/Unicode/utf8_to_iso8859_14.map src/backend/utils/mb/Unicode/utf8_to_iso8859_15.map src/backend/utils/mb/Unicode/utf8_to_iso8859_16.map src/backend/utils/mb/Unicode/utf8_to_iso8859_2.map src/backend/utils/mb/Unicode/utf8_to_iso8859_3.map src/backend/utils/mb/Unicode/utf8_to_iso8859_4.map src/backend/utils/mb/Unicode/utf8_to_iso8859_5.map src/backend/utils/mb/Unicode/utf8_to_iso8859_6.map src/backend/utils/mb/Unicode/utf8_to_iso8859_7.map src/backend/utils/mb/Unicode/utf8_to_iso8859_8.map src/backend/utils/mb/Unicode/utf8_to_iso8859_9.map src/backend/utils/mb/Unicode/utf8_to_johab.map src/backend/utils/mb/Unicode/utf8_to_koi8r.map src/backend/utils/mb/Unicode/utf8_to_sjis.map src/backend/utils/mb/Unicode/utf8_to_tcvn.map src/backend/utils/mb/Unicode/utf8_to_uhc.map src/backend/utils/mb/Unicode/utf8_to_win1250.map src/backend/utils/mb/Unicode/utf8_to_win1251.map src/backend/utils/mb/Unicode/utf8_to_win1256.map src/backend/utils/mb/Unicode/utf8_to_win874.map src/backend/utils/mb/Unicode/win1250_to_utf8.map src/backend/utils/mb/Unicode/win1251_to_utf8.map src/backend/utils/mb/Unicode/win1256_to_utf8.map src/backend/utils/mb/Unicode/win874_to_utf8.map src/backend/utils/mb/alt.c src/backend/utils/mb/big5.c src/backend/utils/mb/conv.c src/backend/utils/mb/encnames.c src/backend/utils/mb/iso.c src/backend/utils/mb/mbutils.c src/backend/utils/mb/sjis.map src/backend/utils/mb/wchar.c src/backend/utils/mb/win.c src/backend/utils/mb/win1251.c src/backend/utils/mb/wstrcmp.c src/backend/utils/mb/wstrncmp.c src/backend/utils/misc/.cvsignore src/backend/utils/misc/Makefile src/backend/utils/misc/README src/backend/utils/misc/database.c src/backend/utils/misc/guc-file.l src/backend/utils/misc/guc.c src/backend/utils/misc/postgresql.conf.sample src/backend/utils/misc/ps_status.c src/backend/utils/misc/superuser.c src/backend/utils/mmgr/Makefile src/backend/utils/mmgr/README src/backend/utils/mmgr/aset.c src/backend/utils/mmgr/mcxt.c src/backend/utils/mmgr/portalmem.c src/backend/utils/sort/Makefile src/backend/utils/sort/logtape.c src/backend/utils/sort/tuplesort.c src/backend/utils/sort/tuplestore.c src/backend/utils/time/Makefile src/backend/utils/time/tqual.c src/bin/Makefile src/bin/initdb/Makefile src/bin/initdb/initdb.sh src/bin/initlocation/Makefile src/bin/initlocation/initlocation.sh src/bin/ipcclean/Makefile src/bin/ipcclean/ipcclean.sh src/bin/pg_config/Makefile src/bin/pg_config/pg_config.sh src/bin/pg_ctl/Makefile src/bin/pg_ctl/pg_ctl.sh src/bin/pg_dump/Makefile src/bin/pg_dump/README src/bin/pg_dump/common.c src/bin/pg_dump/cs.po src/bin/pg_dump/de.po src/bin/pg_dump/nls.mk src/bin/pg_dump/pg_backup.h src/bin/pg_dump/pg_backup_archiver.c src/bin/pg_dump/pg_backup_archiver.h src/bin/pg_dump/pg_backup_custom.c src/bin/pg_dump/pg_backup_db.c src/bin/pg_dump/pg_backup_db.h src/bin/pg_dump/pg_backup_files.c src/bin/pg_dump/pg_backup_null.c src/bin/pg_dump/pg_backup_tar.c src/bin/pg_dump/pg_backup_tar.h src/bin/pg_dump/pg_dump.c src/bin/pg_dump/pg_dump.h src/bin/pg_dump/pg_dumpall.sh src/bin/pg_dump/pg_restore.c src/bin/pg_dump/ru.po src/bin/pg_dump/sv.po src/bin/pg_dump/zh_CN.po src/bin/pg_dump/zh_TW.po src/bin/pg_encoding/Makefile src/bin/pg_encoding/pg_encoding.c src/bin/pg_id/Makefile src/bin/pg_id/pg_id.c src/bin/pgaccess/Makefile src/bin/pgaccess/README src/bin/pgaccess/copyright.html src/bin/pgaccess/demo/formdemo.sql src/bin/pgaccess/doc/html/a_right.gif src/bin/pgaccess/doc/html/addindex.gif src/bin/pgaccess/doc/html/api.html src/bin/pgaccess/doc/html/ball.gif src/bin/pgaccess/doc/html/contents.html src/bin/pgaccess/doc/html/copyright.html src/bin/pgaccess/doc/html/documentation.html src/bin/pgaccess/doc/html/download.html src/bin/pgaccess/doc/html/faq.html src/bin/pgaccess/doc/html/features.html src/bin/pgaccess/doc/html/formdemo.sql src/bin/pgaccess/doc/html/forms.gif src/bin/pgaccess/doc/html/forms.html src/bin/pgaccess/doc/html/function.gif src/bin/pgaccess/doc/html/help.gif src/bin/pgaccess/doc/html/index.html src/bin/pgaccess/doc/html/irix.html src/bin/pgaccess/doc/html/linux1.gif src/bin/pgaccess/doc/html/maillist.html src/bin/pgaccess/doc/html/main.html src/bin/pgaccess/doc/html/mainwindow.gif src/bin/pgaccess/doc/html/newtable.gif src/bin/pgaccess/doc/html/newuser.gif src/bin/pgaccess/doc/html/old_index.html src/bin/pgaccess/doc/html/permissions.gif src/bin/pgaccess/doc/html/pg93patch.html src/bin/pgaccess/doc/html/pga-rad.html src/bin/pgaccess/doc/html/qbtclet.html src/bin/pgaccess/doc/html/qbtclet.tcl src/bin/pgaccess/doc/html/screenshots.html src/bin/pgaccess/doc/html/specialchars.html src/bin/pgaccess/doc/html/todo.html src/bin/pgaccess/doc/html/tutorial/addref.jpg src/bin/pgaccess/doc/html/tutorial/altern_q.jpg src/bin/pgaccess/doc/html/tutorial/altern_v.jpg src/bin/pgaccess/doc/html/tutorial/copyright.html src/bin/pgaccess/doc/html/tutorial/index.html src/bin/pgaccess/doc/html/tutorial/intro.html src/bin/pgaccess/doc/html/tutorial/irix.html src/bin/pgaccess/doc/html/tutorial/newref.txt src/bin/pgaccess/doc/html/tutorial/newtable.jpg src/bin/pgaccess/doc/html/tutorial/newtable.tga src/bin/pgaccess/doc/html/tutorial/problems.html src/bin/pgaccess/doc/html/tutorial/screen1.jpg src/bin/pgaccess/doc/html/tutorial/sel_tbl.jpg src/bin/pgaccess/doc/html/tutorial/start.html src/bin/pgaccess/doc/html/tutorial/tut.html src/bin/pgaccess/doc/html/tutorial/tut_edit.html src/bin/pgaccess/doc/html/tutorial/tut_new.html src/bin/pgaccess/doc/html/tutorial/tut_sel1.html src/bin/pgaccess/doc/html/tutorial/tut_user.html src/bin/pgaccess/doc/html/vdesigner.gif src/bin/pgaccess/doc/html/whatsnew.html src/bin/pgaccess/doc/html/win32.html src/bin/pgaccess/images/icon_button.gif src/bin/pgaccess/images/icon_checkbutton.gif src/bin/pgaccess/images/icon_entry.gif src/bin/pgaccess/images/icon_frame.gif src/bin/pgaccess/images/icon_label.gif src/bin/pgaccess/images/icon_listbox.gif src/bin/pgaccess/images/icon_query.gif src/bin/pgaccess/images/icon_radiobutton.gif src/bin/pgaccess/images/icon_text.gif src/bin/pgaccess/lib/database.tcl src/bin/pgaccess/lib/forms.tcl src/bin/pgaccess/lib/functions.tcl src/bin/pgaccess/lib/help/abort.hlp src/bin/pgaccess/lib/help/add_records.hlp src/bin/pgaccess/lib/help/alter_table.hlp src/bin/pgaccess/lib/help/alter_user.hlp src/bin/pgaccess/lib/help/author.hlp src/bin/pgaccess/lib/help/begin.hlp src/bin/pgaccess/lib/help/close.hlp src/bin/pgaccess/lib/help/cluster.hlp src/bin/pgaccess/lib/help/commit.hlp src/bin/pgaccess/lib/help/copy.hlp src/bin/pgaccess/lib/help/copyrights.hlp src/bin/pgaccess/lib/help/create_aggregate.hlp src/bin/pgaccess/lib/help/create_database.hlp src/bin/pgaccess/lib/help/create_function.hlp src/bin/pgaccess/lib/help/create_index.hlp src/bin/pgaccess/lib/help/create_language.hlp src/bin/pgaccess/lib/help/create_operator.hlp src/bin/pgaccess/lib/help/create_rule.hlp src/bin/pgaccess/lib/help/create_sequence.hlp src/bin/pgaccess/lib/help/create_table.hlp src/bin/pgaccess/lib/help/create_table_as.hlp src/bin/pgaccess/lib/help/create_trigger.hlp src/bin/pgaccess/lib/help/create_type.hlp src/bin/pgaccess/lib/help/create_user.hlp src/bin/pgaccess/lib/help/create_view.hlp src/bin/pgaccess/lib/help/data_types.hlp src/bin/pgaccess/lib/help/datefunc.hlp src/bin/pgaccess/lib/help/declare.hlp src/bin/pgaccess/lib/help/delete.hlp src/bin/pgaccess/lib/help/drop_aggregate.hlp src/bin/pgaccess/lib/help/drop_database.hlp src/bin/pgaccess/lib/help/drop_function.hlp src/bin/pgaccess/lib/help/drop_index.hlp src/bin/pgaccess/lib/help/drop_language.hlp src/bin/pgaccess/lib/help/drop_operator.hlp src/bin/pgaccess/lib/help/drop_rule.hlp src/bin/pgaccess/lib/help/drop_sequence.hlp src/bin/pgaccess/lib/help/drop_table.hlp src/bin/pgaccess/lib/help/drop_trigger.hlp src/bin/pgaccess/lib/help/drop_type.hlp src/bin/pgaccess/lib/help/drop_user.hlp src/bin/pgaccess/lib/help/drop_view.hlp src/bin/pgaccess/lib/help/explain.hlp src/bin/pgaccess/lib/help/fetch.hlp src/bin/pgaccess/lib/help/form_design.hlp src/bin/pgaccess/lib/help/forms.hlp src/bin/pgaccess/lib/help/functions.hlp src/bin/pgaccess/lib/help/geomfunc.hlp src/bin/pgaccess/lib/help/grant.hlp src/bin/pgaccess/lib/help/history.hlp src/bin/pgaccess/lib/help/index.hlp src/bin/pgaccess/lib/help/inheritance.hlp src/bin/pgaccess/lib/help/insert.hlp src/bin/pgaccess/lib/help/ipv4func.hlp src/bin/pgaccess/lib/help/isolation.hlp src/bin/pgaccess/lib/help/keywords.hlp src/bin/pgaccess/lib/help/listen.hlp src/bin/pgaccess/lib/help/load.hlp src/bin/pgaccess/lib/help/lock.hlp src/bin/pgaccess/lib/help/mathfunc.hlp src/bin/pgaccess/lib/help/move.hlp src/bin/pgaccess/lib/help/mvcc.hlp src/bin/pgaccess/lib/help/new_query.hlp src/bin/pgaccess/lib/help/new_table.hlp src/bin/pgaccess/lib/help/notify.hlp src/bin/pgaccess/lib/help/open_query.hlp src/bin/pgaccess/lib/help/open_table.hlp src/bin/pgaccess/lib/help/pgfunctions.hlp src/bin/pgaccess/lib/help/postgresql.hlp src/bin/pgaccess/lib/help/queries.hlp src/bin/pgaccess/lib/help/reports.hlp src/bin/pgaccess/lib/help/reset.hlp src/bin/pgaccess/lib/help/revoke.hlp src/bin/pgaccess/lib/help/rollback.hlp src/bin/pgaccess/lib/help/schema.hlp src/bin/pgaccess/lib/help/scripts.hlp src/bin/pgaccess/lib/help/select.hlp src/bin/pgaccess/lib/help/select_into.hlp src/bin/pgaccess/lib/help/sequences.hlp src/bin/pgaccess/lib/help/set.hlp src/bin/pgaccess/lib/help/show.hlp src/bin/pgaccess/lib/help/sql_guide.hlp src/bin/pgaccess/lib/help/sqlfunc.hlp src/bin/pgaccess/lib/help/stringfunc.hlp src/bin/pgaccess/lib/help/tables.hlp src/bin/pgaccess/lib/help/unlisten.hlp src/bin/pgaccess/lib/help/update.hlp src/bin/pgaccess/lib/help/users.hlp src/bin/pgaccess/lib/help/vacuum.hlp src/bin/pgaccess/lib/help/view_table_structure.hlp src/bin/pgaccess/lib/help/views.hlp src/bin/pgaccess/lib/help/visual_designer.hlp src/bin/pgaccess/lib/help/y2k.hlp src/bin/pgaccess/lib/help.tcl src/bin/pgaccess/lib/languages/chinese_big5 src/bin/pgaccess/lib/languages/chinese_gb src/bin/pgaccess/lib/languages/czech src/bin/pgaccess/lib/languages/deutsch src/bin/pgaccess/lib/languages/euskara src/bin/pgaccess/lib/languages/francais src/bin/pgaccess/lib/languages/italiano src/bin/pgaccess/lib/languages/japanese src/bin/pgaccess/lib/languages/magyar src/bin/pgaccess/lib/languages/nederlands src/bin/pgaccess/lib/languages/portugues src/bin/pgaccess/lib/languages/romana src/bin/pgaccess/lib/languages/russian.koi8r src/bin/pgaccess/lib/languages/russian_win src/bin/pgaccess/lib/languages/spanish src/bin/pgaccess/lib/mainlib.tcl src/bin/pgaccess/lib/preferences.tcl src/bin/pgaccess/lib/queries.tcl src/bin/pgaccess/lib/reports.tcl src/bin/pgaccess/lib/schema.tcl src/bin/pgaccess/lib/scripts.tcl src/bin/pgaccess/lib/sequences.tcl src/bin/pgaccess/lib/tables.tcl src/bin/pgaccess/lib/users.tcl src/bin/pgaccess/lib/views.tcl src/bin/pgaccess/lib/visualqb.tcl src/bin/pgaccess/main.tcl src/bin/pgaccess/pgaccess.sh src/bin/pgtclsh/Makefile src/bin/pgtclsh/README src/bin/pgtclsh/pgtclAppInit.c src/bin/pgtclsh/pgtclUtils.tcl src/bin/pgtclsh/pgtkAppInit.c src/bin/pgtclsh/updateStats.tcl src/bin/psql/.cvsignore src/bin/psql/Makefile src/bin/psql/command.c src/bin/psql/command.h src/bin/psql/common.c src/bin/psql/common.h src/bin/psql/copy.c src/bin/psql/copy.h src/bin/psql/create_help.pl src/bin/psql/cs.po src/bin/psql/de.po src/bin/psql/describe.c src/bin/psql/describe.h src/bin/psql/fr.po src/bin/psql/help.c src/bin/psql/help.h src/bin/psql/input.c src/bin/psql/input.h src/bin/psql/large_obj.c src/bin/psql/large_obj.h src/bin/psql/mainloop.c src/bin/psql/mainloop.h src/bin/psql/mbprint.c src/bin/psql/mbprint.h src/bin/psql/nls.mk src/bin/psql/print.c src/bin/psql/print.h src/bin/psql/prompt.c src/bin/psql/prompt.h src/bin/psql/ru.po src/bin/psql/settings.h src/bin/psql/startup.c src/bin/psql/stringutils.c src/bin/psql/stringutils.h src/bin/psql/sv.po src/bin/psql/tab-complete.c src/bin/psql/tab-complete.h src/bin/psql/variables.c src/bin/psql/variables.h src/bin/psql/win32.mak src/bin/psql/zh_CN.po src/bin/psql/zh_TW.po src/bin/scripts/Makefile src/bin/scripts/createdb src/bin/scripts/createlang.sh src/bin/scripts/createuser src/bin/scripts/dropdb src/bin/scripts/droplang src/bin/scripts/dropuser src/bin/scripts/vacuumdb src/corba/CosQuery.idl src/corba/CosQueryCollection.idl src/corba/pgsql.idl src/corba/pgsql_int.idl src/corba/server.cc src/data/charset.conf src/data/isocz-wincz.tab src/data/koi-alt.tab src/data/koi-iso.tab src/data/koi-koi.tab src/data/koi-mac.tab src/data/koi-win.tab src/include/Makefile src/include/access/attnum.h src/include/access/clog.h src/include/access/genam.h src/include/access/gist.h src/include/access/gistscan.h src/include/access/hash.h src/include/access/heapam.h src/include/access/hio.h src/include/access/htup.h src/include/access/ibit.h src/include/access/iqual.h src/include/access/istrat.h src/include/access/itup.h src/include/access/nbtree.h src/include/access/printtup.h src/include/access/relscan.h src/include/access/rmgr.h src/include/access/rtree.h src/include/access/rtscan.h src/include/access/sdir.h src/include/access/skey.h src/include/access/strat.h src/include/access/transam.h src/include/access/tupdesc.h src/include/access/tupmacs.h src/include/access/tuptoaster.h src/include/access/valid.h src/include/access/xact.h src/include/access/xlog.h src/include/access/xlogdefs.h src/include/access/xlogutils.h src/include/bootstrap/bootstrap.h src/include/c.h src/include/catalog/catalog.h src/include/catalog/catname.h src/include/catalog/catversion.h src/include/catalog/duplicate_oids src/include/catalog/heap.h src/include/catalog/index.h src/include/catalog/indexing.h src/include/catalog/namespace.h src/include/catalog/pg_aggregate.h src/include/catalog/pg_am.h src/include/catalog/pg_amop.h src/include/catalog/pg_amproc.h src/include/catalog/pg_attrdef.h src/include/catalog/pg_attribute.h src/include/catalog/pg_class.h src/include/catalog/pg_control.h src/include/catalog/pg_database.h src/include/catalog/pg_description.h src/include/catalog/pg_group.h src/include/catalog/pg_index.h src/include/catalog/pg_inherits.h src/include/catalog/pg_language.h src/include/catalog/pg_largeobject.h src/include/catalog/pg_listener.h src/include/catalog/pg_namespace.h src/include/catalog/pg_opclass.h src/include/catalog/pg_operator.h src/include/catalog/pg_proc.h src/include/catalog/pg_relcheck.h src/include/catalog/pg_rewrite.h src/include/catalog/pg_shadow.h src/include/catalog/pg_statistic.h src/include/catalog/pg_trigger.h src/include/catalog/pg_type.h src/include/catalog/pg_version.h src/include/catalog/unused_oids src/include/commands/async.h src/include/commands/cluster.h src/include/commands/comment.h src/include/commands/copy.h src/include/commands/dbcommands.h src/include/commands/defrem.h src/include/commands/explain.h src/include/commands/lockcmds.h src/include/commands/portalcmds.h src/include/commands/proclang.h src/include/commands/schemacmds.h src/include/commands/sequence.h src/include/commands/tablecmds.h src/include/commands/trigger.h src/include/commands/user.h src/include/commands/vacuum.h src/include/commands/variable.h src/include/commands/version.h src/include/commands/view.h src/include/executor/execdebug.h src/include/executor/execdefs.h src/include/executor/execdesc.h src/include/executor/executor.h src/include/executor/functions.h src/include/executor/hashjoin.h src/include/executor/instrument.h src/include/executor/nodeAgg.h src/include/executor/nodeAppend.h src/include/executor/nodeFunctionscan.h src/include/executor/nodeGroup.h src/include/executor/nodeHash.h src/include/executor/nodeHashjoin.h src/include/executor/nodeIndexscan.h src/include/executor/nodeLimit.h src/include/executor/nodeMaterial.h src/include/executor/nodeMergejoin.h src/include/executor/nodeNestloop.h src/include/executor/nodeResult.h src/include/executor/nodeSeqscan.h src/include/executor/nodeSetOp.h src/include/executor/nodeSort.h src/include/executor/nodeSubplan.h src/include/executor/nodeSubqueryscan.h src/include/executor/nodeTidscan.h src/include/executor/nodeUnique.h src/include/executor/spi.h src/include/executor/spi_priv.h src/include/executor/tuptable.h src/include/fmgr.h src/include/lib/dllist.h src/include/lib/lispsort.h src/include/lib/stringinfo.h src/include/libpq/auth.h src/include/libpq/be-fsstubs.h src/include/libpq/crypt.h src/include/libpq/hba.h src/include/libpq/libpq-be.h src/include/libpq/libpq-fs.h src/include/libpq/libpq.h src/include/libpq/password.h src/include/libpq/pqcomm.h src/include/libpq/pqformat.h src/include/libpq/pqsignal.h src/include/mb/pg_wchar.h src/include/miscadmin.h src/include/nodes/execnodes.h src/include/nodes/makefuncs.h src/include/nodes/memnodes.h src/include/nodes/nodeFuncs.h src/include/nodes/nodes.h src/include/nodes/params.h src/include/nodes/parsenodes.h src/include/nodes/pg_list.h src/include/nodes/plannodes.h src/include/nodes/primnodes.h src/include/nodes/print.h src/include/nodes/readfuncs.h src/include/nodes/relation.h src/include/optimizer/_deadcode/xfunc.h src/include/optimizer/clauses.h src/include/optimizer/cost.h src/include/optimizer/geqo.h src/include/optimizer/geqo_copy.h src/include/optimizer/geqo_gene.h src/include/optimizer/geqo_misc.h src/include/optimizer/geqo_mutation.h src/include/optimizer/geqo_pool.h src/include/optimizer/geqo_random.h src/include/optimizer/geqo_recombination.h src/include/optimizer/geqo_selection.h src/include/optimizer/joininfo.h src/include/optimizer/pathnode.h src/include/optimizer/paths.h src/include/optimizer/plancat.h src/include/optimizer/planmain.h src/include/optimizer/planner.h src/include/optimizer/prep.h src/include/optimizer/restrictinfo.h src/include/optimizer/subselect.h src/include/optimizer/tlist.h src/include/optimizer/var.h src/include/parser/analyze.h src/include/parser/gramparse.h src/include/parser/keywords.h src/include/parser/parse_agg.h src/include/parser/parse_clause.h src/include/parser/parse_coerce.h src/include/parser/parse_expr.h src/include/parser/parse_func.h src/include/parser/parse_node.h src/include/parser/parse_oper.h src/include/parser/parse_relation.h src/include/parser/parse_target.h src/include/parser/parse_type.h src/include/parser/parser.h src/include/parser/parsetree.h src/include/parser/scansup.h src/include/pg_config.h.in src/include/pg_config.h.win32 src/include/pgstat.h src/include/port/aix.h src/include/port/beos.h src/include/port/bsdi.h src/include/port/darwin.h src/include/port/dgux.h src/include/port/freebsd.h src/include/port/hpux.h src/include/port/irix5.h src/include/port/linux.h src/include/port/netbsd.h src/include/port/nextstep.h src/include/port/openbsd.h src/include/port/osf.h src/include/port/qnx4.h src/include/port/sco.h src/include/port/solaris.h src/include/port/sunos4.h src/include/port/svr4.h src/include/port/ultrix4.h src/include/port/univel.h src/include/port/unixware.h src/include/port/win.h src/include/port/win32.h src/include/postgres.h src/include/postgres_ext.h src/include/postgres_fe.h src/include/regex/cclass.h src/include/regex/cname.h src/include/regex/regex.h src/include/regex/regex2.h src/include/regex/utils.h src/include/rewrite/prs2lock.h src/include/rewrite/rewriteDefine.h src/include/rewrite/rewriteHandler.h src/include/rewrite/rewriteManip.h src/include/rewrite/rewriteRemove.h src/include/rewrite/rewriteSupport.h src/include/rusagestub.h src/include/storage/backendid.h src/include/storage/block.h src/include/storage/buf.h src/include/storage/buf_internals.h src/include/storage/buffile.h src/include/storage/bufmgr.h src/include/storage/bufpage.h src/include/storage/fd.h src/include/storage/freespace.h src/include/storage/ipc.h src/include/storage/item.h src/include/storage/itemid.h src/include/storage/itempos.h src/include/storage/itemptr.h src/include/storage/large_object.h src/include/storage/lmgr.h src/include/storage/lock.h src/include/storage/lwlock.h src/include/storage/off.h src/include/storage/page.h src/include/storage/pg_sema.h src/include/storage/pg_shmem.h src/include/storage/pmsignal.h src/include/storage/pos.h src/include/storage/proc.h src/include/storage/relfilenode.h src/include/storage/s_lock.h src/include/storage/shmem.h src/include/storage/sinval.h src/include/storage/sinvaladt.h src/include/storage/smgr.h src/include/storage/spin.h src/include/strdup.h src/include/tcop/dest.h src/include/tcop/fastpath.h src/include/tcop/pquery.h src/include/tcop/tcopdebug.h src/include/tcop/tcopprot.h src/include/tcop/utility.h src/include/utils/acl.h src/include/utils/array.h src/include/utils/ascii.h src/include/utils/bit.h src/include/utils/builtins.h src/include/utils/cash.h src/include/utils/catcache.h src/include/utils/date.h src/include/utils/datetime.h src/include/utils/datum.h src/include/utils/dynahash.h src/include/utils/dynamic_loader.h src/include/utils/elog.h src/include/utils/exc.h src/include/utils/excid.h src/include/utils/fcache.h src/include/utils/fmgrtab.h src/include/utils/formatting.h src/include/utils/geo_decls.h src/include/utils/guc.h src/include/utils/hsearch.h src/include/utils/inet.h src/include/utils/int8.h src/include/utils/inval.h src/include/utils/logtape.h src/include/utils/lsyscache.h src/include/utils/memutils.h src/include/utils/nabstime.h src/include/utils/numeric.h src/include/utils/palloc.h src/include/utils/pg_crc.h src/include/utils/pg_locale.h src/include/utils/pg_lzcompress.h src/include/utils/portal.h src/include/utils/ps_status.h src/include/utils/rel.h src/include/utils/relcache.h src/include/utils/selfuncs.h src/include/utils/sets.h src/include/utils/syscache.h src/include/utils/timestamp.h src/include/utils/tqual.h src/include/utils/tuplesort.h src/include/utils/tuplestore.h src/include/utils/varbit.h src/interfaces/Makefile src/interfaces/cli/example1.c src/interfaces/cli/example2.c src/interfaces/cli/sqlcli.h src/interfaces/jdbc/CHANGELOG src/interfaces/jdbc/Implementation src/interfaces/jdbc/Makefile src/interfaces/jdbc/README src/interfaces/jdbc/build.xml src/interfaces/jdbc/example/ImageViewer.java src/interfaces/jdbc/example/Unicode.java src/interfaces/jdbc/example/basic.java src/interfaces/jdbc/example/blobtest.java src/interfaces/jdbc/example/corba/StockClient.java src/interfaces/jdbc/example/corba/StockDB.java src/interfaces/jdbc/example/corba/StockDispenserImpl.java src/interfaces/jdbc/example/corba/StockItemImpl.java src/interfaces/jdbc/example/corba/StockServer.java src/interfaces/jdbc/example/corba/readme src/interfaces/jdbc/example/corba/stock.idl src/interfaces/jdbc/example/corba/stock.sql src/interfaces/jdbc/example/datestyle.java src/interfaces/jdbc/example/metadata.java src/interfaces/jdbc/example/psql.java src/interfaces/jdbc/example/threadsafe.java src/interfaces/jdbc/jdbc.jpx src/interfaces/jdbc/org/postgresql/Connection.java src/interfaces/jdbc/org/postgresql/Driver.java.in src/interfaces/jdbc/org/postgresql/Field.java src/interfaces/jdbc/org/postgresql/PG_Stream.java src/interfaces/jdbc/org/postgresql/PostgresqlDataSource.java src/interfaces/jdbc/org/postgresql/ResultSet.java src/interfaces/jdbc/org/postgresql/Statement.java src/interfaces/jdbc/org/postgresql/core/BytePoolDim1.java src/interfaces/jdbc/org/postgresql/core/BytePoolDim2.java src/interfaces/jdbc/org/postgresql/core/Encoding.java src/interfaces/jdbc/org/postgresql/core/MemoryPool.java src/interfaces/jdbc/org/postgresql/core/ObjectPool.java src/interfaces/jdbc/org/postgresql/core/QueryExecutor.java src/interfaces/jdbc/org/postgresql/core/SimpleObjectPool.java src/interfaces/jdbc/org/postgresql/core/StartupPacket.java src/interfaces/jdbc/org/postgresql/errors.properties src/interfaces/jdbc/org/postgresql/errors_de.properties src/interfaces/jdbc/org/postgresql/errors_fr.properties src/interfaces/jdbc/org/postgresql/errors_it.properties src/interfaces/jdbc/org/postgresql/errors_nl.properties src/interfaces/jdbc/org/postgresql/errors_zh_TW.properties src/interfaces/jdbc/org/postgresql/fastpath/Fastpath.java src/interfaces/jdbc/org/postgresql/fastpath/FastpathArg.java src/interfaces/jdbc/org/postgresql/geometric/PGbox.java src/interfaces/jdbc/org/postgresql/geometric/PGcircle.java src/interfaces/jdbc/org/postgresql/geometric/PGline.java src/interfaces/jdbc/org/postgresql/geometric/PGlseg.java src/interfaces/jdbc/org/postgresql/geometric/PGpath.java src/interfaces/jdbc/org/postgresql/geometric/PGpoint.java src/interfaces/jdbc/org/postgresql/geometric/PGpolygon.java src/interfaces/jdbc/org/postgresql/jdbc1/CallableStatement.java src/interfaces/jdbc/org/postgresql/jdbc1/Connection.java src/interfaces/jdbc/org/postgresql/jdbc1/DatabaseMetaData.java src/interfaces/jdbc/org/postgresql/jdbc1/PreparedStatement.java src/interfaces/jdbc/org/postgresql/jdbc1/ResultSet.java src/interfaces/jdbc/org/postgresql/jdbc1/ResultSetMetaData.java src/interfaces/jdbc/org/postgresql/jdbc1/Statement.java src/interfaces/jdbc/org/postgresql/jdbc2/Array.java src/interfaces/jdbc/org/postgresql/jdbc2/CallableStatement.java src/interfaces/jdbc/org/postgresql/jdbc2/Connection.java src/interfaces/jdbc/org/postgresql/jdbc2/DatabaseMetaData.java src/interfaces/jdbc/org/postgresql/jdbc2/PBatchUpdateException.java src/interfaces/jdbc/org/postgresql/jdbc2/PreparedStatement.java src/interfaces/jdbc/org/postgresql/jdbc2/ResultSet.java src/interfaces/jdbc/org/postgresql/jdbc2/ResultSetMetaData.java src/interfaces/jdbc/org/postgresql/jdbc2/Statement.java src/interfaces/jdbc/org/postgresql/jdbc2/UpdateableResultSet.java src/interfaces/jdbc/org/postgresql/largeobject/BlobInputStream.java src/interfaces/jdbc/org/postgresql/largeobject/BlobOutputStream.java src/interfaces/jdbc/org/postgresql/largeobject/LargeObject.java src/interfaces/jdbc/org/postgresql/largeobject/LargeObjectManager.java src/interfaces/jdbc/org/postgresql/largeobject/PGblob.java src/interfaces/jdbc/org/postgresql/largeobject/PGclob.java src/interfaces/jdbc/org/postgresql/test/JDBC2Tests.java src/interfaces/jdbc/org/postgresql/test/README src/interfaces/jdbc/org/postgresql/test/jdbc2/ANTTest.java src/interfaces/jdbc/org/postgresql/test/jdbc2/BatchExecuteTest.java src/interfaces/jdbc/org/postgresql/test/jdbc2/BlobTest.java src/interfaces/jdbc/org/postgresql/test/jdbc2/ConnectionTest.java src/interfaces/jdbc/org/postgresql/test/jdbc2/DatabaseMetaDataTest.java src/interfaces/jdbc/org/postgresql/test/jdbc2/DateTest.java src/interfaces/jdbc/org/postgresql/test/jdbc2/DriverTest.java src/interfaces/jdbc/org/postgresql/test/jdbc2/EncodingTest.java src/interfaces/jdbc/org/postgresql/test/jdbc2/JBuilderTest.java src/interfaces/jdbc/org/postgresql/test/jdbc2/MiscTest.java src/interfaces/jdbc/org/postgresql/test/jdbc2/ResultSetTest.java src/interfaces/jdbc/org/postgresql/test/jdbc2/TimeTest.java src/interfaces/jdbc/org/postgresql/test/jdbc2/TimestampTest.java src/interfaces/jdbc/org/postgresql/test/jdbc2/UpdateableResultTest.java src/interfaces/jdbc/org/postgresql/util/MD5Digest.java src/interfaces/jdbc/org/postgresql/util/MessageTranslator.java src/interfaces/jdbc/org/postgresql/util/PGbytea.java src/interfaces/jdbc/org/postgresql/util/PGmoney.java src/interfaces/jdbc/org/postgresql/util/PGobject.java src/interfaces/jdbc/org/postgresql/util/PGtokenizer.java src/interfaces/jdbc/org/postgresql/util/PSQLException.java src/interfaces/jdbc/org/postgresql/util/Serialize.java src/interfaces/jdbc/org/postgresql/util/UnixCrypt.java src/interfaces/jdbc/org/postgresql/xa/ClientConnection.java src/interfaces/jdbc/org/postgresql/xa/TwoPhaseConnection.java src/interfaces/jdbc/org/postgresql/xa/TxConnection.java src/interfaces/jdbc/org/postgresql/xa/XAConnectionImpl.java src/interfaces/jdbc/org/postgresql/xa/XADataSourceImpl.java src/interfaces/jdbc/utils/CheckVersion.java src/interfaces/jdbc/utils/buildDriver src/interfaces/jdbc/utils/changelog.pl src/interfaces/libpgeasy/Makefile src/interfaces/libpgeasy/README src/interfaces/libpgeasy/examples/Makefile src/interfaces/libpgeasy/examples/pginsert.c src/interfaces/libpgeasy/examples/pgmultiresult.c src/interfaces/libpgeasy/examples/pgnulltest.c src/interfaces/libpgeasy/examples/pgwordcount.c src/interfaces/libpgeasy/halt.c src/interfaces/libpgeasy/halt.h src/interfaces/libpgeasy/libpgeasy.c src/interfaces/libpgeasy/libpgeasy.h src/interfaces/libpgtcl/Makefile src/interfaces/libpgtcl/README src/interfaces/libpgtcl/libpgtcl.def src/interfaces/libpgtcl/libpgtcl.h src/interfaces/libpgtcl/pgtcl.c src/interfaces/libpgtcl/pgtclCmds.c src/interfaces/libpgtcl/pgtclCmds.h src/interfaces/libpgtcl/pgtclId.c src/interfaces/libpgtcl/pgtclId.h src/interfaces/libpgtcl/win32.mak src/interfaces/libpq/Makefile src/interfaces/libpq/README src/interfaces/libpq/cs.po src/interfaces/libpq/de.po src/interfaces/libpq/fe-auth.c src/interfaces/libpq/fe-auth.h src/interfaces/libpq/fe-connect.c src/interfaces/libpq/fe-exec.c src/interfaces/libpq/fe-lobj.c src/interfaces/libpq/fe-misc.c src/interfaces/libpq/fe-print.c src/interfaces/libpq/fe-secure.c src/interfaces/libpq/fr.po src/interfaces/libpq/libpq-fe.h src/interfaces/libpq/libpq-int.h src/interfaces/libpq/libpq.rc src/interfaces/libpq/libpqdll.c src/interfaces/libpq/libpqdll.def src/interfaces/libpq/nls.mk src/interfaces/libpq/pqexpbuffer.c src/interfaces/libpq/pqexpbuffer.h src/interfaces/libpq/pqsignal.c src/interfaces/libpq/pqsignal.h src/interfaces/libpq/ru.po src/interfaces/libpq/sv.po src/interfaces/libpq/win32.c src/interfaces/libpq/win32.h src/interfaces/libpq/win32.mak src/interfaces/libpq/zh_CN.po src/interfaces/libpq/zh_TW.po src/interfaces/libpq++/CHANGES src/interfaces/libpq++/Makefile src/interfaces/libpq++/README src/interfaces/libpq++/TODO src/interfaces/libpq++/examples/Makefile src/interfaces/libpq++/examples/testlibpq0.cc src/interfaces/libpq++/examples/testlibpq1.cc src/interfaces/libpq++/examples/testlibpq2.cc src/interfaces/libpq++/examples/testlibpq2.sql src/interfaces/libpq++/examples/testlibpq3.cc src/interfaces/libpq++/examples/testlibpq3.sql src/interfaces/libpq++/examples/testlibpq4.cc src/interfaces/libpq++/examples/testlibpq4.sql src/interfaces/libpq++/examples/testlibpq5.cc src/interfaces/libpq++/examples/testlibpq5.sql src/interfaces/libpq++/examples/testlibpq6.cc src/interfaces/libpq++/examples/testlo.cc src/interfaces/libpq++/libpq++.h src/interfaces/libpq++/libpq++dll.rc src/interfaces/libpq++/pgconnection.cc src/interfaces/libpq++/pgconnection.h src/interfaces/libpq++/pgcursordb.cc src/interfaces/libpq++/pgcursordb.h src/interfaces/libpq++/pgdatabase.cc src/interfaces/libpq++/pgdatabase.h src/interfaces/libpq++/pglobject.cc src/interfaces/libpq++/pglobject.h src/interfaces/libpq++/pgtransdb.cc src/interfaces/libpq++/pgtransdb.h src/interfaces/libpq++/win32.mak src/interfaces/odbc/GNUmakefile src/interfaces/odbc/bind.c src/interfaces/odbc/bind.h src/interfaces/odbc/columninfo.c src/interfaces/odbc/columninfo.h src/interfaces/odbc/connection.c src/interfaces/odbc/connection.h src/interfaces/odbc/convert.c src/interfaces/odbc/convert.h src/interfaces/odbc/descriptor.h src/interfaces/odbc/dlg_specific.c src/interfaces/odbc/dlg_specific.h src/interfaces/odbc/dlg_wingui.c src/interfaces/odbc/drvconn.c src/interfaces/odbc/environ.c src/interfaces/odbc/environ.h src/interfaces/odbc/execute.c src/interfaces/odbc/gpps.c src/interfaces/odbc/gpps.h src/interfaces/odbc/info.c src/interfaces/odbc/info30.c src/interfaces/odbc/iodbc.h src/interfaces/odbc/isql.h src/interfaces/odbc/isqlext.h src/interfaces/odbc/license.txt src/interfaces/odbc/lobj.c src/interfaces/odbc/lobj.h src/interfaces/odbc/md5.c src/interfaces/odbc/md5.h src/interfaces/odbc/misc.c src/interfaces/odbc/misc.h src/interfaces/odbc/multibyte.c src/interfaces/odbc/multibyte.h src/interfaces/odbc/notice.txt src/interfaces/odbc/odbc.sql src/interfaces/odbc/odbcapi.c src/interfaces/odbc/odbcapi25w.c src/interfaces/odbc/odbcapi30.c src/interfaces/odbc/odbcapi30w.c src/interfaces/odbc/odbcapiw.c src/interfaces/odbc/odbcinst.ini src/interfaces/odbc/options.c src/interfaces/odbc/parse.c src/interfaces/odbc/pgapi30.c src/interfaces/odbc/pgapifunc.h src/interfaces/odbc/pgtypes.c src/interfaces/odbc/pgtypes.h src/interfaces/odbc/psqlodbc.c src/interfaces/odbc/psqlodbc.h src/interfaces/odbc/psqlodbc.rc src/interfaces/odbc/psqlodbc.reg src/interfaces/odbc/psqlodbc30.reg src/interfaces/odbc/psqlodbc30w.reg src/interfaces/odbc/psqlodbc_api30.def src/interfaces/odbc/psqlodbc_api30w.def src/interfaces/odbc/psqlodbc_apiw.def src/interfaces/odbc/psqlodbc_win32.def src/interfaces/odbc/qresult.c src/interfaces/odbc/qresult.h src/interfaces/odbc/readme.txt src/interfaces/odbc/resource.h src/interfaces/odbc/results.c src/interfaces/odbc/setup.c src/interfaces/odbc/setup.rul src/interfaces/odbc/socket.c src/interfaces/odbc/socket.h src/interfaces/odbc/statement.c src/interfaces/odbc/statement.h src/interfaces/odbc/tuple.c src/interfaces/odbc/tuple.h src/interfaces/odbc/tuplelist.c src/interfaces/odbc/tuplelist.h src/interfaces/odbc/version.h src/interfaces/odbc/win32.mak src/interfaces/odbc/win32_30.mak src/interfaces/odbc/win32_30w.mak src/interfaces/odbc/win32w.mak src/interfaces/odbc/win_md5.c src/interfaces/odbc/win_setup.h src/interfaces/odbc/win_unicode.c src/interfaces/perl5/Changes src/interfaces/perl5/GNUmakefile src/interfaces/perl5/MANIFEST src/interfaces/perl5/Makefile.PL src/interfaces/perl5/Pg.pm src/interfaces/perl5/Pg.xs src/interfaces/perl5/README src/interfaces/perl5/examples/ApachePg.pl src/interfaces/perl5/examples/example.newstyle src/interfaces/perl5/examples/example.oldstyle src/interfaces/perl5/ppport.h src/interfaces/perl5/test.pl src/interfaces/perl5/typemap src/interfaces/python/Announce src/interfaces/python/ChangeLog src/interfaces/python/GNUmakefile src/interfaces/python/PyGreSQL.spec src/interfaces/python/README src/interfaces/python/README.linux src/interfaces/python/Setup.in.raw src/interfaces/python/pg.py src/interfaces/python/pgdb.py src/interfaces/python/pgmodule.c src/interfaces/python/setup.py src/interfaces/python/tutorial/advanced.py src/interfaces/python/tutorial/basics.py src/interfaces/python/tutorial/func.py src/interfaces/python/tutorial/syscat.py src/interfaces/ssl/client.conf src/interfaces/ssl/mkcert.sh src/interfaces/ssl/pgkeygen.sh src/interfaces/ssl/root.conf src/interfaces/ssl/server.conf src/makefiles/Makefile.aix src/makefiles/Makefile.beos src/makefiles/Makefile.bsdi src/makefiles/Makefile.darwin src/makefiles/Makefile.dgux src/makefiles/Makefile.freebsd src/makefiles/Makefile.hpux src/makefiles/Makefile.irix5 src/makefiles/Makefile.linux src/makefiles/Makefile.netbsd src/makefiles/Makefile.openbsd src/makefiles/Makefile.osf src/makefiles/Makefile.qnx4 src/makefiles/Makefile.sco src/makefiles/Makefile.solaris src/makefiles/Makefile.sunos4 src/makefiles/Makefile.svr4 src/makefiles/Makefile.ultrix4 src/makefiles/Makefile.univel src/makefiles/Makefile.unixware src/makefiles/Makefile.win src/nls-global.mk src/pl/Makefile src/pl/plperl/GNUmakefile src/pl/plperl/README src/pl/plperl/SPI.xs src/pl/plperl/eloglvl.c src/pl/plperl/eloglvl.h src/pl/plperl/plperl.c src/pl/plperl/ppport.h src/pl/plpgsql/Makefile src/pl/plpgsql/src/.cvsignore src/pl/plpgsql/src/INSTALL src/pl/plpgsql/src/Makefile src/pl/plpgsql/src/gram.y src/pl/plpgsql/src/pl_comp.c src/pl/plpgsql/src/pl_exec.c src/pl/plpgsql/src/pl_funcs.c src/pl/plpgsql/src/pl_handler.c src/pl/plpgsql/src/plpgsql.h src/pl/plpgsql/src/scan.l src/pl/plpgsql/test/README src/pl/plpgsql/test/expected/tables.out src/pl/plpgsql/test/expected/test.out src/pl/plpgsql/test/expected/triggers.out src/pl/plpgsql/test/expected/views.out src/pl/plpgsql/test/runtest src/pl/plpgsql/test/tables.sql src/pl/plpgsql/test/test.sql src/pl/plpgsql/test/triggers.sql src/pl/plpgsql/test/views.sql src/pl/plpython/Makefile src/pl/plpython/README src/pl/plpython/TODO src/pl/plpython/error.expected src/pl/plpython/feature.expected src/pl/plpython/plpython.c src/pl/plpython/plpython.h src/pl/plpython/plpython_depopulate.sql src/pl/plpython/plpython_deschema.sql src/pl/plpython/plpython_drop.sql src/pl/plpython/plpython_error.sql src/pl/plpython/plpython_function.sql src/pl/plpython/plpython_populate.sql src/pl/plpython/plpython_schema.sql src/pl/plpython/plpython_setof.sql src/pl/plpython/plpython_test.sql src/pl/plpython/test.sh src/pl/tcl/Makefile src/pl/tcl/license.terms src/pl/tcl/modules/Makefile src/pl/tcl/modules/README src/pl/tcl/modules/pltcl_delmod.in src/pl/tcl/modules/pltcl_listmod.in src/pl/tcl/modules/pltcl_loadmod.in src/pl/tcl/modules/unknown.pltcl src/pl/tcl/pltcl.c src/pl/tcl/test/README src/pl/tcl/test/runtest src/pl/tcl/test/test.expected src/pl/tcl/test/test_queries.sql src/pl/tcl/test/test_setup.sql src/template/aix src/template/beos src/template/bsdi src/template/darwin src/template/dgux src/template/freebsd src/template/hpux src/template/irix5 src/template/linux src/template/netbsd src/template/nextstep src/template/openbsd src/template/osf src/template/qnx4 src/template/sco src/template/solaris src/template/sunos4 src/template/svr4 src/template/ultrix4 src/template/univel src/template/unixware src/template/win src/test/Makefile src/test/bench/Makefile src/test/bench/WISC-README src/test/bench/create.sh src/test/bench/create.source src/test/bench/perquery src/test/bench/query01 src/test/bench/query02 src/test/bench/query03 src/test/bench/query04 src/test/bench/query05 src/test/bench/query06 src/test/bench/query07 src/test/bench/query08 src/test/bench/query09 src/test/bench/query10 src/test/bench/query11 src/test/bench/query12 src/test/bench/query13 src/test/bench/query14 src/test/bench/query15 src/test/bench/query16 src/test/bench/query17 src/test/bench/query18 src/test/bench/query19 src/test/bench/query20 src/test/bench/query21 src/test/bench/query22 src/test/bench/query23 src/test/bench/query24 src/test/bench/query25 src/test/bench/query26 src/test/bench/query27 src/test/bench/query28 src/test/bench/query29 src/test/bench/query30 src/test/bench/query31 src/test/bench/query32 src/test/bench/runwisc.sh src/test/bench/wholebench.sh src/test/examples/Makefile src/test/examples/testlibpq.c src/test/examples/testlibpq2.c src/test/examples/testlibpq2.sql src/test/examples/testlibpq3.c src/test/examples/testlibpq3.sql src/test/examples/testlibpq4.c src/test/examples/testlo.c src/test/locale/Makefile src/test/locale/README src/test/locale/de_DE.ISO8859-1/Makefile src/test/locale/de_DE.ISO8859-1/README src/test/locale/de_DE.ISO8859-1/expected/de-ctype.out src/test/locale/de_DE.ISO8859-1/expected/test-de-char.sql.out src/test/locale/de_DE.ISO8859-1/expected/test-de-select.sql.out src/test/locale/de_DE.ISO8859-1/expected/test-de-sort.out src/test/locale/de_DE.ISO8859-1/expected/test-de-text.sql.out src/test/locale/de_DE.ISO8859-1/expected/test-de-upper-char.sql.out src/test/locale/de_DE.ISO8859-1/expected/test-de-upper-text.sql.out src/test/locale/de_DE.ISO8859-1/expected/test-de-upper-varchar.sql.out src/test/locale/de_DE.ISO8859-1/expected/test-de-varchar.sql.out src/test/locale/de_DE.ISO8859-1/runall src/test/locale/de_DE.ISO8859-1/test-de-select.sql.in src/test/locale/de_DE.ISO8859-1/test-de-sort.in src/test/locale/de_DE.ISO8859-1/test-de-upper.sql.in src/test/locale/de_DE.ISO8859-1/test-de.sql.in src/test/locale/gr_GR.ISO8859-7/Makefile src/test/locale/gr_GR.ISO8859-7/README src/test/locale/gr_GR.ISO8859-7/expected/gr-ctype.out src/test/locale/gr_GR.ISO8859-7/expected/test-gr-char.sql.out src/test/locale/gr_GR.ISO8859-7/expected/test-gr-select.sql.out src/test/locale/gr_GR.ISO8859-7/expected/test-gr-sort.out src/test/locale/gr_GR.ISO8859-7/expected/test-gr-text.sql.out src/test/locale/gr_GR.ISO8859-7/expected/test-gr-varchar.sql.out src/test/locale/gr_GR.ISO8859-7/runall src/test/locale/gr_GR.ISO8859-7/test-gr-select.sql.in src/test/locale/gr_GR.ISO8859-7/test-gr-sort.in src/test/locale/gr_GR.ISO8859-7/test-gr.sql.in src/test/locale/koi8-r/Makefile src/test/locale/koi8-r/expected/koi8-ctype.out src/test/locale/koi8-r/expected/test-koi8-char.sql.out src/test/locale/koi8-r/expected/test-koi8-select.sql.out src/test/locale/koi8-r/expected/test-koi8-sort.out src/test/locale/koi8-r/expected/test-koi8-text.sql.out src/test/locale/koi8-r/expected/test-koi8-varchar.sql.out src/test/locale/koi8-r/runall src/test/locale/koi8-r/test-koi8-select.sql.in src/test/locale/koi8-r/test-koi8-sort.in src/test/locale/koi8-r/test-koi8.sql.in src/test/locale/koi8-to-win1251/Makefile src/test/locale/koi8-to-win1251/README src/test/locale/koi8-to-win1251/expected/test-koi8-char.sql.out src/test/locale/koi8-to-win1251/expected/test-koi8-select.sql.out src/test/locale/koi8-to-win1251/expected/test-koi8-sort.out src/test/locale/koi8-to-win1251/expected/test-koi8-text.sql.out src/test/locale/koi8-to-win1251/expected/test-koi8-varchar.sql.out src/test/locale/koi8-to-win1251/runall src/test/locale/koi8-to-win1251/test-koi8-select.sql.in src/test/locale/koi8-to-win1251/test-koi8-sort.in src/test/locale/koi8-to-win1251/test-koi8.sql.in src/test/locale/sort-test.pl src/test/locale/sort-test.py src/test/locale/test-ctype.c src/test/locale/test-pgsql-locale.c src/test/mb/README src/test/mb/expected/big5.out src/test/mb/expected/euc_cn.out src/test/mb/expected/euc_jp.out src/test/mb/expected/euc_kr.out src/test/mb/expected/euc_tw.out src/test/mb/expected/mule_internal.out src/test/mb/expected/sjis.out src/test/mb/expected/unicode.out src/test/mb/mbregress.sh src/test/mb/sql/big5.sql src/test/mb/sql/euc_cn.sql src/test/mb/sql/euc_jp.sql src/test/mb/sql/euc_kr.sql src/test/mb/sql/euc_tw.sql src/test/mb/sql/mule_internal.sql src/test/mb/sql/sjis.sql src/test/mb/sql/unicode.sql src/test/performance/results/PgSQL.970926 src/test/performance/runtests.pl src/test/performance/sqls/connection src/test/performance/sqls/crtsimple src/test/performance/sqls/crtsimpleidx src/test/performance/sqls/drpsimple src/test/performance/sqls/inssimple src/test/performance/sqls/inssimple.data src/test/performance/sqls/orbsimple src/test/performance/sqls/slcsimple src/test/performance/sqls/slcsimple.data src/test/performance/sqls/vacuum src/test/performance/start-pgsql.sh src/test/regress/GNUmakefile src/test/regress/Makefile src/test/regress/README src/test/regress/data/agg.data src/test/regress/data/constrf.data src/test/regress/data/constro.data src/test/regress/data/dept.data src/test/regress/data/desc.data src/test/regress/data/emp.data src/test/regress/data/hash.data src/test/regress/data/onek.data src/test/regress/data/person.data src/test/regress/data/real_city.data src/test/regress/data/rect.data src/test/regress/data/streets.data src/test/regress/data/stud_emp.data src/test/regress/data/student.data src/test/regress/data/tenk.data src/test/regress/expected/abstime-solaris-1947.out src/test/regress/expected/abstime.out src/test/regress/expected/aggregates.out src/test/regress/expected/alter_table.out src/test/regress/expected/arrays.out src/test/regress/expected/bit.out src/test/regress/expected/boolean.out src/test/regress/expected/box.out src/test/regress/expected/btree_index.out src/test/regress/expected/case.out src/test/regress/expected/char.out src/test/regress/expected/char_1.out src/test/regress/expected/circle.out src/test/regress/expected/comments.out src/test/regress/expected/create_aggregate.out src/test/regress/expected/create_index.out src/test/regress/expected/create_misc.out src/test/regress/expected/create_operator.out src/test/regress/expected/create_table.out src/test/regress/expected/create_type.out src/test/regress/expected/create_view.out src/test/regress/expected/date.out src/test/regress/expected/domain.out src/test/regress/expected/errors.out src/test/regress/expected/euc_cn.out src/test/regress/expected/euc_jp.out src/test/regress/expected/euc_kr.out src/test/regress/expected/euc_tw.out src/test/regress/expected/float4-exp-three-digits.out src/test/regress/expected/float4.out src/test/regress/expected/float8-exp-three-digits.out src/test/regress/expected/float8-fp-exception.out src/test/regress/expected/float8-small-is-zero.out src/test/regress/expected/float8.out src/test/regress/expected/foreign_key.out src/test/regress/expected/geometry-alpha-precision.out src/test/regress/expected/geometry-bsdi-precision.out src/test/regress/expected/geometry-i86-gnulibc.out src/test/regress/expected/geometry-intel-beos.out src/test/regress/expected/geometry-irix.out src/test/regress/expected/geometry-positive-zeros-bsd.out src/test/regress/expected/geometry-positive-zeros.out src/test/regress/expected/geometry-powerpc-aix4.out src/test/regress/expected/geometry-powerpc-darwin.out src/test/regress/expected/geometry-powerpc-linux-gnulibc1.out src/test/regress/expected/geometry-solaris-i386-pc.out src/test/regress/expected/geometry-solaris-precision.out src/test/regress/expected/geometry-uw7-cc.out src/test/regress/expected/geometry-uw7-gcc.out src/test/regress/expected/geometry.out src/test/regress/expected/hash_index.out src/test/regress/expected/horology-no-DST-before-1970.out src/test/regress/expected/horology-solaris-1947.out src/test/regress/expected/horology.out src/test/regress/expected/inet.out src/test/regress/expected/inherit.out src/test/regress/expected/insert.out src/test/regress/expected/int2.out src/test/regress/expected/int4.out src/test/regress/expected/int8-exp-three-digits.out src/test/regress/expected/int8.out src/test/regress/expected/interval.out src/test/regress/expected/join.out src/test/regress/expected/limit.out src/test/regress/expected/lseg.out src/test/regress/expected/mule_internal.out src/test/regress/expected/name.out src/test/regress/expected/numeric.out src/test/regress/expected/numeric_big.out src/test/regress/expected/numerology.out src/test/regress/expected/oid.out src/test/regress/expected/oidjoins.out src/test/regress/expected/opr_sanity.out src/test/regress/expected/path.out src/test/regress/expected/plpgsql.out src/test/regress/expected/point.out src/test/regress/expected/polygon.out src/test/regress/expected/portals.out src/test/regress/expected/portals_p2.out src/test/regress/expected/privileges.out src/test/regress/expected/random.out src/test/regress/expected/reltime.out src/test/regress/expected/rules.out src/test/regress/expected/sanity_check.out src/test/regress/expected/select.out src/test/regress/expected/select_distinct.out src/test/regress/expected/select_distinct_on.out src/test/regress/expected/select_having.out src/test/regress/expected/select_having_1.out src/test/regress/expected/select_implicit.out src/test/regress/expected/select_implicit_1.out src/test/regress/expected/select_into.out src/test/regress/expected/select_views.out src/test/regress/expected/select_views_1.out src/test/regress/expected/sql_ascii.out src/test/regress/expected/strings.out src/test/regress/expected/subselect.out src/test/regress/expected/temp.out src/test/regress/expected/text.out src/test/regress/expected/time.out src/test/regress/expected/timestamp.out src/test/regress/expected/timestamptz.out src/test/regress/expected/timetz.out src/test/regress/expected/tinterval-solaris-1947.out src/test/regress/expected/tinterval.out src/test/regress/expected/transactions.out src/test/regress/expected/triggers.out src/test/regress/expected/type_sanity.out src/test/regress/expected/union.out src/test/regress/expected/varchar.out src/test/regress/expected/varchar_1.out src/test/regress/input/constraints.source src/test/regress/input/copy.source src/test/regress/input/create_function_1.source src/test/regress/input/create_function_2.source src/test/regress/input/misc.source src/test/regress/output/constraints.source src/test/regress/output/copy.source src/test/regress/output/create_function_1.source src/test/regress/output/create_function_2.source src/test/regress/output/misc.source src/test/regress/parallel_schedule src/test/regress/pg_regress.sh src/test/regress/regress.c src/test/regress/regressplans.sh src/test/regress/resultmap src/test/regress/serial_schedule src/test/regress/sql/abstime.sql src/test/regress/sql/aggregates.sql src/test/regress/sql/alter_table.sql src/test/regress/sql/arrays.sql src/test/regress/sql/bit.sql src/test/regress/sql/boolean.sql src/test/regress/sql/box.sql src/test/regress/sql/btree_index.sql src/test/regress/sql/case.sql src/test/regress/sql/char.sql src/test/regress/sql/circle.sql src/test/regress/sql/comments.sql src/test/regress/sql/create_aggregate.sql src/test/regress/sql/create_index.sql src/test/regress/sql/create_misc.sql src/test/regress/sql/create_operator.sql src/test/regress/sql/create_table.sql src/test/regress/sql/create_type.sql src/test/regress/sql/create_view.sql src/test/regress/sql/date.sql src/test/regress/sql/domain.sql src/test/regress/sql/drop.sql src/test/regress/sql/errors.sql src/test/regress/sql/euc_cn.sql src/test/regress/sql/euc_jp.sql src/test/regress/sql/euc_kr.sql src/test/regress/sql/euc_tw.sql src/test/regress/sql/float4.sql src/test/regress/sql/float8.sql src/test/regress/sql/foreign_key.sql src/test/regress/sql/geometry.sql src/test/regress/sql/hash_index.sql src/test/regress/sql/horology.sql src/test/regress/sql/inet.sql src/test/regress/sql/inherit.sql src/test/regress/sql/insert.sql src/test/regress/sql/int2.sql src/test/regress/sql/int4.sql src/test/regress/sql/int8.sql src/test/regress/sql/interval.sql src/test/regress/sql/join.sql src/test/regress/sql/limit.sql src/test/regress/sql/lseg.sql src/test/regress/sql/mule_internal.sql src/test/regress/sql/name.sql src/test/regress/sql/numeric.sql src/test/regress/sql/numeric_big.sql src/test/regress/sql/numerology.sql src/test/regress/sql/oid.sql src/test/regress/sql/oidjoins.sql src/test/regress/sql/opr_sanity.sql src/test/regress/sql/path.sql src/test/regress/sql/plpgsql.sql src/test/regress/sql/point.sql src/test/regress/sql/polygon.sql src/test/regress/sql/portals.sql src/test/regress/sql/portals_p2.sql src/test/regress/sql/privileges.sql src/test/regress/sql/random.sql src/test/regress/sql/reltime.sql src/test/regress/sql/rules.sql src/test/regress/sql/sanity_check.sql src/test/regress/sql/select.sql src/test/regress/sql/select_distinct.sql src/test/regress/sql/select_distinct_on.sql src/test/regress/sql/select_having.sql src/test/regress/sql/select_implicit.sql src/test/regress/sql/select_into.sql src/test/regress/sql/select_views.sql src/test/regress/sql/sql_ascii.sql src/test/regress/sql/strings.sql src/test/regress/sql/subselect.sql src/test/regress/sql/temp.sql src/test/regress/sql/text.sql src/test/regress/sql/time.sql src/test/regress/sql/timestamp.sql src/test/regress/sql/timestamptz.sql src/test/regress/sql/timetz.sql src/test/regress/sql/tinterval.sql src/test/regress/sql/transactions.sql src/test/regress/sql/triggers.sql src/test/regress/sql/type_sanity.sql src/test/regress/sql/union.sql src/test/regress/sql/varchar.sql src/tools/RELEASE_CHANGES src/tools/backend/README src/tools/backend/backend_dirs.html src/tools/backend/flow.fig src/tools/backend/flow.gif src/tools/backend/index.html src/tools/ccsym src/tools/copyright src/tools/entab/Makefile src/tools/entab/entab.c src/tools/entab/entab.man src/tools/entab/halt.c src/tools/find_badmacros src/tools/find_static src/tools/find_typedef src/tools/make_ctags src/tools/make_diff/README src/tools/make_diff/cporig src/tools/make_diff/difforig src/tools/make_diff/rmorig src/tools/make_etags src/tools/make_keywords src/tools/make_mkid src/tools/pgcvslog src/tools/pginclude/README src/tools/pginclude/pgcompinclude src/tools/pginclude/pgdefine src/tools/pginclude/pgfixinclude src/tools/pginclude/pgrminclude src/tools/pgindent/README src/tools/pgindent/indent.bsd.patch src/tools/pgindent/pgcppindent src/tools/pgindent/pgindent src/tools/pgindent/pgjindent src/tutorial/Makefile src/tutorial/README src/tutorial/advanced.source src/tutorial/basics.source src/tutorial/beard.c src/tutorial/complex.c src/tutorial/complex.source src/tutorial/funcs.c src/tutorial/funcs.source src/tutorial/funcs_new.c src/tutorial/syscat.source src/utils/Makefile src/utils/README src/utils/dllinit.c src/utils/getopt.c src/utils/strdup.c src/win32.mak
Diffstat (limited to 'src/interfaces/perl5')
-rw-r--r--src/interfaces/perl5/Changes126
-rw-r--r--src/interfaces/perl5/GNUmakefile91
-rw-r--r--src/interfaces/perl5/MANIFEST12
-rw-r--r--src/interfaces/perl5/Makefile.PL107
-rw-r--r--src/interfaces/perl5/Pg.pm656
-rw-r--r--src/interfaces/perl5/Pg.xs1320
-rw-r--r--src/interfaces/perl5/README137
-rw-r--r--src/interfaces/perl5/examples/ApachePg.pl55
-rw-r--r--src/interfaces/perl5/examples/example.newstyle274
-rw-r--r--src/interfaces/perl5/examples/example.oldstyle294
-rw-r--r--src/interfaces/perl5/ppport.h289
-rw-r--r--src/interfaces/perl5/test.pl275
-rw-r--r--src/interfaces/perl5/typemap18
13 files changed, 0 insertions, 3654 deletions
diff --git a/src/interfaces/perl5/Changes b/src/interfaces/perl5/Changes
deleted file mode 100644
index da9b53dbaca..00000000000
--- a/src/interfaces/perl5/Changes
+++ /dev/null
@@ -1,126 +0,0 @@
-#-------------------------------------------------------
-#
-# $Id: Changes,v 1.9 2000/06/01 03:07:33 momjian Exp $
-#
-# Copyright (c) 1997, 1998 Edmund Mergl
-#
-#-------------------------------------------------------
-
-Revision history for Perl extension Pg.
-
-1.8.0 Sep 27 1998
- - adapted to PostgreSQL-6.4:
- added support for
- o PQsetdbLogin
- o PQpass
- o PQsocket
- o PQbackendPID
- o PQsendQuery
- o PQgetResult
- o PQisBusy
- o PQconsumeInput
- o PQrequestCancel
- o PQgetlineAsync
- o PQputnbytes
- o PQmakeEmptyPGresult
- o PQbinaryTuples
- o PQfmod
- - fixed conndefaults()
- - fixed lo_read
-
-1.7.4 May 28 1998
- - applied patches from
- Brook Milligan <brook@trillium.NMSU.Edu>:
- o changed Makefile.PL to look for include files
- and libs in the source tree, except when the
- environment variable POSTGRES_HOME is set.
- o bug-fix in test.pl
-
-1.7.3 Mar 28 1998
- - linking again with the shared version of libpq
- due to problems on several operating systems.
-
-1.7.2 Mar 06 1998
- - module is now linked with static libpq.a
-
-1.7.1 Mar 03 1998
- - expanded the search path for include files
- - return to UNIX domain sockets in test-scripts
-
-1.7.0 Feb 20 1998
- - adapted to PostgreSQL-6.3:
- add host=localhost to the conninfo-string
- of test.pl and example-scripts
- - connectdb() converts dbname to lower case,
- unless it is surrounded by double quotes
- - added new method fetchrow, now you can do:
- while (@row = $result->fetchrow)
-
-1.6.3 Sep 25 1997
- - README update
-
-1.6.2 Sep 20 1997
- - adapted to PostgreSQL-6.2:
- o added support for new method cmdTuples
- o cmdStatus returns now for DELETE the status
- followed by the number of affected rows,
- - test.pl.newstyle renamed to examples/example.newstyle
- - test.pl.oldstyle renamed to examples/example.oldstyle
- - example script ApachePg.pl now uses
- $result->print with HTML option
- - Makefile looks for $ENV{POSTGRES_HOME} instead of
- $ENV{POSTGRESHOME}
-
-1.6.1 Jun 02 1997
- - renamed to pgsql_perl5
- - adapted to PostgreSQL-6.1
- - test only functions, which are also
- tested in pgsql regression tests
-
-1.5.4 Feb 12, 1997
- - changed test.pl for large objects:
- test only lo_import and lo_export
-
-1.5.3 Jan 2, 1997
- - adapted to PostgreSQL-6.0
- - new functions PQconnectdb, PQuser
- - changed name of method 'new' to 'setdb'
-
-1.4.2 Nov 21, 1996
- - added a more Perl-like syntax
-
-1.3.2 Nov 11, 1996
- - adapted to Postgres95-1.09
- - test.pl adapted to postgres95-1.0.9:
- PQputline expects now '\.' as last input
- and PQgetline outputs '\.' as last line.
-
-1.3.1 Oct 22, 1996
- - adapted to Postgres95-1.08
- - large-object interface added, thanks to
- Sven Verdoolaege (skimo@breughel.ufsia.ac.be)
- - PQgetline() changed. This breaks old scripts !
- - PQexec now returns in any case a valid pointer.
- This fixes the annoying message:
- 'res is not of type PGresultPtr at ...'
- - testsuite completely rewritten, contains
- now examples for almost all functions
- - resturn codes are now available as constants (PGRES_xxx)
- - PQnotifies() works now
- - enhanced doQuery()
-
-1.2.0 Oct 15, 1995
- - adapted to Postgres95-1.0
- - README updated
- - doQuery() in Pg.pm now returns 0 upon success
- - testlibpq.pl: added test for PQgetline()
-
-1.1.1 Aug 5, 95
- - adapted to postgres95-beta0.03
- - Note: the libpq interface has changed completely !
-
-1.1 Jun 6, 1995
- - Bug fix in PQgetline.
-
-1.0 Mar 24, 1995
- - creation
diff --git a/src/interfaces/perl5/GNUmakefile b/src/interfaces/perl5/GNUmakefile
deleted file mode 100644
index 5bde2c05103..00000000000
--- a/src/interfaces/perl5/GNUmakefile
+++ /dev/null
@@ -1,91 +0,0 @@
-# $Header: /cvsroot/pgsql/src/interfaces/perl5/Attic/GNUmakefile,v 1.8 2002/06/02 21:37:26 momjian Exp $
-
-subdir = src/interfaces/perl5
-top_builddir = ../../..
-include $(top_builddir)/src/Makefile.global
-
-# This would allow a non-root install of the Perl module, but it's not
-# quite implemented yet.
-ifeq ($(mysterious_feature),yes)
-perl_installsitearch = $(pkglibdir)
-perl_installsitelib = $(pkglibdir)
-perl_installman3dir = $(mandir)/man3
-endif
-
-override CPPFLAGS := -I$(libpq_srcdir) -I$(top_srcdir)/src/include $(CPPFLAGS) -I$(perl_archlibexp)/CORE
-override CFLAGS += $(CFLAGS_SL)
-override CPPFLAGS += -DXS_VERSION=\"$(shell sed -n "s/\$$.*::VERSION.*=.*'\(.*\)';/\1/p" $(srcdir)/Pg.pm)\"
-
-# The code isn't clean with regard to these warnings.
-ifeq ($(GCC),yes)
-override CFLAGS := $(filter-out -Wall -Wmissing-declarations -Wmissing-prototypes, $(CFLAGS))
-endif
-
-POD2MAN = pod2man
-
-
-NAME = Pg
-OBJS = Pg.o
-SO_MAJOR_VERSION = 0
-SO_MINOR_VERSION = 0
-SHLIB_LINK = -L$(libpq_builddir) -lpq
-
-include $(top_srcdir)/src/Makefile.shlib
-
-
-all: all-lib Pg.pm Pg.bs auto/Pg/autosplit.ix Pg.$(perl_man3ext)
-
-all-lib: libpq-all
-
-.PHONY: libpq-all
-libpq-all:
- $(MAKE) -C $(libpq_builddir) all
-
-Pg.c: Pg.xs typemap
- $(PERL) $(perl_privlibexp)/ExtUtils/xsubpp -typemap $(perl_privlibexp)/ExtUtils/typemap -typemap $(srcdir)/typemap $(srcdir)/Pg.xs >$@
-
-auto/Pg/autosplit.ix: Pg.pm
- @$(mkinstalldirs) auto
- $(PERL) -MAutoSplit -e 'autosplit($$ARGV[0], $$ARGV[1], 0, 1, 1);' $< auto
-
-Pg.bs:
- $(PERL) -MExtUtils::Mkbootstrap -e "Mkbootstrap('Pg', '');"
- touch $@
-
-Pg.$(perl_man3ext): Pg.pm
- $(POD2MAN) --section=$(perl_man3ext) $< > Pg.$(perl_man3ext)
-
-
-# During install, we must guard against the likelihood that we don't
-# have permissions to install into the Perl module library. It's not
-# exactly fun to have to scan the build output, but...
-
-install-warning-msg := { \
-echo ""; \
-echo "*** Skipping the installation of the Perl module for lack"; \
-echo "*** of permissions. To install it, change to the directory"; \
-echo "*** `pwd`,"; \
-echo "*** become the appropriate user, and enter '$(MAKE) install'."; \
-echo ""; }
-
-install: all installdirs
- @if test -w $(DESTDIR)$(perl_installsitearch); then \
- $(INSTALL_DATA) Pg.pm $(DESTDIR)$(perl_installsitearch); \
- $(INSTALL_DATA) Pg.bs $(DESTDIR)$(perl_installsitearch)/auto/Pg; \
- $(INSTALL_SHLIB) $(shlib) $(DESTDIR)$(perl_installsitearch)/auto/Pg/Pg$(DLSUFFIX); \
- $(INSTALL_DATA) auto/Pg/autosplit.ix $(DESTDIR)$(perl_installsitearch)/auto/Pg; \
- $(INSTALL_DATA) $(srcdir)/Pg.$(perl_man3ext) $(DESTDIR)$(perl_installman3dir); \
- else \
- $(install-warning-msg); \
- fi
-
-installdirs:
- -$(mkinstalldirs) $(DESTDIR)$(perl_installsitearch)/auto/Pg $(DESTDIR)$(perl_installman3dir)
-
-uninstall:
- rm -f $(addprefix $(DESTDIR)$(perl_installsitearch)/, Pg.pm auto/Pg/Pg.bs auto/Pg/Pg$(DLSUFFIX) auto/Pg/autosplit.ix) $(DESTDIR)$(perl_installman3dir)/Pg.$(perl_man3ext)
-
-
-clean distclean maintainer-clean: clean-lib
- rm -f $(OBJS) Pg.c Pg.bs Pg.$(perl_man3ext)
- rm -rf auto
diff --git a/src/interfaces/perl5/MANIFEST b/src/interfaces/perl5/MANIFEST
deleted file mode 100644
index 43b2e753bf1..00000000000
--- a/src/interfaces/perl5/MANIFEST
+++ /dev/null
@@ -1,12 +0,0 @@
-Changes
-MANIFEST
-Makefile.PL
-Pg.pm
-Pg.xs
-README
-examples/ApachePg.pl
-examples/example.newstyle
-examples/example.oldstyle
-ppport.h
-test.pl
-typemap
diff --git a/src/interfaces/perl5/Makefile.PL b/src/interfaces/perl5/Makefile.PL
deleted file mode 100644
index 6c217d9e627..00000000000
--- a/src/interfaces/perl5/Makefile.PL
+++ /dev/null
@@ -1,107 +0,0 @@
-#-------------------------------------------------------
-#
-# $Id: Makefile.PL,v 1.18 2001/08/26 22:28:04 petere Exp $
-#
-# Copyright (c) 1997, 1998 Edmund Mergl
-#
-#-------------------------------------------------------
-
-use ExtUtils::MakeMaker;
-use Config;
-use strict;
-
-my $srcdir=$ENV{SRCDIR};
-
-my %opts;
-
-%opts = (
- NAME => 'Pg',
- VERSION_FROM => "Pg.pm",
- OBJECT => "Pg\$(OBJ_EXT)",
-# explicit mappings required for VPATH builds
- PM => { "$srcdir/Pg.pm" => '$(INST_LIBDIR)/Pg.pm' },
- MAN3PODS => { "$srcdir/Pg.pm" => '$(INST_MAN3DIR)/Pg.$(MAN3EXT)' },
-);
-
-
-if (! -d $ENV{POSTGRES_LIB} || ! -d $ENV{POSTGRES_INCLUDE}) {
-
- # Check that we actually are inside the Postgres source tree
- if (! -d "../libpq") {
- die
-"To install Pg separately from the Postgres distribution, you must
-set environment variables POSTGRES_LIB and POSTGRES_INCLUDE to point
-to where Postgres is installed (often /usr/local/pgsql/{lib,include}).\n";
- }
-
-} else {
-
- # Setup for standalone installation when Postgres already is installed.
-
- %opts = (
- %opts,
- INC => "-I$ENV{POSTGRES_INCLUDE}",
- LIBS => ["-L$ENV{POSTGRES_LIB} -lpq"],
- );
-}
-
-
-WriteMakefile(%opts);
-
-
-
-# Put the proper runpath into the shared object.
-
-sub MY::dynamic_lib {
- package MY;
- my $inherited= shift->SUPER::dynamic_lib(@_);
-
- my $pglibdir = $ENV{PGLIBDIR};
- return $inherited if $pglibdir eq '';
-
- # Remove any misguided attempts to set the runpath.
- $inherited =~ s/LD_RUN_PATH=\"\$\(LD_RUN_PATH\)\" //g;
- $inherited =~ s/-R\S*//g;
- $inherited =~ s/-rpath\S*//g;
-
- my $rpath;
- # Note that this could be different from what Makefile.port has
- # because a different compiler/linker could be used.
- SWITCH: for ($Config::Config{'osname'}) {
- /hpux/ and $rpath = "+b $pglibdir", last;
- /freebsd/ and $rpath = "-R$pglibdir", last;
- /irix/ and $rpath = "-R$pglibdir", last;
- /linux/ and $rpath = "-Wl,-rpath,$pglibdir", last;
- /netbsd/ and $rpath = "-R$pglibdir", last;
- /openbsd/ and $rpath = "-R$pglibdir", last;
- /solaris/ and $rpath = "-R$pglibdir", last;
- /svr5/ and $rpath = "-R$pglibdir", last;
- }
-
- $inherited=~ s,OTHERLDFLAGS =,OTHERLDFLAGS = $rpath , if defined $rpath;
- $inherited;
-}
-
-
-
-# VPATH-aware version of this rule
-sub MY::xs_c {
- my($self) = shift;
- return '' unless $self->needs_linking();
- '
-.xs.c:
- $(PERL) -I$(PERL_ARCHLIB) -I$(PERL_LIB) $(XSUBPP) $(XSPROTOARG) $(XSUBPPARGS) $< > $@
-';
-}
-
-# Delete this rule. We can use the above one.
-sub MY::xs_o {
- '';
-}
-
-
-# This rule tries to rebuild the Makefile from Makefile.PL. We can do
-# that better ourselves.
-sub MY::makefile {
- '';
-}
diff --git a/src/interfaces/perl5/Pg.pm b/src/interfaces/perl5/Pg.pm
deleted file mode 100644
index 920612ebb4e..00000000000
--- a/src/interfaces/perl5/Pg.pm
+++ /dev/null
@@ -1,656 +0,0 @@
-#-------------------------------------------------------
-#
-# $Id: Pg.pm,v 1.10 2001/09/10 04:19:19 momjian Exp $
-#
-# Copyright (c) 1997, 1998 Edmund Mergl
-#
-#-------------------------------------------------------
-
-package Pg;
-
-#use strict;
-use Carp;
-use vars qw($VERSION @ISA @EXPORT $AUTOLOAD);
-
-require Exporter;
-require DynaLoader;
-require AutoLoader;
-require 5.002;
-
-@ISA = qw(Exporter DynaLoader);
-
-# Items to export into callers namespace by default.
-@EXPORT = qw(
- PQconnectdb
- PQsetdbLogin
- PQsetdb
- PQconndefaults
- PQfinish
- PQreset
- PQrequestCancel
- PQdb
- PQuser
- PQpass
- PQhost
- PQport
- PQtty
- PQoptions
- PQstatus
- PQerrorMessage
- PQsocket
- PQbackendPID
- PQtrace
- PQuntrace
- PQexec
- PQnotifies
- PQsendQuery
- PQgetResult
- PQisBusy
- PQconsumeInput
- PQgetline
- PQputline
- PQgetlineAsync
- PQputnbytes
- PQendcopy
- PQmakeEmptyPGresult
- PQresultStatus
- PQntuples
- PQnfields
- PQbinaryTuples
- PQfname
- PQfnumber
- PQftype
- PQfsize
- PQfmod
- PQcmdStatus
- PQoidStatus
- PQcmdTuples
- PQgetvalue
- PQgetlength
- PQgetisnull
- PQclear
- PQprint
- PQdisplayTuples
- PQprintTuples
- PQlo_open
- PQlo_close
- PQlo_read
- PQlo_write
- PQlo_lseek
- PQlo_creat
- PQlo_tell
- PQlo_unlink
- PQlo_import
- PQlo_export
- PGRES_CONNECTION_OK
- PGRES_CONNECTION_BAD
- PGRES_EMPTY_QUERY
- PGRES_COMMAND_OK
- PGRES_TUPLES_OK
- PGRES_COPY_OUT
- PGRES_COPY_IN
- PGRES_BAD_RESPONSE
- PGRES_NONFATAL_ERROR
- PGRES_FATAL_ERROR
- PGRES_INV_SMGRMASK
- PGRES_INV_WRITE
- PGRES_INV_READ
- PGRES_InvalidOid
-);
-
-$Pg::VERSION = '1.9.0';
-
-sub AUTOLOAD {
- # This AUTOLOAD is used to 'autoload' constants from the constant()
- # XS function. If a constant is not found then control is passed
- # to the AUTOLOAD in AutoLoader.
-
- my $constname;
- ($constname = $AUTOLOAD) =~ s/.*:://;
- my $val = constant($constname, @_ ? $_[0] : 0);
- if ($! != 0) {
- if ($! =~ /Invalid/) {
- $AutoLoader::AUTOLOAD = $AUTOLOAD;
- goto &AutoLoader::AUTOLOAD;
- }
- else {
- croak "Your vendor has not defined Pg macro $constname";
- }
- }
- eval "sub $AUTOLOAD { $val }";
- goto &$AUTOLOAD;
-}
-
-bootstrap Pg $VERSION;
-
-sub doQuery {
-
- my $conn = shift;
- my $query = shift;
- my $array_ref = shift;
-
- my ($result, $status, $i, $j);
-
- if ($result = $conn->exec($query)) {
- if (2 == ($status = $result->resultStatus)) {
- for $i (0..$result->ntuples - 1) {
- for $j (0..$result->nfields - 1) {
- $$array_ref[$i][$j] = $result->getvalue($i, $j);
- }
- }
- }
- }
- return $status;
-}
-
-
-1;
-
-__END__
-
-
-=head1 NAME
-
-Pg - Perl5 extension for PostgreSQL
-
-
-=head1 SYNOPSIS
-
-new style:
-
- use Pg;
- $conn = Pg::connectdb("dbname=template1");
- $result = $conn->exec("create database pgtest");
-
-
-old style (depreciated):
-
- use Pg;
- $conn = PQsetdb('', '', '', '', template1);
- $result = PQexec($conn, "create database pgtest");
- PQclear($result);
- PQfinish($conn);
-
-
-=head1 DESCRIPTION
-
-The Pg module permits you to access all functions of the
-Libpq interface of PostgreSQL. Libpq is the programmer's
-interface to PostgreSQL. Pg tries to resemble this
-interface as close as possible. For examples of how to
-use this module, look at the file test.pl. For further
-examples look at the Libpq applications in
-../src/test/examples and ../src/test/regress.
-
-You have the choice between the old C-style and a
-new, more Perl-ish style. The old style has the
-benefit, that existing Libpq applications can be
-ported to perl just by prepending every variable
-with a '$'. The new style uses class packages and
-might be more familiar for C++-programmers.
-
-
-=head1 GUIDELINES
-
-=head2 new style
-
-The new style uses blessed references as objects.
-After creating a new connection or result object,
-the relevant Libpq functions serve as virtual methods.
-One benefit of the new style: you do not have to care
-about freeing the connection- and result-structures.
-Perl calls the destructor whenever the last reference
-to an object goes away.
-
-The method fetchrow can be used to fetch the next row from
-the server: while (@row = $result->fetchrow).
-Columns which have NULL as value will be set to C<undef>.
-
-
-=head2 old style
-
-All functions and constants are imported into the calling
-packages name-space. In order to to get a uniform naming,
-all functions start with 'PQ' (e.g. PQlo_open) and all
-constants start with 'PGRES_' (e.g. PGRES_CONNECTION_OK).
-
-There are two functions, which allocate memory, that has
-to be freed by the user:
-
- PQsetdb, use PQfinish to free memory.
- PQexec, use PQclear to free memory.
-
-Pg.pm contains one convenience function: doQuery. It fills a
-two-dimensional array with the result of your query. Usage:
-
- Pg::doQuery($conn, "select attr1, attr2 from tbl", \@ary);
-
- for $i ( 0 .. $#ary ) {
- for $j ( 0 .. $#{$ary[$i]} ) {
- print "$ary[$i][$j]\t";
- }
- print "\n";
- }
-
-Notice the inner loop !
-
-
-=head1 CAVEATS
-
-There are few exceptions, where the perl-functions differs
-from the C-counterpart: PQprint, PQnotifies and PQconndefaults.
-These functions deal with structures, which have been
-implemented in perl using lists or hash.
-
-
-=head1 FUNCTIONS
-
-The functions have been divided into three sections:
-Connection, Result, Large Objects. For details please
-read L<libpq>.
-
-
-=head2 1. Connection
-
-With these functions you can establish and close a connection to a
-database. In Libpq a connection is represented by a structure called
-PGconn.
-
-When opening a connection a given database name is always converted to
-lower-case, unless it is surrounded by double quotes. All unspecified
-parameters are replaced by environment variables or by hard coded defaults:
-
- parameter environment variable hard coded default
- --------------------------------------------------
- host PGHOST localhost
- port PGPORT 5432
- options PGOPTIONS ""
- tty PGTTY ""
- dbname PGDATABASE current userid
- user PGUSER current userid
- password PGPASSWORD ""
-
-Using appropriate methods you can access almost all fields of the
-returned PGconn structure.
-
- $conn = Pg::setdbLogin($pghost, $pgport, $pgoptions, $pgtty, $dbname, $login, $pwd)
-
-Opens a new connection to the backend. The connection identifier $conn
-( a pointer to the PGconn structure ) must be used in subsequent commands
-for unique identification. Before using $conn you should call $conn->status
-to ensure, that the connection was properly made.
-
- $conn = Pg::setdb($pghost, $pgport, $pgoptions, $pgtty, $dbname)
-
-The method setdb should be used when username/password authentication is
-not needed.
-
- $conn = Pg::connectdb("option1=value option2=value ...")
-
-Opens a new connection to the backend using connection information in a
-string. Possible options are: host, port, options, tty, dbname, user, password.
-The connection identifier $conn (a pointer to the PGconn structure)
-must be used in subsequent commands for unique identification. Before using
-$conn you should call $conn->status to ensure, that the connection was
-properly made.
-
- $Option_ref = Pg::conndefaults()
-
- while(($key, $val) = each %$Option_ref) {
- print "$key, $val\n";
-
-Returns a reference to a hash containing as keys all possible options for
-connectdb(). The values are the current defaults. This function differs from
-his C-counterpart, which returns the complete conninfoOption structure.
-
- PQfinish($conn)
-
-Old style only !
-Closes the connection to the backend and frees the connection data structure.
-
- $conn->reset
-
-Resets the communication port with the backend and tries
-to establish a new connection.
-
- $ret = $conn->requestCancel
-
-Abandon processing of the current query. Regardless of the return value of
-requestCancel, the application must continue with the normal result-reading
-sequence using getResult. If the current query is part of a transaction,
-cancellation will abort the whole transaction.
-
- $dbname = $conn->db
-
-Returns the database name of the connection.
-
- $pguser = $conn->user
-
-Returns the Postgres user name of the connection.
-
- $pguser = $conn->pass
-
-Returns the Postgres password of the connection.
-
- $pghost = $conn->host
-
-Returns the host name of the connection.
-
- $pgport = $conn->port
-
-Returns the port of the connection.
-
- $pgtty = $conn->tty
-
-Returns the tty of the connection.
-
- $pgoptions = $conn->options
-
-Returns the options used in the connection.
-
- $status = $conn->status
-
-Returns the status of the connection. For comparing the status
-you may use the following constants:
-
- - PGRES_CONNECTION_OK
- - PGRES_CONNECTION_BAD
-
- $errorMessage = $conn->errorMessage
-
-Returns the last error message associated with this connection.
-
- $fd = $conn->socket
-
-Obtain the file descriptor number for the backend connection socket.
-A result of -1 indicates that no backend connection is currently open.
-
- $pid = $conn->backendPID
-
-Returns the process-id of the corresponding backend proceess.
-
- $conn->trace(debug_port)
-
-Messages passed between frontend and backend are echoed to the
-debug_port file stream.
-
- $conn->untrace
-
-Disables tracing.
-
- $result = $conn->exec($query)
-
-Submits a query to the backend. The return value is a pointer to
-the PGresult structure, which contains the complete query-result
-returned by the backend. In case of failure, the pointer points
-to an empty structure. In this, the perl implementation differs
-from the C-implementation. Using the old style, even the empty
-structure has to be freed using PQfree. Before using $result you
-should call resultStatus to ensure, that the query was
-properly executed.
-
- ($table, $pid) = $conn->notifies
-
-Checks for asynchronous notifications. This functions differs from
-the C-counterpart which returns a pointer to a new allocated structure,
-whereas the perl implementation returns a list. $table is the table
-which has been listened to and $pid is the process id of the backend.
-
-
- $ret = $conn->sendQuery($string, $query)
-
-Submit a query to Postgres without waiting for the result(s). After
-successfully calling PQsendQuery, call PQgetResult one or more times
-to obtain the query results. PQsendQuery may not be called again until
-getResult has returned NULL, indicating that the query is done.
-
- $result = $conn->getResult
-
-Wait for the next result from a prior PQsendQuery, and return it. NULL
-is returned when the query is complete and there will be no more results.
-getResult will block only if a query is active and the necessary response
-data has not yet been read by PQconsumeInput.
-
- $ret = $conn->isBusy
-
-Returns TRUE if a query is busy, that is, PQgetResult would block waiting
-for input. A FALSE return indicates that PQgetResult can be called with
-assurance of not blocking.
-
- $result = $conn->consumeInput
-
-If input is available from the backend, consume it. After calling consumeInput,
-the application may check isBusy and/or notifies to see if their state has changed.
-
- $ret = $conn->getline($string, $length)
-
-Reads a string up to $length - 1 characters from the backend.
-getline returns EOF at EOF, 0 if the entire line has been read,
-and 1 if the buffer is full. If a line consists of the two
-characters "\." the backend has finished sending the results of
-the copy command.
-
- $ret = $conn->putline($string)
-
-Sends a string to the backend. The application must explicitly
-send the two characters "\." to indicate to the backend that
-it has finished sending its data.
-
- $ret = $conn->getlineAsync($buffer, $bufsize)
-
-Non-blocking version of getline. It reads up to $bufsize
-characters from the backend. getlineAsync returns -1 if
-the end-of-copy-marker has been recognized, 0 if no data
-is avilable, and >0 the number of bytes returned.
-
- $ret = $conn->putnbytes($buffer, $nbytes)
-
-Sends n bytes to the backend. Returns 0 if OK, EOF if not.
-
- $ret = $conn->endcopy
-
-This function waits until the backend has finished the copy.
-It should either be issued when the last string has been sent
-to the backend using putline or when the last string has
-been received from the backend using getline. endcopy returns
-0 on success, 1 on failure.
-
- $result = $conn->makeEmptyPGresult($status);
-
-Returns a newly allocated, initialized result with given status.
-
-
-=head2 2. Result
-
-With these functions you can send commands to a database and
-investigate the results. In Libpq the result of a command is
-represented by a structure called PGresult. Using the appropriate
-methods you can access almost all fields of this structure.
-
- $result_status = $result->resultStatus
-
-Returns the status of the result. For comparing the status you
-may use one of the following constants depending upon the
-command executed:
-
- - PGRES_EMPTY_QUERY
- - PGRES_COMMAND_OK
- - PGRES_TUPLES_OK
- - PGRES_COPY_OUT
- - PGRES_COPY_IN
- - PGRES_BAD_RESPONSE
- - PGRES_NONFATAL_ERROR
- - PGRES_FATAL_ERROR
-
-Use the functions below to access the contents of the PGresult structure.
-
- $ntuples = $result->ntuples
-
-Returns the number of tuples in the query result.
-
- $nfields = $result->nfields
-
-Returns the number of fields in the query result.
-
- $ret = $result->binaryTuples
-
-Returns 1 if the tuples in the query result are bianry.
-
- $fname = $result->fname($field_num)
-
-Returns the field name associated with the given field number.
-
- $fnumber = $result->fnumber($field_name)
-
-Returns the field number associated with the given field name.
-
- $ftype = $result->ftype($field_num)
-
-Returns the oid of the type of the given field number.
-
- $fsize = $result->fsize($field_num)
-
-Returns the size in bytes of the type of the given field number.
-It returns -1 if the field has a variable length.
-
- $fmod = $result->fmod($field_num)
-
-Returns the type-specific modification data of the field associated
-with the given field index. Field indices start at 0.
-
- $cmdStatus = $result->cmdStatus
-
-Returns the command status of the last query command.
-In case of DELETE it returns also the number of deleted tuples.
-In case of INSERT it returns also the OID of the inserted
-tuple followed by 1 (the number of affected tuples).
-
-
- $oid = $result->oidStatus
-
-In case the last query was an INSERT command it returns the oid of the
-inserted tuple.
-
- $oid = $result->cmdTuples
-
-In case the last query was an INSERT or DELETE command it returns the
-number of affected tuples.
-
- $value = $result->getvalue($tup_num, $field_num)
-
-Returns the value of the given tuple and field. This is
-a null-terminated ASCII string. Binary cursors will not
-work.
-
- $length = $result->getlength($tup_num, $field_num)
-
-Returns the length of the value for a given tuple and field.
-
- $null_status = $result->getisnull($tup_num, $field_num)
-
-Returns the NULL status for a given tuple and field.
-
- PQclear($result)
-
-Old style only !
-Frees all memory of the given result.
-
- $res->fetchrow
-
-New style only !
-Fetches the next row from the server and returns NULL if all rows
-have been processed. Columns which have NULL as value will be set to C<undef>.
-
- $result->print($fout, $header, $align, $standard, $html3, $expanded, $pager, $fieldSep, $tableOpt, $caption, ...)
-
-Prints out all the tuples in an intelligent manner. This function
-differs from the C-counterpart. The struct PQprintOpt has been
-implemented with a list. This list is of variable length, in order
-to care for the character array fieldName in PQprintOpt.
-The arguments $header, $align, $standard, $html3, $expanded, $pager
-are boolean flags. The arguments $fieldSep, $tableOpt, $caption
-are strings. You may append additional strings, which will be
-taken as replacement for the field names.
-
- $result->displayTuples($fp, $fillAlign, $fieldSep, $printHeader, qiet)
-
-Kept for backward compatibility. Use print.
-
- $result->printTuples($fout, $printAttName, $terseOutput, $width)
-
-Kept for backward compatibility. Use print.
-
-
-=head2 3. Large Objects
-
-These functions provide file-oriented access to user data.
-The large object interface is modeled after the Unix file
-system interface with analogies of open, close, read, write,
-lseek, tell. In order to get a consistent naming, all function
-names have been prepended with 'PQ' (old style only).
-
- $lobj_fd = $conn->lo_open($lobjId, $mode)
-
-Opens an existing large object and returns an object id.
-For the mode bits see lo_create. Returns -1 upon failure.
-
- $ret = $conn->lo_close($lobj_fd)
-
-Closes an existing large object. Returns 0 upon success
-and -1 upon failure.
-
- $nbytes = $conn->lo_read($lobj_fd, $buf, $len)
-
-Reads $len bytes into $buf from large object $lobj_fd.
-Returns the number of bytes read and -1 upon failure.
-
- $nbytes = $conn->lo_write($lobj_fd, $buf, $len)
-
-Writes $len bytes of $buf into the large object $lobj_fd.
-Returns the number of bytes written and -1 upon failure.
-
- $ret = $conn->lo_lseek($lobj_fd, $offset, $whence)
-
-Change the current read or write location on the large object
-$obj_id. Currently $whence can only be 0 (L_SET).
-
- $lobjId = $conn->lo_creat($mode)
-
-Creates a new large object. $mode is a bit-mask describing
-different attributes of the new object. Use the following constants:
-
- - PGRES_INV_SMGRMASK
- - PGRES_INV_WRITE
- - PGRES_INV_READ
-
-Upon failure it returns PGRES_InvalidOid.
-
- $location = $conn->lo_tell($lobj_fd)
-
-Returns the current read or write location on the large object
-$lobj_fd.
-
- $ret = $conn->lo_unlink($lobjId)
-
-Deletes a large object. Returns -1 upon failure.
-
- $lobjId = $conn->lo_import($filename)
-
-Imports a Unix file as large object and returns
-the object id of the new object.
-
- $ret = $conn->lo_export($lobjId, $filename)
-
-Exports a large object into a Unix file.
-Returns -1 upon failure, 1 otherwise.
-
-
-=head1 AUTHOR
-
- Edmund Mergl <E.Mergl@bawue.de>
-
-=head1 SEE ALSO
-
-L<libpq>, L<large_objects>
-
-=cut
diff --git a/src/interfaces/perl5/Pg.xs b/src/interfaces/perl5/Pg.xs
deleted file mode 100644
index 76c63cbebea..00000000000
--- a/src/interfaces/perl5/Pg.xs
+++ /dev/null
@@ -1,1320 +0,0 @@
-/*-------------------------------------------------------
- *
- * $Id: Pg.xs,v 1.17 2001/09/10 04:19:19 momjian Exp $ with patch for NULs
- *
- * Copyright (c) 1997, 1998 Edmund Mergl
- *
- *-------------------------------------------------------*/
-
-#include "EXTERN.h"
-#include "perl.h"
-#include "XSUB.h"
-#include "ppport.h"
-#include <string.h>
-#include <stdio.h>
-#include <fcntl.h>
-
-#include "libpq-fe.h"
-
-typedef struct pg_conn *PG_conn;
-typedef struct pg_result *PG_result;
-
-typedef struct pg_results
-{
- PGresult *result;
- int row;
-} PGresults;
-
-typedef struct pg_results *PG_results;
-
-
-static double
-constant(name, arg)
-char *name;
-int arg; {
- errno = 0;
- switch (*name) {
- case 'A':
- break;
- case 'B':
- break;
- case 'C':
- break;
- case 'D':
- break;
- case 'E':
- break;
- case 'F':
- break;
- case 'G':
- break;
- case 'H':
- break;
- case 'I':
- break;
- case 'J':
- break;
- case 'K':
- break;
- case 'L':
- break;
- case 'M':
- break;
- case 'N':
- break;
- case 'O':
- break;
- case 'P':
- if (strEQ(name, "PGRES_CONNECTION_OK"))
- return 0;
- if (strEQ(name, "PGRES_CONNECTION_BAD"))
- return 1;
- if (strEQ(name, "PGRES_INV_SMGRMASK"))
- return 0x0000ffff;
- if (strEQ(name, "PGRES_INV_WRITE"))
- return 0x00020000;
- if (strEQ(name, "PGRES_INV_READ"))
- return 0x00040000;
- if (strEQ(name, "PGRES_InvalidOid"))
- return 0;
- if (strEQ(name, "PGRES_EMPTY_QUERY"))
- return 0;
- if (strEQ(name, "PGRES_COMMAND_OK"))
- return 1;
- if (strEQ(name, "PGRES_TUPLES_OK"))
- return 2;
- if (strEQ(name, "PGRES_COPY_OUT"))
- return 3;
- if (strEQ(name, "PGRES_COPY_IN"))
- return 4;
- if (strEQ(name, "PGRES_BAD_RESPONSE"))
- return 5;
- if (strEQ(name, "PGRES_NONFATAL_ERROR"))
- return 6;
- if (strEQ(name, "PGRES_FATAL_ERROR"))
- return 7;
- break;
- case 'Q':
- break;
- case 'R':
- break;
- case 'S':
- break;
- case 'T':
- break;
- case 'U':
- break;
- case 'V':
- break;
- case 'W':
- break;
- case 'X':
- break;
- case 'Y':
- break;
- case 'Z':
- break;
- case 'a':
- break;
- case 'b':
- break;
- case 'c':
- break;
- case 'd':
- break;
- case 'e':
- break;
- case 'f':
- break;
- case 'g':
- break;
- case 'h':
- break;
- case 'i':
- break;
- case 'j':
- break;
- case 'k':
- break;
- case 'l':
- break;
- case 'm':
- break;
- case 'n':
- break;
- case 'o':
- break;
- case 'p':
- break;
- case 'q':
- break;
- case 'r':
- break;
- case 's':
- break;
- case 't':
- break;
- case 'u':
- break;
- case 'v':
- break;
- case 'w':
- break;
- case 'x':
- break;
- case 'y':
- break;
- case 'z':
- break;
- }
- errno = EINVAL;
- return 0;
-
-not_there:
- errno = ENOENT;
- return 0;
-}
-
-
-
-
-MODULE = Pg PACKAGE = Pg
-
-PROTOTYPES: DISABLE
-
-
-double
-constant(name,arg)
- char * name
- int arg
-
-
-PGconn *
-PQconnectdb(conninfo)
- char * conninfo
- CODE:
- /* convert dbname to lower case if not surrounded by double quotes */
- char *ptr = strstr(conninfo, "dbname");
- if (ptr) {
- while (*ptr && *ptr != '=') {
- ptr++;
- }
- ptr++;
- while (*ptr == ' ' || *ptr == '\t') {
- ptr++;
- }
- if (*ptr == '"') {
- *ptr++ = ' ';
- while (*ptr && *ptr != '"') {
- ptr++;
- }
- if (*ptr == '"') {
- *ptr++ = ' ';
- }
- } else {
- while (*ptr && *ptr != ' ' && *ptr != '\t') {
- *ptr = tolower((unsigned char) *ptr);
- ptr++;
- }
- }
- }
- RETVAL = PQconnectdb((const char *)conninfo);
- OUTPUT:
- RETVAL
-
-
-PGconn *
-PQsetdbLogin(pghost, pgport, pgoptions, pgtty, dbname, login, pwd)
- char * pghost
- char * pgport
- char * pgoptions
- char * pgtty
- char * dbname
- char * login
- char * pwd
-
-
-PGconn *
-PQsetdb(pghost, pgport, pgoptions, pgtty, dbname)
- char * pghost
- char * pgport
- char * pgoptions
- char * pgtty
- char * dbname
-
-
-HV *
-PQconndefaults()
- CODE:
- PQconninfoOption *infoOptions;
- RETVAL = newHV();
- if (infoOptions = PQconndefaults()) {
- PQconninfoOption *option;
- for (option = infoOptions; option->keyword != NULL; option++) {
- if (option->val != NULL) {
- hv_store(RETVAL, option->keyword, strlen(option->keyword), newSVpv(option->val, 0), 0);
- } else {
- hv_store(RETVAL, option->keyword, strlen(option->keyword), newSVpv("", 0), 0);
- }
- }
- PQconninfoFree(infoOptions);
- }
- OUTPUT:
- RETVAL
-
-
-void
-PQfinish(conn)
- PGconn * conn
-
-
-void
-PQreset(conn)
- PGconn * conn
-
-
-int
-PQrequestCancel(conn)
- PGconn * conn
-
-char *
-PQdb(conn)
- PGconn * conn
-
-
-char *
-PQuser(conn)
- PGconn * conn
-
-
-char *
-PQpass(conn)
- PGconn * conn
-
-
-char *
-PQhost(conn)
- PGconn * conn
-
-
-char *
-PQport(conn)
- PGconn * conn
-
-
-char *
-PQtty(conn)
- PGconn * conn
-
-
-char *
-PQoptions(conn)
- PGconn * conn
-
-
-ConnStatusType
-PQstatus(conn)
- PGconn * conn
-
-
-char *
-PQerrorMessage(conn)
- PGconn * conn
-
-
-int
-PQsocket(conn)
- PGconn * conn
-
-
-int
-PQbackendPID(conn)
- PGconn * conn
-
-
-void
-PQtrace(conn, debug_port)
- PGconn * conn
- FILE * debug_port
-
-
-void
-PQuntrace(conn)
- PGconn * conn
-
-
-
-PGresult *
-PQexec(conn, query)
- PGconn * conn
- char * query
- CODE:
- RETVAL = PQexec(conn, query);
- if (! RETVAL) {
- RETVAL = PQmakeEmptyPGresult(conn, PGRES_FATAL_ERROR);
- }
- OUTPUT:
- RETVAL
-
-
-void
-PQnotifies(conn)
- PGconn * conn
- PREINIT:
- PGnotify *notify;
- PPCODE:
- notify = PQnotifies(conn);
- if (notify) {
- XPUSHs(sv_2mortal(newSVpv((char *)notify->relname, 0)));
- XPUSHs(sv_2mortal(newSViv(notify->be_pid)));
- free(notify);
- }
-
-
-int
-PQsendQuery(conn, query)
- PGconn * conn
- char * query
-
-
-PGresult *
-PQgetResult(conn)
- PGconn * conn
- CODE:
- RETVAL = PQgetResult(conn);
- if (! RETVAL) {
- RETVAL = PQmakeEmptyPGresult(conn, PGRES_FATAL_ERROR);
- }
- OUTPUT:
- RETVAL
-
-
-int
-PQisBusy(conn)
- PGconn * conn
-
-
-int
-PQconsumeInput(conn)
- PGconn * conn
-
-
-int
-PQgetline(conn, string, length)
- PREINIT:
- SV *bufsv = SvROK(ST(1)) ? SvRV(ST(1)) : ST(1);
- INPUT:
- PGconn * conn
- int length
- char * string = sv_grow(bufsv, length);
- CODE:
- RETVAL = PQgetline(conn, string, length);
- OUTPUT:
- RETVAL
- string
-
-
-int
-PQputline(conn, string)
- PGconn * conn
- char * string
-
-
-int
-PQgetlineAsync(conn, buffer, bufsize)
- PREINIT:
- SV *bufsv = SvROK(ST(1)) ? SvRV(ST(1)) : ST(1);
- INPUT:
- PGconn * conn
- int bufsize
- char * buffer = sv_grow(bufsv, bufsize);
- CODE:
- RETVAL = PQgetlineAsync(conn, buffer, bufsize);
- OUTPUT:
- RETVAL
- buffer
-
-
-int
-PQputnbytes(conn, buffer, nbytes)
- PGconn * conn
- char * buffer
- int nbytes
-
-
-int
-PQendcopy(conn)
- PGconn * conn
-
-
-PGresult *
-PQmakeEmptyPGresult(conn, status)
- PGconn * conn
- ExecStatusType status
-
-
-ExecStatusType
-PQresultStatus(res)
- PGresult * res
-
-
-int
-PQntuples(res)
- PGresult * res
-
-
-int
-PQnfields(res)
- PGresult * res
-
-
-int
-PQbinaryTuples(res)
- PGresult * res
-
-
-char *
-PQfname(res, field_num)
- PGresult * res
- int field_num
-
-
-int
-PQfnumber(res, field_name)
- PGresult * res
- char * field_name
-
-
-Oid
-PQftype(res, field_num)
- PGresult * res
- int field_num
-
-
-short
-PQfsize(res, field_num)
- PGresult * res
- int field_num
-
-
-int
-PQfmod(res, field_num)
- PGresult * res
- int field_num
-
-
-char *
-PQcmdStatus(res)
- PGresult * res
-
-
-char *
-PQoidStatus(res)
- PGresult * res
- CODE:
- RETVAL = (char *)PQoidStatus(res);
- OUTPUT:
- RETVAL
-
-
-char *
-PQcmdTuples(res)
- PGresult * res
- CODE:
- RETVAL = (char *)PQcmdTuples(res);
- OUTPUT:
- RETVAL
-
-
-char *
-PQgetvalue(res, tup_num, field_num)
- PGresult * res
- int tup_num
- int field_num
-
-
-int
-PQgetlength(res, tup_num, field_num)
- PGresult * res
- int tup_num
- int field_num
-
-
-int
-PQgetisnull(res, tup_num, field_num)
- PGresult * res
- int tup_num
- int field_num
-
-
-void
-PQclear(res)
- PGresult * res
-
-
-void
-PQprint(fout, res, header, align, standard, html3, expanded, pager, fieldSep, tableOpt, caption, ...)
- FILE * fout
- PGresult * res
- pqbool header
- pqbool align
- pqbool standard
- pqbool html3
- pqbool expanded
- pqbool pager
- char * fieldSep
- char * tableOpt
- char * caption
- PREINIT:
- PQprintOpt ps;
- int i;
- CODE:
- ps.header = header;
- ps.align = align;
- ps.standard = standard;
- ps.html3 = html3;
- ps.expanded = expanded;
- ps.pager = pager;
- ps.fieldSep = fieldSep;
- ps.tableOpt = tableOpt;
- ps.caption = caption;
- Newz(0, ps.fieldName, items + 1 - 11, char*);
- for (i = 11; i < items; i++) {
- ps.fieldName[i - 11] = (char *)SvPV(ST(i), PL_na);
- }
- PQprint(fout, res, &ps);
- Safefree(ps.fieldName);
-
-
-void
-PQdisplayTuples(res, fp, fillAlign, fieldSep, printHeader, quiet)
- PGresult * res
- FILE * fp
- int fillAlign
- char * fieldSep
- int printHeader
- int quiet
- CODE:
- PQdisplayTuples(res, fp, fillAlign, (const char *)fieldSep, printHeader, quiet);
-
-
-void
-PQprintTuples(res, fout, printAttName, terseOutput, width)
- PGresult * res
- FILE * fout
- int printAttName
- int terseOutput
- int width
-
-
-int
-lo_open(conn, lobjId, mode)
- PGconn * conn
- Oid lobjId
- int mode
- ALIAS:
- PQlo_open = 1
-
-
-int
-lo_close(conn, fd)
- PGconn * conn
- int fd
- ALIAS:
- PQlo_close = 1
-
-
-int
-lo_read(conn, fd, buf, len)
- ALIAS:
- PQlo_read = 1
- PREINIT:
- SV *bufsv = SvROK(ST(2)) ? SvRV(ST(2)) : ST(2);
- INPUT:
- PGconn * conn
- int fd
- int len
- char * buf = sv_grow(bufsv, len + 1);
- CODE:
- RETVAL = lo_read(conn, fd, buf, len);
- if (RETVAL > 0) {
- SvCUR_set(bufsv, RETVAL);
- *SvEND(bufsv) = '\0';
- }
- OUTPUT:
- RETVAL
- buf sv_setpvn((SV*)ST(2), buf, RETVAL); /* to handle NULs */
-
-int
-lo_write(conn, fd, buf, len)
- PGconn * conn
- int fd
- char * buf
- int len
- ALIAS:
- PQlo_write = 1
-
-
-int
-lo_lseek(conn, fd, offset, whence)
- PGconn * conn
- int fd
- int offset
- int whence
- ALIAS:
- PQlo_lseek = 1
-
-
-Oid
-lo_creat(conn, mode)
- PGconn * conn
- int mode
- ALIAS:
- PQlo_creat = 1
-
-
-int
-lo_tell(conn, fd)
- PGconn * conn
- int fd
- ALIAS:
- PQlo_tell = 1
-
-
-int
-lo_unlink(conn, lobjId)
- PGconn * conn
- Oid lobjId
- ALIAS:
- PQlo_unlink = 1
-
-
-Oid
-lo_import(conn, filename)
- PGconn * conn
- char * filename
- ALIAS:
- PQlo_import = 1
-
-
-int
-lo_export(conn, lobjId, filename)
- PGconn * conn
- Oid lobjId
- char * filename
- ALIAS:
- PQlo_export = 1
-
-
-
-
-PG_conn
-connectdb(conninfo)
- char * conninfo
- CODE:
- /* convert dbname to lower case if not surrounded by double quotes */
- char *ptr = strstr(conninfo, "dbname");
- if (ptr) {
- ptr += 6;
- while (*ptr && *ptr++ != '=') {
- ;
- }
- while (*ptr && (*ptr == ' ' || *ptr == '\t')) {
- ptr++;
- }
- if (*ptr == '"') {
- *ptr++ = ' ';
- while (*ptr && *ptr != '"') {
- ptr++;
- }
- if (*ptr == '"') {
- *ptr++ = ' ';
- }
- } else {
- while (*ptr && *ptr != ' ' && *ptr != '\t') {
- *ptr = tolower((unsigned char) *ptr);
- ptr++;
- }
- }
- }
- RETVAL = PQconnectdb((const char *)conninfo);
- OUTPUT:
- RETVAL
-
-
-PG_conn
-setdbLogin(pghost, pgport, pgoptions, pgtty, dbname, login, pwd)
- char * pghost
- char * pgport
- char * pgoptions
- char * pgtty
- char * dbname
- char * login
- char * pwd
- CODE:
- RETVAL = PQsetdbLogin(pghost, pgport, pgoptions, pgtty, dbname,
- login, pwd);
- OUTPUT:
- RETVAL
-
-
-PG_conn
-setdb(pghost, pgport, pgoptions, pgtty, dbname)
- char * pghost
- char * pgport
- char * pgoptions
- char * pgtty
- char * dbname
- CODE:
- RETVAL = PQsetdb(pghost, pgport, pgoptions, pgtty, dbname);
- OUTPUT:
- RETVAL
-
-
-HV *
-conndefaults()
- CODE:
- PQconninfoOption *infoOptions;
- RETVAL = newHV();
- if (infoOptions = PQconndefaults()) {
- PQconninfoOption *option;
- for (option = infoOptions; option->keyword != NULL; option++) {
- if (option->val != NULL) {
- hv_store(RETVAL, option->keyword, strlen(option->keyword), newSVpv(option->val, 0), 0);
- } else {
- hv_store(RETVAL, option->keyword, strlen(option->keyword), newSVpv("", 0), 0);
- }
- }
- PQconninfoFree(infoOptions);
- }
- OUTPUT:
- RETVAL
-
-
-
-
-
-
-
-MODULE = Pg PACKAGE = PG_conn PREFIX = PQ
-
-PROTOTYPES: DISABLE
-
-
-void
-DESTROY(conn)
- PG_conn conn
- CODE:
- /* printf("DESTROY connection\n"); */
- PQfinish(conn);
-
-
-void
-PQreset(conn)
- PG_conn conn
-
-
-int
-PQrequestCancel(conn)
- PG_conn conn
-
-
-char *
-PQdb(conn)
- PG_conn conn
-
-
-char *
-PQuser(conn)
- PG_conn conn
-
-
-char *
-PQpass(conn)
- PG_conn conn
-
-
-char *
-PQhost(conn)
- PG_conn conn
-
-
-char *
-PQport(conn)
- PG_conn conn
-
-
-char *
-PQtty(conn)
- PG_conn conn
-
-
-char *
-PQoptions(conn)
- PG_conn conn
-
-
-ConnStatusType
-PQstatus(conn)
- PG_conn conn
-
-
-char *
-PQerrorMessage(conn)
- PG_conn conn
-
-
-int
-PQsocket(conn)
- PG_conn conn
-
-
-int
-PQbackendPID(conn)
- PG_conn conn
-
-
-void
-PQtrace(conn, debug_port)
- PG_conn conn
- FILE * debug_port
-
-
-void
-PQuntrace(conn)
- PG_conn conn
-
-
-PG_results
-PQexec(conn, query)
- PG_conn conn
- char * query
- CODE:
- RETVAL = (PG_results)calloc(1, sizeof(PGresults));
- if (RETVAL) {
- RETVAL->result = PQexec((PGconn *)conn, query);
- if (!RETVAL->result) {
- RETVAL->result = PQmakeEmptyPGresult((PGconn *)conn, PGRES_FATAL_ERROR);
- }
- }
- OUTPUT:
- RETVAL
-
-
-void
-PQnotifies(conn)
- PG_conn conn
- PREINIT:
- PGnotify *notify;
- PPCODE:
- notify = PQnotifies(conn);
- if (notify) {
- XPUSHs(sv_2mortal(newSVpv((char *)notify->relname, 0)));
- XPUSHs(sv_2mortal(newSViv(notify->be_pid)));
- free(notify);
- }
-
-
-int
-PQsendQuery(conn, query)
- PG_conn conn
- char * query
-
-
-PG_results
-PQgetResult(conn)
- PG_conn conn
- CODE:
- RETVAL = (PG_results)calloc(1, sizeof(PGresults));
- if (RETVAL) {
- RETVAL->result = PQgetResult((PGconn *)conn);
- if (!RETVAL->result) {
- RETVAL->result = PQmakeEmptyPGresult((PGconn *)conn, PGRES_FATAL_ERROR);
- }
- }
- OUTPUT:
- RETVAL
-
-
-int
-PQisBusy(conn)
- PG_conn conn
-
-
-int
-PQconsumeInput(conn)
- PG_conn conn
-
-
-int
-PQgetline(conn, string, length)
- PREINIT:
- SV *bufsv = SvROK(ST(1)) ? SvRV(ST(1)) : ST(1);
- INPUT:
- PG_conn conn
- int length
- char * string = sv_grow(bufsv, length);
- CODE:
- RETVAL = PQgetline(conn, string, length);
- OUTPUT:
- RETVAL
- string
-
-
-int
-PQputline(conn, string)
- PG_conn conn
- char * string
-
-
-int
-PQgetlineAsync(conn, buffer, bufsize)
- PREINIT:
- SV *bufsv = SvROK(ST(1)) ? SvRV(ST(1)) : ST(1);
- INPUT:
- PG_conn conn
- int bufsize
- char * buffer = sv_grow(bufsv, bufsize);
- CODE:
- RETVAL = PQgetline(conn, buffer, bufsize);
- OUTPUT:
- RETVAL
- buffer
-
-
-int
-PQendcopy(conn)
- PG_conn conn
-
-
-PG_results
-PQmakeEmptyPGresult(conn, status)
- PG_conn conn
- ExecStatusType status
- CODE:
- RETVAL = (PG_results)calloc(1, sizeof(PGresults));
- if (RETVAL) {
- RETVAL->result = PQmakeEmptyPGresult((PGconn *)conn, status);
- }
- OUTPUT:
- RETVAL
-
-
-int
-lo_open(conn, lobjId, mode)
- PG_conn conn
- Oid lobjId
- int mode
-
-
-int
-lo_close(conn, fd)
- PG_conn conn
- int fd
-
-
-int
-lo_read(conn, fd, buf, len)
- PREINIT:
- SV *bufsv = SvROK(ST(2)) ? SvRV(ST(2)) : ST(2);
- INPUT:
- PG_conn conn
- int fd
- int len
- char * buf = sv_grow(bufsv, len + 1);
- CODE:
- RETVAL = lo_read(conn, fd, buf, len);
- if (RETVAL > 0) {
- SvCUR_set(bufsv, RETVAL);
- *SvEND(bufsv) = '\0';
- }
- OUTPUT:
- RETVAL
- buf sv_setpvn((SV*)ST(2), buf, RETVAL); /* to handle NULs */
-
-
-int
-lo_write(conn, fd, buf, len)
- PG_conn conn
- int fd
- char * buf
- int len
-
-
-int
-lo_lseek(conn, fd, offset, whence)
- PG_conn conn
- int fd
- int offset
- int whence
-
-
-Oid
-lo_creat(conn, mode)
- PG_conn conn
- int mode
-
-
-int
-lo_tell(conn, fd)
- PG_conn conn
- int fd
-
-
-int
-lo_unlink(conn, lobjId)
- PG_conn conn
- Oid lobjId
-
-
-Oid
-lo_import(conn, filename)
- PG_conn conn
- char * filename
-
-
-int
-lo_export(conn, lobjId, filename)
- PG_conn conn
- Oid lobjId
- char * filename
-
-
-
-
-MODULE = Pg PACKAGE = PG_results PREFIX = PQ
-
-PROTOTYPES: DISABLE
-
-
-void
-DESTROY(res)
- PG_results res
- CODE:
- /* printf("DESTROY result\n"); */
- PQclear(res->result);
- Safefree(res);
-
-ExecStatusType
-PQresultStatus(res)
- PG_results res
- CODE:
- RETVAL = PQresultStatus(res->result);
- OUTPUT:
- RETVAL
-
-int
-PQntuples(res)
- PG_results res
- CODE:
- RETVAL = PQntuples(res->result);
- OUTPUT:
- RETVAL
-
-
-int
-PQnfields(res)
- PG_results res
- CODE:
- RETVAL = PQnfields(res->result);
- OUTPUT:
- RETVAL
-
-
-int
-PQbinaryTuples(res)
- PG_results res
- CODE:
- RETVAL = PQbinaryTuples(res->result);
- OUTPUT:
- RETVAL
-
-
-char *
-PQfname(res, field_num)
- PG_results res
- int field_num
- CODE:
- RETVAL = PQfname(res->result, field_num);
- OUTPUT:
- RETVAL
-
-
-int
-PQfnumber(res, field_name)
- PG_results res
- char * field_name
- CODE:
- RETVAL = PQfnumber(res->result, field_name);
- OUTPUT:
- RETVAL
-
-
-Oid
-PQftype(res, field_num)
- PG_results res
- int field_num
- CODE:
- RETVAL = PQftype(res->result, field_num);
- OUTPUT:
- RETVAL
-
-
-short
-PQfsize(res, field_num)
- PG_results res
- int field_num
- CODE:
- RETVAL = PQfsize(res->result, field_num);
- OUTPUT:
- RETVAL
-
-
-int
-PQfmod(res, field_num)
- PG_results res
- int field_num
- CODE:
- RETVAL = PQfmod(res->result, field_num);
- OUTPUT:
- RETVAL
-
-
-char *
-PQcmdStatus(res)
- PG_results res
- CODE:
- RETVAL = PQcmdStatus(res->result);
- OUTPUT:
- RETVAL
-
-
-char *
-PQoidStatus(res)
- PG_results res
- CODE:
- RETVAL = (char *)PQoidStatus(res->result);
- OUTPUT:
- RETVAL
-
-
-char *
-PQcmdTuples(res)
- PG_results res
- CODE:
- RETVAL = (char *)PQcmdTuples(res->result);
- OUTPUT:
- RETVAL
-
-
-char *
-PQgetvalue(res, tup_num, field_num)
- PG_results res
- int tup_num
- int field_num
- CODE:
- RETVAL = PQgetvalue(res->result, tup_num, field_num);
- OUTPUT:
- RETVAL
-
-
-int
-PQgetlength(res, tup_num, field_num)
- PG_results res
- int tup_num
- int field_num
- CODE:
- RETVAL = PQgetlength(res->result, tup_num, field_num);
- OUTPUT:
- RETVAL
-
-
-int
-PQgetisnull(res, tup_num, field_num)
- PG_results res
- int tup_num
- int field_num
- CODE:
- RETVAL = PQgetisnull(res->result, tup_num, field_num);
- OUTPUT:
- RETVAL
-
-
-void
-PQfetchrow(res)
- PG_results res
- PPCODE:
- if (res && res->result) {
- int cols = PQnfields(res->result);
- if (PQntuples(res->result) > res->row) {
- int col = 0;
- EXTEND(sp, cols);
- while (col < cols) {
- if (PQgetisnull(res->result, res->row, col)) {
- PUSHs(&PL_sv_undef);
- } else {
- char *val = PQgetvalue(res->result, res->row, col);
- PUSHs(sv_2mortal((SV*)newSVpv(val, 0)));
- }
- ++col;
- }
- ++res->row;
- }
- }
-
-
-void
-PQprint(res, fout, header, align, standard, html3, expanded, pager, fieldSep, tableOpt, caption, ...)
- FILE * fout
- PG_results res
- pqbool header
- pqbool align
- pqbool standard
- pqbool html3
- pqbool expanded
- pqbool pager
- char * fieldSep
- char * tableOpt
- char * caption
- PREINIT:
- PQprintOpt ps;
- int i;
- CODE:
- ps.header = header;
- ps.align = align;
- ps.standard = standard;
- ps.html3 = html3;
- ps.expanded = expanded;
- ps.pager = pager;
- ps.fieldSep = fieldSep;
- ps.tableOpt = tableOpt;
- ps.caption = caption;
- Newz(0, ps.fieldName, items + 1 - 11, char*);
- for (i = 11; i < items; i++) {
- ps.fieldName[i - 11] = (char *)SvPV(ST(i), PL_na);
- }
- PQprint(fout, res->result, &ps);
- Safefree(ps.fieldName);
-
-
-void
-PQdisplayTuples(res, fp, fillAlign, fieldSep, printHeader, quiet)
- PG_results res
- FILE * fp
- int fillAlign
- char * fieldSep
- int printHeader
- int quiet
- CODE:
- PQdisplayTuples(res->result, fp, fillAlign, (const char *)fieldSep, printHeader, quiet);
-
-
-void
-PQprintTuples(res, fout, printAttName, terseOutput, width)
- PG_results res
- FILE * fout
- int printAttName
- int terseOutput
- int width
- CODE:
- PQprintTuples(res->result, fout, printAttName, terseOutput, width);
diff --git a/src/interfaces/perl5/README b/src/interfaces/perl5/README
deleted file mode 100644
index 7332ffc0b95..00000000000
--- a/src/interfaces/perl5/README
+++ /dev/null
@@ -1,137 +0,0 @@
-#-------------------------------------------------------
-#
-# $Id: README,v 1.8 1998/09/27 19:12:24 mergl Exp $
-#
-# Copyright (c) 1997, 1998 Edmund Mergl
-#
-#-------------------------------------------------------
-
-DESCRIPTION:
-------------
-
-This is version 1.8.0 of pgsql_perl5 (previously called pg95perl5).
-
-Pgsql_perl5 is an interface between Larry Wall's language perl version 5 and
-the database PostgreSQL (previously Postgres95). This has been done by using
-the Perl5 application programming interface for C extensions which calls the
-Postgres programmer's interface LIBPQ. Pgsql_perl5 tries to implement the LIBPQ-
-interface as close as possible.
-
-You have the choice between two different interfaces: the old C-style like
-interface and a new one, using a more Perl-ish like style. The old style
-has the benefit, that existing Libpq applications can easily be ported to
-perl. The new style uses class packages and might be more familiar for C++-
-programmers.
-
-NOTE: it is planned to drop the old C-style interface in the next major release
- of PostgreSQL.
-
-
-
-COPYRIGHT:
-----------
-
-You may distribute under the terms of either the GNU General Public
-License or the Artistic License, as specified in the Perl README file.
-
-
-
-IF YOU HAVE PROBLEMS:
----------------------
-
-Please send comments and bug-reports to <pgsql-interfaces@postgresql.org>
-
-Please include the output of perl -v,
- and perl -V,
- the version of PostgreSQL,
- and the version of pgsql_perl5
-in your bug-report.
-
-
-REQUIREMENTS:
--------------
-
- - build, test and install Perl5 (at least 5.002)
- - build, test and install PostgreSQL (at least 6.4)
-
-
-PLATFORMS:
-----------
-
- This release of pgsql_perl5 has been developed using Linux 2.0 with
- dynamic loading for the perl extensions. Let me know, if there are
- any problems with other platforms.
-
-
-INSTALLATION:
--------------
-
-Since the perl5 interface is always contained in the source tree of PostgreSQL,
-it is usually build together with PostgreSQL itself. This can be obtained by
-adding the option '--with-perl' to the configure command.
-
-In case you need to build the perl interface stand alone, you need to set the
-environment variable POSTGRES_HOME, pointing to the PostgreSQL home-directory.
-Also PostgreSQL needs to be installed having the include files in
-$POSTGRES_HOME/include and the libs in $POSTGRES_HOME/lib. Then you have to
-build the module as any standard perl-module with the following commands:
-
-1. perl Makefile.PL
-2. make
-3. make test
-4. make install
-
-( 1. to 3. as normal user, not as root ! )
-
-
-TESTING:
---------
-
-Run 'make test'.
-Note, that the user running this script must have been created with the access
-rights to create databases *AND* users ! Do not run this script as root !
-
-If testing fails with the message 'login failed', please check if access
-to the database template1 as well as pgperltest is not protected via pg_hba.conf.
-
-If you are using the shared library libpq.so check if your dynamic loader
-finds libpq.so. With Linux the command /sbin/ldconfig -v should tell you,
-where it finds libpq.so. If ldconfig does not find libpq.so, either add an
-appropriate entry to /etc/ld.so.conf and re-run ldconfig or add the path to
-the environment variable LD_LIBRARY_PATH.
-A typical error message resulting from not finding libpq.so is:
- Can't load './blib/arch/auto/Pg/Pg.so' for module Pg: File not found at
-
-Some linux distributions have an incomplete perl installation.
-If you have compile errors like "XS_VERSION_BOOTCHECK undeclared", make a
- 'find .../lib/perl5 -name XSUB.h -print'
-If this file is not present, you need to recompile and reinstall perl.
-
-Also RedHat 5.0 seems to have an incomplete perl-installation: if
-you get error message during the installation complaining about a
-missing perllocal.pod, you need to recompile and reinstall perl.
-
-SGI users: if you get segmentation faults make sure, you use the malloc which
- comes with perl when compiling perl (the default is not to).
- "David R. Noble" <drnoble@engsci.sandia.gov>
-
-HP users: if you get error messages like:
- can't open shared library: .../lib/libpq.sl
- No such file or directory
- when running the test script, try to replace the
- 'shared' option in the LDDFLAGS with 'archive'.
- Dan Lauterbach <danla@dimensional.com>
-
-
-DOCUMENTATION:
---------------
-
-Detailed documentation can be found in Pg.pm. Use 'perldoc Pg' after
-installation to read the documentation.
-
-
----------------------------------------------------------------------------
-
- Edmund Mergl <E.Mergl@bawue.de> September 27, 1998
-
----------------------------------------------------------------------------
diff --git a/src/interfaces/perl5/examples/ApachePg.pl b/src/interfaces/perl5/examples/ApachePg.pl
deleted file mode 100644
index c357cfab6ac..00000000000
--- a/src/interfaces/perl5/examples/ApachePg.pl
+++ /dev/null
@@ -1,55 +0,0 @@
-#!/usr/bin/perl
-
-# $Id: ApachePg.pl,v 1.2 2001/09/04 11:41:04 petere Exp $
-
-# demo script, tested with:
-# - PostgreSQL-6.4
-# - apache_1.3.1
-# - mod_perl-1.15
-# - perl5.005_02
-
-use CGI;
-use Pg;
-use strict;
-
-my $query = new CGI;
-
-print $query->header,
- $query->start_html(-title=>'A Simple Example'),
- $query->startform,
- "<CENTER><H3>Testing Module Pg</H3></CENTER>",
- "<P><CENTER><TABLE CELLPADDING=4 CELLSPACING=2 BORDER=1>",
- "<TR><TD>Enter conninfo string: </TD>",
- "<TD>", $query->textfield(-name=>'conninfo', -size=>40, -default=>'dbname=template1'), "</TD>",
- "</TR>",
- "<TR><TD>Enter select command: </TD>",
- "<TD>", $query->textfield(-name=>'cmd', -size=>40), "</TD>",
- "</TR>",
- "</TABLE></CENTER><P>",
- "<CENTER>", $query->submit(-value=>'Submit'), "</CENTER>",
- $query->endform;
-
-if ($query->param) {
-
- my $conninfo = $query->param('conninfo');
- my $conn = Pg::connectdb($conninfo);
- if (PGRES_CONNECTION_OK == $conn->status) {
- my $cmd = $query->param('cmd');
- my $result = $conn->exec($cmd);
- if (PGRES_TUPLES_OK == $result->resultStatus) {
- print "<P><CENTER><TABLE CELLPADDING=4 CELLSPACING=2 BORDER=1>\n";
- my @row;
- while (@row = $result->fetchrow) {
- print "<TR><TD>", join("</TD><TD>", @row), "</TD></TR>";
- }
- print "</TABLE></CENTER><P>\n";
- } else {
- print "<CENTER><H2>", $conn->errorMessage, "</H2></CENTER>\n";
- }
- } else {
- print "<CENTER><H2>", $conn->errorMessage, "</H2></CENTER>\n";
- }
-}
-
-print $query->end_html;
-
diff --git a/src/interfaces/perl5/examples/example.newstyle b/src/interfaces/perl5/examples/example.newstyle
deleted file mode 100644
index e0aaf87f8bf..00000000000
--- a/src/interfaces/perl5/examples/example.newstyle
+++ /dev/null
@@ -1,274 +0,0 @@
-#!/usr/bin/perl
-
-# $Id: example.newstyle,v 1.2 2001/09/04 11:41:04 petere Exp $
-
-######################### globals
-
-$| = 1;
-use Pg;
-
-$dbmain = 'template1';
-$dbname = 'pgperltest';
-$trace = '/tmp/pgtrace.out';
-$DEBUG = 0; # set this to 1 for traces
-
-######################### the following methods will be used
-
-# connectdb
-# conndefaults
-# db
-# user
-# port
-# status
-# errorMessage
-# trace
-# untrace
-# exec
-# consumeInput
-# getline
-# putline
-# endcopy
-# resultStatus
-# ntuples
-# nfields
-# fname
-# fnumber
-# ftype
-# fsize
-# cmdStatus
-# oidStatus
-# cmdTuples
-# getvalue
-# print
-# notifies
-# lo_import
-# lo_export
-# lo_unlink
-
-######################### the following methods will not be used
-
-# setdb
-# setdbLogin
-# reset
-# requestCancel
-# pass
-# host
-# tty
-# options
-# socket
-# backendPID
-# sendQuery
-# getResult
-# isBusy
-# getlineAsync
-# putnbytes
-# makeEmptyPGresult
-# fmod
-# getlength
-# getisnull
-# displayTuples
-# printTuples
-# lo_open
-# lo_close
-# lo_read
-# lo_write
-# lo_creat
-# lo_seek
-# lo_tell
-
-######################### handles error condition
-
-$SIG{PIPE} = sub { print "broken pipe\n" };
-
-######################### create and connect to test database
-
-$Option_ref = Pg::conndefaults();
-($key, $val);
-print "connection defaults:\n";
-while (($key, $val) = each %$Option_ref) {
- printf " keyword = %-12.12s val = >%s<\n", $key, $val;
-}
-
-$conn = Pg::connectdb("dbname=$dbmain");
-die $conn->errorMessage unless PGRES_CONNECTION_OK eq $conn->status;
-print "connected to $dbmain\n";
-
-# do not complain when dropping $dbname
-$conn->exec("DROP DATABASE $dbname");
-
-$result = $conn->exec("CREATE DATABASE $dbname");
-die $conn->errorMessage unless PGRES_COMMAND_OK eq $result->resultStatus;
-print "created database $dbname\n";
-
-$conn = Pg::connectdb("dbname=$dbname");
-die $conn->errorMessage unless PGRES_CONNECTION_OK eq $conn->status;
-print "connected to $dbname\n";
-
-######################### debug, trace
-
-if ($DEBUG) {
- open(TRACE, ">$trace") || die "can not open $trace: $!";
- $conn->trace(TRACE);
- print "enabled tracing into $trace\n";
-}
-
-######################### check PGconn
-
-$db = $conn->db;
-print " database: $db\n";
-
-$user = $conn->user;
-print " user: $user\n";
-
-$port = $conn->port;
-print " port: $port\n";
-
-######################### create and insert into table
-
-$result = $conn->exec("CREATE TABLE person (id int4, name char(16))");
-die $conn->errorMessage unless PGRES_COMMAND_OK eq $result->resultStatus;
-print "created table, status = ", $result->cmdStatus, "\n";
-
-for ($i = 1; $i <= 5; $i++) {
- $result = $conn->exec("INSERT INTO person VALUES ($i, 'Edmund Mergl')");
- die $conn->errorMessage unless PGRES_COMMAND_OK eq $result->resultStatus;
-}
-print "insert into table, last oid = ", $result->oidStatus, "\n";
-
-######################### copy to stdout, getline
-
-$result = $conn->exec("COPY person TO STDOUT");
-die $conn->errorMessage unless PGRES_COPY_OUT eq $result->resultStatus;
-print "copy table to STDOUT:\n";
-
-$ret = 0;
-$i = 1;
-while (-1 != $ret) {
- $ret = $conn->getline($string, 256);
- last if $string eq "\\.";
- print " ", $string, "\n";
- $i ++;
-}
-
-die $conn->errorMessage unless 0 == $conn->endcopy;
-
-######################### delete and copy from stdin, putline
-
-$result = $conn->exec("BEGIN");
-die $conn->errorMessage unless PGRES_COMMAND_OK eq $result->resultStatus;
-
-$result = $conn->exec("DELETE FROM person");
-die $conn->errorMessage unless PGRES_COMMAND_OK eq $result->resultStatus;
-print "delete from table, command status = ", $result->cmdStatus, ", no. of tuples = ", $result->cmdTuples, "\n";
-
-$result = $conn->exec("COPY person FROM STDIN");
-die $conn->errorMessage unless PGRES_COPY_IN eq $result->resultStatus;
-print "copy table from STDIN: ";
-
-for ($i = 1; $i <= 5; $i++) {
- # watch the tabs and do not forget the newlines
- $conn->putline("$i Edmund Mergl\n");
-}
-$conn->putline("\\.\n");
-
-die $conn->errorMessage unless 0 == $conn->endcopy;
-
-$result = $conn->exec("END");
-die $conn->errorMessage unless PGRES_COMMAND_OK eq $result->resultStatus;
-print "ok\n";
-
-######################### select from person, getvalue
-
-$result = $conn->exec("SELECT * FROM person");
-die $conn->errorMessage unless PGRES_TUPLES_OK eq $result->resultStatus;
-print "select from table:\n";
-
-for ($k = 0; $k < $result->nfields; $k++) {
- print " field = ", $k, "\tfname = ", $result->fname($k), "\tftype = ", $result->ftype($k), "\tfsize = ", $result->fsize($k), "\tfnumber = ", $result->fnumber($result->fname($k)), "\n";
-}
-
-while (@row = $result->fetchrow) {
- print " ", join(" ", @row), "\n";
-}
-
-######################### notifies
-
-if (! defined($pid = fork)) {
- die "can not fork: $!";
-} elsif (! $pid) {
- # I'm the child
- sleep 2;
- bless $conn;
- $conn = Pg::connectdb("dbname=$dbname");
- $result = $conn->exec("NOTIFY person");
- exit;
-}
-
-$result = $conn->exec("LISTEN person");
-die $conn->errorMessage unless PGRES_COMMAND_OK eq $result->resultStatus;
-print "listen table: status = ", $result->cmdStatus, "\n";
-
-while (1) {
- $conn->consumeInput;
- ($table, $pid) = $conn->notifies;
- last if $pid;
-}
-print "got notification: table = ", $table, " pid = ", $pid, "\n";
-
-######################### print
-
-$result = $conn->exec("SELECT * FROM person");
-die $conn->errorMessage unless PGRES_TUPLES_OK eq $result->resultStatus;
-print "select from table and print:\n";
-$result->print(STDOUT, 0, 0, 0, 0, 0, 0, " ", "", "", "");
-
-######################### lo_import, lo_export, lo_unlink
-
-$lobject_in = '/tmp/gaga.in';
-$lobject_out = '/tmp/gaga.out';
-
-$data = "testing large objects using lo_import and lo_export";
-open(FD, ">$lobject_in") or die "can not open $lobject_in";
-print(FD $data);
-close(FD);
-
-$result = $conn->exec("BEGIN");
-die $conn->errorMessage unless PGRES_COMMAND_OK eq $result->resultStatus;
-
-$lobjOid = $conn->lo_import("$lobject_in") or die $conn->errorMessage;
-print "importing file as large object, Oid = ", $lobjOid, "\n";
-
-die $conn->errorMessage unless 1 == $conn->lo_export($lobjOid, "$lobject_out");
-print "exporting large object as temporary file\n";
-
-$result = $conn->exec("END");
-die $conn->errorMessage unless PGRES_COMMAND_OK eq $result->resultStatus;
-
-print "comparing imported file with exported file: ";
-print "not " unless (-s "$lobject_in" == -s "$lobject_out");
-print "ok\n";
-
-die $conn->errorMessage if -1 == $conn->lo_unlink($lobjOid);
-unlink $lobject_in;
-unlink $lobject_out;
-print "unlink large object\n";
-
-######################### debug, untrace
-
-if ($DEBUG) {
- close(TRACE) || die "bad TRACE: $!";
- $conn->untrace;
- print "tracing disabled\n";
-}
-
-######################### disconnect and drop test database
-
-$conn = Pg::connectdb("dbname=$dbmain");
-die $conn->errorMessage unless PGRES_CONNECTION_OK eq $conn->status;
-print "connected to $dbmain\n";
-
-$result = $conn->exec("DROP DATABASE $dbname");
-die $conn->errorMessage unless PGRES_COMMAND_OK eq $result->resultStatus;
-print "drop database\n";
-
-######################### EOF
diff --git a/src/interfaces/perl5/examples/example.oldstyle b/src/interfaces/perl5/examples/example.oldstyle
deleted file mode 100644
index 2c85bf37c5b..00000000000
--- a/src/interfaces/perl5/examples/example.oldstyle
+++ /dev/null
@@ -1,294 +0,0 @@
-#!/usr/bin/perl
-
-# $Id: example.oldstyle,v 1.2 2001/09/04 11:41:04 petere Exp $
-
-######################### globals
-
-$| = 1;
-use Pg;
-
-$dbmain = 'template1';
-$dbname = 'pgperltest';
-$trace = '/tmp/pgtrace.out';
-$DEBUG = 0; # set this to 1 for traces
-
-######################### the following functions will be tested
-
-# PQsetdb()
-# PQdb()
-# PQuser()
-# PQport()
-# PQstatus()
-# PQfinish()
-# PQerrorMessage()
-# PQtrace()
-# PQuntrace()
-# PQexec()
-# PQconsumeInput
-# PQgetline()
-# PQputline()
-# PQendcopy()
-# PQresultStatus()
-# PQntuples()
-# PQnfields()
-# PQfname()
-# PQfnumber()
-# PQftype()
-# PQfsize()
-# PQcmdStatus()
-# PQoidStatus()
-# PQcmdTuples()
-# PQgetvalue()
-# PQclear()
-# PQprint()
-# PQnotifies()
-# PQlo_import()
-# PQlo_export()
-# PQlo_unlink()
-
-######################### the following functions will not be tested
-
-# PQconnectdb()
-# PQconndefaults()
-# PQsetdbLogin()
-# PQreset()
-# PQrequestCancel()
-# PQpass()
-# PQhost()
-# PQtty()
-# PQoptions()
-# PQsocket()
-# PQbackendPID()
-# PQsendQuery()
-# PQgetResult()
-# PQisBusy()
-# PQgetlineAsync()
-# PQputnbytes()
-# PQmakeEmptyPGresult()
-# PQfmod()
-# PQgetlength()
-# PQgetisnull()
-# PQdisplayTuples()
-# PQprintTuples()
-# PQlo_open()
-# PQlo_close()
-# PQlo_read()
-# PQlo_write()
-# PQlo_creat()
-# PQlo_lseek()
-# PQlo_tell()
-
-######################### handles error condition
-
-$SIG{PIPE} = sub { print "broken pipe\n" };
-
-######################### create and connect to test database
-
-$conn = PQsetdb('', '', '', '', $dbmain);
-die PQerrorMessage($conn) unless PGRES_CONNECTION_OK eq PQstatus($conn);
-print "connected to $dbmain\n";
-
-# do not complain when dropping $dbname
-$result = PQexec($conn, "DROP DATABASE $dbname");
-PQclear($result);
-
-$result = PQexec($conn, "CREATE DATABASE $dbname");
-die PQerrorMessage($conn) unless PGRES_COMMAND_OK eq PQresultStatus($result);
-print "created database $dbname\n";
-PQclear($result);
-
-PQfinish($conn);
-
-$conn = PQsetdb('', '', '', '', $dbname);
-die PQerrorMessage($conn) unless PGRES_CONNECTION_OK eq PQstatus($conn);
-print "connected to $dbname\n";
-
-######################### debug, PQtrace
-
-if ($DEBUG) {
- open(TRACE, ">$trace") || die "can not open $trace: $!";
- PQtrace($conn, TRACE);
- print "enabled tracing into $trace\n";
-}
-
-######################### check PGconn
-
-$db = PQdb($conn);
-print " database: $db\n";
-
-$user = PQuser($conn);
-print " user: $user\n";
-
-$port = PQport($conn);
-print " port: $port\n";
-
-######################### create and insert into table
-
-$result = PQexec($conn, "CREATE TABLE person (id int4, name char(16))");
-die PQerrorMessage($conn) unless PGRES_COMMAND_OK eq PQresultStatus($result);
-print "created table, status = ", PQcmdStatus($result), "\n";
-PQclear($result);
-
-for ($i = 1; $i <= 5; $i++) {
- $result = PQexec($conn, "INSERT INTO person VALUES ($i, 'Edmund Mergl')");
- die PQerrorMessage($conn) unless PGRES_COMMAND_OK eq PQresultStatus($result);
- PQclear($result);
-}
-print "insert into table, last oid = ", PQoidStatus($result), "\n";
-
-######################### copy to stdout, PQgetline
-
-$result = PQexec($conn, "COPY person TO STDOUT");
-die PQerrorMessage($conn) unless PGRES_COPY_OUT eq PQresultStatus($result);
-print "copy table to STDOUT:\n";
-PQclear($result);
-
-$ret = 0;
-$i = 1;
-while (-1 != $ret) {
- $ret = PQgetline($conn, $string, 256);
- last if $string eq "\\.";
- print " ", $string, "\n";
- $i++;
-}
-
-die PQerrorMessage($conn) unless 0 == PQendcopy($conn);
-
-######################### delete and copy from stdin, PQputline
-
-$result = PQexec($conn, "BEGIN");
-die PQerrorMessage($conn) unless PGRES_COMMAND_OK eq PQresultStatus($result);
-PQclear($result);
-
-$result = PQexec($conn, "DELETE FROM person");
-die PQerrorMessage($conn) unless PGRES_COMMAND_OK eq PQresultStatus($result);
-print "delete from table, command status = ", PQcmdStatus($result), ", no. of tuples = ", PQcmdTuples($result), "\n";
-PQclear($result);
-
-$result = PQexec($conn, "COPY person FROM STDIN");
-die PQerrorMessage($conn) unless PGRES_COPY_IN eq PQresultStatus($result);
-print "copy table from STDIN:\n";
-PQclear($result);
-
-for ($i = 1; $i <= 5; $i++) {
- # watch the tabs and do not forget the newlines
- PQputline($conn, "$i Edmund Mergl\n");
-}
-PQputline($conn, "\\.\n");
-
-die PQerrorMessage($conn) unless 0 == PQendcopy($conn);
-
-$result = PQexec($conn, "END");
-die PQerrorMessage($conn) unless PGRES_COMMAND_OK eq PQresultStatus($result);
-PQclear($result);
-
-######################### select from person, PQgetvalue
-
-$result = PQexec($conn, "SELECT * FROM person");
-die PQerrorMessage($conn) unless PGRES_TUPLES_OK eq PQresultStatus($result);
-print "select from table:\n";
-
-for ($k = 0; $k < PQnfields($result); $k++) {
- print " field = ", $k, "\tfname = ", PQfname($result, $k), "\tftype = ", PQftype($result, $k), "\tfsize = ", PQfsize($result, $k), "\tfnumber = ", PQfnumber($result, PQfname($result, $k)), "\n";
-}
-
-for ($k = 0; $k < PQntuples($result); $k++) {
- for ($l = 0; $l < PQnfields($result); $l++) {
- print " ", PQgetvalue($result, $k, $l);
- }
- print "\n";
-}
-
-PQclear($result);
-
-######################### PQnotifies
-
-if (! defined($pid = fork)) {
- die "can not fork: $!";
-} elsif (! $pid) {
- # I'm the child
- sleep 2;
- $conn = PQsetdb('', '', '', '', $dbname);
- $result = PQexec($conn, "NOTIFY person");
- PQclear($result);
- PQfinish($conn);
- exit;
-}
-
-$result = PQexec($conn, "LISTEN person");
-die PQerrorMessage($conn) unless PGRES_COMMAND_OK eq PQresultStatus($result);
-print "listen table: status = ", PQcmdStatus($result), "\n";
-PQclear($result);
-
-while (1) {
- PQconsumeInput($conn);
- ($table, $pid) = PQnotifies($conn);
- last if $pid;
-}
-print "got notification: table = ", $table, " pid = ", $pid, "\n";
-
-######################### PQprint
-
-$result = PQexec($conn, "SELECT * FROM person");
-die PQerrorMessage($conn) unless PGRES_TUPLES_OK eq PQresultStatus($result);
-print "select from table and print:\n";
-PQprint(STDOUT, $result, 0, 0, 0, 0, 0, 0, " ", "", "", "");
-PQclear($result);
-
-######################### PQlo_import, PQlo_export, PQlo_unlink
-
-$lobject_in = '/tmp/gaga.in';
-$lobject_out = '/tmp/gaga.out';
-
-$data = "testing large objects using lo_import and lo_export";
-open(FD, ">$lobject_in") or die "can not open $lobject_in";
-print(FD $data);
-close(FD);
-
-$result = PQexec($conn, "BEGIN");
-die PQerrorMessage($conn) unless PGRES_COMMAND_OK eq PQresultStatus($result);
-PQclear($result);
-
-$lobjOid = PQlo_import($conn, "$lobject_in") or die PQerrorMessage($conn);
-print "importing file as large object, Oid = ", $lobjOid, "\n";
-
-die PQerrorMessage($conn) unless 1 == PQlo_export($conn, $lobjOid, "$lobject_out");
-print "exporting large object as temporary file\n";
-
-$result = PQexec($conn, "END");
-die PQerrorMessage($conn) unless PGRES_COMMAND_OK eq PQresultStatus($result);
-PQclear($result);
-
-print "comparing imported file with exported file: ";
-print "not " unless (-s "$lobject_in" == -s "$lobject_out");
-print "ok\n";
-
-die PQerrorMessage($conn) if -1 == PQlo_unlink($conn, $lobjOid);
-unlink $lobject_in;
-unlink $lobject_out;
-print "unlink large object\n";
-
-######################### debug, PQuntrace
-
-if ($DEBUG) {
- close(TRACE) || die "bad TRACE: $!";
- PQuntrace($conn);
- print "tracing disabled\n";
-}
-
-######################### disconnect and drop test database
-
-PQfinish($conn);
-
-$conn = PQsetdb('', '', '', '', $dbmain);
-die PQerrorMessage($conn) unless PGRES_CONNECTION_OK eq PQstatus($conn);
-print "connected to $dbmain\n";
-
-$result = PQexec($conn, "DROP DATABASE $dbname");
-die PQerrorMessage($conn) unless PGRES_COMMAND_OK eq PQresultStatus($result);
-print "drop database\n";
-PQclear($result);
-
-PQfinish($conn);
-
-######################### EOF
diff --git a/src/interfaces/perl5/ppport.h b/src/interfaces/perl5/ppport.h
deleted file mode 100644
index 8a788ad5a6f..00000000000
--- a/src/interfaces/perl5/ppport.h
+++ /dev/null
@@ -1,289 +0,0 @@
-
-#ifndef _P_P_PORTABILITY_H_
-#define _P_P_PORTABILITY_H_
-
-/* Perl/Pollution/Portability Version 1.0007 */
-
-/* Copyright (C) 1999, Kenneth Albanowski. This code may be used and
- distributed under the same license as any version of Perl. */
-
-/* For the latest version of this code, please retreive the Devel::PPPort
- module from CPAN, contact the author at <kjahds@kjahds.com>, or check
- with the Perl maintainers. */
-
-/* If you needed to customize this file for your project, please mention
- your changes, and visible alter the version number. */
-
-
-/*
- In order for a Perl extension module to be as portable as possible
- across differing versions of Perl itself, certain steps need to be taken.
- Including this header is the first major one, then using dTHR is all the
- appropriate places and using a PL_ prefix to refer to global Perl
- variables is the second.
-*/
-
-
-/* If you use one of a few functions that were not present in earlier
- versions of Perl, please add a define before the inclusion of ppport.h
- for a static include, or use the GLOBAL request in a single module to
- produce a global definition that can be referenced from the other
- modules.
-
- Function: Static define: Extern define:
- newCONSTSUB() NEED_newCONSTSUB NEED_newCONSTSUB_GLOBAL
-
-*/
-
-
-/* To verify whether ppport.h is needed for your module, and whether any
- special defines should be used, ppport.h can be run through Perl to check
- your source code. Simply say:
-
- perl -x ppport.h *.c *.h *.xs foo/*.c [etc]
-
- The result will be a list of patches suggesting changes that should at
- least be acceptable, if not necessarily the most efficient solution, or a
- fix for all possible problems. It won't catch where dTHR is needed, and
- doesn't attempt to account for global macro or function definitions,
- nested includes, typemaps, etc.
-
- In order to test for the need of dTHR, please try your module under a
- recent version of Perl that has threading compiled-in.
-
-*/
-
-
-/*
-#!/usr/bin/perl
-@ARGV = ("*.xs") if !@ARGV;
-%badmacros = %funcs = %macros = (); $replace = 0;
-foreach (<DATA>) {
- $funcs{$1} = 1 if /Provide:\s+(\S+)/;
- $macros{$1} = 1 if /^#\s*define\s+([a-zA-Z0-9_]+)/;
- $replace = $1 if /Replace:\s+(\d+)/;
- $badmacros{$2}=$1 if $replace and /^#\s*define\s+([a-zA-Z0-9_]+).*?\s+([a-zA-Z0-9_]+)/;
- $badmacros{$1}=$2 if /Replace (\S+) with (\S+)/;
-}
-foreach $filename (map(glob($_),@ARGV)) {
- unless (open(IN, "<$filename")) {
- warn "Unable to read from $file: $!\n";
- next;
- }
- print "Scanning $filename...\n";
- $c = ""; while (<IN>) { $c .= $_; } close(IN);
- $need_include = 0; %add_func = (); $changes = 0;
- $has_include = ($c =~ /#.*include.*ppport/m);
-
- foreach $func (keys %funcs) {
- if ($c =~ /#.*define.*\bNEED_$func(_GLOBAL)?\b/m) {
- if ($c !~ /\b$func\b/m) {
- print "If $func isn't needed, you don't need to request it.\n" if
- $changes += ($c =~ s/^.*#.*define.*\bNEED_$func\b.*\n//m);
- } else {
- print "Uses $func\n";
- $need_include = 1;
- }
- } else {
- if ($c =~ /\b$func\b/m) {
- $add_func{$func} =1 ;
- print "Uses $func\n";
- $need_include = 1;
- }
- }
- }
-
- if (not $need_include) {
- foreach $macro (keys %macros) {
- if ($c =~ /\b$macro\b/m) {
- print "Uses $macro\n";
- $need_include = 1;
- }
- }
- }
-
- foreach $badmacro (keys %badmacros) {
- if ($c =~ /\b$badmacro\b/m) {
- $changes += ($c =~ s/\b$badmacro\b/$badmacros{$badmacro}/gm);
- print "Uses $badmacros{$badmacro} (instead of $badmacro)\n";
- $need_include = 1;
- }
- }
-
- if (scalar(keys %add_func) or $need_include != $has_include) {
- if (!$has_include) {
- $inc = join('',map("#define NEED_$_\n", sort keys %add_func)).
- "#include \"ppport.h\"\n";
- $c = "$inc$c" unless $c =~ s/#.*include.*XSUB.*\n/$&$inc/m;
- } elsif (keys %add_func) {
- $inc = join('',map("#define NEED_$_\n", sort keys %add_func));
- $c = "$inc$c" unless $c =~ s/^.*#.*include.*ppport.*$/$inc$&/m;
- }
- if (!$need_include) {
- print "Doesn't seem to need ppport.h.\n";
- $c =~ s/^.*#.*include.*ppport.*\n//m;
- }
- $changes++;
- }
-
- if ($changes) {
- open(OUT,">/tmp/ppport.h.$$");
- print OUT $c;
- close(OUT);
- open(DIFF, "diff -u $filename /tmp/ppport.h.$$|");
- while (<DIFF>) { s!/tmp/ppport\.h\.$$!$filename.patched!; print STDOUT; }
- close(DIFF);
- unlink("/tmp/ppport.h.$$");
- } else {
- print "Looks OK\n";
- }
-}
-__DATA__
-*/
-
-#ifndef PERL_REVISION
-#ifndef __PATCHLEVEL_H_INCLUDED__
-#include "patchlevel.h"
-#endif
-#ifndef PERL_REVISION
-#define PERL_REVISION (5)
- /* Replace: 1 */
-#define PERL_VERSION PATCHLEVEL
-#define PERL_SUBVERSION SUBVERSION
- /* Replace PERL_PATCHLEVEL with PERL_VERSION */
- /* Replace: 0 */
-#endif
-#endif
-
-#define PERL_BCDVERSION ((PERL_REVISION * 0x1000000L) + (PERL_VERSION * 0x1000L) + PERL_SUBVERSION)
-
-#ifndef ERRSV
-#define ERRSV perl_get_sv("@",FALSE)
-#endif
-
-#if (PERL_VERSION < 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION <= 5))
-/* Replace: 1 */
-#define PL_sv_undef sv_undef
-#define PL_sv_yes sv_yes
-#define PL_sv_no sv_no
-#define PL_na na
-#define PL_stdingv stdingv
-#define PL_hints hints
-#define PL_curcop curcop
-#define PL_curstash curstash
-#define PL_copline copline
-#define PL_Sv Sv
-/* Replace: 0 */
-#endif
-
-#ifndef dTHR
-#ifdef WIN32
-#define dTHR extern int Perl___notused
-#else
-#define dTHR extern int errno
-#endif
-#endif
-
-#ifndef boolSV
-#define boolSV(b) ((b) ? &PL_sv_yes : &PL_sv_no)
-#endif
-
-#ifndef gv_stashpvn
-#define gv_stashpvn(str,len,flags) gv_stashpv(str,flags)
-#endif
-
-#ifndef newSVpvn
-#define newSVpvn(data,len) ((len) ? newSVpv ((data), (len)) : newSVpv ("", 0))
-#endif
-
-#ifndef newRV_inc
-/* Replace: 1 */
-#define newRV_inc(sv) newRV(sv)
-/* Replace: 0 */
-#endif
-
-#ifndef newRV_noinc
-#ifdef __GNUC__
-#define newRV_noinc(sv) \
- ({ \
- SV *nsv = (SV*)newRV(sv); \
- SvREFCNT_dec(sv); \
- nsv; \
- })
-#else
-#if defined(CRIPPLED_CC) || defined(USE_THREADS)
-static SV *
-newRV_noinc(SV * sv)
-{
- SV *nsv = (SV *) newRV(sv);
-
- SvREFCNT_dec(sv);
- return nsv;
-}
-
-#else
-#define newRV_noinc(sv) \
- ((PL_Sv=(SV*)newRV(sv), SvREFCNT_dec(sv), (SV*)PL_Sv)
-#endif
-#endif
-#endif
-
-/* Provide: newCONSTSUB */
-
-/* newCONSTSUB from IO.xs is in the core starting with 5.004_63 */
-#if (PERL_VERSION < 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION < 63))
-
-#if defined(NEED_newCONSTSUB)
-static
-#else
-extern void newCONSTSUB _((HV * stash, char *name, SV * sv));
-#endif
-
-#if defined(NEED_newCONSTSUB) || defined(NEED_newCONSTSUB_GLOBAL)
-void
-newCONSTSUB(stash, name, sv)
-HV *stash;
-char *name;
-SV *sv;
-{
- U32 oldhints = PL_hints;
- HV *old_cop_stash = PL_curcop->cop_stash;
- HV *old_curstash = PL_curstash;
- line_t oldline = PL_curcop->cop_line;
-
- PL_curcop->cop_line = PL_copline;
-
- PL_hints &= ~HINT_BLOCK_SCOPE;
- if (stash)
- PL_curstash = PL_curcop->cop_stash = stash;
-
- newSUB(
-
-#if (PERL_VERSION < 3) || ((PERL_VERSION == 3) && (PERL_SUBVERSION < 22))
- /* before 5.003_22 */
- start_subparse(),
-#else
-#if (PERL_VERSION == 3) && (PERL_SUBVERSION == 22)
- /* 5.003_22 */
- start_subparse(0),
-#else
- /* 5.003_23 onwards */
- start_subparse(FALSE, 0),
-#endif
-#endif
-
- newSVOP(OP_CONST, 0, newSVpv(name, 0)),
- newSVOP(OP_CONST, 0, &PL_sv_no), /* SvPV(&PL_sv_no) == ""
- * -- GMB */
- newSTATEOP(0, Nullch, newSVOP(OP_CONST, 0, sv))
- );
-
- PL_hints = oldhints;
- PL_curcop->cop_stash = old_cop_stash;
- PL_curstash = old_curstash;
- PL_curcop->cop_line = oldline;
-}
-#endif
-#endif /* newCONSTSUB */
-
-#endif /* _P_P_PORTABILITY_H_ */
diff --git a/src/interfaces/perl5/test.pl b/src/interfaces/perl5/test.pl
deleted file mode 100644
index 7b31427308a..00000000000
--- a/src/interfaces/perl5/test.pl
+++ /dev/null
@@ -1,275 +0,0 @@
-#!/usr/bin/perl -w
-
-# $Id: test.pl,v 1.14 2001/09/04 11:41:04 petere Exp $
-
-# Before `make install' is performed this script should be runnable with
-# `make test'. After `make install' it should work as `perl test.pl'
-
-######################### We start with some black magic to print on failure.
-
-BEGIN { $| = 1; }
-END {print "test failed\n" unless $loaded;}
-use Pg;
-$loaded = 1;
-use strict;
-
-######################### End of black magic.
-
-my $dbmain = 'template1';
-my $dbname = 'pgperltest';
-my $trace = '/tmp/pgtrace.out';
-my ($conn, $result, $i);
-
-my $DEBUG = 0; # set this to 1 for traces
-
-######################### the following methods will be tested
-
-# connectdb
-# conndefaults
-# db
-# user
-# port
-# status
-# errorMessage
-# trace
-# untrace
-# exec
-# getline
-# putline
-# endcopy
-# resultStatus
-# fname
-# fnumber
-# ftype
-# fsize
-# cmdStatus
-# oidStatus
-# cmdTuples
-# fetchrow
-
-######################### the following methods will not be tested
-
-# setdb
-# setdbLogin
-# reset
-# requestCancel
-# pass
-# host
-# tty
-# options
-# socket
-# backendPID
-# notifies
-# sendQuery
-# getResult
-# isBusy
-# consumeInput
-# getlineAsync
-# putnbytes
-# makeEmptyPGresult
-# ntuples
-# nfields
-# binaryTuples
-# fmod
-# getvalue
-# getlength
-# getisnull
-# print
-# displayTuples
-# printTuples
-# lo_import
-# lo_export
-# lo_unlink
-# lo_open
-# lo_close
-# lo_read
-# lo_write
-# lo_creat
-# lo_seek
-# lo_tell
-
-######################### handles error condition
-
-$SIG{PIPE} = sub { print "broken pipe\n" };
-
-######################### create and connect to test database
-
-my $Option_ref = Pg::conndefaults();
-my ($key, $val);
-( $$Option_ref{port} ne "" && $$Option_ref{dbname} ne "" && $$Option_ref{user} ne "" )
- and print "Pg::conndefaults ........ ok\n"
- or die "Pg::conndefaults ........ not ok: ", $conn->errorMessage;
-
-$conn = Pg::connectdb("dbname=$dbmain");
-( PGRES_CONNECTION_OK eq $conn->status )
- and print "Pg::connectdb ........... ok\n"
- or die "Pg::connectdb ........... not ok: ", $conn->errorMessage;
-
-# do not complain when dropping $dbname
-$conn->exec("DROP DATABASE $dbname");
-
-$result = $conn->exec("CREATE DATABASE $dbname");
-( PGRES_COMMAND_OK eq $result->resultStatus )
- and print "\$conn->exec ............. ok\n"
- or die "\$conn->exec ............. not ok: ", $conn->errorMessage;
-
-$conn = Pg::connectdb("dbname=rumpumpel");
-( $conn->errorMessage =~ 'Database "rumpumpel" does not exist' )
- and print "\$conn->errorMessage ..... ok\n"
- or die "\$conn->errorMessage ..... not ok: ", $conn->errorMessage;
-
-$conn = Pg::connectdb("dbname=$dbname");
-die $conn->errorMessage unless PGRES_CONNECTION_OK eq $conn->status;
-
-######################### debug, PQtrace
-
-if ($DEBUG) {
- open(FD, ">$trace") || die "can not open $trace: $!";
- $conn->trace("FD");
-}
-
-######################### check PGconn
-
-my $db = $conn->db;
-( $dbname eq $db )
- and print "\$conn->db ............... ok\n"
- or print "\$conn->db ............... not ok: $db\n";
-
-my $user = $conn->user;
-( "" ne $user )
- and print "\$conn->user ............. ok\n"
- or print "\$conn->user ............. not ok: $user\n";
-
-my $port = $conn->port;
-( "" ne $port )
- and print "\$conn->port ............. ok\n"
- or print "\$conn->port ............. not ok: $port\n";
-
-######################### create and insert into table
-
-# we test comments inside string and with no trailing newline here
-$result = $conn->exec("CREATE TABLE person (id int4, -- test\n name char(16)) -- test");
-die $conn->errorMessage unless PGRES_COMMAND_OK eq $result->resultStatus;
-my $cmd = $result->cmdStatus;
-( "CREATE" eq $cmd )
- and print "\$conn->cmdStatus ........ ok\n"
- or print "\$conn->cmdStatus ........ not ok: $cmd\n";
-
-for ($i = 1; $i <= 5; $i++) {
- $result = $conn->exec("INSERT INTO person VALUES ($i, 'Edmund Mergl')");
- die $conn->errorMessage unless PGRES_COMMAND_OK eq $result->resultStatus;
-}
-my $oid = $result->oidStatus;
-( 0 != $oid )
- and print "\$conn->oidStatus ........ ok\n"
- or print "\$conn->oidStatus ........ not ok: $oid\n";
-
-######################### copy to stdout, PQgetline
-
-$result = $conn->exec("COPY person TO STDOUT");
-die $conn->errorMessage unless PGRES_COPY_OUT eq $result->resultStatus;
-
-my $ret = 0;
-my $buf;
-my $string;
-$i = 1;
-while (-1 != $ret) {
- $ret = $conn->getline($buf, 256);
- last if $buf eq "\\.";
- $string = $buf if 1 == $i;
- $i++;
-}
-( "1 Edmund Mergl " eq $string )
- and print "\$conn->getline .......... ok\n"
- or print "\$conn->getline .......... not ok: $string\n";
-
-$ret = $conn->endcopy;
-( 0 == $ret )
- and print "\$conn->endcopy .......... ok\n"
- or print "\$conn->endcopy .......... not ok: $ret\n";
-
-######################### delete and copy from stdin, PQputline
-
-$result = $conn->exec("BEGIN");
-die $conn->errorMessage unless PGRES_COMMAND_OK eq $result->resultStatus;
-
-$result = $conn->exec("DELETE FROM person");
-die $conn->errorMessage unless PGRES_COMMAND_OK eq $result->resultStatus;
-$ret = $result->cmdTuples;
-( 5 == $ret )
- and print "\$result->cmdTuples ...... ok\n"
- or print "\$result->cmdTuples ...... not ok: $ret\n";
-
-$result = $conn->exec("COPY person FROM STDIN");
-die $conn->errorMessage unless PGRES_COPY_IN eq $result->resultStatus;
-
-for ($i = 1; $i <= 5; $i++) {
- # watch the tabs and do not forget the newlines
- $conn->putline("$i Edmund Mergl\n");
-}
-$conn->putline("\\.\n");
-
-die $conn->errorMessage if $conn->endcopy;
-
-$result = $conn->exec("END");
-die $conn->errorMessage unless PGRES_COMMAND_OK eq $result->resultStatus;
-
-######################### select from person, PQgetvalue
-
-$result = $conn->exec("SELECT * FROM person");
-die $conn->errorMessage unless PGRES_TUPLES_OK eq $result->resultStatus;
-
-my $fname = $result->fname(0);
-( "id" eq $fname )
- and print "\$result->fname .......... ok\n"
- or print "\$result->fname .......... not ok: $fname\n";
-
-my $ftype = $result->ftype(0);
-( 23 == $ftype )
- and print "\$result->ftype .......... ok\n"
- or print "\$result->ftype .......... not ok: $ftype\n";
-
-my $fsize = $result->fsize(0);
-( 4 == $fsize )
- and print "\$result->fsize .......... ok\n"
- or print "\$result->fsize .......... not ok: $fsize\n";
-
-my $fnumber = $result->fnumber($fname);
-( 0 == $fnumber )
- and print "\$result->fnumber ........ ok\n"
- or print "\$result->fnumber ........ not ok: $fnumber\n";
-
-$string = "";
-my @row;
-while (@row = $result->fetchrow) {
- $string = join(" ", @row);
-}
-( "5 Edmund Mergl " eq $string )
- and print "\$result->fetchrow ....... ok\n"
- or print "\$result->fetchrow ....... not ok: $string\n";
-
-######################### debug, PQuntrace
-
-if ($DEBUG) {
- close(FD) || die "bad TRACE: $!";
- $conn->untrace;
-}
-
-######################### disconnect and drop test database
-
-$conn = Pg::connectdb("dbname=$dbmain");
-die $conn->errorMessage unless PGRES_CONNECTION_OK eq $conn->status;
-
-# Race condition: it's quite possible that the DROP command will arrive
-# at the new backend before the old backend has finished shutting down,
-# resulting in an error message.
-# There doesn't seem to be any more graceful way around this than to
-# insert a small delay ...
-sleep(1);
-
-$result = $conn->exec("DROP DATABASE $dbname");
-die $conn->errorMessage unless PGRES_COMMAND_OK eq $result->resultStatus;
-
-print "test sequence finished.\n";
-
-######################### EOF
diff --git a/src/interfaces/perl5/typemap b/src/interfaces/perl5/typemap
deleted file mode 100644
index e42d6c2a3b0..00000000000
--- a/src/interfaces/perl5/typemap
+++ /dev/null
@@ -1,18 +0,0 @@
-#-------------------------------------------------------
-#
-# $Id: typemap,v 1.8 1998/09/27 19:12:27 mergl Exp $
-#
-# Copyright (c) 1997, 1998 Edmund Mergl
-#
-#-------------------------------------------------------
-
-TYPEMAP
-PGconn * T_PTRREF
-PGresult * T_PTRREF
-PG_conn T_PTROBJ
-PG_result T_PTROBJ
-PG_results T_PTROBJ
-ConnStatusType T_IV
-ExecStatusType T_IV
-Oid T_IV
-pqbool T_IV