README Progress(R) DataDirect(R) Progress DataDirect for ODBC for SQL Server Wire Protocol Driver Windows Platforms (32- and 64-bit) 8.0.2 Release May 17, 2022 *********************************************************************** Copyright (c) 2022 Progress Software Corporation and/or its subsidiaries or affiliates. All Rights Reserved. *********************************************************************** This README file contains information for Progress(R) DataDirect(R) for ODBC SQL Server(TM) Wire Protocol Driver. This README file contains information not included in the PROGRESS DATADIRECT FOR ODBC FOR SQL SERVER USER'S GUIDE AND REFERENCE. CONTENTS Driver Requirements Installation Directory Changes Since 8.0.2 GA Changes for 8.0.2 GA Driver WorkAround Options Notes, Known Problems, and Restrictions Documentation Installed Files for the 32-bit Driver Installed Files for the 64-bit Driver Driver Requirements * IMPORTANT: You must have the Microsoft Data Access Components (MDAC) installed to use this product. - For 32-bit Windows systems, version 2.6 or higher is required. - For 64-bit Windows systems, version 2.8 or higher is required. Depending on the version of your Windows operating system, these components may already be installed. You can download a utility that determines whether MDAC is installed and its version from the following Microsoft site: http://msdn.microsoft.com/en-us/data/aa937730.aspx You can also download MDAC from the same site. Installation Directory * The default installation directory for the 32-bit driver on a 64-bit system is: C:\Program Files (x86)\Progress\DataDirect\ODBC_80 * The default installation directory for all other installations is: C:\Program Files\Progress\DataDirect\ODBC_80 Changes Since 8.0.2 GA Certifications -------------- * Certified with Microsoft SQL Server 2019 Big Data Clusters Driver version 08.02.0402 (B0766, U0531) * Certified with Microsoft SQL Server 2019 Driver version 08.02.0291 (B0554, U0395) Support for Windows Certificate Store ------------------------------------- The driver has been enhanced to support the Windows certificate store for TLS/SSL server authentication. Refer to the user's guide for details. SSL Enhancement (1.1.1n) ------------------------ The default version of the OpenSSL library has been upgraded to version 1.1.1n, which fixes the following security vulnerabilities: * Infinite loop in BN_mod_sqrt() reachable when parsing certificates (CVE-2022-0778) * BN_mod_exp may produce incorrect results on MIPS (CVE-2021-4160) This upgrade is available in build 08.02.0216 of the following OpenSSL library files: ivtls28.dll (32-bit) and ddtls28.dll (64-bit). Version 1.1.1n also addresses vulnerabilities resolved by earlier versions of the library. For more information on OpenSSL vulnerabilities resolved by this upgrade, refer to the corresponding OpenSSL announcements at: https://www.openssl.org/news/vulnerabilities-1.1.1.html Note: By default, the driver will attempt to load version 1.1.1 of the library; however, if the library cannot be loaded, the driver will fall back to version 1.0.2. See "Designating an OpenSSL Library" in the "Notes, Known Issues, and Restrictions" section for more information. Support for TLS/SSL Server Authentication in a Serverless Environment --------------------------------------------------------------------- The driver has been enhanced to support TLS/SSL server authentication for the applications deployed in a serverless environment. The driver stores the TLS/SSL certificates in memory and lets applications use TLS/SSL server authentication without storing the truststore file on the disk. To use this enhancement, specify the content of the certificate in the refreshed Trust Store (Truststore) connection option or the new SQL_COPT_INMEMORY_TRUSTSTORECERT pre-connection attribute. Refer to the user's guide for details. curl Library Enhancement (7.80.0) --------------------------------- The curl library files that are installed with the product have been upgraded to version 7.80.0, which fixes a number of potential security vulnerabilities. For more information on the vulnerabilities resolved by this enhancement, refer to: https://curl.haxx.se/docs/vulnerabilities.html. This upgrade is available starting in build 08.02.0278 of the curl library files. SSL Enhancement (1.1.1l) ------------------------ Note: OpenSSL library 1.1.1l has been replaced with version 1.1.1n. In addition to fixing multiple new vulnerabilities, version 1.1.1n also addresses the vulnerabilities resolved by version 1.1.1l. The default version of the OpenSSL library has been upgraded to version 1.1.1l, which fixes the following security vulnerabilities: * SM2 Decryption Buffer Overflow (CVE-2021-3711) * Read buffer overruns processing ASN.1 strings (CVE-2021-3712) This upgrade is available in build 08.02.0181 of the following OpenSSL library files: ivtls28.dll (32-bit) and ddtls28.dll (64-bit). Server Alias Support -------------------- The driver has been enhanced to support connecting to servers using aliases created by the SQL Server Configuration Manager. To support this feature, the Host Name (HostName) connection option has been refreshed to accept alias names as valid values. The driver uses the server name and port number provided by the alias when establishing a connection. Returning SQL_SERVER_NAME With SQLGetInfo ----------------------------------------- The driver has been updated to return the server name to which you are connected for the value of SQL_SERVER_NAME when executing SQLGetInfo. In earlier versions of the driver, the value returned for SQL_SERVER_NAME would be the setting of the Host Name (HostName) connection option. The driver will now return the server name string that it receives from the server when connecting to the database as the value for SQLGetInfo(SQL_SERVER_NAME). Keep Active Connections Enhancement ----------------------------------- The driver has been enhanced with the new Keep Connection Active (KeepConnectionActive) and Socket Idle Time (SocketIdleTimeCheckInterval) connection options. Together, these options provide you with a method to keep active idle connections to Azure SQL Database, Azure Synapse Analytics through Azure SQL Gateway, or to databases that enforce timeouts for inactivity. curl Library Enhancement (7.75.0) --------------------------------- The curl library files that are installed with the product have been upgraded to version 7.75.0, which fixes a number of potential security vulnerabilities. For more information on the vulnerabilities resolved by this enhancement, refer to: https://curl.haxx.se/docs/vulnerabilities.html. This upgrade is available starting in build 08.02.0239 of the curl library files. Enable Replication User feature for IDENTITY columns ---------------------------------------------------- The driver has been enhanced to support inserts into SQL Server IDENTITY columns in replication scenarios. Either the Enable Replication User (EnableReplicationUser) connection option or the SQL_COPT_REPLICATION_USER connection attribute (numeric value 1080) can be used to allow inserts into IDENTITY columns. When the replication user feature is set to 1 (Enabled), explicit values can be inserted into IDENTITY columns defined as NOT FOR REPLICATION. If different values are specified for the Enable Replication User option and the SQL_COPT_REPLICATION_USER attribute, driver behavior is determined by the value of the SQL_COPT_REPLICATION_USER attribute. SSL Enhancement (1.1.1k) ------------------------ Note: OpenSSL library 1.1.1k has been replaced with version 1.1.1l. In addition to fixing multiple new vulnerabilities, version 1.1.1l also addresses the vulnerabilities resolved by version 1.1.1k. The default version of the OpenSSL library has been upgraded to version 1.1.1k, which fixes the following security vulnerabilities: * CA certificate check bypass with X509_V_FLAG_X509_STRICT (CVE-2021-3450) * NULL pointer deref in signature_algorithms processing (CVE-2021-3449) * Null pointer deref in X509_issuer_and_serial_hash() (CVE-2021-23841) * Integer overflow in CipherUpdate (CVE-2021-23840) This upgrade is available in build 08.02.0162 of the following OpenSSL library files: ivtls28.dll (32-bit) and ddtls28.dll (64-bit). XA Interface Support -------------------- The driver has been enhanced to support distributed transactions. It implements the XA interface to enable support for distributed transactions. For details, refer to the user's guide. Documentation ------------- Any product package made available after February 9, 2021 will not include the HTML help system or user's guide PDF. The full documentation set, including these items, is available from the Progress Information Hub: https://docs.progress.com/category/datadirect-microsoft-sql-server While the product packages will not include these documentation items, the installation Help directory will provide an HTML redirect for direct access to the HTML help. Note that all Progress DataDirect for ODBC documentation has been migrated to the Progress Information Hub: https://docs.progress.com/ Access Token Authentication Support ----------------------------------- The driver has been enhanced to support access token authentication programmatically with the use of a pre-connection attribute SQL_COPT_SS_ACCESS_TOKEN. Refer to the user's guide for more information. SSL Enhancement (1.1.1i) ------------------------ Note: OpenSSL library 1.1.1i has been replaced with version 1.1.1k. In addition to fixing multiple new vulnerabilities, version 1.1.1k also addresses the vulnerabilities resolved by version 1.1.1i. The default version of the OpenSSL library has been upgraded to version 1.1.1i, which fixes the following security vulnerability: Incorrect behavior of the GENERAL_NAME_cmp function (CVE-2020-1971). This upgrade is available in build 08.02.0101 of the following OpenSSL library files: ivtls28.dll (32-bit) and ddtls28.dll (64-bit). sp_describe_undeclared_parameters Support ----------------------------------------- The driver has been enhanced to use sp_describe_undeclared_parameters, a SQL Server system stored procedure, to fetch parameter metadata. With this enhancement, the driver can return more accurate parameter metadata for both simple and complex queries. However, it cannot determine if a parameter allows NULL values; hence, it returns SQL_NULLABLE_UNKNOWN for the nullable fields. Note that the driver does not call sp_describe_undeclared_parameters to fetch parameter metadata when Always Encrypted functionality is enabled (ColumnEncryption=Enabled). SSL Enhancement (1.1.1g) ------------------------ OpenSSL library 1.1.1g has been replaced with version 1.1.1k. In addition to fixing multiple new vulnerabilities, version 1.1.1k also addresses the vulnerabilities resolved by version 1.1.1g. The default version of the OpenSSL library has been upgraded to version 1.1.1g, which fixes the following security vulnerabilities: * Segmentation fault in SSL_check_chain (CVE-2020-1967) * rsaz_512_sqr overflow bug on x86_64 (CVE-2019-1551) Timestamp Logging in Packet Logs -------------------------------- The drivers using base version B0649 and later have been enhanced to include timestamp in the internal packet logs by default. If you want to disable the timestamp logging in packet logs, set PacketLoggingOptions=1. The internal packet logging is not enabled by default. To enable it, set EnablePacketLogging=1. SSL Enhancement (1.0.2u) ------------------------ OpenSSL library 1.0.2r has been replaced with version 1.0.2u. In addition to fixing multiple new vulnerabilities, version 1.0.2u also addresses the vulnerabilities resolved by version 1.0.2r. Version 1.0.2u of the OpenSSL library fixes the following security vulnerabilities: * x64_64 Montgomery squaring procedure used in exponentiation with 512-bit moduli (CVE-2019-1563) * Padding Oracle in PKCS7_dataDecode and CMS_decrypt_set1_pkey (CVE-2019-1563) * Compute ECC cofactors if not provided during EC_GROUP construction (CVE-2019-1547) * Installation paths in diverse Windows builds (CVE-2019-1552) Note: By default, the driver will attempt to load version 1.1.1 of the library; however, if the library cannot be loaded, the driver will fall back to version 1.0.2. curl Library Enhancement ------------------------ The curl library files that are installed with the product have been upgraded to version 7.66.0, which fixes a number of potential security vulnerabilities. For more information on the vulnerabilities resolved by this enhancement, refer to: https://curl.haxx.se/docs/vulnerabilities.html. This upgrade is available starting in build 08.02.0116 of the curl library files. Always Encrypted Support ------------------------ The driver has been enhanced to support the Always Encrypted feature. Beginning with SQL Server 2016, Azure SQL and SQL Server databases support Always Encrypted, which allows sensitive data to be stored on the server in an encrypted state such that the data can only be decrypted by an authorized application. The following are highlights of this enhancement: * The driver detects all supported native data types in encrypted columns and transparently encrypts values bound to SQL parameters or decrypts values returned in results and output parameters. * The driver supports configurable caching of column encryption keys for improved performance. * The driver supports using Windows Certificate Store and Azure Key Vault as keystore providers. You can enable support for Always Encrypted using the new Column Encryption, Key Store Principal, Key Store Secret, and Key Cache Time To Live connection options. Refer to the user's guide for more information. SSL Enhancement (1.1.1d) ------------------------ Note: OpenSSL library 1.1.1d has been replaced with version 1.1.1g. In addition to fixing multiple new vulnerabilities, version 1.1.1g also addresses the vulnerabilities resolved by version 1.1.1d. The default version of the OpenSSL library, 1.0.2r, has reached the end of its product life-cycle and has been upgraded to version 1.1.1d. In addition to receiving full update support, version 1.1.1d fixes the following security vulnerabilities: * Padding Oracle in PKCS7_dataDecode and CMS_decrypt_set1_pkey (CVE-2019-1563) * Windows builds with insecure path defaults (CVE-2019-1552) * Fork Protection (CVE-2019-1549) * ECDSA remote timing attack (CVE-2019-1547) * ChaCha20-Poly1305 with long nonces (CVE-2019-1543) * Timing vulnerability in ECDSA signature generation (CVE-2018-0735) This upgrade is available in the 1.1.1 version of the OpenSSL library files, ivtls28.dll (32-bit) and ddtls28.dll (64-bit). Note: By default, the driver will attempt to load version 1.1.1 of the library; however, if the library cannot be loaded, the driver will fall back to version 1.0.2. AllowedOpenSSLVersions ---------------------- Determines which version of the OpenSSL library file the driver uses for data encryption when multiple versions are installed with the product. For example, when specifying a value of 1.1.1 (AllowedOpenSSLVersions=1.1.1), the driver uses the 1.1.1 version of the library stored in the \drivers subdirectory. Refer to the user's guide for more information. See "Designating an OpenSSL Library" in the "Notes, Known Issues, and Restrictions" section for build numbers and a comparison of these libraries. Support for Windows Platforms ----------------------------- The following Windows platforms have reached the end of their product lifecycle and are no longer supported by the driver: * Windows 8.0 (versions 8.1 and higher are still supported) * Windows Vista (all versions) * Windows XP (all versions) * Windows Server 2003 (all versions) SSL Enhancement (1.0.2r) ------------------------ Note: A newer version of the OpenSSL library, 1.1.1g, is now installed with the product. In addition to fixing multiple new vulnerabilities, version 1.1.1g also addresses the vulnerabilities resolved by version 1.0.2r. The default OpenSSL library version has been updated to 1.0.2r, which fixes the following security vulnerabilities: * 0-byte record padding oracle (CVE-2019-1559) * Microarchitecture timing vulnerability in ECC scalar multiplication (CVE-2018-5407) * Timing vulnerability in DSA signature generation (CVE-2018-0734) * Client DoS due to large DH parameter (CVE-2018-0732) * Cache timing vulnerability in RSA Key Generation (CVE-2018-0737) * Constructed ASN.1 types with a recursive definition could exceed the stack (CVE-2018-0739) This upgrade is available starting in build 08.02.0194 of the OpenSSL library file. Changes for the 8.0.2 GA Platform Certifications ----------------------- * Certified with Windows Server 2016 Data Source Certifications -------------------------- * Certified with Microsoft Azure Synapse Analytics 12.00 * Certified with Microsoft Analytics Platform System 10.00 * Certified with Microsoft SQL Server 2017 * Certified with Microsoft SQL Server 2016 Support for Microsoft Azure Synapse Analytics and Microsoft Analytics Platform System -------------------------------------------------- The driver has been enhanced to transparently connect to Microsoft Azure Synapse Analytics and Microsoft Analytics Platform System data sources. For more information about supported features and functionality, refer to "Support for Microsoft Azure Synapse Analytics and Analytics Platform System" in the user's guide. HTTP Proxy Support ------------------ Support for connecting to a proxy server through an HTTP connection. HTTP proxy support is configurable with five new connection options: Proxy Host, Proxy Mode, Proxy Password, Proxy Port, and Proxy User. Enable Server Side Cursors Connection Option -------------------------------------------- The new EnableServerSideCursors connection option allows you to determine which server-side cursors are enabled for the data source. Azure AD Authentication ----------------------- The driver is enhanced to support Azure Active Directory authentication (Azure AD). Azure AD authentication is an alternative to SQL Server Authentication for Azure SQL Database that allows you to centrally manage identities of database users. To enable Azure AD authentication, specify the new 13 (Active Directory Password) value for the Authentication Method connection option (AuthenticationMethod=13). In addition, specify the respective values in the connection string or data source definition for the Host Name In Certificate, Trust Store, Validate Server Certificate, User Name and Password connection options. Refer to "Configuring Azure Active Directory Authentication" in the user's guide for more information. Always On Availability Groups ----------------------------- The driver has been enhanced to support Always On Availability Groups. Introduced in SQL Server 2012, Always On Availability Groups is a replica-database environment that provides a high-level of data availability, protection, and recovery. To support this enhancement, the following updates have been made to the driver: - The new Multi-Subnet Failover option allows the driver to attempt parallel connections to all the IP addresses associated with an availability group listener when the primary listener is unavailable. This offers improved response time over traditional failover, which attempts connections to alternate servers one at a time. This option must be enabled for failover to work properly in an Always On environment. - The Host Name option has been updated to support the virtual network name (VNN) of the availability group listener as a valid value. To connect to an Always On Availability group, you must specify the VNN with this option. - The new Application Intent option allows you to control whether the driver requests read-only routing, thereby improving efficiency by reducing the workload on read-write nodes. Default Value for Crypto Protocol Version ----------------------------------------- The default value for Crypto Protocol Version has been updated to TLSv1.2, TLSv1.1,TLSv1. This change improves the security of the driver by employing only the most secure cryptographic protocols as the default behavior. SSL Enhancement (1.0.2n) ------------------------ Note: OpenSSL library 1.0.2n has been replaced with version 1.0.2u. In addition to fixing multiple new vulnerabilities, version 1.0.2u also addresses the vulnerabilities resolved by version 1.0.2n. Version 1.0.2n of the OpenSSL library fixes the following security vulnerabilities: * rsaz_1024_mul_avx2 overflow bug on x86_64(CVE-2017-3738) * Read/write after SSL object in error state (CVE-2017-3737) * bn_sqrx8x_internal carry bug on x86_64 (CVE-2017-3736) * Malformed X.509 IPAddressFamily could cause OOB read (CVE-2017-3735) Driver WorkAround Options Progress DataDirect has included non-standard connection options (workarounds) for the driver that enable you to take full advantage of packaged ODBC-enabled applications requiring non-standard or extended behavior. Refer to the chapter "WorkAround options" in THE PROGRESS DATADIRECT FOR ODBC DRIVERS REFERENCE for a description of these options. Notes, Known Issues, and Restrictions Character Limit of the Trust Store Field (Driver setup dialog) --------------------------------------------------------------- The Trust Store field on the Driver setup dialog supports content up to 8192 characters in length. For specifying certificate content longer than 8192 characters, edit the registry and manually add the entry to the DSN. Specifying values for the same connection option multiple times --------------------------------------------------------------- The driver does not support specifying values for the same connection option multiple times in a connection string or DSN. If a value is specified using the same attribute multiple times or using both long and short attributes, the connection may fail or the driver may not behave as intended. Designating an OpenSSL Library ------------------------------ Although version 1.1.1n of the OpenSSL library is the most secure version of the library, some characteristics of the library can cause connections to certain databases to fail. To allow you to continue using earlier versions until your environment is ready to migrate to version 1.1.1n, the product also installs earlier versions of the library. The following versions of the OpenSSL library have been installed with this product, listed in order of most secure to least secure: * (Default) 1.1.1n (file version 08.02.0216 of tls28.dll) * 1.0.2u (file version 08.02.0244 of ssl28.dll) When determining which version of the OpenSSL library to use, consider the following factors: For version 1.1.1n: Upgrading to 1.1.1n provides you with a fully supported version of the OpenSSL library that receives feature and security updates. Versions 1.0.2 and earlier have reached the end of their product lifecycle and will no longer receive updates after 12/31/2019. Note: OpenSSL 1.1.1 supports TLS version 1.3; however, we do not currently support TLS version 1.3 in our drivers. As a result, our drivers support SSLv3, TLSv1.0, TLSv1.1 and TLSv1.2. Upgrading to 1.1.1n fixes the following vulnerabilities in addition to vulnerabilities resolved by earlier versions of the library: * Infinite loop in BN_mod_sqrt() reachable when parsing certificates (CVE-2022-0778) * BN_mod_exp may produce incorrect results on MIPS (CVE-2021-4160) * SM2 Decryption Buffer Overflow (CVE-2021-3711) * Read buffer overruns processing ASN.1 strings (CVE-2021-3712) * CA certificate check bypass with X509_V_FLAG_X509_STRICT (CVE-2021-3450) * NULL pointer deref in signature_algorithms processing (CVE-2021-3449) * Null pointer deref in X509_issuer_and_serial_hash() (CVE-2021-23841) * Integer overflow in CipherUpdate (CVE-2021-23840) * Incorrect behavior of the GENERAL_NAME_cmp function (CVE-2020-1971). * Segmentation fault in SSL_check_chain (CVE-2020-1967) * rsaz_512_sqr overflow bug on x86_64 (CVE-2019-1551) * Padding Oracle in PKCS7_dataDecode and CMS_decrypt_set1_pkey (CVE-2019-1563) * Windows builds with insecure path defaults (CVE-2019-1552) * Fork Protection (CVE-2019-1549) * ECDSA remote timing attack (CVE-2019-1547) * ChaCha20-Poly1305 with long nonces (CVE-2019-1543) * Timing vulnerability in ECDSA signature generation (CVE-2018-0735) Upgrading to version 1.1.1n includes the following risks: * The SSL v2 protocol is not supported. If your environment requires SSL v2, the driver will be unable to connect using this library. * The following encryption ciphers were reported by version 1.0.2 of the library, but not by version 1.1.1. These ciphers should be considered unsupported for version 1.1.1: DES-CBC3-MD5 ECDH-ECDSA-AES256-SHA DES-CBC3-SHA ECDH-ECDSA-AES256-SHA384 DH-DSS-AES128-GCM-SHA256 ECDH-ECDSA-DES-CBC3-SHA DH-DSS-AES128-SHA ECDH-ECDSA-RC4-SHA DH-DSS-AES128-SHA256 ECDHE-ECDSA-DES-CBC3-SHA DH-DSS-AES256-GCM-SHA384 ECDHE-ECDSA-RC4-SHA DH-DSS-AES256-SHA ECDHE-RSA-DES-CBC3-SHA DH-DSS-AES256-SHA256 ECDHE-RSA-RC4-SHA DH-DSS-DES-CBC3-SHA ECDH-RSA-AES128-GCM-SHA256 DH-DSS-SEED-SHA ECDH-RSA-AES128-SHA DHE-DSS-AES128-GCM-SHA256 ECDH-RSA-AES128-SHA256 DHE-DSS-AES128-SHA ECDH-RSA-AES256-GCM-SHA384 DHE-DSS-AES128-SHA256 ECDH-RSA-AES256-SHA DHE-DSS-AES256-GCM-SHA384 ECDH-RSA-AES256-SHA384 DHE-DSS-AES256-SHA ECDH-RSA-DES-CBC3-SHA DHE-DSS-AES256-SHA256 ECDH-RSA-RC4-SHA DHE-DSS-SEED-SHA EDH-DSS-DES-CBC3-SHA DHE-RSA-SEED-SHA EDH-RSA-DES-CBC3-SHA DH-RSA-AES128-GCM-SHA256 PSK-3DES-EDE-CBC-SHA DH-RSA-AES128-SHA PSK-RC4-SHA DH-RSA-AES128-SHA256 RC2-CBC-MD5 DH-RSA-AES256-GCM-SHA384 RC4-MD5 DH-RSA-AES256-SHA RC4-SHA DH-RSA-AES256-SHA256 SEED-SHA DH-RSA-DES-CBC3-SHA SRP-3DES-EDE-CBC-SHA DH-RSA-SEED-SHA SRP-DSS-3DES-EDE-CBC-SHA ECDH-ECDSA-AES128-GCM-SHA256 SRP-DSS-AES-128-CBC-SHA ECDH-ECDSA-AES128-SHA SRP-DSS-AES-256-CBC-SHA ECDH-ECDSA-AES128-SHA256 SRP-RSA-3DES-EDE-CBC-SHA ECDH-ECDSA-AES256-GCM-SHA384 Refer to "Designating an OpenSSL library" in the User's Guide and Reference for instructions on using an earlier version of the OpenSSL library. For more information on the OpenSSL vulnerabilities mentioned in this section, refer to the corresponding OpenSSL announcements at https://www.openssl.org/. 126 Error When Modifying Data Sources on Windows 10 --------------------------------------------------- You may receive a 126 error when adding or configuring a data source stored on a network location. This is caused by the settings of the User Account Control (UAC) security feature on Windows 10. To work around this issue: Important: Implementing this fix disables security safeguards that are designed to protect your machine. Before starting, refer to the following Microsoft documentation for potential risks associated with disabling the UAC feature: http://windows.microsoft.com/en-us/ windows/what-are-user-account-control-settings 1. From the Start menu, type regedit in the search field; then, select regedit from the results list. The Registry Editor window opens. 2. Navigate to the following registry subkey: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System 3. Right-click on the subkey; then, select New > DWORD Value. 4. Rename the new value EnableLinkedConnections. 5. Right-click EnableLinkedConnections, and then click Modify. The Edit DWORD Value window opens. 6. In the Value data field, type 1. Click OK. 7. Close the Registry Editor; then, restart your computer. For SSL Users ------------- When trying to connect to a database using SSL encryption, you may receive an error message similar to: "PRNG not seeded". This is because certain versions of some operating systems do not generate truly random numbers necessary for encryption. For more information about this error and available patches, please refer to the Web site: http://www.openssl.org/support/faq.html#USER1 SQLColAttribute(s) ------------------ The column attributes 1001 and 1002, which were assigned as DataDirect- specific attributes, were inadvertently used as system attributes by the Microsoft 3.0 ODBC implementation. Applications using those attributes must now use 1901 and 1902, respectively. SQL_C_NUMERIC ------------- Because of inconsistencies in the ODBC specification, users attempting to use SQL_C_NUMERIC parameters must set the precision and scale values of the corresponding structure and the descriptor fields in the Application Parameter Descriptor. For Developers Using IIS ------------------------ One of the most common connectivity issues encountered while using IIS (Microsoft's Internet Information Server) concerns the use and settings of the account permissions. If you encounter problems using DataDirect drivers with an IIS server, refer to KnowledgeBase document number 4274 on the Progress DataDirect web site: http://knowledgebase.datadirect.com. Binding Timestamp Parameters ---------------------------- The SQL Server Wire Protocol driver requires an application to specify the size of timestamp parameters when they are bound. Setting the option WorkArounds2 to WorkArounds2=2 enables this behavior. In addition, the driver does not allow an application to change the size of parameter bindings between execute calls. Setting the option WorkArounds to WorkArounds=536870912 enables this behavior. Refer to the chapter "WorkAround Options" in the user's guide and reference for a description of these options. Microsoft SQL Server Limitations -------------------------------- Attempting to execute DDL statements that contain errors causes an implicit rollback of the current transaction if executing in manual commit mode. No warning occurs when this happens. This is a Microsoft SQL Server limitation, and no driver workaround is available. NOTE: Because the SQL Server Wire Protocol drivers do not have a way to prepare statements, the driver does not send those statements to the server until SQLExecute is called. PREPARE does not return any of the normal errors that most of the drivers return. If, however, the user requests information about result columns, the driver executes a Select statement and returns warnings or errors when using SQLNumResultCols, SQLDescribeCol, or SQLColAttributes. Catalog Functions ----------------- If you have problems with the catalog functions returning incorrect data, you may need to upgrade your catalog stored procedures. Make sure that you have installed the latest version of the stored procedures, which are available from your database vendor. Refer to your Microsoft SQL Server documentation for more information. The SQL Server Wire Protocol drivers return stored procedure names with the version number appended to them. For example, a procedure defined as "proc1" will be returned as "proc1;1". For Microsoft Access Users -------------------------- Some SQL implementations, do not allow queries to contain the COUNT function without the DISTINCT set quantifier. For example, "SELECT COUNT(empid) FROM employees" would be considered an invalid SQL query by the database engine. This type of query can be generated using Microsoft Access and results in an error. Documentation PROGRESS DATADIRECT FOR ODBC FOR SQL SERVER WIRE PROTOCOL DOCUMENTATION SET --------------------------------------------------------------------------- The driver documentation set is available from the Progress Information Hub: https://docs.progress.com/category/datadirect-microsoft-sql-server You can access the online help system directly via the HTML redirect in the installation Help directory. Uninstalling the Driver You can uninstall the product or individual drivers through the Uninstall DataDirect for ODBC 8.0 option in the DataDirect program group. Installed Files the 32-bit Driver This file list assumes a full installation of the driver and documentation. The installer copies the following file to the Windows system directory: ivtrc28.dll DataDirect trace library The installer copies the following files and subdirectories to the product installation directory, by default: For the 32-bit driver on 64-bit machines: C:\Program Files (x86)\Progress\DataDirect\ODBC_80 For all other installations: C:\Program Files\Progress\DataDirect\ODBC_80 fixes.txt List of fixes since last release license.txt Progress DataDirect license agreement \drivers: ivcurl28.dll Library used for HTTP connection ivicu28.dll Unicode conversion tables ivsqls28.dll SQL Server Wire Protocol Driver ivsqls28r.dll SQL Server Wire Protocol Driver resource file IVODBC.LIC DataDirect license file ivssl28.dll TLS/SSL support file (OpenSSL library file, version 1.0.2u) ivtls28.dll TLS/SSL support file (OpenSSL library file, version 1.1.1n) ivtrc28.dll DataDirect trace library qesqlext.h Header file for DataDirect-specific ODBC Definitions \drivers\OpenSSL: \1.0.2u\ivssl28.dll TLS/SSL support file (OpenSSL library file, version 1.0.2u) \latest\ivtls28.dll TLS/SSL support file (OpenSSL library file, version 1.1.1n) \help: *.html HTML redirects to online connector help systems and documentation resources \jre: *.* Files associated with the SQL Server WP driver \NOTICES: ODBC for SQL Server 8.0 NOTICES.TXT Third-party vendor license agreements \READMES: ODBC FOR SQL Server 8.0 README.TXT This file \samples: \bulk\bulk.c Bulk example source \bulk\bulk.exe Bulk application \bulk\bulk.mak Bulk example make file \bulk\bulk.sln Bulk example solution file \bulk\bulk.vcproj Bulk example project file \bulkstrm\bulk.cpp Bulk streaming example source \bulkstrm\bulk.hpp Bulk streaming example header \bulkstrm\bulk.rc Bulk streaming example resource file \bulkstrm\bulkstreaming.sln Bulk streaming example solution file \bulkstrm\bulkstreaming.vcproj Bulk streaming example project file \bulkstrm\bulkstrm.exe Bulk streaming example application \bulkstrm\bulkstrm.txt Bulk streaming description \bulkstrm\msgprintf.hpp Bulk streaming example header file \bulkstrm\ProgressDataDirect.bmp \bulkstrm\ProgressDataDirect.ico \bulkstrm\winmain.cpp Bulk streaming example source file \example\example.c Example source \example\Example.exe Example application \example\example.h Example header \example\Example.mak Example make file \example\Example.sln Example solution file \example\Example.vcproj Example project file \example\example.txt Example description \TOOLS: ddextwin.exe License Extender utility ddprocinfo.exe Processor Information utility DSNConverterSIL.exe Data Source Converter utility XMLP.exe A GUI demo tool that persists a result set to an XML data file \UNINSTALL\*.* Files used to uninstall the product Installed Files for the 64-bit Driver This file list assumes a full installation of all drivers and documentation. The installer copies the following file to the Windows system directory: ddtrc28.dll DataDirect trace library The installer copies the following files and subdirectories to the product installation directory, by default: C:\Program Files\Progress\DataDirect\ODBC_80\: fixes.txt List of fixes since last release license.txt Progress DataDirect license agreement \drivers: ddcurl28.dll Library used for HTTP connection ddicu28.dll Unicode conversion tables ddsqls28.dll SQL Server Wire Protocol Driver ddsqls28r.dll SQL Server Wire Protocol Driver resource file DDODBC.LIC DataDirect license file ddssl28.dll TLS/SSL support file (OpenSSL library file, version 1.0.2u) ddtls28.dll TLS/SSL support file (OpenSSL library file, version 1.1.1n) ddtrc28.dll DataDirect trace library qesqlext.h Header file for DataDirect-specific ODBC Definitions \drivers\OpenSSL: 1.0.2u\ddssl28.dll TLS\SSL support file (OpenSSL library file, version 1.0.2u) latest\ddtls28.dll TLS\SSL support file (OpenSSL library file, version 1.1.1n) \help: *.html HTML redirects to online connector help systems and documentation resources \jre: *.* Files associated with the SQL Server WP driver \NOTICES: ODBC for SQL Server 8.0 NOTICES.TXT Third-party vendor license agreements \READMES: ODBC for SQL Server 8.0 README.TXT This file \samples: \bulk\bulk.c Bulk example source \bulk\bulk.exe Bulk application \bulk\bulk.mak Bulk example make file \bulk\bulk.sln Bulk example solution file \bulk\bulk.vcproj Bulk example project file \bulkstrm\bulk.cpp Bulk streaming example source \bulkstrm\bulk.hpp Bulk streaming example header \bulkstrm\bulk.rc Bulk streaming example resource file \bulkstrm\bulkstreaming.sln Bulk streaming example solution file \bulkstrm\bulkstreaming.vcproj Bulk streaming example project file \bulkstrm\bulkstrm.exe Bulk streaming example application \bulkstrm\bulkstrm.txt Bulk streaming description \bulkstrm\msgprintf.hpp Bulk streaming example header file \bulkstrm\ProgressDataDirect.bmp \bulkstrm\ProgressDataDirect.ico \bulkstrm\winmain.cpp Bulk streaming example source file \example\example.c Example source \example\Example.exe Example application \example\example.h Example header \example\Example.mak Example make file \example\Example.sln Example solution file \example\Example.vcproj Example project file \example\example.txt Example description \TOOLS: ddextwin.exe License Extender utility ddprocinfo.exe Processor Information utility DSNConverterSIL.exe Data Source Converter utility XMLP.exe A GUI demo tool that persists a result set to an XML data file \UNINSTALL\*.* Files used to uninstall the product ~~~~~~~~~~~~~~~ May 17, 2022 End of README