Official FreeTDS repository
C M4 Shell C++ Perl CMake Other
Latest commit bbe6d1b Feb 14, 2017 @freddy77 freddy77 Provide compatibility with OpenSSL 1.1
OpenSSL 1.1 changed quite a lot API since 1.0.
Update code to make it compatible with either versions.

Signed-off-by: Frediano Ziglio <>
Failed to load latest commit information.
doc Remove warnings compiling user guide Sep 29, 2016
include Added support for configurable openssl cipher list Feb 5, 2017
m4 fix OpenSSL link error introduced recently Apr 23, 2016
misc Remove test for Sybase 12.5 Jan 4, 2017
phptests remove .cvsignore files Mar 14, 2012
samples remove C++ comments May 27, 2012
src Provide compatibility with OpenSSL 1.1 Feb 14, 2017
vms Remove some string overflows from VMS code Jul 22, 2016
win32 Use ODBC driver register server facility Sep 19, 2015
.editorconfig Add .editorconfig ( Mar 1, 2014
.gitattributes Update NEWS and README from branch 0.91 Mar 9, 2015
.gitignore move challenge test from tds to utils May 25, 2016
.travis.yml Do not ask for password from Travis CI if error reading password May 18, 2015
AUTHORS update some documentation file Apr 20, 2016
BUGS update some documentation file Apr 20, 2016
CMakeLists.txt add utils directory May 24, 2016
COPYING Use licenses with up to date FSF address Apr 19, 2016
COPYING.LIB Use licenses with up to date FSF address Apr 19, 2016
ChangeLog remove old ChangeLog files Jun 12, 2016
INSTALL Write a note about INSTALL.GIT in INSTALL document Aug 25, 2016
INSTALL.GIT Update links to GitHub instead of Gitorious Mar 9, 2015 prepare new 1.0 release Apr 17, 2016
NEWS prepare new 1.0 release Apr 17, 2016 Create PWD from Only will be maintained in CVS. Sep 12, 2002
README Prepare for release. May 18, 2016
README.Windows Fix different typing mistakes in documentation Feb 25, 2015
TODO Updated TODO file May 29, 2015
TODO.freddy Remove a TODO from my list Oct 28, 2012
Thanks-0.95 Adding Thanks-0.95 file Jun 8, 2015
Thanks-1.0 prepare new 1.0 release Apr 17, 2016 neater output Mar 22, 2011
config.rpath fix an issue with some libtool version Nov 12, 2008 remove ODBCNODMLIBAPP automake macro Jun 12, 2016
freetds.conf Added support for configurable openssl cipher list Feb 5, 2017 Improves compatibility with a great number of SQL Server versions. Nov 13, 2015
interfaces Add sample pool configuration. Oct 9, 2002
locales.conf use same date format as Sybase in default and en_US Jun 9, 2006
mkinstalldirs Initial revision Oct 12, 2001
tds.dox Add Doxygen documentation on how to add a type to FreeTDS Sep 23, 2015


README for FreeTDS 1.0

Release date 18 May 2016

* to build FreeTDS read the file INSTALL or
  the FreeTDS Users Guide (doc/userguide/index.html) and

FreeTDS is a free implementation of Sybase's DB-Library, CT-Library,
and ODBC libraries. FreeTDS builds and runs on every flavor of
unix-like systems we've heard of (and some we haven't) as well as
Win32 (with or without Cygwin), VMS, and Mac OS X.  Failure to build
on your system is probably considered a bug.  It has C language
bindings, and works also with Perl and PHP, among others.

FreeTDS is licensed under the GNU LGPL license. See COPYING.LIB for

Other files you might want to peruse:

AUTHORS		Who's involved
BUGS		Some things we fixed, or think we did
NEWS		Summary of feature changes and fixes
README		This file
TODO		The roadmap, such as it is

Also, doc/api_status.txt shows which functions are implemented.

For details on what's new in this version, see NEWS.  For unbearable
detail, see git log.


A User Guide, in sgml and html form, is included in this distribution.
Also included is a reference manual, generated in HTML with Doxygen.
"make install" installs the HTML documentation, by default to

Note to Users

Submissions of test programs (self-contained programs that demonstrate
functionality or problems) are greatly appreciated.  They should
create any tables needed (since we obviously don't have access to your
database) and populate them.  Unit tests for any of the libraries
is appreciated

Notes to Developers

The code is split into several pieces.

1) tds directory is the wire level stuff, it should be independent of
   the library using it, this will allow db-lib, ct-lib, and ODBC to
   sit on top.

2) db-lib directory. This is the actual db-lib code which runs on top of

3) ct-lib directory. This is the ct-lib code which runs on top of tds.

4) server directory. This will be a set of server routines basically
   to impersonate a dataserver, functions like send_login_ack() etc...

5) odbc directory. ODBC implementation over tds.  Uses iODBC or
   unixODBC as a driver manager.  You need to have one of those if you
   are using the ODBC CLI.

6) unittests directories. Test harness code for ct-lib, db-lib, ODBC and

6) samples directories. Sample code for getting started with Perl,
   PHP, etc...

7) pool directory. A connection pooling server for TDS.  Useful if you
   have a connection limited license.  Needs some hacking to get
   configured but is quite stable once configured correctly. Contact
   the list if interested in how to use it.

Please look at doc/getting_started.txt for a description of what is
going on in the code.

Side note: Brian, as many free software authors, appreciates postcards
from all over. So if you live someplace neat (read: not Michigan) and
want to send one, email him ( for his current snail mail