Remove some dead code.
Add test case for using SQLBindParameter with SQLExecDirect.
Handle turning standard_conforming_strings to off in mid-session.

We already watched for a ParameterStatus response indicating that
standard_conforming_strings was turned on, and acted accordingly, but
if it was turned off, we did nothing. Fix that.

Also add a test case for that.
Remove common.o on "make clean"
Add test case for multi-statements.
Add test case for testing the effect of COMMIT/ROLLBACK on cursors.

The behavior differs depending on UseDeclareFetch, so there are two expected
outputs for this.
Fix bug when a statement is executed twice with data-at-execution params.

When a statement with array-bound data-at-execution parameters is executed
twice, the second result set was not returned when UseServerSidePrepare=1.
This was demonstrated by the data-at-execution regression test case.
Change the default for UseServerSidePrepare to 1.

The docs have recommended UseServerSidePrepare=1 for server versions 7.4
onwards, so it seems prudent to change the default so that people don't need
to remember to specify it manually.

With UseServerSidePrepare=1, the "insertreturning" regression test case
behaves better, ie. SQLNumResultCols() correctly returns the number of
columns for an INSERT RETURNING statement, even when called before
SQLExecute(). Hence change the expected output. I'm not 100% if the behavior
with UseServerSidePrepare=0 was even correct, so I'm not adding an
alternative expected output file for it.
Add preliminary release notes for upcoming 9.3 release.

This doesn't cover everything yet, but it's a start.
Remove useless 'sync' parameter from prepareParameters() function.

It was always passed as TRUE.
Add test case for SQLDescribeParam
Add test case for interleaving operations on several prepared statements.
Don't issue a BEGIN when running VACUUM in auto-commit mode.

Normally in auto-commit mode the driver begins a new transaction
implicitly at the first statement, by sending a BEGIN statement. However,
some commands, like VACUUM, cannot be run in a transaction block, and you
will get an error like "VACUUM cannot run inside a transaction block" from
the server. In UseServerSidePrepare=0 mode, the code looks at the first word
of the query to determine if the statement is one of the special ones, and
if so, didn't begin a new transaction even when auto-commit mode is
disabled. However, in UseServerSidePrepare=1 mode, when using SQLPrepare/
SQLExecute to run the VACUUM, that check was not made. Fix that.

There was one more related inconsistency between UseServerSidePrepare modes.
Without server-side-prepares, if you issued an explicit BEGIN in auto-commit
mode, the implicit BEGIN was ont sent. But without server-side prepares, it
was. It seems best to send the implicit BEGIN in both cases, because then
you get a warning from the backend about the second BEGIN. That's a good
thing, because a sane ODBC application should be using the ODBC function
SQLEndTran() for transaction control, not explicit BEGIN/COMMIT.

Also add a test case for executing VACUUM, with and without autocommit.
When LF->CR+LF conversion causes an buffer truncation, supress the conversion (in case of unicode).
Handle SSL client certificate authentication in Windows Schannel security
support provider.

You have to place the certificate file postgresql.pfx (PFX or PKCS12 format)
in %APPDATA%\postgresql folder instead of postgresql.crt and postgresql.key
(I wasn't able to find the way to handle PEM format using Cryptography API
unfortunately).
You can create the file using the following command.
 openssl pkcs12 -export -in postgresql.crt -inkey postgresql.key
 -out postgresql.pfx (with empty password).
Change Windows installer build system for the next release.

Change to specify ProductCode for each version so as not to forget to change
ProductCode in case of major version up.
Remove VC runtime merge modules from the installer(runtime dlls will be
installed via psqlodbc setup program).

[64bit version only]
Use libpq by default
Remove GSSAPI support by default
Concentrate the settings of Windows build system to an xml file and
build binaries or installers with reference to it.

	(configuration.xml)
		xml file to specify the setting of the build environment.
		It is automatically generated in winbuild folder as a copy
		of winbuild/configuration_template.xml when you invoke
		editConfiguration script firstly.

	winbuild/configuration.ps1	modules to handle the configuration file
	winbuild/editConfiguration.ps1	edit configuration file (GUI)
	winbuild/editConfiguration.bat	same as above with a minimized console window

	buildx86.ps1			build 32bit binary
	buildx64.ps1			build 64bit binary

	installer/buildx86-installer.ps1	build 32bit installer
	installer/buildx64-installer.ps1	build 64bit installer
OK I found the way to handle private keys of PEM form using CryptoAPI.
Certificates of PFX form are no longer needed for SSL client certificate
authntication.
Fix a bug in CC_copy_conninfo() that free()s password item of input source
unexpectedly.
Change CC_copy_conninfo() and copy_globals() so that they copy each item
one by one.
Fix the newly-introduced CORR_STRCPY and CORR_VALCPY macros.

They were broken, did not compile.

Michael Paquier