]> pd.if.org Git - zpackage/blobdiff - crypto/tlse.h
remove stray debug fprintf
[zpackage] / crypto / tlse.h
index 9645195c92621a6f918734384175e21b99bb3796..b152c543157135392a2139618adfc4def1c59ba8 100644 (file)
 #endif
 
 #ifdef DEBUG
-#define DEBUG_PRINTLN(...)            do { fprintf(stderr, "line %d: ", __LINE__); fprintf(stderr, __VA_ARGS__); } while (0)
-#define DEBUG_PRINT(...)            fprintf(stderr, __VA_ARGS__)
+extern int tls_indent;
+extern int tls_indent_i;
+#define INDENT do { for (tls_indent_i=0; tls_indent_i < tls_indent; tls_indent_i++) { fprintf(stderr, "   "); } } while (0)
 
-#define DEBUG_DUMP_HEX(buf, len)    do {int _i_; for (_i_ = 0; _i_ < (int)len; _i_++) { DEBUG_PRINT("%02X ", (unsigned int)(buf)[_i_]); } } while (0)
+#define MARKP do { INDENT; fprintf(stderr, "%s %s:%d ", __FILE__, __func__, __LINE__); } while (0)
+#define MARK do { INDENT; fprintf(stderr, "%s %s:%d\n", __FILE__, __func__, __LINE__); } while (0)
+
+#define DEBUG_PRINTLN(...) do { MARKP; fprintf(stderr, __VA_ARGS__); } while (0)
+#define DEBUG_PRINTI(...) do { INDENT; fprintf(stderr, __VA_ARGS__); } while (0)
+#define DEBUG_PRINT(...) do { fprintf(stderr, __VA_ARGS__); } while (0)
+
+#define DEBUG_DUMP_HEX(buf, len)    do {int _i_; for (_i_ = 0; _i_ < (int)len; _i_++) { DEBUG_PRINT("%02x ", (unsigned int)((unsigned char *)buf)[_i_]); } } while (0)
 
 #define DEBUG_INDEX(fields)         print_index(fields)
 #define DEBUG_DUMP(buf, length)     fwrite(buf, 1, length, stderr);
 
-#define DEBUG_DUMP_HEX_LABEL(title, buf, len)    do {fprintf(stderr, "%s (%i): ", title, (int)len); DEBUG_DUMP_HEX(buf, len); fprintf(stderr, "\n");} while (0)
+#define DEBUG_DUMP_HEX_LABEL(title, buf, len)    do {fprintf(stderr, "%s (%d): ", title, (int)len); DEBUG_DUMP_HEX(buf, len); fprintf(stderr, "\n");} while (0)
+
+#define ENTER do { MARKP;  fprintf(stderr, "enter function\n"); tls_indent++; } while (0)
+#define LEAVE do { tls_indent--; MARKP;  fprintf(stderr, "leave function\n");} while (0)
 #else
 #define DEBUG_PRINTLN(...)
 #define DEBUG_PRINT(...)            { }
@@ -70,6 +81,9 @@
 #define DEBUG_INDEX(fields)         { }
 #define DEBUG_DUMP(buf, length)     { }
 #define DEBUG_DUMP_HEX_LABEL(title, buf, len) { }
+#define MARK
+#define ENTER
+#define LEAVE
 #endif
 
 #define TLS_WITH_CHACHA20_POLY1305
@@ -449,6 +463,11 @@ struct TLSContext {
        struct timespec sleep_until;
 
        unsigned short tls13_version;
+
+#ifdef DEBUG
+       int level;
+       uint32_t debug_flags;
+#endif
 };
 
 typedef int (*tls_validation_function)(struct TLSContext *context, struct TLSCertificate **certificate_chain, int len);