diff options
author | Oleksandr Byelkin <sanja@mariadb.com> | 2022-08-03 07:12:27 +0200 |
---|---|---|
committer | Oleksandr Byelkin <sanja@mariadb.com> | 2022-08-03 07:12:27 +0200 |
commit | af143474d8925cdbcfc0795a2bc274cbeaad8889 (patch) | |
tree | 790022e64c90ce37310d20f1de25af35b0f722c9 /extra | |
parent | 7b500f04fb0baf56b02583f82982508203e58d38 (diff) | |
parent | 48e35b8cf61cbedb515787762708afe7bd75386b (diff) | |
download | mariadb-git-af143474d8925cdbcfc0795a2bc274cbeaad8889.tar.gz |
Merge branch '10.4' into 10.5
Diffstat (limited to 'extra')
-rw-r--r-- | extra/mariabackup/backup_copy.cc | 83 | ||||
-rw-r--r-- | extra/mariabackup/backup_copy.h | 7 | ||||
-rw-r--r-- | extra/mariabackup/backup_mysql.cc | 248 | ||||
-rw-r--r-- | extra/mariabackup/backup_mysql.h | 6 | ||||
-rw-r--r-- | extra/mariabackup/common.h | 10 | ||||
-rw-r--r-- | extra/mariabackup/xtrabackup.cc | 63 | ||||
-rw-r--r-- | extra/mariabackup/xtrabackup.h | 2 | ||||
-rw-r--r-- | extra/wolfssl/CMakeLists.txt | 3 | ||||
-rw-r--r-- | extra/wolfssl/user_settings.h.in | 2 | ||||
m--------- | extra/wolfssl/wolfssl | 0 |
10 files changed, 81 insertions, 343 deletions
diff --git a/extra/mariabackup/backup_copy.cc b/extra/mariabackup/backup_copy.cc index 7724bf63e6c..b6990213952 100644 --- a/extra/mariabackup/backup_copy.cc +++ b/extra/mariabackup/backup_copy.cc @@ -577,6 +577,7 @@ datafile_read(datafile_cur_t *cursor) Check to see if a file exists. Takes name of the file to check. @return true if file exists. */ +static bool file_exists(const char *filename) { @@ -1538,14 +1539,14 @@ bool backup_start(CorruptedPages &corrupted_pages) if (!write_galera_info(mysql_connection)) { return(false); } + // copied from xtrabackup. what is it needed for here? + write_current_binlog_file(mysql_connection); } - bool with_binlogs = opt_binlog_info == BINLOG_INFO_ON; + if (opt_binlog_info == BINLOG_INFO_ON) { - if (with_binlogs || opt_galera_info) { - if (!write_current_binlog_file(mysql_connection, with_binlogs)) { - return(false); - } + lock_binlog_maybe(mysql_connection); + write_binlog_info(mysql_connection); } if (have_flush_engine_logs && !opt_no_lock) { @@ -1581,33 +1582,13 @@ void backup_release() static const char *default_buffer_pool_file = "ib_buffer_pool"; -static -const char * get_buffer_pool_filename(size_t *length) -{ - /* If mariabackup is run for Galera, then the file - name is changed to the default so that the receiving - node can find this file and rename it according to its - settings, otherwise we keep the original file name: */ - size_t dir_length = 0; - const char *dst_name = default_buffer_pool_file; - if (!opt_galera_info) { - dir_length = dirname_length(buffer_pool_filename); - dst_name = buffer_pool_filename + dir_length; - } - if (length) { - *length=dir_length; - } - return dst_name; -} - /** Finish after backup_start() and backup_release() */ bool backup_finish() { /* Copy buffer pool dump or LRU dump */ - if (!opt_rsync) { + if (!opt_rsync && opt_galera_info) { if (buffer_pool_filename && file_exists(buffer_pool_filename)) { - const char *dst_name = get_buffer_pool_filename(NULL); - copy_file(ds_data, buffer_pool_filename, dst_name, 0); + copy_file(ds_data, buffer_pool_filename, default_buffer_pool_file, 0); } if (file_exists("ib_lru_dump")) { copy_file(ds_data, "ib_lru_dump", "ib_lru_dump", 0); @@ -1657,6 +1638,7 @@ ibx_copy_incremental_over_full() char path[FN_REFLEN]; int i; + DBUG_ASSERT(!opt_galera_info); datadir_node_init(&node); /* If we were applying an incremental change set, we need to make @@ -1693,19 +1675,6 @@ ibx_copy_incremental_over_full() if (!(ret = backup_files_from_datadir(xtrabackup_incremental_dir))) goto cleanup; - /* copy buffer pool dump */ - if (innobase_buffer_pool_filename) { - const char *src_name = get_buffer_pool_filename(NULL); - - snprintf(path, sizeof(path), "%s/%s", - xtrabackup_incremental_dir, - src_name); - - if (file_exists(path)) { - copy_file(ds_data, path, src_name, 0); - } - } - /* copy supplementary files */ for (i = 0; sup_files[i]; i++) { @@ -1937,14 +1906,6 @@ copy_back() datadir_node_init(&node); - /* If mariabackup is run for Galera, then the file - name is changed to the default so that the receiving - node can find this file and rename it according to its - settings, otherwise we keep the original file name: */ - size_t dir_length; - const char *src_buffer_pool; - src_buffer_pool = get_buffer_pool_filename(&dir_length); - while (datadir_iter_next(it, &node)) { const char *ext_list[] = {"backup-my.cnf", "xtrabackup_binary", "xtrabackup_binlog_info", @@ -2007,10 +1968,10 @@ copy_back() continue; } - /* skip buffer pool dump */ - if (!strcmp(filename, src_buffer_pool)) { - continue; - } + /* skip buffer pool dump */ + if (!strcmp(filename, default_buffer_pool_file)) { + continue; + } /* skip innodb data files */ is_ibdata_file = false; @@ -2034,19 +1995,11 @@ copy_back() /* copy buffer pool dump */ - if (file_exists(src_buffer_pool)) { - char dst_dir[FN_REFLEN]; - while (IS_TRAILING_SLASH(buffer_pool_filename, dir_length)) { - dir_length--; - } - memcpy(dst_dir, buffer_pool_filename, dir_length); - dst_dir[dir_length] = 0; - if (!(ret = copy_or_move_file(src_buffer_pool, - src_buffer_pool, - dst_dir, 1))) - { - goto cleanup; - } + if (file_exists(default_buffer_pool_file) && + innobase_buffer_pool_filename) { + copy_or_move_file(default_buffer_pool_file, + innobase_buffer_pool_filename, + mysql_data_home, 0); } rocksdb_copy_back(); diff --git a/extra/mariabackup/backup_copy.h b/extra/mariabackup/backup_copy.h index 858182001ce..62b2b1bc232 100644 --- a/extra/mariabackup/backup_copy.h +++ b/extra/mariabackup/backup_copy.h @@ -32,13 +32,6 @@ copy_file(ds_ctxt_t *datasink, const char *dst_file_path, uint thread_n); -/************************************************************************ -Check to see if a file exists. -Takes name of the file to check. -@return true if file exists. */ -bool -file_exists(const char *filename); - /** Start --backup */ bool backup_start(CorruptedPages &corrupted_pages); /** Release resources after backup_start() */ diff --git a/extra/mariabackup/backup_mysql.cc b/extra/mariabackup/backup_mysql.cc index 7e60944b326..7a629e7265c 100644 --- a/extra/mariabackup/backup_mysql.cc +++ b/extra/mariabackup/backup_mysql.cc @@ -83,6 +83,7 @@ os_event_t kill_query_thread_stop; bool sql_thread_started = false; char *mysql_slave_position = NULL; char *mysql_binlog_position = NULL; +char *buffer_pool_filename = NULL; /* History on server */ time_t history_start_time; @@ -1453,68 +1454,51 @@ cleanup: } -static -bool -write_binlog_info(MYSQL *connection, char *log_bin_dir, - MYSQL_RES *mysql_result, my_ulonglong n_rows, - my_ulonglong start); - /*********************************************************************//** Flush and copy the current binary log file into the backup, if GTID is enabled */ bool -write_current_binlog_file(MYSQL *connection, bool write_binlogs) +write_current_binlog_file(MYSQL *connection) { - char *log_bin = NULL; - char *filename = NULL; - char *position = NULL; char *executed_gtid_set = NULL; char *gtid_binlog_state = NULL; + char *log_bin_file = NULL; char *log_bin_dir = NULL; bool gtid_exists; bool result = true; + char filepath[FN_REFLEN]; - mysql_variable log_bin_var[] = { - {"@@GLOBAL.log_bin", &log_bin}, + mysql_variable status[] = { + {"Executed_Gtid_Set", &executed_gtid_set}, {NULL, NULL} }; - mysql_variable vars[] = { - {"gtid_binlog_state", >id_binlog_state}, - {"log_bin_basename", &log_bin_dir}, + mysql_variable status_after_flush[] = { + {"File", &log_bin_file}, {NULL, NULL} }; - mysql_variable status[] = { - {"File", &filename}, - {"Position", &position}, - {"Executed_Gtid_Set", &executed_gtid_set}, + mysql_variable vars[] = { + {"gtid_binlog_state", >id_binlog_state}, + {"log_bin_basename", &log_bin_dir}, {NULL, NULL} }; - read_mysql_variables(connection, "SELECT @@GLOBAL.log_bin", log_bin_var, false); - - /* Do not create xtrabackup_binlog_info if binary log is disabled: */ - if (strncmp(log_bin, "1", 2) != 0) { - goto binlog_disabled; - } - - lock_binlog_maybe(connection); - read_mysql_variables(connection, "SHOW MASTER STATUS", status, false); - - /* Do not create xtrabackup_binlog_info if replication - has not started yet: */ - if (filename == NULL || position == NULL) { - goto no_replication; - } - read_mysql_variables(connection, "SHOW VARIABLES", vars, true); gtid_exists = (executed_gtid_set && *executed_gtid_set) || (gtid_binlog_state && *gtid_binlog_state); - if (write_binlogs || gtid_exists) { + if (gtid_exists) { + size_t log_bin_dir_length; + + lock_binlog_maybe(connection); + + xb_mysql_query(connection, "FLUSH BINARY LOGS", false); + + read_mysql_variables(connection, "SHOW MASTER STATUS", + status_after_flush, false); if (opt_log_bin != NULL && strchr(opt_log_bin, FN_LIBCHAR)) { /* If log_bin is set, it has priority */ @@ -1524,88 +1508,33 @@ write_current_binlog_file(MYSQL *connection, bool write_binlogs) log_bin_dir = strdup(opt_log_bin); } else if (log_bin_dir == NULL) { /* Default location is MySQL datadir */ - log_bin_dir = static_cast<char*>(malloc(3)); - ut_a(log_bin_dir); - log_bin_dir[0] = '.'; - log_bin_dir[1] = FN_LIBCHAR; - log_bin_dir[2] = 0; + log_bin_dir = strdup("./"); } - size_t log_bin_dir_length; - dirname_part(log_bin_dir, log_bin_dir, &log_bin_dir_length); /* strip final slash if it is not the only path component */ - while (IS_TRAILING_SLASH(log_bin_dir, log_bin_dir_length)) { - log_bin_dir_length--; + if (log_bin_dir_length > 1 && + log_bin_dir[log_bin_dir_length - 1] == FN_LIBCHAR) { + log_bin_dir[log_bin_dir_length - 1] = 0; } - log_bin_dir[log_bin_dir_length] = 0; - if (log_bin_dir == NULL) { - msg("Failed to locate binary log files"); + if (log_bin_dir == NULL || log_bin_file == NULL) { + msg("Failed to get master binlog coordinates from " + "SHOW MASTER STATUS"); result = false; goto cleanup; } - uint max_binlogs; - max_binlogs = opt_max_binlogs; - if (max_binlogs == 0) { - if (gtid_exists) { - max_binlogs = 1; - } else { - goto cleanup; - } - } - - xb_mysql_query(connection, "FLUSH BINARY LOGS", false); - - MYSQL_RES *mysql_result; - - mysql_result = xb_mysql_query(connection, "SHOW BINARY LOGS", true); - - ut_ad(mysql_num_fields(mysql_result) >= 2); - - my_ulonglong n_rows; - my_ulonglong start; - - n_rows = mysql_num_rows(mysql_result); - - start = 0; - if (max_binlogs < n_rows) { - start = n_rows - max_binlogs; - } - if (start) { - mysql_data_seek(mysql_result, start); - } - - MYSQL_ROW row; - while ((row = mysql_fetch_row(mysql_result))) { - const char *binlog_name = row[0]; - char filepath[FN_REFLEN]; - snprintf(filepath, sizeof(filepath), "%s%c%s", - log_bin_dir, FN_LIBCHAR, binlog_name); - if (file_exists(filepath)) { - result = copy_file(ds_data, filepath, binlog_name, 0); - if (!result) break; - } - } - - if (result) { - write_binlog_info(connection, log_bin_dir, - mysql_result, n_rows, start); - } - - mysql_free_result(mysql_result); + snprintf(filepath, sizeof(filepath), "%s%c%s", + log_bin_dir, FN_LIBCHAR, log_bin_file); + result = copy_file(ds_data, filepath, log_bin_file, 0); } cleanup: - free_mysql_variables(vars); - -no_replication: + free_mysql_variables(status_after_flush); free_mysql_variables(status); - -binlog_disabled: - free_mysql_variables(log_bin_var); + free_mysql_variables(vars); return(result); } @@ -1614,11 +1543,8 @@ binlog_disabled: /*********************************************************************//** Retrieves MySQL binlog position and saves it in a file. It also prints it to stdout. */ -static bool -write_binlog_info(MYSQL *connection, char *log_bin_dir, - MYSQL_RES *mysql_result, my_ulonglong n_rows, - my_ulonglong start) +write_binlog_info(MYSQL *connection) { char *filename = NULL; char *position = NULL; @@ -1626,13 +1552,9 @@ write_binlog_info(MYSQL *connection, char *log_bin_dir, char *gtid_current_pos = NULL; char *gtid_executed = NULL; char *gtid = NULL; - char *buffer; - char *buf; - size_t total; - bool result = true; + bool result; bool mysql_gtid; bool mariadb_gtid; - bool with_gtid; mysql_variable status[] = { {"File", &filename}, @@ -1650,106 +1572,39 @@ write_binlog_info(MYSQL *connection, char *log_bin_dir, read_mysql_variables(connection, "SHOW MASTER STATUS", status, false); read_mysql_variables(connection, "SHOW VARIABLES", vars, true); - mysql_gtid = gtid_mode && (strcmp(gtid_mode, "ON") == 0); - mariadb_gtid = gtid_current_pos && *gtid_current_pos; + if (filename == NULL || position == NULL) { + /* Do not create xtrabackup_binlog_info if binary + log is disabled */ + result = true; + goto cleanup; + } + + mysql_gtid = ((gtid_mode != NULL) && (strcmp(gtid_mode, "ON") == 0)); + mariadb_gtid = (gtid_current_pos != NULL); - gtid = (gtid_executed && *gtid_executed) ? gtid_executed : gtid_current_pos; + gtid = (gtid_executed != NULL ? gtid_executed : gtid_current_pos); - with_gtid = mariadb_gtid || mysql_gtid; - if (with_gtid) { + if (mariadb_gtid || mysql_gtid) { ut_a(asprintf(&mysql_binlog_position, "filename '%s', position '%s', " "GTID of the last change '%s'", filename, position, gtid) != -1); + result = backup_file_printf(XTRABACKUP_BINLOG_INFO, + "%s\t%s\t%s\n", filename, position, + gtid); } else { ut_a(asprintf(&mysql_binlog_position, "filename '%s', position '%s'", filename, position) != -1); + result = backup_file_printf(XTRABACKUP_BINLOG_INFO, + "%s\t%s\n", filename, position); } - mysql_data_seek(mysql_result, start); - - MYSQL_ROW row; - my_ulonglong current; - - total = 1; - current = start; - while ((row = mysql_fetch_row(mysql_result))) { - const char *binlog_name = row[0]; - /* The position in the current binlog is taken from - the global variable, but for the previous ones it is - determined by their length: */ - const char *binlog_pos = - ++current == n_rows ? position : row[1]; - total += strlen(binlog_name) + strlen(binlog_pos) + 2; - if (with_gtid && current != n_rows) { - /* Add the "\t[]" length to the buffer size: */ - total += 3; - } - } - /* For the last of the binray log files, also add - the length of the GTID (+ one character for '\t'): */ - if (with_gtid) { - total += strlen(gtid) + 1; - } - - buffer = static_cast<char*>(malloc(total)); - if (!buffer) { - msg("Failed to allocate memory for temporary buffer"); - result = false; - goto cleanup; - } - - mysql_data_seek(mysql_result, start); - - buf = buffer; - current = start; - while ((row = mysql_fetch_row(mysql_result))) { - const char *binlog_name = row[0]; - char filepath[FN_REFLEN]; - snprintf(filepath, sizeof(filepath), "%s%c%s", - log_bin_dir, FN_LIBCHAR, binlog_name); - current++; - if (file_exists(filepath)) { - /* The position in the current binlog is taken from - the global variable, but for the previous ones it is - determined by their length: */ - char *binlog_pos = - current == n_rows ? position : row[1]; - int bytes; - if (with_gtid) { - bytes = snprintf(buf, total, "%s\t%s\t%s\n", - binlog_name, binlog_pos, - current == n_rows ? gtid : "[]"); - } else { - bytes = snprintf(buf, total, "%s\t%s\n", - binlog_name, binlog_pos); - } - if (bytes <= 0) { - goto buffer_overflow; - } - buf += bytes; - total -= bytes; - } - } - - if (buf != buffer) { - result = backup_file_printf(XTRABACKUP_BINLOG_INFO, "%s", buffer); - } - -cleanup2: - free(buffer); - cleanup: - free_mysql_variables(vars); free_mysql_variables(status); + free_mysql_variables(vars); return(result); - -buffer_overflow: - msg("Internal error: buffer overflow in the write_binlog_info()"); - result = false; - goto cleanup2; } struct escape_and_quote @@ -2075,6 +1930,7 @@ backup_cleanup() { free(mysql_slave_position); free(mysql_binlog_position); + free(buffer_pool_filename); if (mysql_connection) { mysql_close(mysql_connection); diff --git a/extra/mariabackup/backup_mysql.h b/extra/mariabackup/backup_mysql.h index 5e78281e1cb..b61fa2362c6 100644 --- a/extra/mariabackup/backup_mysql.h +++ b/extra/mariabackup/backup_mysql.h @@ -28,6 +28,7 @@ extern time_t history_lock_time; extern bool sql_thread_started; extern char *mysql_slave_position; extern char *mysql_binlog_position; +extern char *buffer_pool_filename; /** connection to mysql server */ extern MYSQL *mysql_connection; @@ -61,7 +62,10 @@ void unlock_all(MYSQL *connection); bool -write_current_binlog_file(MYSQL *connection, bool write_binlogs); +write_current_binlog_file(MYSQL *connection); + +bool +write_binlog_info(MYSQL *connection); bool write_xtrabackup_info(MYSQL *connection, const char * filename, bool history, diff --git a/extra/mariabackup/common.h b/extra/mariabackup/common.h index beb49524608..1973512ad82 100644 --- a/extra/mariabackup/common.h +++ b/extra/mariabackup/common.h @@ -187,14 +187,4 @@ xb_read_full(File fd, uchar *buf, size_t len) return tlen; } -#ifdef _WIN32 -#define IS_TRAILING_SLASH(name, length) \ - ((length) > 1 && \ - (name[(length) - 1] == '/' || \ - name[(length) - 1] == '\\')) -#else -#define IS_TRAILING_SLASH(name, length) \ - ((length) > 1 && name[(length) - 1] == FN_LIBCHAR) -#endif - #endif diff --git a/extra/mariabackup/xtrabackup.cc b/extra/mariabackup/xtrabackup.cc index 37c80baf32f..da2ae65447b 100644 --- a/extra/mariabackup/xtrabackup.cc +++ b/extra/mariabackup/xtrabackup.cc @@ -248,8 +248,7 @@ ulong innobase_read_io_threads = 4; ulong innobase_write_io_threads = 4; longlong innobase_page_size = (1LL << 14); /* 16KB */ -char *innobase_buffer_pool_filename = NULL; -char *buffer_pool_filename = NULL; +char* innobase_buffer_pool_filename = NULL; /* The default values for the following char* start-up parameters are determined in innobase_init below: */ @@ -344,7 +343,6 @@ uint opt_lock_wait_timeout = 0; uint opt_lock_wait_threshold = 0; uint opt_debug_sleep_before_unlock = 0; uint opt_safe_slave_backup_timeout = 0; -uint opt_max_binlogs = UINT_MAX; const char *opt_history = NULL; @@ -1020,8 +1018,7 @@ enum options_xtrabackup OPT_XTRA_CHECK_PRIVILEGES, OPT_XTRA_MYSQLD_ARGS, OPT_XB_IGNORE_INNODB_PAGE_CORRUPTION, - OPT_INNODB_FORCE_RECOVERY, - OPT_MAX_BINLOGS + OPT_INNODB_FORCE_RECOVERY }; struct my_option xb_client_options[]= { @@ -1418,17 +1415,6 @@ struct my_option xb_client_options[]= { &opt_log_innodb_page_corruption, &opt_log_innodb_page_corruption, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0}, - {"sst_max_binlogs", OPT_MAX_BINLOGS, - "Number of recent binary logs to be included in the backup. " - "Setting this parameter to zero normally disables transmission " - "of binary logs to the joiner nodes during SST using Galera. " - "But sometimes a single current binlog can still be transmitted " - "to the joiner even with sst_max_binlogs=0, because it is " - "required for Galera to work properly with GTIDs support.", - (G_PTR *) &opt_max_binlogs, - (G_PTR *) &opt_max_binlogs, 0, GET_UINT, OPT_ARG, - UINT_MAX, 0, UINT_MAX, 0, 1, 0}, - #define MYSQL_CLIENT #include "sslopt-longopts.h" #undef MYSQL_CLIENT @@ -6247,44 +6233,6 @@ static bool check_all_privileges() return true; } -static -void -xb_init_buffer_pool(const char * filename) -{ - if (filename && -#ifdef _WIN32 - (filename[0] == '/' || - filename[0] == '\\' || - strchr(filename, ':'))) -#else - filename[0] == FN_LIBCHAR) -#endif - { - buffer_pool_filename = strdup(filename); - } else { - char filepath[FN_REFLEN]; - char *dst_dir = - (innobase_data_home_dir && *innobase_data_home_dir) ? - innobase_data_home_dir : mysql_data_home; - size_t dir_length; - if (dst_dir && *dst_dir) { - dir_length = strlen(dst_dir); - while (IS_TRAILING_SLASH(dst_dir, dir_length)) { - dir_length--; - } - memcpy(filepath, dst_dir, dir_length); - } - else { - filepath[0] = '.'; - dir_length = 1; - } - snprintf(filepath + dir_length, - sizeof(filepath) - dir_length, "%c%s", FN_LIBCHAR, - filename ? filename : "ib_buffer_pool"); - buffer_pool_filename = strdup(filepath); - } -} - bool xb_init() { @@ -6350,15 +6298,10 @@ xb_init() return(false); } - xb_init_buffer_pool(buffer_pool_filename); - if (opt_check_privileges && !check_all_privileges()) { return(false); } - history_start_time = time(NULL); - } else { - xb_init_buffer_pool(innobase_buffer_pool_filename); } return(true); @@ -6746,8 +6689,6 @@ int main(int argc, char **argv) free_error_messages(); mysql_mutex_destroy(&LOCK_error_log); - free(buffer_pool_filename); - if (status == EXIT_SUCCESS) { msg("completed OK!"); } diff --git a/extra/mariabackup/xtrabackup.h b/extra/mariabackup/xtrabackup.h index a43bca5891c..0d1d3eb5a6b 100644 --- a/extra/mariabackup/xtrabackup.h +++ b/extra/mariabackup/xtrabackup.h @@ -71,7 +71,6 @@ extern char *xtrabackup_incremental_dir; extern char *xtrabackup_incremental_basedir; extern char *innobase_data_home_dir; extern char *innobase_buffer_pool_filename; -extern char *buffer_pool_filename; extern char *xb_plugin_dir; extern char *xb_rocksdb_datadir; extern my_bool xb_backup_rocksdb; @@ -167,7 +166,6 @@ extern uint opt_lock_wait_timeout; extern uint opt_lock_wait_threshold; extern uint opt_debug_sleep_before_unlock; extern uint opt_safe_slave_backup_timeout; -extern uint opt_max_binlogs; extern const char *opt_history; diff --git a/extra/wolfssl/CMakeLists.txt b/extra/wolfssl/CMakeLists.txt index 3faddbf49a2..35c3b735bdd 100644 --- a/extra/wolfssl/CMakeLists.txt +++ b/extra/wolfssl/CMakeLists.txt @@ -136,7 +136,8 @@ IF(WOLFSSL_FASTMATH) PROPERTIES COMPILE_FLAGS ${TFM_COMPILE_FLAGS}) ENDIF() ELSE() - SET(WOLFCRYPT_SOURCES ${WOLFCRYPT_SOURCES} ${WOLFCRYPT_SRCDIR}/integer.c) + SET(WOLFSSL_SP_MATH_ALL 1) + SET(WOLFCRYPT_SOURCES ${WOLFCRYPT_SOURCES} ${WOLFCRYPT_SRCDIR}/sp_int.c) ENDIF() IF(WOLFSSL_X86_64_BUILD) diff --git a/extra/wolfssl/user_settings.h.in b/extra/wolfssl/user_settings.h.in index bbe8c820019..2355fd1691c 100644 --- a/extra/wolfssl/user_settings.h.in +++ b/extra/wolfssl/user_settings.h.in @@ -47,6 +47,7 @@ WolfSSL will use more stack space with it, with fastmath */ #cmakedefine FP_MAX_BITS 16384 +#define RSA_MAX_SIZE 8192 #cmakedefine WOLFSSL_AESNI #cmakedefine USE_FAST_MATH #cmakedefine TFM_TIMING_RESISTANT @@ -55,5 +56,6 @@ #cmakedefine USE_INTEL_SPEEDUP #cmakedefine USE_FAST_MATH #cmakedefine WOLFSSL_X86_64_BUILD +#cmakedefine WOLFSSL_SP_MATH_ALL #endif /* WOLFSSL_USER_SETTINGS_H */ diff --git a/extra/wolfssl/wolfssl b/extra/wolfssl/wolfssl -Subproject e6c07a296d2996e8d5c3cc615dfc50013bbcc79 +Subproject 57aac1c50b45275c7a99eca32ad985998b292dc |