summaryrefslogtreecommitdiff
path: root/src/interfaces/libpq/libpq-fe.h
Commit message (Collapse)AuthorAgeFilesLines
* pgindent run for 8.2.Bruce Momjian2006-10-041-5/+6
|
* Specify lo_write() to take a _const_ buffer, to match documentation.Bruce Momjian2006-09-071-2/+2
|
* Add PQdescribePrepared, PQdescribePortal, and related functions to libpqTom Lane2006-08-181-1/+9
| | | | | to allow obtaining information about previously prepared statements and open cursors. Volkan Yazici
* Remove libpq's PQescapeIdentifier(), not safe from injection attacks.Bruce Momjian2006-07-041-3/+1
|
* Add PQescapeIdentifier() to libpqBruce Momjian2006-06-271-1/+3
| | | | Christopher Kings-Lynne
* Add PQisthreadsafe() to libpq, to allow library applications to queryBruce Momjian2006-05-231-1/+2
| | | | the thread-safety status of the library.
* Modify libpq's string-escaping routines to be aware of encoding considerationsTom Lane2006-05-211-4/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | and standard_conforming_strings. The encoding changes are needed for proper escaping in multibyte encodings, as per the SQL-injection vulnerabilities noted in CVE-2006-2313 and CVE-2006-2314. Concurrent fixes are being applied to the server to ensure that it rejects queries that may have been corrupted by attempted SQL injection, but this merely guarantees that unpatched clients will fail rather than allow injection. An actual fix requires changing the client-side code. While at it we have also fixed these routines to understand about standard_conforming_strings, so that the upcoming changeover to SQL-spec string syntax can be somewhat transparent to client code. Since the existing API of PQescapeString and PQescapeBytea provides no way to inform them which settings are in use, these functions are now deprecated in favor of new functions PQescapeStringConn and PQescapeByteaConn. The new functions take the PGconn to which the string will be sent as an additional parameter, and look inside the connection structure to determine what to do. So as to provide some functionality for clients using the old functions, libpq stores the latest encoding and standard_conforming_strings values received from the backend in static variables, and the old functions consult these variables. This will work reliably in clients using only one Postgres connection at a time, or even multiple connections if they all use the same encoding and string syntax settings; which should cover many practical scenarios. Clients that use homebrew escaping methods, such as PHP's addslashes() function or even hardwired regexp substitution, will require extra effort to fix :-(. It is strongly recommended that such code be replaced by use of PQescapeStringConn/PQescapeByteaConn if at all feasible.
* Change libpq's PQgetssl() to return a void*, rather than SSL *, so thatBruce Momjian2006-04-271-11/+3
| | | | | | applications don't need the SSL headers. Martijn van Oosterhout
* Update comment that pgNotify.be_pid is pid of the notifying server process.Bruce Momjian2006-03-201-2/+2
|
* Update copyright for 2006. Update scripts.Bruce Momjian2006-03-051-2/+2
|
* Rename pg_make_encrypted_password to PQencryptPassword.Peter Eisentraut2005-12-261-2/+2
|
* Add an officially exported libpq function to encrypt passwords, andTom Lane2005-12-231-1/+5
| | | | | modify the previous \password patch to use it instead of depending on a not-officially-exported function. Per discussion.
* Fix pgindent of libpq-fe.h by hacking pgindent script.Bruce Momjian2005-11-231-2/+2
| | | | Remove pgbench comment that was causing problems.
* Re-run pgindent, fixing a problem where comment lines after a blankBruce Momjian2005-11-221-2/+2
| | | | | | | | | comment line where output as too long, and update typedefs for /lib directory. Also fix case where identifiers were used as variable names in the backend, but as typedefs in ecpg (favor the backend for indenting). Backpatch to 8.1.X.
* Standard pgindent run for 8.1.Bruce Momjian2005-10-151-24/+22
|
* Suppress signed-vs-unsigned-char warnings.Tom Lane2005-09-241-3/+3
|
* Adjust lo_open() so that specifying INV_READ without INV_WRITE createsTom Lane2005-06-131-1/+2
| | | | | | | | | | a descriptor that uses the current transaction snapshot, rather than SnapshotNow as it did before (and still does if INV_WRITE is set). This means pg_dump will now dump a consistent snapshot of large object contents, as it never could do before. Also, add a lo_create() function that is similar to lo_creat() but allows the desired OID of the large object to be specified. This will simplify pg_restore considerably (but I'll fix that in a separate commit).
* Defend against omitted paramLengths[] array in PQsendQueryParams.Tom Lane2005-06-091-2/+2
| | | | Per Volkan Yazici.
* Tag appropriate files for rc3PostgreSQL Daemon2004-12-311-2/+2
| | | | | | | | Also performed an initial run through of upgrading our Copyright date to extend to 2005 ... first run here was very simple ... change everything where: grep 1996-2004 && the word 'Copyright' ... scanned through the generated list with 'less' first, and after, to make sure that I only picked up the right entries ...
* Code review for recent libpq changes. Be more careful about errorTom Lane2004-12-021-7/+6
| | | | | | handling in SIGPIPE processing; avoid unnecessary pollution of application link-symbol namespace; spell 'pointer to function' in the conventional way.
* Rework libpq threaded SIGPIPE handling to avoid interference withBruce Momjian2004-12-021-7/+1
| | | | | | calling applications. This is done by blocking sigpipe in the libpq thread and using sigpending/sigwait to possibily discard any sigpipe we generated.
* Invent a new, more thread-safe version of PQrequestCancel, called PQcancel.Tom Lane2004-10-301-1/+16
| | | | | | Use this new function in psql. Implement query cancellation in psql for Windows. Code by Magnus Hagander, documentation and minor editorialization by Tom Lane.
* Add PQprepare/PQsendPrepared functions to libpq to support preparingTom Lane2004-10-181-1/+7
| | | | | statements without necessarily specifying the datatypes of their parameters. Abhijit Menon-Sen with some help from Tom Lane.
* Remove dllist.c from libpq. It's overkill for what libpq needs; we canTom Lane2004-10-161-1/+3
| | | | | | | just stick a list-link into struct PGnotify instead. Result is a smaller faster and more robust library (mainly because we reduce the number of malloc's and free's involved in notify processing), plus less pollution of application link-symbol namespace.
* Export only required symbols in libpq on Win32.Bruce Momjian2004-10-161-1/+3
| | | | Magnus Hagander
* Allow pg_ctl to determine the server is up when getting a request for aBruce Momjian2004-10-161-1/+4
| | | | | | | | password. Make password error message a #define and use it consistently. Sean Chittenden
* Pgindent run for 8.0.Bruce Momjian2004-08-291-26/+29
|
* Update copyright to 2004.Bruce Momjian2004-08-291-2/+2
|
* Clean up some random departures from project's standard declaration style.Tom Lane2004-08-181-12/+8
|
* Add PQserverVersion() to libpq to provide more-convenient access toTom Lane2004-08-111-1/+2
| | | | | | | the server version number. This commit also removes bogus DOS line endings from libpqddll.def. Greg Sabino Mullane
* Add thread locking to SSL and Kerberos connections.Bruce Momjian2004-03-241-1/+15
| | | | | | | I have removed the docs mentioning that SSL and Kerberos are not thread-safe. Manfred Spraul
* Add PQmbdsplen() which returns the "display length" of a character.Tatsuo Ishii2004-03-151-1/+4
| | | | | Still some works needed: - UTF-8, MULE_INTERNAL always returns 1
* Allow libpq to do thread-safe SIGPIPE handling. This allows it toBruce Momjian2004-01-091-1/+9
| | | | | | | | ignore SIGPIPE from send() in libpq, but terminate on any other SIGPIPE, unless the user installs their own signal handler. This is a minor fix because the only time you get SIGPIPE from libpq's send() is when the backend dies.
* make sure the $Id tags are converted to $PostgreSQL as well ...PostgreSQL Daemon2003-11-291-1/+1
|
* Share PG_DIAG_* macros between client and server and use them internally.Peter Eisentraut2003-08-271-13/+1
|
* Add macros for error result fields to libpq.Peter Eisentraut2003-08-241-1/+13
|
* Add PQexecPrepared() and PQsendQueryPrepared() functions, to allowTom Lane2003-08-131-1/+15
| | | | | | libpq users to perform Bind/Execute of previously prepared statements. Per yesterday's discussion, this offers enough performance improvement to justify bending the 'no new features during beta' rule.
* Another pgindent run with updated typedefs.Bruce Momjian2003-08-081-3/+3
|
* Update copyrights to 2003.Bruce Momjian2003-08-041-2/+2
|
* pgindent run.Bruce Momjian2003-08-041-30/+34
|
* Update libpq to make new features of FE/BE protocol available toTom Lane2003-06-211-26/+80
| | | | client applications. Some editorial work on libpq.sgml, too.
* libpq can now talk to either 3.0 or 2.0 protocol servers. It first triesTom Lane2003-06-081-8/+10
| | | | | | | protocol 3, then falls back to 2 if postmaster rejects the startup packet with an old-format error message. A side benefit of the rewrite is that SSL-encrypted connections can now be made without blocking. (I think, anyway, but do not have a good way to test.)
* Second round of FE/BE protocol changes. Frontend->backend messages nowTom Lane2003-04-191-2/+1
| | | | have length counts, and COPY IN data is packetized into messages.
* Use PQfreemem() consistently, and document its use for Notify.Bruce Momjian2003-03-251-2/+3
| | | | Keep PQfreeNotify() around for binary compatibility.
* Add PQfreemem() call for Win32.Bruce Momjian2003-03-221-1/+2
|
* PGRES_POLLING_ACTIVE is unused, keep for backward compatibility.Bruce Momjian2003-03-201-2/+3
| | | | Lennert Buytenhek
* This patch fixes a bunch of spelling mistakes in comments throughout theTom Lane2003-03-101-2/+2
| | | | | | PostgreSQL source code. Neil Conway
* I just discovered, that there is missing a const when passing a bufferBruce Momjian2002-11-101-3/+3
| | | | | | | to PQescapeBytea and PQunescapeBytea. I fixed it and tried to create a usable diff (I'm not so familar to diff). Tommi M?kitalo
* pgindent run.Bruce Momjian2002-09-041-3/+3
|
* Update copyright to 2002.Bruce Momjian2002-06-201-2/+2
|