Blob Blame History Raw
# symbols exported from mysql 5.1
libmysqlclient_16 {
  global:
	_fini;
	_init;
	my_init;
	myodbc_remove_escape;
	mysql_affected_rows;
	mysql_autocommit;
	mysql_change_user;
	mysql_character_set_name;
	mysql_close;
	mysql_commit;
	mysql_data_seek;
	mysql_debug;
	mysql_dump_debug_info;
	mysql_embedded;
	mysql_eof;
	mysql_errno;
	mysql_error;
	mysql_escape_string;
	mysql_fetch_field;
	mysql_fetch_field_direct;
	mysql_fetch_fields;
	mysql_fetch_lengths;
	mysql_fetch_row;
	mysql_field_count;
	mysql_field_seek;
	mysql_field_tell;
	mysql_free_result;
	mysql_get_character_set_info;
	mysql_get_client_info;
	mysql_get_client_version;
	mysql_get_host_info;
	mysql_get_parameters;
	mysql_get_proto_info;
	mysql_get_server_info;
	mysql_get_server_version;
	mysql_get_ssl_cipher;
	mysql_hex_string;
	mysql_info;
	mysql_init;
	mysql_insert_id;
	mysql_kill;
	mysql_list_dbs;
	mysql_list_fields;
	mysql_list_processes;
	mysql_list_tables;
	mysql_more_results;
	mysql_next_result;
	mysql_num_fields;
	mysql_num_rows;
	mysql_options;
	mysql_ping;
	mysql_query;
	mysql_read_query_result;
	mysql_real_connect;
	mysql_real_escape_string;
	mysql_real_query;
	mysql_refresh;
	mysql_rollback;
	mysql_row_seek;
	mysql_row_tell;
	mysql_select_db;
	mysql_send_query;
	mysql_server_end;
	mysql_server_init;
	mysql_set_character_set;
	mysql_set_local_infile_default;
	mysql_set_local_infile_handler;
	mysql_set_server_option;
	mysql_shutdown;
	mysql_sqlstate;
	mysql_ssl_set;
	mysql_stat;
	mysql_stmt_affected_rows;
	mysql_stmt_attr_get;
	mysql_stmt_attr_set;
	mysql_stmt_bind_param;
	mysql_stmt_bind_result;
	mysql_stmt_close;
	mysql_stmt_data_seek;
	mysql_stmt_errno;
	mysql_stmt_error;
	mysql_stmt_execute;
	mysql_stmt_fetch;
	mysql_stmt_fetch_column;
	mysql_stmt_field_count;
	mysql_stmt_free_result;
	mysql_stmt_init;
	mysql_stmt_insert_id;
	mysql_stmt_num_rows;
	mysql_stmt_param_count;
	mysql_stmt_param_metadata;
	mysql_stmt_prepare;
	mysql_stmt_reset;
	mysql_stmt_result_metadata;
	mysql_stmt_row_seek;
	mysql_stmt_row_tell;
	mysql_stmt_send_long_data;
	mysql_stmt_sqlstate;
	mysql_stmt_store_result;
	mysql_store_result;
	mysql_thread_end;
	mysql_thread_id;
	mysql_thread_init;
	mysql_thread_safe;
	mysql_use_result;
	mysql_warning_count;
# These are documented in Paul DuBois' MySQL book, so we treat them as part
# of the de-facto API.
	free_defaults;
	handle_options;
	load_defaults;
	my_print_help;
# This isn't really documented anywhere, but it seems to be part of the
# de-facto API as well.  We're not going to export the deprecated version
# make_scrambled_password, however.
	my_make_scrambled_password;
# This really shouldn't be exported, but some applications use it as a
# workaround for inadequate threading support; see bug #846602
	THR_KEY_mysys;
  local:
	*;
};
# symbols added in mysql 5.5
libmysqlclient_18 {
  global:
	mysql_client_find_plugin;
	mysql_client_register_plugin;
	mysql_load_plugin;
	mysql_load_plugin_v;
	mysql_plugin_options;
	mysql_stmt_next_result;
#
# Ideally the following symbols wouldn't be exported, but various applications
# require them.  We limit the namespace damage by prefixing mysql_
# (see mysql-dubious-exports.patch), which means the symbols are not present
# in libmysqlclient_16.
#
# mysql-connector-odbc requires these
	mysql_default_charset_info;
	mysql_get_charset;
	mysql_get_charset_by_csname;
	mysql_net_realloc;
# PHP's mysqli.so requires this (via the ER() macro)
	mysql_client_errors;
};

# symbols specific for mariadb
libmysqlclient_18_mariadb {
  global:
    # symbols related to non-blocking operations
    # documented here: https://kb.askmonty.org/en/non-blocking-api-reference/
	mysql_get_socket;
	mysql_get_timeout_value;
	mysql_get_timeout_value_ms;
	mysql_real_connect_start;
	mysql_real_connect_cont;
	mysql_real_query_start;
	mysql_real_query_cont;
	mysql_fetch_row_start;
	mysql_fetch_row_cont;
	mysql_set_character_set_start;
	mysql_set_character_set_cont;
	mysql_select_db_start;
	mysql_select_db_cont;
	mysql_send_query_start;
	mysql_send_query_cont;
	mysql_store_result_start;
	mysql_store_result_cont;
	mysql_free_result_start;
	mysql_free_result_cont;
	mysql_close_start;
	mysql_close_cont;
	mysql_change_user_start;
	mysql_change_user_cont;
	mysql_query_start;
	mysql_query_cont;
	mysql_shutdown_start;
	mysql_shutdown_cont;
	mysql_dump_debug_info_start;
	mysql_dump_debug_info_cont;
	mysql_refresh_start;
	mysql_refresh_cont;
	mysql_kill_start;
	mysql_kill_cont;
	mysql_set_server_option_start;
	mysql_set_server_option_cont;
	mysql_ping_start;
	mysql_ping_cont;
	mysql_stat_start;
	mysql_stat_cont;
	mysql_list_dbs_start;
	mysql_list_dbs_cont;
	mysql_list_tables_start;
	mysql_list_tables_cont;
	mysql_list_processes_start;
	mysql_list_processes_cont;
	mysql_list_fields_start;
	mysql_list_fields_cont;
	mysql_read_query_result_start;
	mysql_read_query_result_cont;
	mysql_stmt_prepare_start;
	mysql_stmt_prepare_cont;
	mysql_stmt_execute_start;
	mysql_stmt_execute_cont;
	mysql_stmt_fetch_start;
	mysql_stmt_fetch_cont;
	mysql_stmt_store_result_start;
	mysql_stmt_store_result_cont;
	mysql_stmt_close_start;
	mysql_stmt_close_cont;
	mysql_stmt_reset_start;
	mysql_stmt_reset_cont;
	mysql_stmt_free_result_start;
	mysql_stmt_free_result_cont;
	mysql_stmt_send_long_data_start;
	mysql_stmt_send_long_data_cont;
	mysql_commit_start;
	mysql_commit_cont;
	mysql_rollback_start;
	mysql_rollback_cont;
	mysql_autocommit_start;
	mysql_autocommit_cont;
	mysql_next_result_start;
	mysql_next_result_cont;
	mysql_stmt_next_result_start;
	mysql_stmt_next_result_cont;
    # dynamic columns API
    # documented here: https://kb.askmonty.org/en/dynamic-columns-api/
    # currently only documentation for mariadb-10.0.x available, but
    # upstream promissed adding 5.5.x version as well
	dynamic_column_create;
	dynamic_column_create_many;
	dynamic_column_update;
	dynamic_column_update_many;
	dynamic_column_delete;
	dynamic_column_exists;
	dynamic_column_list;
	dynamic_column_get;
	dynamic_column_prepare_decimal;
};