%PDF-1.5 %���� ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY
Server IP : www.kowitt.ac.th / Your IP : 216.73.216.118 Web Server : Microsoft-IIS/7.5 System : Windows NT SERVER02 6.1 build 7601 (Windows Server 2008 R2 Standard Edition Service Pack 1) i586 User : IUSR ( 0) PHP Version : 5.6.31 Disable Function : NONE MySQL : ON | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : C:/Program Files/MySQL/MySQL Connector.C 6.1/docs/ |
Upload File : |
MySQL Connector/C 6.1 - Release Notes / ChangeLog Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved. Full release notes: http://dev.mysql.com/doc/relnotes/connector-c/en/ Changes in MySQL Connector/C 6.1.6 ===================================================================== Security Notes * Connector/C 6.1.6 upgrades the linked OpenSSL library to version 1.0.1k. Issues fixed in the new version are described at http://www.openssl.org/news/vulnerabilities.html. Functionality Added or Changed * yaSSL sources included in Connector/C source packages and used in GPL binary distributions were upgraded to version 2.3.7. (Bug #20201864) Bugs Fixed * For source packages, it was not possible to build Connector/C with the client protocol test trace plugin enabled. (Bug #20316149) * When there is no change in session state, the OK packet sent from server to the client contained an unneeded byte at the end of the packet. (Bug #19625718) * The client protocol trace plugin did not account for the removal of the EOF packet from the client/server protocol in MySQL 5.7.5. (Bug #19512199) * The mysql_session_track_get_first() and mysql_session_track_get_next() C API functions could cause a client crash if passed invalid arguments. (Bug #18769620) * mysql_config --libs_r produces output containing link flags for libmysqlclient_r, even though that library was removed in MySQL 5.5 and replaced with a symlink to the underlying libmysqlclient library. The output now refers directly to libmysqlclient. (The implication is that it is no longer necessary to maintain the symlink for the sake of being able to use mysql_config --libs_r.) (Bug #73724, Bug #19506315) * Invalid memory access could occur when using prepared statements if a mysql client connection was lost after statement preparation was complete and there was at least one statement that was in initialized state but not prepared yet. (Bug #70429, Bug #17512527) * Client auto-reconnect did not work for clients linked against libmysqlclient, even with MYSQL_OPT_RECONNECT enabled. Also, if a FEDERATED table was accessed after wait_timeout expired, a Lost connection to MySQL server error occurred without an attempt to re-establish the connection. (Bug #70026, Bug #17309863, Bug #14874, Bug #11745408) * mysql_real_connect() could close a file descriptor twice if the server was not running. (Bug #69423, Bug #19226740) Changes in MySQL Connector/C 6.1.5 (2014-06-17) ===================================================================== Connector/C 6.1.5 upgrades the linked OpenSSL library from version 1.0.1g to version 1.0.1h. Versions of OpenSSL prior to 1.0.1g are reported vulnerable to CVE-2014-0224. Functionality Added or Changed * The server can now report session-state changes to client programs. Reportable session state consists of these values: + The default schema (database) + Session-specific values for system variables + User-defined variables + Temporary tables + Prepared statements The MySQL client/server protocol now includes tracker information so that session state changes can be detected. One use for the tracker mechanism is that it provides a means for MySQL Connectors, Fabric, and client applications to determine whether any session context is available to ensure session migration from one server to another. (To change connections in a load-balanced environment, it is necessary to detect whether there is session state to take into consideration when deciding whether a switch can be made.) The user interface to control the tracker and retrieve state-change information from it has the following components, which enable implementation of state-change tracking on the client side: + Clients can request notification when there is a change to any of the session state-related values just listed, in the form of a flag that is set in the OK packet received from the server after the change occurs. To control notification, enable or disable the session_track_state_change system variable. This variable is disabled by default. + Clients can request notification of changed values for certain specific types of session state information: o The default schema name. To control notification, enable or disable the session_track_schema system variable. This variable is enabled by default. o The session values of system variables. Notification occurs for the system variables named by the session_track_system_variables system variable. By default, notification is enabled for time_zone, autocommit, character_set_client, character_set_results, and character_set_connection. (The latter three variables are those affected by SET NAMES.) + To enable applications to extract the state-change information returned by the server, the MySQL C API includes a pair of functions: o mysql_session_track_get_first() fetches the first state-change information received from the server. o mysql_session_track_get_next() fetches any remaining state-change information received from the server. Following a successful call to mysql_session_track_get_first(), call this function repeatedly as long as it returns success. o Because there are new API functions, the client library ABI version is now 18.3. Shared library names now include 18.3 where appropriate. + The mysqltest program has enable_session_track_info and disable_session_track_info commands to enable and disable tracking of session state-change information. For more information, see Server System Variables (http://dev.mysql.com/doc/refman/5.6/en/server-system-variable s.html) and mysql_session_track_get_first() (http://dev.mysql.com/doc/refman/5.7/en/mysql-session-track-ge t-first.html). For information about the structure of the OK packet used to convey state-change information, see OK_Packet (http://dev.mysql.com/doc/internals/en/packet-OK_Packet.html). * Because there are new API functions (mysql_session_track_get_first(), mysql_session_track_get_next()), the client library ABI version is now 18.3. Shared library names now include 18.3 where appropriate. Bugs Fixed * Calling mysql_get_server_version() with an invalid connection handler argument caused the client to exit. Now it returns 0 and reports a CR_COMMANDS_OUT_OF_SYNC error. (Bug #18053212) * The C client library could leak memory when client plugins were used. (Bug #17933308) * On Windows, calling mysql_thread_init() call without mysql_init() caused the client to exit. windows. Now it returns a nonzero result because it is an error to call mysql_thread_init() before the client library is initialized with mysql_library_init(). (Bug #17514920) * There was a difference in certificate handling by yaSSL and OpenSSL (used for Community and Enterprise, respectively). OpenSSL expected a blank certificate to be sent when not all of the --ssl-ca, --ssl-cert, and --ssl-key options were specified, and yaSSL did not do so. To resolve this, yaSSL has been modified to send a blank certificate when an option is missing. (Bug #68788, Bug #16715064) Changes in MySQL Connector/C 6.1.4 (2014-04-16) ===================================================================== Heartbleed Bug * Security Fix: The Heartbleed Bug is a serious vulnerability in the popular OpenSSL cryptographic software library, which is included in Commercial builds of Connector/C 6.1. (It is not included in the Community version of Connector/C 6.1; see the Note later in this section.) This vulnerability allows theft of information protected, under normal conditions, by SSL/TLS encryption, which provides communication security and privacy for Internet applications such as web browsing, email, instant messaging, and some virtual private networks. The Heartbleed Bug allows attackers to read the memory of the systems protected by vulnerable versions of the OpenSSL software. This compromises the secret keys used to identify service providers and to encrypt traffic, user names and passwords, and content. This allows attackers to eavesdrop on communications, to steal data directly from services and users, and to impersonate services and users. Additional sources of information regarding this issue are provided at the end of this section. Connector/C 6.1.4 upgrades the OpenSSL library used in the Commercial versions of the Connector/C 6.1 to version 1.0.1g, which fixes this issue. Users of previous Connector/C 6.1 Commercial releases are urged to upgrade to Connector/C 6.1.4 as soon as possible. Note This issue does not affect Connector/C 6.1 Community releases, which use yaSSL to provide encryption services, and do not include the OpenSSL software. For this reason, the Connector/C 6.1.4 release is Commercial only, and contains only the fix for the Heartbleed bug (and no other changes); users of the Community edition of Connector/C 6.1.3 can continue to use this version without being affected by this issue, and to upgrade directly to Connector/C 6.1.5 when it is released. Additional sources of information. This issue has been identified as CVE-2014-0160 (http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2014-0160). Oracle customers can learn more about how this issue may impact Connector/C and other Oracle products they are using by reading this My Oracle Support Note (Document ID 1645479.1) (https://support.oracle.com/CSP/main/article?cmd=show&type=NOT&id=1645479.1) (Bug #18533200, CVE-2014-0160) Changes in MySQL Connector/C 6.1.3 (2013-12-27) ===================================================================== Security Notes * A new MYSQL_OPT_SSL_ENFORCE option is available for the mysql_options() C API function to indicate whether to require the connection to use SSL. If enabled, an encrypted connection is attempted. If an encrypted connection cannot be established, the connection attempt fails. For more information, see mysql_options() (http://dev.mysql.com/doc/refman/5.7/en/mysql-options.html). Functionality Added or Changed * Some dependencies between client-side plugin header files were removed: + The MYSQL_PLUGIN_EXPORT macro required by plugin declarations is now declared directly in mysql/client_plugin.h instead of getting the definition from mysql/plugin.h. That macro was the only thing required by client-side plugins and declared in server-side header mysql/plugin.h, so including mysql/client_plugin.h in an application no longer requires the application to also include mysql/plugin.h. + mysql/plugin_trace.h no longer uses C_MODE_START or C_MODE_END. Consequently, including mysql/plugin_trace.h in an application no longer requires the application to also include my_global.h. Applications might require mysql/plugin.h or my_global.h for other reasons, of course. (Bug #17582168) * A new mysql_get_option() C API function is available that returns the current value of applicable mysql_options() options. See mysql_get_option() (http://dev.mysql.com/doc/refman/5.7/en/mysql-get-option.html) . * When a connection is returned to the thread pool plugin, the connection thread context must be cleaned up. Previously, this was done using COM_CHANGE_USER (which is like the mysql_change_user() C API function). However, that operation reauthenticates, which is unnecessary network roundtrip overhead in this context. Now it is possible for client connection state to be reset in a more lightweight manner without causing reauthentication. The API is exposed publicly through these changes: + A new COM_RESET_CONNECTION protocol command (defined in mysql_com.h) + A new mysql_reset_connection() C API function + A new resetconnection command for the mysql client Resetting a connection has effects similar to mysql_change_user() or an auto-reconnect except that the connection is not closed and reopened, and reauthentication is not done. See mysql_change_user() (http://dev.mysql.com/doc/refman/5.6/en/mysql-change-user.html )) and see Controlling Automatic Reconnection Behavior (http://dev.mysql.com/doc/refman/5.6/en/auto-reconnect.html)). For more information, see mysql_reset_connection() (http://dev.mysql.com/doc/refman/5.7/en/mysql-reset-connection .html) and mysql --- The MySQL Command-Line Tool (http://dev.mysql.com/doc/refman/5.6/en/mysql.html). * Connector/C is now included in MySQL Installer (Windows). * Because there are new API functions (mysql_get_option(), mysql_reset_connection()), the library ABI version is now 18.2. Shared library names now include 18.2 where appropriate. Bugs Fixed * It was not possible to build client-side plugins using Connector/C because client_plugin.h referenced a macro defined in the plugin.h file, which is not included in Connector/C distributions. (Bug #17582228) References: See also Bug #17582168. * After the fix for Bug #16409270, it was not possible to #include <mysql.h> following #include <windows.h>. (Bug #17514554) * Upgrading Connector/C using the 64-bit version of the Windows MSI package occurred in the default folder because registry search logic was hardcoded to use the 32-bit registry. (Bug #17515067) * A client crash occurred if mysql_set_server_option() or several other C API functions were called before mysql_real_connect(). (Bug #17338958) Changes in MySQL Connector/C 6.1.2 (2013-09-30) ===================================================================== Functionality Added or Changed * The implementation of condition variables specific to Windows XP and Windows Server 2003 was removed from the source code because MySQL is not supported on those platforms as of MySQL 5.6. Note This change has the following implication: Previously, Connector/C 6.1, while not officially supported on Windows XP or Windows Server 2003, could be used on those platforms. This is no longer possible. (Bug #17332056) * MySQL now supports the use of client-side plugins that implement a trace of communication between a client and the server that takes place using the client/server protocol. Protocol trace plugins use the client plugin API (see Writing Plugins (http://dev.mysql.com/doc/refman/5.6/en/writing-plugins.html)) . In Connector/C source distributions, a test protocol trace plugin is implemented in the test_trace_plugin.cc file in the libmysql directory. This can be examined as a guide to writing other protocol trace plugins. * Static libraries built with VS2008, VS2010, VS2012 are now distributed as part of Connector/C packages for Windows: ZIP and MSI. New directories named vs9, vs10, and vs11 located under the lib directory contain static libraries and corresponding pdb files built with VS2008, VS2010, and VS2012, respectively. Bugs Fixed * The CLIENT_CONNECT_WITH_DB flag was improperly handled in the C client library. This could lead to a malformed packet sent to the server. (Bug #17351732) * The mysql_real_connect() C API function could leak memory if it failed. (Bug #17337684) * The mysql_options() C API function could leak memory if called more than once with the MYSQL_SET_CLIENT_IP option. (Bug #17297012) * The Connector/C MSI package was missing the following files: ChangeLog, README, LICENSE, COPYING, INFO_SRC, INFO_BIN. (Bug #17261526) * The Connector/C RPM package was missing the following files: INFO_SRC, INFO_BIN, my_print_defaults, perror. (Bug #17261610) * On Windows, a MySQL client program that simply used #include <mysql.h> could not be compiled due to missing Windows declarations in that file. The same program would compile on other platforms. (Bug #16409270) * The libmysql.dll library was missing several symbols: my_init, mysql_client_find_plugin, mysql_client_register_plugin, mysql_load_plugin, mysql_load_plugin_v, and mysql_plugin_options. (Bug #69204, Bug #16797982) Changes in MySQL Connector/C 6.1.1 (2013-08-05) ===================================================================== Functionality Added or Changed * The C API libmysqlclient shared-library .so files now have version 18.1.0 (up from version 18.0.0 used in 6.1.0). 18.1.0 can be used as a replacement for 18.0.0. (Bug #16809055) Bugs Fixed * The mysql_options4 symbol was missing from libmysql.dll. (Bug #69204, Bug #16797982) Changes in MySQL Connector/C 6.1.0 (2013-05-02, General Availability) ===================================================================== Functionality Added or Changed * MySQL Connector/C 6.1 provides these features not present in 6.0: + Support for the pluggable authentication framework that enables implementation of authentication methods as plugins. This framework can be used for MySQL native authentication as well as external authentication methods. See Pluggable Authentication (http://dev.mysql.com/doc/refman/5.6/en/pluggable-authent ication.html). + Client-side support for the SHA-256, PAM, and Windows native authentication plugins. See The SHA-256 Authentication Plugin (http://dev.mysql.com/doc/refman/5.6/en/sha256-authentica tion-plugin.html), The PAM Authentication Plugin (http://dev.mysql.com/doc/refman/5.6/en/pam-authenticatio n-plugin.html), and The Windows Native Authentication Plugin (http://dev.mysql.com/doc/refman/5.6/en/windows-authentic ation-plugin.html). The older MySQL Connector/C 6.0 can connect only to accounts that use native MySQL passwords. If a client program attempts to connect to an account that requires a different authentication method, an "Access denied for user" error occurs. + Support for connecting to accounts that have expired passwords. See Password Expiration and Sandbox Mode (http://dev.mysql.com/doc/refman/5.6/en/password-expirati on.html). + Support for prepared CALL statements. This enables client programs to handle stored procedures that produce multiple result sets and to obtain the final value of OUT and INOUT procedure parameters. See C API Support for Prepared CALL Statements (http://dev.mysql.com/doc/refman/5.6/en/c-api-prepared-ca ll-statements.html). + Support for connecting over IPv6. See IPv6 Support (http://dev.mysql.com/doc/refman/5.6/en/ipv6-support.html ). + Support for binding client programs to a specific IP address at connect time. See mysql_options() (http://dev.mysql.com/doc/refman/5.6/en/mysql-options.htm l). + Support for specifying connection attributes to pass to the server at connect time. See mysql_options() (http://dev.mysql.com/doc/refman/5.6/en/mysql-options.htm l), and mysql_options4() (http://dev.mysql.com/doc/refman/5.6/en/mysql-options4.ht ml).