aboutsummaryrefslogtreecommitdiff
path: root/src/interfaces
Commit message (Collapse)AuthorAge
...
* More fixes for libpq's .gitignore file.Tom Lane2010-09-22
| | | | | | The previous patches failed to cover a lot of symlinks that are only added in platform-specific cases. Make the lists match what's in the Makefile for each branch.
* Add gitignore files for ecpg regression tests.Magnus Hagander2010-09-22
| | | | Backpatch to 8.2 as that's how far the structure looks the same.
* Convert cvsignore to gitignore, and add .gitignore for build targets.Magnus Hagander2010-09-22
|
* Remove cvs keywords from all files.Magnus Hagander2010-09-20
|
* Fix several broken $PostgreSQL$ keywords. Noted while experimentingTom Lane2010-09-19
| | | | with Magnus's script to remove these.
* Cursor names in the backend are not case-sensitve. This change makes sure thatMichael Meskes2010-09-10
| | | | | | ecpg also does not regard cursor names as case-sensitive. Thanks to Zoltan Boszormenyi for the patch.
* Remove extra newlines at end and beginning of files, add missing newlinesPeter Eisentraut2010-08-19
| | | | at end of files.
* Applied Zoltan's patch to fix a few memleaks in ecpg's pgtypeslib.Michael Meskes2010-08-17
|
* Minor #include cleanup.Tom Lane2010-08-13
| | | | | | I just noticed that libpq's pqsignal.h was violating our general inclusion style guidelines by explicitly including postgres_fe.h. Remove that, and put it in pqsignal.c where it belongs.
* Fix an ancient typo that prevented the detection of conflicting fields whenTom Lane2010-08-02
| | | | | | | | interval input "invalid" was specified together with other fields. Spotted by Neil Conway with the help of a clang warning. Although this has been wrong since the interval code was written more than 10 years ago, it doesn't affect anything beyond which error message you get for a wrong input, so not worth back-patching very far.
* Make ECPG regression tests independent of standard_conforming_strings.Robert Haas2010-07-20
| | | | Per buildfarm, again.
* Portability fixes for Solaris for requirepeer feature patchPeter Eisentraut2010-07-19
| | | | per report from Dave Page
* Fix up poor handling of unsupported-platform case in requirepeer patch.Tom Lane2010-07-18
|
* Fix thinko in recent patch: 'sock' should be 'conn->sock'.Tom Lane2010-07-18
|
* Add SO_PEERCRED check in new unix domain socket permission checking code.Bruce Momjian2010-07-18
|
* Add server authentication over Unix-domain socketsPeter Eisentraut2010-07-18
| | | | | | | This adds a libpq connection parameter requirepeer that specifies the user name that the server process is expected to run under. reviewed by KaiGai Kohei
* Allow full SSL certificate verification (wherein libpq checks its host nameTom Lane2010-07-14
| | | | | | | | | | | | | | | parameter against server cert's CN field) to succeed in the case where both host and hostaddr are specified. As with the existing precedents for Kerberos, GSSAPI, SSPI, it is the calling application's responsibility that host and hostaddr match up --- we just use the host name as given. Per bug #5559 from Christopher Head. In passing, make the error handling and messages for the no-host-name-given failure more consistent among these four cases, and correct a lie in the documentation: we don't attempt to reverse-lookup host from hostaddr if host is missing. Back-patch to 8.4 where SSL cert verification was introduced.
* Bump minor library version numbers, for 9.1 release.Bruce Momjian2010-07-12
|
* Stamp HEAD as 9.1devel.Tom Lane2010-07-09
| | | | (And there was much rejoicing.)
* Translation updates for 9.0beta3Peter Eisentraut2010-07-08
|
* Make the Windows tcp keepalive support depend on the existance of theMagnus Hagander2010-07-08
| | | | | SIO_KEEPALIVE_VALS define instead of just WIN32, since MingW doesn't support this API (yet?).
* Add support for TCP keepalives on Windows, both for backend and the newMagnus Hagander2010-07-08
| | | | libpq support.
* Support setting the keepalive idle time on MacOS X.Robert Haas2010-07-06
| | | | | | MacOS X uses TCP_KEEPALIVE rather than TCP_KEEPIDLE for this purpose. Thanks to Fujii Masao for the review.
* pgindent run for 9.0, second runBruce Momjian2010-07-06
|
* Split the LDFLAGS make variable into two parts: LDFLAGS is now used forTom Lane2010-07-05
| | | | | | | | | | | | | linking both executables and shared libraries, and we add on LDFLAGS_EX when linking executables or LDFLAGS_SL when linking shared libraries. This provides a significantly cleaner way of dealing with link-time switches than the former behavior. Also, make sure that the various platform-specific %.so: %.o rules incorporate LDFLAGS and LDFLAGS_SL; most of them missed that before. (I did not add these variables for the platforms that invoke $(LD) directly, however. It's not clear if we can do that safely, since for the most part we assume these variables use CC command-line syntax.) Per gripe from Aaron Swenson and subsequent investigation.
* Add TCP keepalive support to libpq.Robert Haas2010-06-23
| | | | | | | | | | | | | | | | This adds four additional connection parameters to libpq: keepalives, keepalives_idle, keepalives_count, and keepalives_interval. keepalives default to on, per discussion, but can be turned off by specifying keepalives=0. The remaining parameters, where supported, can be used to adjust how often keepalives are sent and how many can be lost before the connection is broken. The immediate motivation for this patch is to make sure that walreceiver will eventually notice if the master reboots without closing the connection cleanly, but it should be helpful in other cases as well. Tollef Fog Heen, Fujii Masao, and me.
* Refactor sprintf calls with computed format strings into multiple calls withPeter Eisentraut2010-06-16
| | | | | constant format strings, so that the compiler can more easily check the formats for correctness.
* Added variable handling for RETURNING clause to ecpg.Michael Meskes2010-06-04
| | | | | | | While the values were correctly returned they were not moved into C variables as they should be. Closes: #5489
* Translation updates for 9.0beta2Peter Eisentraut2010-06-03
|
* Change the notation for calling functions with named parameters fromTom Lane2010-05-30
| | | | | | | | | | | | | "val AS name" to "name := val", as per recent discussion. This patch catches everything in the original named-parameters patch, but I'm not certain that no other dependencies snuck in later (grepping the source tree for all uses of AS soon proved unworkable). In passing I note that we've dropped the ball at least once on keeping ecpg's lexer (as opposed to parser) in sync with the backend. It would be a good idea to go through all of pgc.l and see if it's in sync now. I didn't attempt that at the moment.
* Rearrange libpq's SSL initialization to simplify it and make it handle someTom Lane2010-05-26
| | | | | | | | | | | | | | | | | | | | | | | | | additional cases correctly. The original coding failed to load additional (chain) certificates from the client cert file, meaning that indirectly signed client certificates didn't work unless one hacked the server's root.crt file to include intermediate CAs (not the desired approach). Another problem was that everything got loaded into the shared SSL_context object, which meant that concurrent connections trying to use different sslcert settings could well fail due to conflicting over the single available slot for a keyed certificate. To fix, get rid of the use of SSL_CTX_set_client_cert_cb(), which is deprecated anyway in the OpenSSL documentation, and instead just unconditionally load the client cert and private key during connection initialization. This lets us use SSL_CTX_use_certificate_chain_file(), which does the right thing with additional certs, and is lots simpler than the previous hacking about with BIO-level access. A small disadvantage is that we have to load the primary client cert a second time with SSL_use_certificate_file, so that that one ends up in the correct slot within the connection's SSL object where it can get paired with the key. Given the other overhead of making an SSL connection, that doesn't seem worth worrying about. Per discussion ensuing from bug #5468.
* Add missing newlines to some SSL-related error messages. Noted while testing.Tom Lane2010-05-25
|
* Replace self written 'long long int' configure test by standard ↵Michael Meskes2010-05-25
| | | | 'AC_TYPE_LONG_LONG_INT' macro call.
* Added a configure test for "long long" datatypes. So far this is only used ↵Michael Meskes2010-05-25
| | | | in ecpg and replaces the old test that was kind of hackish.
* Ecpg now accepts "long long" datatypes even if "long" is 64bit wide. This ↵Michael Meskes2010-05-20
| | | | used to cover the equally long "long long" type. This patch closes bug #5464.
* Translation updatePeter Eisentraut2010-05-13
|
* Add PGFILEDESC description to Makefiles for all /contrib executables.Bruce Momjian2010-05-12
| | | | Add PGAPPICON to all executable makefiles.
* Adjust comments about avoiding use of printf's %.*s.Tom Lane2010-05-09
| | | | | | | | | | | My initial impression that glibc was measuring the precision in characters (which is what the Linux man page says it does) was incorrect. It does take the precision to be in bytes, but it also tries to truncate the string at a character boundary. The bottom line remains the same: it will mess up if the string is not in the encoding it expects, so we need to avoid %.*s anytime there's a significant risk of that. Previous code changes are still good, but adjust the comments to reflect this knowledge. Per research by Hernan Gonzalez.
* Work around a subtle portability problem in use of printf %s format.Tom Lane2010-05-08
| | | | | | | | | | | | | Depending on which spec you read, field widths and precisions in %s may be counted either in bytes or characters. Our code was assuming bytes, which is wrong at least for glibc's implementation, and in any case libc might have a different idea of the prevailing encoding than we do. Hence, for portable results we must avoid using anything more complex than just "%s" unless the string to be printed is known to be all-ASCII. This patch fixes the cases I could find, including the psql formatting failure reported by Hernan Gonzalez. In HEAD only, I also added comments to some places where it appears safe to continue using "%.*s".
* ECPG connect routine only checked for NULL to find empty parameters, but ↵Michael Meskes2010-05-07
| | | | user and password can also be "".
* Fix a couple of places where the result of fgets() wasn't checked.Tom Lane2010-04-30
| | | | | | | This is mostly to suppress compiler warnings, although in principle the cases could result in undesirable behavior. Martin Pitt
* Fix typo that had the code check the same thing twice.Magnus Hagander2010-04-28
| | | | Fujii Masao
* Make ecpg in line with other compilers in that it deletes its output if ↵Michael Meskes2010-04-03
| | | | | | there was an error processing the input file. Work done by Zoltan.
* Message quoting style tuningPeter Eisentraut2010-04-03
|
* FATAL errors are meant to stop ecpg immediately, e.g. because the syntax isMichael Meskes2010-04-02
| | | | | corrupted. This error, however, does is not a compilation problem but a runtime one, so we can keep compiling but still have to declare ERROR.
* Zoltan beautified his hidden-variable-patch for ecpg. This also makes sure ↵Michael Meskes2010-04-01
| | | | we get an error message instead of a warning if the variable have different types.
* Applied Zoltan's patch to make ecpg spit out warnings if a local variable ↵Michael Meskes2010-04-01
| | | | hides a global one with the same name.
* Give a more precise error message if a variable is re-used as cursor name in ↵Michael Meskes2010-03-31
| | | | ecpg.
* Remove useless double assignmentPeter Eisentraut2010-03-23
| | | | GCC 4.5 complained about it.
* Fixed ECPG regression test to make sure it uses absolute paths for includeMichael Meskes2010-03-22
| | | | files instead of relative ones which break vpath builds.