Skip to content
Switch branches/tags
Go to file
Cannot retrieve contributors at this time
Jun 07 2021, V3.52.15:
* Added support for macOS Big Sur (11.x) on Apple Silicon using a universal build
* Fixed title to show CPU architecture used
* Fixed length of error message buffer
* Fixed small portability issues
* Removed support for Mac OS X Snow Leopard (10.6) and older
* Removed deprecated iODBCcfmbridge for PPC
* Upgraded iODBC build to use recent versions of Xcode
- Minimum Xcode version is set to Xcode 8.0
- Minimum macOS deployment target is OS X Mavericks (10.9)
- Migrated dialogs and plist files
- Migrated translation support
Feb 17 2021, V3.52.14:
* Added support for transparent conversion between UCS4, UTF-8, and UTF-16 codepages
* Small documentation fixes
* Fixed issue with return buffer
* Fixed compiler warnings
* Fixed missing check on pcbConnStrOut
* Fixed SQLSetEnvAttr doesn't return SQL_SUCCESS for option SQL_ATTR_APP_UNICODE_TYPE
* Fixed issue with switch ODBC driver to best supported unicode codepage
* Fixed typo in SQLBrowseConnect
* Fixed SQLGetConnectOption returned wrong value for SQL_CURRENT_QUALIFIER and SQL_TRANSLATE_DLL for some cases
* Fixed mixing calls to SQLFetchScroll with SQLFetch
* Fixed unicode conversion issues
* Fixed ansi buffers allocation
* Fixed issue with tracing
* Fixed truncate data in SQLGetPrivateProfileStringW
Jul 23 2019, V3.52.13:
* Added extra validation for SQLAllocHandle (SQL_HANDLE_DESC, ...)
* Added GCC __attribute__ for checking format string
* Added missing define SQL_CONVERT_GUID
* Fixed issue using heap after free in SQLConnect_internal
* Fixed issue with global mutex in SQLError, SQLGetDiagRec and SQLGetDiagField
* Fixed SQLSetStmtAttr to cache the correct values for SQL_ATTR_ROW_ARRAY_SIZE and SQL_ATTR_ROW_BIND_TYPE
* Fixed format specifiers and some casts to fix trace output
* Fixed missing check for section in SQLGetPrivateProfileString
* Fixed non-void function needs to return a value
* Fixed issue in Mac Cocoa code
* Fixed iODBC apps/frameworks CFBundleGetInfoString attribute
* Fixes an issue where build fails on Alpine
* Fixed package versioning
* Fixed small memory leaks
Jul 12 2016, V3.52.12:
* Added new Cocoa based dialogs for Mac OS X which will allow 64bit applications to
use the standard Login and Setup dialogs from the iODBCinst framework
* Added 64bit version of the iODBC Administrator to configure and test DSNs on drivers that are
only available in 64bit format
* Fixed User DSN support for recent versions of Microsoft Excel and Query on Mac OS X
* Documentation fixes
May 25 2016, V3.52.11 (internal release):
* Added xcodebuild option for Mac OS X 10.11
* Added support for x86_64 to iODBC Demo
* Fix crash ODBCdemo - error message overwrite stack data
* Fix iODBCdemo issue with UID/PWD values
* Fixed crash in iODBC DM on push of "Test" button when 64bit ODBC driver is used.
* Fixed crash when create_dsnsetup fails to load the window.
* Fixed crash when passing an empty connect string with no window handle
* Fixed crash when passing an empty connect string with no window handle.
* Fixed iODBCadm and iODBCdrvproxy Development build errors on OS X
* Fixed iODBCadm and iODBCdrvproxy Development build errors on OS X.
* Fixed iODBCdrvproxy XIBs not compiling to NIBs on OS X.
* Fixed issue in SQLGetInfo
* Fixed issue with Xcode on Mac OS X 10.10 Xcode 7.2.1
* Fixed use only major.minor of Mac OS X version to configure flags
* Fixed crash when create_dsnsetup fails to load the window
Feb 10 2015, V3.52.10:
* Fixed issue with ~/Library/ODBC/odbc[inst].ini on Mac OS X --
iODBC created ~/.odbc[inst].ini when ~/Library/ODBC/odbc[inst].ini did not exist
* If $HOME/.odbc[inst].ini exists, automatically import it and then replace it
with symlink to $HOME/Library/ODBC/odbc[inst].ini for backward compatibility
with third party drivers
* Always read from $HOME/Library/ODBC/odbc[inst].ini
* Added build support for Mac OS X 10.10
* Updated iODBC Administrator
- Renamed OpenLink ODBC Administrator to iODBC Administrator
- Install iODBC Administrator in /Applications/iODBC/
- Fixed About dialog
- Fixed UI elements
- Fixed FileDSN default path
- Fixed FileDSN save dialog
- Fixed Set Trace file option
- Fixed Mac OS X file chooser dialogs to return long file names
* Updated iODBC Demo
- Fixed app names/titles to iODBC Demo Unicode and iODBC Demo Ansi
- Updated iODBCdemo on Mac OS X to support blue links in gridView
- Fixed column resize in gridView for "SPARQL DESCRIBE..." queries
* Fixed string truncation in Unicode <-> Ansi conversion on some API calls
Apr 15 2014, V3.52.9:
* Added support for building on recent versions of Mac OS X
* Fixed warnings from autoconf/automake
* Fixed infinite loop in connection pool
* Fixed compiler warnings
* Fixed build dependency for make -jX
* Fixed check for Unicode driver
* Fixed issue calling SQLCancel from other thread
* Fixed SQLInstallDriverEx when driver is readonly
Mar 27 2012, V3.52.8:
* Converted from CVS to GIT
* Added build support for Mac OS X 10.5, 10.6 and 10.7
* Converted old Mac OS X .nib format to newer .xib format
* Fixed issue with using buffer after free
* Fixed use ssize_t where appropriate
* Fixed issue with strlen if param can be NULL
* Fixed use ssize_t for length of string
* Fixed tracing SQLGetData using multiple chunks
* Fixed problem tracing on big-endian machines
* Fixed wrong type label
* Fixed compiler warnings
Sep 10 2009, V3.52.7:
* Added iODBC Graphical Administrator for Mac OS X
* Added iODBC CFM Bridge
* Added resizable windows and dialogs for GTK+
* Added option in tracefile for sequence number ($S)
* Added additional translations between ANSI and Unicode
* Fixed if tracefile gets too big, continue in new tracefile
* Fixed unload bug due to wrong pointer deref
* Fixed Connection Pooling UI
* Fixed checking odbc_ver on connect handle
* Fixed packaging of runtime only libraries
* Fixed porting issues
* Fixed documentation
Oct 08 2007, V3.52.6:
* Added support for GTK+ 2.x
* Fixed long mutex lock on connect
* Fixed problems with SQLBrowseConnect
* Fixed missing functions in export list
* Fixed core dump when checking for driver odbc version
* Fixed allocation error in SQLDescribeCol
* Fixed rpm specification for RedHat
* Fixed porting problems on FreeBSD, OpenBSD and OSF
* Use SQLFetchScroll in iodbctest
Jan 05 2007, V3.52.5:
* Added support for FileDSN
* Added support for Connection Pooling
* Added check for tracefile size
* Call ODBC 2.x functions in driver if application uses ODBC 2.x only calls
* Fixed problem parsing driver result in SQLSetStmtAttr
* Fixed source code readability
* Fixed bug in overwriting driver name
* Fixed check for /Library/ODBC for Mac OS X
* Fixed prototypes
* Rewrote bootstrap script and configure summary
* Use localtime_r in tracing when available
* Fixed build issues with Mac OS X
* Small code cleanups and fixes
Jan 26 2006, V3.52.4:
* Added support for Mac OS X 10.4 Universal kit (ppc, ppc64 and i386)
* Removed dependency between iodbc and iodbcinst shared libraries
* Cleanup Mac OS X build process
* Clarify LGPL license conditions
* Fixed problem with error on subsequent SQLExecute statements
* Fixed problem building 64bit GUI components
* Fixed compiler warnings
* Fixed problem determining which compiler to use on AIX
* Enabled SHLIB_PATH on HP/UX
* Fixed problem using # as comment in odbc.ini file
* Disabled --disable-odbc3 flag
* Small code cleanups and fixes
Nov 04 2005, V3.52.3:
* Added support for DSN-less connections
* Added timestamp to ENTER/EXIT lines in trace file
* Added build support for AIX 5.x, HP/UX 11.23 Itanium
* Added build support for Mac OS X 10.3 (32bit) and 10.4 (32bit+64bit)
* Fixed problem with certain compilers hating lvalue casting
* Fixed problem with truncated messages in iodbctest
* Fixed problem calling setup dialog multiple times
* Fixed problem with ODBC_BOTH_DSN
* Fixed problem with tracing SQLGetInfo
* Fixed problem with NUL termination on setup dialog
* Fixed problem building on Mac OS X 10.4 64bit
* Fixed problem calculating buffer length after calling setup dialog
* Fixed problem with SQLDriverConnect (SQL_DRIVER_PROMPT) if no
setup dialog had been registered
* Fixed symbol clash between Oracle Instant client and iODBC on Mac OS X
* Fixed problem building iODBCadm and drvproxy on Mac OS X
* Fixed problem building on machines with older iODBC installation
Feb 04 2005, V3.52.2:
* Added tracing option for root without overwriting existing files
* Added PORT.OpenLink script
* Added special iodbc-config script for Mac OS X framework build
* Fixed problem starting/stopping tracing
* Fixed SQLSetConnectAttr to return SQL_SUCCESS_WITH_INFO
if driver cannot handle option set before connect time
* Fixed SQLInfo to use pcbInfoValue if present
* Fixed NULL pointer problem in GTK choose driver dialog
* Fixed problem with C++ prototypes with older 32bit code
* Fixed locking problem with SQLAllocEnv/SQLAllocHandle
* Fixed tracefile name expansion
* Fixed problem running on machines without GTK
* Fixed problem installing code in temp directory for packaging
* Fixed problem calling SQLGetDiagRec on uninitialized handles
in iodbctest program
* Link iodbctest program with static iodbc libraries
Sep 29 2004, V3.52.1:
* Added support for new ODBC 3.52 specification for 64bit environments
* Added support for SQLGetEnvAttr(SQL_ATTR_WCHAR_SIZE extension
* Added missing Mac OS X build files
* Added script to symlink Mac OS X framework into /usr/local/iODBC
to allow traditional GNU configurable packages to use the same
version of iODBC
* Added new layer to driver loading to prevent memory leaks when
drivers cannot be physically unloaded
* Added man pages for iodbc-config, iodbctest and iodbcadm-gtk
* Added header file iodbcunix.h for portability
* Enhanced tracing for SQLGetFunctions, SQLColAttribute
* Fixed NULL pointer problem when connection failed
* Fixed initialization problem with SQLGetPrivateProfileString
* Fixed export Unicode and ANSI names of ODBC functions in libiodbc
* Fixed SQLSetScrollOption emulation
* Fixed tracing for SQLSetDescRec
* Fixed rpm build issue with RedHat 9
* Fixed MAC OS X install problem
* Fixed Mac OS X build dependency on Carbon libraries
* Fixed HP/UX shared library name handling
* Fixed handling of UTF-8 sequences
* Fixed compiler warnings
* Small code cleanups and fixes
Feb 24 2004, V3.51.2:
* Added support for installation layouts for different distributions
e.g. --with-layout=RedHat
* Added support for Mac OS X 10.3 (panther)
* Added support for creating symlink
* Added more ODBC 3.x calls to iodbctest.c program
* Added SQLRowCount for SQL UPDATE/DELETE statements in iodbctest.c
* Fixed build problem with older make programs
* Fixed bug in state handling SQLCloseCursor
* Fixed driver statement allocation problem
* Fixed double free in statement handle
* Fixed problem tracing variable length strings and binary data
* Use snprintf when available to guard against buffer overruns
* Small documentation fixes
Sept 08 2003, V3.51.1:
* Fixed library dependency for PHP and other open source packages
* Fixed build problems on Mac OS X
* Fixed default compiler and flags for threaded builds
* Small bugfixes
Aug 22 2003, V3.51.0:
* Added Unicode support
* Added tracing functionality
* Minor cleanups and bugfixes
Apr 29 2002, V3.0.6:
* Added instructions for building MyODBC on Mac OS X
* Added support for building iODBC on Mac OS X as a framework
* Fixed creating new window handle
* Fixed portability issues
* Use the latest versions of autoconf, automake and libtool
* Updated all comments to reflect the new dual licensing policy
* Fixed bug in SQLError/SQLGetDiagRec
* Added support for driver specific connect options
* Fixed wrong argument to SQLEndTran
* Fixed handling statement descriptor
* Fixed DSN string handling
* Fixed mapping in SQLColumnAttributes
* Minor cleanups and bugfixes
Jun 7 2001, V3.0.5:
* Added new iodbcinst code
* Added new drvproxy and iodbcadm GTK frontend
* iODBC released under LGPL or BSD license
* SQLMoreResults always returned SQL_NO_DATA_FOUND
Jun 4 2001, V3.0.4:
* Reorganized source tree to use multiple subdirectories in
preparation of adding the new iodbcinst code
* Use config.h instead of massive CFLAGS
* Generate libiodbc.spec with correct version number
Jun 1 2001, V3.0.3:
* Added support for automake 1.4-p2, autoconf 2.50 and libtool 1.4
* Fixed problems with shl_unload on HP/UX
* Added support for MacOS X 1.2 (Darwin)
* Disallow root to start a debug session (security risk)
* SQLDatasources returns Driver Type instead of DSN Description
* Added checks for ODBC 3.x date, time and timestamp defines
* Fixed initialization of cip flag
Feb 1 2000, V3.0.2:
* Fixed deadlock problem in SQLNumResultCols
* Small code fix in SQLDatasources
Jan 28 2000, V3.0.1:
* Added thread support into Driver Manager
* Added code to allow Threaded application to call non-threaded driver
* Small code fixes and cleanups
Dec 16 1999, V3.0.0:
* Added initial support for ODBC 3.x API and the ODBC 3.x to 2.x
translation layer
* Added --disable-odbc3 flag to for building ODBC 2.x
compatible driver manager
* Added --enable-maintainer-mode flag to
* Rewrote dlopen and underscore checks in
* Default iodbc-inidir is set to /etc
* Clear error stack at the start of each ODBC function
* Imported libtool 1.3.4
* Small code cleanups
* Created iodbc-config script for other projects to find out how
to link with the iodbc libraries.
* Fixed bug in SQLDataSources
* Added initial support for MacOS X (Rhapsody)
* Add some ODBC 3.x API calls to the odbctest program
June 25, 1999, V2.50.3:
* Renamed public header files to conform to ODBC standard
* System wide iodbc.ini can now be set with --with-odbc-inidir=,
default is set to $sysconfdir/odbc.ini to comply with GNU
* Some small bug fixes
* Added AutoReqProv flag to RPM .spec file
* Changed types for SQLHENV, SQLHDBC, SQLHSTMT
April 26, 1999, V2.50.2:
* Small code cleanups (pvk)
* Wrote new handle validation checks to make the driver manager more
resistant to handle misuse (pvk)
* Rewrote all function prototypes to conform to ODBC 2.51 standard (pvk)
* Use the internal form of the handle instead of the external
representation (pvk)
* Removed 2 copyright sccs stamps and comments as requested by Ke Jin (pvk)
* Added rudementary SQLGetPrivateProfileString call (pvk)
* Added support for VMS (ps)
January 18, 1999, V2.50:
* Added autoconf/automake/libtool support
* Licensing moved to LGPL
* Added OpenLink code enhancements and bug fixes
Original Changelog from Ke Jin
July 30, 1995, v2.00.beta:
0. the first release and beta version.
Sep. 11, 1995, v2.10:
1. Porting to AIX 3.x and 4.x, by writing dlopen(),
dlsym(), dlclose() interface.
2. Tested on SCO OpenServer 5.x
3. Awared of that, unlike s700/s800, exported function
symbols on HP9000 s300/s400 will be prepended with
a '_' prefix by compiler(and this '_' prefix is not
automatically handled by shl_findsym()). Now, it works
fine on s300/s400.
4. Support driver ODBC call tracing.
Oct. 12, 1995, v2.11:
5. Driver's SQLNumResultCols() will automatically be
invoked in driver manager's SQLExecute(),
SQLExecDirect() and SQLParamData() after successfully
calling of their correspondent driver functions. This
simplifies the state tracing/checking of the driver
manager a lot and allows store procedures to return
result set and also make iODBC driver manager work
properly with SELECT INTO statements which actually
don't return result sets.
6. Memory leaks are cleared.
7. Two bugs in dld.c for AIX are fixed
8. A bug of setting tracing option is fixed.
9. The driver will not be unloaded by SQLDisconnect()
but by SQLFreeConnect() or next SQLConnect()/
SQLDriverConnect()/SQLBrowsConnect() on a different
driver. This will save driver's loading time if it
has been used by a previous connection(even there
is no active connection on this driver).
10.Another three platforms are supported:
FreeBSD 2.x
Concurrent Max/OS SVR4 1.x
DG/UX 5.x
11.autoconfig and build -- shell scripts to help modifying and building iodbc driver manager
Nov. 12, 1995, v2.12
12.I realized that a driver manager doesn't aware of
difference between a C5 (i.e. hstmt) and a C6
(i.e. transaction) states.
13.The link flags "-lc" has been droped from Linux ELF
section of to fix a segment fault problem.
Now, it works fine on Slackware 2.3 and Red Hat 2.0
(kernel version are 1.2.xx and 1.3.xx respectively).
14.On FreeBSD 2.x, dlsym() doesn't handle the '_' prefix
prepended to an exportting function symbol by compiler.
So, CLI_NAME_PREFIX needs to be defined as "_SQL" for
FreeBSD 2.x.
15.Some files are renamed
dld.c -> dlf.c
dld.h -> dlf.h
confg.h -> config.h
16. Fix a bug on setting tracing options.