github FreeTDS/freetds v1.5.7
FreeTDS 1.5.7 minor release

one day ago

Added commits

ctlib: Remove leak freeing command

Release cursor while freeing command.

tsql: Avoid possible invalid type formatting a message

Specifically:

tsql.c: In function ‘do_query’:
tsql.c:292:80: warning: format ‘%ld’ expects argument of type ‘long int’, but argument 4 has type ‘__suseconds64_t’ {aka ‘long long int’} [-Wformat=]
  292 |                         sprintf(message, "Total time for processing %d rows: %ld msecs\n",
      |                                                                              ~~^
      |                                                                                |
      |                                                                                long int
      |                                                                              %lld

tds: Fix bound check conversion (float -> uint)

Converting from floating point to unsigned int the bound check was incorrect resulting in invalid conversions if the input value was not in range.

Fix conversion bound checks, tsql message formatting

tds: Fix bulk copy in for Microsoft XML type

As documented, and tested, the protocol requires the usage of NVARCHAR type, not XML, which is refused causing an error.

Better test for vasprintf on VMS

Recentish CRTLs do have it, but the test I added 23 years ago was not correctly detecting it.

VMS has had vsnprintf for a long time

And this allows for a better vasprintf fallback for systems where vasprintf is not available.

Use CORK flag correctly, do not delay partial packets

Resetting TCP_CORK flag in Linux causes the partial packets to be flushed however if the queue is full partial packets are not moved to the queue.
Partial packets are then processed when space is available.
However FreeTDS used to set again the flag causing partial packets to be delayed.
Remove that delay reducing latency.

dblib: Expand buffers to hold converted floating point

Make sure there's enough space for converting the numbers.
This fixes fisql command printing real/float values.

ci: Update win-iconv version

Pick up more recent master version, already including my fix.

odbc: Accept any variable data type using DATA_AT_EXEC length

Reported in #667.

The behavior is consistent with Microsoft driver.

This caused an issue using PHP ODBC PDO driver.

odbc: Fix inserting too much data with SQLPutData

An error is returned if column is truncate.

Caution

Do not use Source code links below, they are auto generated and broken.

Don't miss a new freetds release

NewReleases is sending notifications on new releases.