void WOLFSSL_LEAVE(const char* msg, int ret) { if (loggingEnabled) { char buffer[80]; sprintf(buffer, "wolfSSL Leaving %s, return %d", msg, ret); wolfssl_log(LEAVE_LOG , buffer); } }
void WOLFSSL_ENTER(const char* msg) { if (loggingEnabled) { char buffer[80]; sprintf(buffer, "wolfSSL Entering %s", msg); wolfssl_log(ENTER_LOG , buffer); } }
void WOLFSSL_ERROR(int error) { if (loggingEnabled) { char buffer[80]; sprintf(buffer, "wolfSSL error occured, error = %d", error); wolfssl_log(ERROR_LOG , buffer); } }
void WOLFSSL_BUFFER(const byte* buffer, word32 length) { #define LINE_LEN 16 if (loggingEnabled) { word32 i; char line[80]; if (!buffer) { wolfssl_log(INFO_LOG, "\tNULL"); return; } sprintf(line, "\t"); for (i = 0; i < LINE_LEN; i++) { if (i < length) sprintf(line + 1 + i * 3,"%02x ", buffer[i]); else sprintf(line + 1 + i * 3, " "); } sprintf(line + 1 + LINE_LEN * 3, "| "); for (i = 0; i < LINE_LEN; i++) if (i < length) sprintf(line + 3 + LINE_LEN * 3 + i, "%c", 31 < buffer[i] && buffer[i] < 127 ? buffer[i] : '.'); wolfssl_log(INFO_LOG, line); if (length > LINE_LEN) WOLFSSL_BUFFER(buffer + LINE_LEN, length - LINE_LEN); } }
void WOLFSSL_ERROR(int error) #endif { #if defined(DEBUG_WOLFSSL) && !defined(WOLFSSL_NGINX) if (loggingEnabled && error != WC_PENDING_E) #endif { char buffer[80]; #if defined(OPENSSL_EXTRA) || defined(DEBUG_WOLFSSL_VERBOSE) (void)usrCtx; /* a user ctx for future flexibility */ (void)func; if (wc_LockMutex(&debug_mutex) != 0) { WOLFSSL_MSG("Lock debug mutex failed"); sprintf(buffer, "wolfSSL error occurred, error = %d", error); } else { if (error < 0) error = error - (2*error); /*get absolute value*/ sprintf(buffer, "wolfSSL error occurred, error = %d line:%d file:%s", error, line, file); if (wc_AddErrorNode(error, line, buffer, (char*)file) != 0) { WOLFSSL_MSG("Error creating logging node"); /* with void function there is no return here, continue on * to unlock mutex and log what buffer was created. */ } wc_UnLockMutex(&debug_mutex); } #else sprintf(buffer, "wolfSSL error occurred, error = %d", error); #endif #ifdef DEBUG_WOLFSSL wolfssl_log(ERROR_LOG , buffer); #endif } }
void WOLFSSL_MSG(const char* msg) { if (loggingEnabled) wolfssl_log(INFO_LOG , msg); }