Skip to content

Commit 813e36a

Browse files
authored
Merge pull request #8770 from douzzer/20250514-WOLFSSL_DEBUG_PRINTF-C89
20250514-WOLFSSL_DEBUG_PRINTF-C89
2 parents cd79be4 + 8035667 commit 813e36a

File tree

3 files changed

+47
-30
lines changed

3 files changed

+47
-30
lines changed

wolfcrypt/src/ecc.c

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3250,10 +3250,8 @@ static int ecc_mulmod(const mp_int* k, ecc_point* P, ecc_point* Q,
32503250
#else
32513251
/* Swap R[0] and R[1] if other index is needed. */
32523252
swap ^= (int)b;
3253-
if (err == MP_OKAY) {
3254-
err = mp_cond_swap_ct_ex(R[0]->x, R[1]->x, (int)modulus->used, swap,
3255-
tmp);
3256-
}
3253+
err = mp_cond_swap_ct_ex(R[0]->x, R[1]->x, (int)modulus->used, swap,
3254+
tmp);
32573255
if (err == MP_OKAY) {
32583256
err = mp_cond_swap_ct_ex(R[0]->y, R[1]->y, (int)modulus->used, swap,
32593257
tmp);

wolfcrypt/src/logging.c

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -245,20 +245,30 @@ static void wolfssl_log(const int logLevel, const char* const file_name,
245245
else {
246246
#if defined(WOLFSSL_USER_LOG)
247247
WOLFSSL_USER_LOG(logMessage);
248-
#elif defined(WOLFSSL_DEBUG_PRINTF)
248+
#elif defined(WOLFSSL_DEBUG_PRINTF_FN)
249+
#ifdef WOLFSSL_MDK_ARM
250+
fflush(stdout);
251+
#endif
249252
if (log_prefix != NULL) {
250253
if (file_name != NULL)
251-
WOLFSSL_DEBUG_PRINTF("[%s]: [%s L %d] %s\n",
254+
WOLFSSL_DEBUG_PRINTF_FN(WOLFSSL_DEBUG_PRINTF_FIRST_ARGS
255+
"[%s]: [%s L %d] %s\n",
252256
log_prefix, file_name, line_number, logMessage);
253257
else
254-
WOLFSSL_DEBUG_PRINTF("[%s]: %s\n", log_prefix, logMessage);
258+
WOLFSSL_DEBUG_PRINTF_FN(WOLFSSL_DEBUG_PRINTF_FIRST_ARGS
259+
"[%s]: %s\n", log_prefix, logMessage);
255260
} else {
256261
if (file_name != NULL)
257-
WOLFSSL_DEBUG_PRINTF("[%s L %d] %s\n",
262+
WOLFSSL_DEBUG_PRINTF_FN(WOLFSSL_DEBUG_PRINTF_FIRST_ARGS
263+
"[%s L %d] %s\n",
258264
file_name, line_number, logMessage);
259265
else
260-
WOLFSSL_DEBUG_PRINTF("%s\n", logMessage);
266+
WOLFSSL_DEBUG_PRINTF_FN(WOLFSSL_DEBUG_PRINTF_FIRST_ARGS
267+
"%s\n", logMessage);
261268
}
269+
#ifdef WOLFSSL_MDK_ARM
270+
fflush(stdout);
271+
#endif
262272
#elif defined(ARDUINO)
263273
wolfSSL_Arduino_Serial_Print(logMessage);
264274
#elif defined(WOLFSSL_UTASKER)

wolfssl/wolfcrypt/logging.h

Lines changed: 30 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -309,46 +309,55 @@ WOLFSSL_API void wolfSSL_SetLoggingPrefix(const char* prefix);
309309
int dc_log_printf(char*, ...);
310310
#endif
311311

312-
#ifdef WOLFSSL_DEBUG_PRINTF
312+
#ifdef WOLFSSL_DEBUG_PRINTF_FN
313313
/* user-supplied definition */
314314
#elif defined(ARDUINO)
315315
/* ARDUINO only has print and sprintf, no printf. */
316316
#elif defined(WOLFSSL_LOG_PRINTF) || defined(WOLFSSL_DEOS)
317-
#define WOLFSSL_DEBUG_PRINTF(...) printf(__VA_ARGS__)
317+
#define WOLFSSL_DEBUG_PRINTF_FN printf
318318
#elif defined(THREADX) && !defined(THREADX_NO_DC_PRINTF)
319-
#define WOLFSSL_DEBUG_PRINTF(...) dc_log_printf(__VA_ARGS__)
319+
#define WOLFSSL_DEBUG_PRINTF_FN dc_log_printf
320320
#elif defined(MICRIUM)
321-
#define WOLFSSL_DEBUG_PRINTF(...) BSP_Ser_Printf(__VA_ARGS__)
321+
#define WOLFSSL_DEBUG_PRINTF_FN BSP_Ser_Printf
322322
#elif defined(WOLFSSL_MDK_ARM)
323-
#define WOLFSSL_DEBUG_PRINTF(...) do { \
324-
fflush(stdout); \
325-
printf(__VA_ARGS__); \
326-
fflush(stdout); \
327-
} while (0)
323+
#define WOLFSSL_DEBUG_PRINTF_FN printf
328324
#elif defined(WOLFSSL_UTASKER)
329325
/* WOLFSSL_UTASKER only has fnDebugMsg and related primitives, no printf. */
330326
#elif defined(MQX_USE_IO_OLD)
331-
#define WOLFSSL_DEBUG_PRINTF(...) fprintf(_mqxio_stderr, __VAR_ARGS)
327+
#define WOLFSSL_DEBUG_PRINTF_FN fprintf
328+
#define WOLFSSL_DEBUG_PRINTF_FIRST_ARGS _mqxio_stderr,
332329
#elif defined(WOLFSSL_APACHE_MYNEWT)
333-
#define WOLFSSL_DEBUG_PRINTF(...) LOG_DEBUG(&mynewt_log, \
334-
LOG_MODULE_DEFAULT, __VA_ARGS__)
330+
#define WOLFSSL_DEBUG_PRINTF_FN LOG_DEBUG
331+
#define WOLFSSL_DEBUG_PRINTF_FIRST_ARGS &mynewt_log, LOG_MODULE_DEFAULT,
335332
#elif defined(WOLFSSL_ESPIDF)
336-
#define WOLFSSL_DEBUG_PRINTF(...) ESP_LOGI("wolfssl", __VA_ARGS__)
333+
#define WOLFSSL_DEBUG_PRINTF_FN ESP_LOGI
334+
#define WOLFSSL_DEBUG_PRINTF_FIRST_ARGS "wolfssl",
337335
#elif defined(WOLFSSL_ZEPHYR)
338-
#define WOLFSSL_DEBUG_PRINTF(...) printk(__VA_ARGS__)
336+
#define WOLFSSL_DEBUG_PRINTF_FN printk
339337
#elif defined(WOLFSSL_TELIT_M2MB)
340-
#define WOLFSSL_DEBUG_PRINTF(...) M2M_LOG_INFO(__VA_ARGS__)
338+
#define WOLFSSL_DEBUG_PRINTF_FN M2M_LOG_INFO
341339
#elif defined(WOLFSSL_ANDROID_DEBUG)
342-
#define WOLFSSL_DEBUG_PRINTF(...) __android_log_print(ANDROID_LOG_VERBOSE, \
343-
"[wolfSSL]", __VA_ARGS__)
340+
#define WOLFSSL_DEBUG_PRINTF_FN __android_log_print
341+
#define WOLFSSL_DEBUG_PRINTF_FIRST_ARGS ANDROID_LOG_VERBOSE, "[wolfSSL]"
344342
#elif defined(WOLFSSL_XILINX)
345-
#define WOLFSSL_DEBUG_PRINTF(...) xil_printf(__VA_ARGS__)
343+
#define WOLFSSL_DEBUG_PRINTF_FN xil_printf
346344
#elif defined(WOLFSSL_LINUXKM)
347-
#define WOLFSSL_DEBUG_PRINTF(...) printk(__VA_ARGS__)
345+
#define WOLFSSL_DEBUG_PRINTF_FN printk
348346
#elif defined(WOLFSSL_RENESAS_RA6M4)
349-
#define WOLFSSL_DEBUG_PRINTF(...) myprintf(__VA_ARGS__)
347+
#define WOLFSSL_DEBUG_PRINTF_FN myprintf
350348
#else
351-
#define WOLFSSL_DEBUG_PRINTF(...) fprintf(stderr, __VA_ARGS__)
349+
#define WOLFSSL_DEBUG_PRINTF_FN fprintf
350+
#define WOLFSSL_DEBUG_PRINTF_FIRST_ARGS stderr,
351+
#endif
352+
353+
#ifndef WOLFSSL_DEBUG_PRINTF_FIRST_ARGS
354+
#define WOLFSSL_DEBUG_PRINTF_FIRST_ARGS
355+
#endif
356+
357+
#if defined(WOLFSSL_DEBUG_PRINTF_FN) && !defined(WOLFSSL_DEBUG_PRINTF) && \
358+
!defined(WOLF_NO_VARIADIC_MACROS)
359+
#define WOLFSSL_DEBUG_PRINTF(...) \
360+
WOLFSSL_DEBUG_PRINTF_FN(WOLFSSL_DEBUG_PRINTF_FIRST_ARGS __VA_ARGS__)
352361
#endif
353362

354363
#ifdef __cplusplus

0 commit comments

Comments
 (0)